La Red de Conocimientos Pedagógicos - Aprendizaje de redacción de artículos/tesis - ¿Cuál es la diferencia esencial entre una base de datos relacional y Hadoop?

¿Cuál es la diferencia esencial entre una base de datos relacional y Hadoop?

¿Cuál es la diferencia esencial entre una base de datos relacional y Hadoop? Sus ideas son las mismas, ambos se distribuyen en procesamiento paralelo. La esencia es definitivamente la misma, pero los escenarios de aplicación son diferentes:

1. Hadoop es un producto liviano y de código abierto. No es tan complejo como dpf y requiere mucho esfuerzo para construir un entorno DPF.

2.hadoop puede procesar datos semiestructurados y no estructurados.

Sin embargo, Hadoop requiere escribir funciones de reducción de mapas, lo cual es mucho menos conveniente y flexible que SQL. . .

En términos de procesamiento de datos estructurados, personalmente creo que el rendimiento de la base de datos de MPP no será peor que el de Hadoop. Mientras se mencione MPP, la gente pensará en servidores, almacenamiento externo, redes de fibra óptica y una buena planificación. Piensan que el coste es alto, por lo que todos optan por hadoop :)

Referencia: itpub. /hilo-1566914-1-1.

¡Son cosas completamente diferentes! Una es la base de datos y la otra es la infraestructura del sistema distribuido. ¡No hay comparación entre los dos!

Supongo que lo que quieres preguntar es la diferencia entre las bases de datos hbase, nosql y relacionales de hadoop.

: Hu Zhi. /question/20059632

En términos generales, las bases de datos relacionales se utilizan para respuestas eficientes a consultas en tiempo real. Pero es relativamente débil en el análisis fuera de línea de big data. Hadoop es muy adecuado para el análisis de big data fuera de línea.

La diferencia entre una base de datos relacional y una base de datos no relacional es en realidad un conjunto de indicadores que apuntan a los datos de la tabla. El orden de los indicadores es en realidad el orden de los indicadores. Índice agrupado: el orden de almacenamiento físico de la tabla es el mismo que el orden de almacenamiento de los indicadores (es decir, el orden lógico). Índice no agrupado: el orden físico y lógico son diferentes. Debido a que una tabla solo puede tener un orden físico, el número máximo de índices agrupados solo puede ser 1. Entre ellos, el índice único agrega restricciones únicas al índice. No se permiten valores duplicados al agregar o modificar datos en una columna indexada. Puede ser un índice agrupado o un índice no agrupado. Las claves primarias no permiten NULL, los índices únicos sí. Pero los índices únicos sólo permiten un NULL. El índice de clave principal define la columna de clave principal como un índice. La clave principal es única, por lo que el índice de clave principal es una forma especial de índice único.

La diferencia entre bases de datos relacionales y no relacionales La esencia de las bases de datos no relacionales: los productos de bases de datos no relacionales son versiones funcionales de las bases de datos relacionales tradicionales. Al reducir las funciones no utilizadas o poco utilizadas, pueden mejorar enormemente el producto. actuación.

Las estructuras de datos relacionales simplifican algunas estructuras de datos complejas en relaciones binarias simples (es decir, forma de tabla bidimensional). Las bases de datos no relacionales generalmente se dividen en bases de datos jerárquicas y bases de datos de red. El sistema de base de datos establecido en base a la estructura de datos de la cuadrícula se denomina sistema de base de datos de cuadrícula. Las estructuras de datos de cuadrícula se pueden convertir matemáticamente en estructuras de datos jerárquicas.

El modelo de estructura jerárquica es esencialmente un árbol ordenado dirigido con un nodo raíz (matemáticamente, "árbol" se define como un gráfico conectado acíclico).

Las principales bases de datos relacionales actuales incluyen Oracle, DB2, Microsoft SQL Server, Microsoft Aess, MySQL, etc.

Las bases de datos no relacionales incluyen NoSql y Cloudant.

¿Comparación entre NoSQL y bases de datos relacionales?

Ventajas:

1) Costo: la base de datos NoSQL es simple y fácil de implementar, y es básicamente un software de código abierto. No requiere mucho dinero para comprarlo y usarlo como Oracle, y es más barato que las bases de datos relacionales.

2) Velocidad de consulta: la base de datos Nosql almacena datos en el caché, mientras que las bases de datos relacionales almacenan datos en el disco duro, por lo que la velocidad de consulta natural es mucho más lenta que la de la base de datos nosql.

3) El formato de almacenamiento de datos: el formato de almacenamiento de nosql es clave, valor, documento, imagen, etc. , por lo que puede almacenar tipos básicos y varios formatos, como objetos o colecciones, mientras que la base de datos solo admite tipos básicos.

4) Paquete de expansión: las bases de datos relacionales están limitadas por mecanismos de consulta de múltiples tablas como la unión, y es difícil expandir el paquete.

Desventajas:

1) Las herramientas y materiales de mantenimiento son limitados, porque NoSQL es una tecnología nueva y no se puede comparar con la tecnología de bases de datos relacionales de hace 10 años.

2) No proporciona soporte para sql. Si no se admiten estándares de la industria como SQL, algunos usuarios tendrán costos de aprendizaje y uso.

3) No proporciona una base de datos relacional para manejar las cosas.

La diferencia entre hbase y la base de datos relacional Mongodb es que ésta se utiliza para almacenar datos no estructurados, especialmente datos en formato json. La capacidad de almacenamiento es de aproximadamente 654,38 mil millones a menos que la base de datos se divida en bases de datos separadas, la eficiencia disminuirá aún más.

Hbase es un almacenamiento en columnas basado en HDFS. Es bueno para consultas rápidas de claves de fila, pero no es bueno para consultas de coincidencias difusas (en realidad, pre-difusas o completamente difusas), pero la capacidad de almacenamiento puede alcanzar decenas. miles de millones o más. Mucho más grande que mongodb.

