Sie sind auf Seite 1von 14

“NoSQL Database”

Students:

Jeimy Alejandra Chacón Núñez

Lina María Saboyá Escobar

Teacher:

José Fernando Sotelo

Universidad Cooperativa de Colombia

Systems Engineer

Sixth Semester

Bogotá D.C.

2019
NoSQL Database

As cloud computing continues to evolve, organizations are finding new ways to


store the massive amounts of big data that are collected. Big data storage often
require greater flexibility and scalability which can be provided by incorporating
NoSQL technologies. NoSQL (Not Only SQL) is quickly becoming a popular
approach to store large and unstructured data. (Madison)

For over decades, relational databases have been used to store what we know as
structured data. The data is sub-divided into groups, referred to as tables. The
tables store well-defined units of data in terms of type, size, and other constraints.
Each unit of data is known as column while each unit of the group is known as row.
The columns may have relationships defined across themselves, for example
parentchild, and hence the name relational databases. And because consistency is
one of the critical factors, scaling horizontally is a challenging task, if not
impossible. About a decade earlier, with the rise of large web applications,
research has poured into handling data at scale. One of the outputs of these
researches is non-relational database, in general referred to as NoSQL database.
One of the main problems that a NoSQL database solves is scale, among others.

The NoSQL movement began in the early years of the 21st century when the world
started its deep focus on creating web-scale database. By web-scale, I mean scale
to cater to hundreds of millions of users and now growing to billions of connected
devices including but not limited to mobiles, smartphones, internet TV, in-car
devices, and many more.

NoSQL what it literally means is, "I do not want to use SQL". To elaborate, "I want
to access database without using any SQL syntax". Why? We shall explore the in a
while.

Let us examine at what NoSQL

NoSQL is a generic term used to refer to any data store that does not follow the
traditional RDBMS model— specifically, the data is non-relational and it does not
use SQL as the query language. It is used to refer to the databases that attempt to
solve the problems of scalability and availability against that of atomicity or
consistency. (Vaish, pág. 24)

Each NoSQL solution seeks to address one or more of these problems:


 The need to store large volumes of data about users, objects and products
 The need to provide near-real-time transaction processing
 The need to provide high-speed analytics on large volumes of data (big
data)
 The need to support flexible data schemas for evolving business
environments
 The need to scale applications horizontally with predictable hardware and
licensing cost structures

Document databases use key-value pairs tied to documents with formats including
XML (eXtensible Markup Language), JSON (JavaScript Object Notation) and
BSON (Binary JSON) (Moniruzzaman & Hossain, 2013). Values are stored in
these semi-structured data formats and each document may contain hundreds of
attributes with varying data types. Examples of document databases include
CouchDB and MongoDB. (Madison)

Marcos para el rescate

These frameworks implement the security features we wish were built into NoSQL
databases, including authentication, role-based access control, and encryption. For
example, the Spring security framework makes more than 20 capabilities available
to developers. These frameworks provide a quick, reliable, and usually well-tested
set of security features. Best of all, your developers don't need to reinvent the
wheel.

Here are the top security controls we recommend developers implement when
using a NoSQL back end:

 Authentication. Unfortunately, even in 2012, most of the NoSQL installations


we see have no passwords and allow anyone to access the database. At
best, passwords are user-defined. If you can't use a built-in authentication
capability within the NoSQL database, make sure you at least use
authentication within the framework.
 Input validation. While NoSQL databases don't normally suffer from the SQL
injection issues found in a conventional relational database management
system, they can still be injected using JavaScript attacks and string
concatenation. Filtering to remove JavaScript, or setting up the NoSQL
database to not allow JavaScript within the store at all, will eliminate this
attack vector.
 Data validation. Most NoSQL databases store documents or other objects
that can contain dynamic structures. Leveraging the framework to validate
data being written to and read from the database can prevent problems,
such as when the system converts from one data type to another without the
developer realizing it. Data-type conversions can trigger denial-of-service
attacks.
 Role-based access. Store information on which users have access to what
data outside the NoSQL database and have the application enforce these
roles.

Many developers argue that adding security decreases performance; that's the
most common excuse we hear for why NoSQL deployments use no authentication
or encryption. However, Owen O'Malley, a Hadoop engineer at Yahoo, says he
saw less than a 3% performance hit in Hadoop when additional security features,
such as ACLs and authentication, were enabled. That's well worth it, especially
compared with the alternative of cleaning up after a successful attack. (Davis)
Installation MongoDB

1. Buscamos la página principal para realizar la descarga

2. Indicamos que version deseamos instalar y para que sistema operative y le


damos click en descargar

3. Ahora podemos ver que lo está descargando y debemos esperar a que


termine

4. Le damos click al archivo una vez finalizada la descarga


5. Le damos click en extraer

6. Una vez extraemos el archivo le vamos doble click al instalador de


MongoDB

7. Nos sale esta ventana para realizar la instalación y le damos click a la


opción next
8. Le damos click en aceptar licencia y luego next

9. Le damos click en Custom

10. Le damos click en next

11. Le damos click en next


12. Le damos click en next

13. Le damos click en install MongDB Compass y luego next

14. Ahora le damos click en Install

15. Ahora esperamos


16. Ahora le damos click en finish

17. Ahora buscamos en nuestro pc lo que posteriormente instalamos


18. Ahora abrimos power Shell, abrimos una terminal donde ejecutaremos
MongoDB nos aparecerá un error porque no hemos creado las carpetas
donde se guardaran las bases de datos y sus respectivos datos.

19. Nos dirigimos al directorio C y creamos una carpeta nueva

20. Renombramos la carpeta en este caso le colocamos data


21. Y en data creamos otra carpeta llamada db, para almacenar los datos de las base de datos

22. Abrimos el cmd

23. En una ejecutamos el mongo


24. Ahora vamos a crear una base de datos usaremos el comando use

25. En este caso se llama trabajo

26. Ahora nos indica que hemos creado una base de datos y ahora colocamos el comando db
para introducir los datos
27. Ahora con el comando find vamos a buscarlo
Bibliography

Biblioteca Virtual Universidad Cooperativa de Colombia

 Davis, M. A. (9 de abril de 2012). NoSQL es igual a NoSecurity. Información de la semana ;


Manhasset N.º 1330, 29-31.

 Madison, M. (2015). NoSQL Database Technologies. San Bernadino, 1.

 Vaish, G. (2013). NoSQL Starter. Chapter 1. An Overview of NoSQL : Packt Publishing Ltd.

Das könnte Ihnen auch gefallen