Almacenes de datos nosql frente hadoop

almacenes de datos NoSQL suscritas originalmente a la idea de “Di no a SQL” (parafraseando a partir de una campaña de publicidad contra las drogas en la década de 1980), y eran una reacción a las limitaciones percibidas de bases de datos relacionales (basadas en SQL). No es que esta gente odiaba SQL, pero estaban cansados ​​de forzar clavijas cuadradas en agujeros redondos mediante la resolución de problemas que bases de datos relacionales no fueron diseñados.

Video: Hadoop vs Oracle : Frente a Frente

Una base de datos relacional es una herramienta poderosa, pero para algunos tipos de datos (como pares de valores clave o gráficas) y algunos patrones de uso (como el almacenamiento de muy gran escala) una base de datos relacional simplemente no es práctico. Y cuando se trata de almacenamiento de gran volumen, base de datos relacional puede ser costoso, tanto en términos de costos de las licencias de bases de datos y los costes de hardware. (Bases de datos relacionales están diseñados para funcionar con el hardware de nivel empresarial.)

Por lo tanto, con el movimiento NoSQL, programadores creativos desarrollaron decenas de soluciones para diferentes tipos de problemas de almacenamiento y procesamiento de datos espinosas. Estas bases de datos NoSQL suelen proporcionar escalabilidad masiva a través de la agrupación, ya menudo están diseñados para permitir un alto rendimiento y baja latencia.

El nombre NoSQL es algo engañoso porque muchas bases de datos que se ajustan a la categoría hacer contar con el apoyo de SQL (en lugar de “NoSQL” apoyo). Piense en su nombre en lugar de “No sólo SQL.”

Las ofertas NoSQL disponibles en la actualidad pueden dividirse en cuatro categorías distintas, en función de su diseño y propósito:

  • tiendas de valores clave: Esta oferta proporciona una manera de almacenar cualquier tipo de datos sin tener que utilizar un esquema. Esto está en contraste con las bases de datos relacionales, en las que necesita para definir el esquema (la estructura de la tabla) antes de insertar los datos. Desde las tiendas de valores clave no requieren un esquema, que tiene una gran flexibilidad para almacenar datos en muchos formatos.

    Video: Bases de Datos NoSQL

    En un almacén de claves-valor, una fila consiste simplemente en una tecla (un identificador) y un valor, que puede ser cualquier cosa de un valor entero a una cadena de datos binario grande. Muchas implementaciones de almacenes de claves y valores se basan en el papel Dynamo de Amazon.

  • tiendas familiares columna: Aquí tienes las bases de datos en la que las columnas se agrupan en familias de columna y se almacenan juntos en el disco.

    Video: Neo4j-bases de datos NOSQL

    En sentido estricto, muchas de estas bases de datos no son columnas orientado, porque se basan en el papel BigTable de Google, que almacena datos como un mapa ordenados multidimensional.

  • almacenamiento de documentos: Esta oferta se basa en colecciones de documentos de manera similar codificados y formateados para mejorar la eficiencia. almacenamiento de documentos permiten a los documentos individuales en una colección para incluir sólo un subconjunto de los campos, por lo que sólo los datos que se necesita es almacenada. Para los conjuntos de datos dispersos, donde muchos campos a menudo no se poblaron, esto puede traducirse en un ahorro considerable de espacio.

    Video: Introduction aux bases de données NoSQL

    Por el contrario, las columnas vacías en las tablas de bases de datos relacionales no ocupan espacio. almacenamiento de documentos también permite la flexibilidad del esquema, ya que sólo los campos que se necesitan son almacenados, y los nuevos campos se pueden agregar. Una vez más, en contraste con bases de datos relacionales, estructuras de tabla se definen en la delantera antes de que se almacenan los datos, y el cambio de las columnas es una tarea tediosa que los impactos todo el conjunto de datos.

  • bases de datos del gráfico: Aquí tienes las bases de datos que almacenan estructuras gráfico - representaciones que muestran colecciones de entidades (vértices o nodos) y sus relaciones (bordes) entre sí. Estas estructuras permiten a las bases de datos del gráfico a ser extremadamente bien adaptado para el almacenamiento de estructuras complejas, como las relaciones que unen entre todas las páginas web conocidas. (Por ejemplo, páginas web individuales son nodos, y los bordes que los conectan son enlaces de una página a otra).

    Google, por supuesto, es todo sobre la tecnología gráfica, e inventó un motor de procesamiento gráfico denominado Pre-gel para alimentar su algoritmo PageRank. (Y sí, hay un libro blanco sobre Pre-gel.) En la comunidad Hadoop, hay un proyecto llamado Apache Giraph (basada en el documento Pre-gel), que es un motor de procesamiento gráfico diseñado para procesar gráficos almacenados en HDFS.

Las opciones de almacenamiento y procesamiento de datos disponibles en Hadoop en muchos casos son implementaciones de las categorías enumeradas aquí NoSQL. Esto le ayudará a evaluar mejor las soluciones que están disponibles para usted y ver cómo Hadoop puede complementar los almacenes de datos tradicionales.

Artículos Relacionados