¿Cuál es la diferencia entre una base de datos relacional y una base de datos en tiempo real? ■Datos e información de bases de datos relacionales

Las bases de datos relacionales se basan en álgebra de conjuntos y utilizan métodos matemáticos para procesar datos en la base de datos. Varias entidades del mundo real y diversas conexiones entre entidades están representadas por modelos relacionales.

El modelo relacional consta de tres partes: estructura de datos relacionales, conjunto de operaciones relacionales y restricciones de integridad relacional.

Doce criterios para un sistema totalmente relacional

Un sistema relacional completo debe soportar plenamente todas las características del modelo relacional. E.F. Codd, el fundador del modelo relacional, dio los principios básicos que debe seguir todo el sistema relacional.

; Criterio 0 "": Un sistema de base de datos relacional en forma relacional debe poder administrar la base de datos completamente a través de sus capacidades relacionales.

; Directriz 1 ' 'Directriz de información: Toda la información en un sistema de base de datos relacional debe representarse explícitamente mediante valores en tablas en la capa lógica.

; Directriz 2 ' 'Directriz de acceso garantizado: Dependiendo de la combinación de nombre de tabla, código principal y nombre de columna, se puede garantizar el acceso a cada elemento de datos de la base de datos relacional de manera lógica.

; Criterio 3 "Manejo sistemático de valores nulos: los sistemas de bases de datos relacionales con relaciones completas admiten el concepto de valores nulos y manejan valores nulos de manera sistemática.

; Criterio 4 ' 'Diccionario de datos dinámico en línea basado en modelo relacional: la descripción de la base de datos es la misma que la descripción de datos ordinarios a nivel lógico

Estándar 5 ' 'Sublenguaje de datos unificados:

Una base de datos relacional. El sistema puede tener múltiples idiomas y múltiples métodos de acceso a terminales, pero debe haber un lenguaje cuyas declaraciones puedan expresarse como cadenas con gramática estricta y que puedan admitir completamente varias reglas.

; Vista estándar 6'. Estándares de actualización: todas las vistas que son teóricamente actualizables también deben poder ser actualizadas por el sistema

; Directriz 7': El sistema debe realizar una optimización de consultas para diversas operaciones /p>

;Independencia física de los datos: no importa cómo se almacenen o accedan a los datos de la base de datos, la actividad de la aplicación y del terminal permanece lógicamente sin cambios

;Estándar 9 ' 'Independencia lógica de los datos: Las actividades de aplicación y punto final permanecen lógicamente sin cambios cuando ocurre cualquier cambio en la relación subyacente en la que la información teóricamente no se destruye

; integridad de los datos: las restricciones de integridad para las bases de datos relacionales deben definirse en el lenguaje de la base de datos y almacenarse en el diccionario de datos; Estándar 11 ' 'Independencia de distribución: los sistemas de bases de datos relacionales mantienen la independencia lógica al introducir datos distribuidos o redistribuir datos

<. p>; Directriz 12 ' 'Directriz no destructiva: si el sistema de base de datos relacional tiene un lenguaje de bajo nivel, entonces este lenguaje de bajo nivel no puede violar ni eludir el criterio de integridad

■Base de datos en tiempo real. es una rama del desarrollo de sistemas de bases de datos y es adecuada para procesar datos continuamente actualizados y que cambian rápidamente y transacciones de tiempo limitado. La tecnología de bases de datos en tiempo real es el producto de una combinación de sistemas en tiempo real y tecnología de bases de datos.

Los investigadores esperan utilizar la tecnología de bases de datos para resolver problemas de gestión de datos en sistemas en tiempo real, mientras utilizan la tecnología en tiempo real para proporcionar algoritmos de asignación de recursos y programación basados ​​en el tiempo para bases de datos en tiempo real. Sin embargo, una base de datos en tiempo real no es una simple combinación de conceptos, estructuras y métodos. Es necesario realizar una investigación teórica en profundidad sobre muchos temas, como modelos de datos en tiempo real, estrategias de asignación de recursos y programación de transacciones en tiempo real, lenguajes de consulta de datos en tiempo real y comunicación de datos en tiempo real basados ​​en diferentes requisitos de aplicación y características de la aplicación. Los principales contenidos de investigación de los sistemas de bases de datos en tiempo real incluyen:

Modelo de base de datos en tiempo real

Programación de transacciones en tiempo real: incluido control de concurrencia, resolución de conflictos, interbloqueos, etc.

Tolerancia a fallos y recuperación de errores

Control de permisos de acceso

Organización y gestión de la memoria

Programación de E/S y disco

Sistema de base de datos de memoria principal

Problema de cálculo inexacto

Problema de serialización relajada

SQL en tiempo real

Predictibilidad de transacciones en tiempo real

El estado de la investigación y el desarrollo de sistemas de bases de datos en tiempo real aparecieron por primera vez en el primer número especial de ACM SIGMOD Record en marzo de 1988. Posteriormente, surgió gradualmente un grupo de investigación maduro, que marcó la integración del campo de tiempo real y el campo de bases de datos y el establecimiento de un nuevo campo de investigación de bases de datos en tiempo real. Desde entonces, han aparecido una gran cantidad de artículos y prototipos de sistemas en bases de datos en tiempo real. El grupo de bases de datos en tiempo real del Laboratorio de Tecnología de Interacción Humano-Computadora y Procesamiento Inteligente de Información se ha comprometido con la investigación y el desarrollo de sistemas en tiempo real, inteligencia en tiempo real, sistemas de bases de datos en tiempo real y tecnologías relacionadas, y ha logrado ciertos resultados.