¿Cuál es el futuro de las bases de datos?

Las bases de datos SQL y Hadoop fueron diseñadas para resolver clases de problemas relativamente estrechos. Si bien se han expandido con cierto éxito más allá de ese alcance, ambos están limitados por el legado de los algoritmos desarrollados para su caso de uso original. En muchos sentidos, Hadoop ofrece un subconjunto analítico hiper-optimizado de lo que ofrece una buena base de datos relacional y, por lo tanto, está sujeto a los mismos límites fundamentales.

El futuro de las bases de datos es una arquitectura basada en nuevas estructuras algorítmicas que no tienen las limitaciones que actualmente experimentamos con RDBMS y Hadoop. Algunas de las deficiencias algorítmicas más críticas:

  • Indización de intervalos distribuidos, por ejemplo, polígonos geoespaciales.
  • Bases de datos de restricciones en tiempo real (por ejemplo, “bases de datos de flujo”)
  • Indexación temporal distribuida
  • Paralelismo de unión relacional
  • Cierres transitivos escalables (por ejemplo, para análisis de gráficos)

Podría llegar a algunos más, pero los problemas de algoritmo anteriores son la causa raíz de la mayoría de los problemas de la base de datos que no sabemos cómo paralelizar. En algunos casos, sabemos que no puede existir una solución en plataformas como Hadoop tal como existen actualmente debido a los límites teóricos de su diseño.

Por ejemplo, los índices de polígonos geoespaciales no se distribuyen bien porque ninguna de las estrategias de partición utilizadas comúnmente por Hadoop y RDBMS, hash y rango, son satisfactorias para esos conjuntos de datos. Existe una estrategia de partición que generaliza eficientemente a índices de polígonos distribuidos basados ​​en algoritmos de incrustación topológicos, pero el modelo de partición es difícil de integrar en las bases de datos existentes que no están diseñadas desde cero para esa suposición.

El análisis de gráficos paralelos ha obstaculizado a muchas empresas a pesar de su enorme valor. Tenemos muchos ejemplos de soluciones basadas en algoritmos convencionales que no se escalan tan bien como esperaban sus creadores. Hay una nueva familia de algoritmos analíticos de gráficos muy paralelizables desarrollados hace un par de años basados ​​en un conjunto de transformaciones inusuales que no tienen operaciones analógicas en las bases de datos existentes. En consecuencia, cada implementación hasta la fecha ha sido puramente personalizada en lugar de estar integrada en una base de datos nunca diseñada para ella. (Soy consciente de dos algoritmos de variantes independientes de esta clase; lamentablemente, ninguno ha sido publicado).

Eventualmente, cosas como estas se mostrarán en una base de datos, pero probablemente serán bases de datos diseñadas específicamente para los algoritmos que están usando.

Así que diría que el futuro de las bases de datos se verá un poco diferente de las arquitecturas actuales. Existen demasiadas limitaciones debilitantes con las arquitecturas actuales y demasiadas soluciones prometedoras a esas limitaciones que sugieren un tipo diferente de arquitectura de base de datos que ha sido ubicuo hasta la fecha. Actualmente estamos en un entorno rico para I + D de bases de datos.

Podría escribir un blog si tengo que responder a esta pregunta porque el alcance es demasiado amplio. Así que por favor sea específico.
Bueno, si intenta comprender el futuro de las bases de datos en términos de trayectoria profesional, entonces puedo asegurarle que no existe ningún obstáculo que pueda afectar el futuro de las bases de datos.
Permítame explicarle esto en términos muy simples con un ejemplo del día a día: cuando necesita comprar algo para su propósito personal, va a una tienda cercana (como BigBazaar / Wallmart / More, etc.). Entonces, usted sabe que necesita visitar la tienda, buscar sus requisitos en la tienda, luego volver al mostrador de pago y después de una transacción aprobada, puede irse a casa felizmente con todas las cosas que necesita.
En el ejemplo anterior, store es la aplicación basada en plataformas (como Java / .NET / PHP, etc.), el vendedor que lo asiste es SQL y todo lo que seleccionó son elementos de una / varias bases de datos.
Ahora, piensa por ti mismo, ¿terminará tu necesidad alguna vez? Y si no es así, entonces esos requisitos (bases de datos) deberían estar ahí siempre para cumplir su propósito.

Técnicamente, las bases de datos tenían un límite de soporte muy estrecho cuando se introdujeron inicialmente, pero se adaptaron muy bien a los requisitos, pero aún tienen sus propias limitaciones que ni RDBMS ni Hadoop pueden resolver porque la arquitectura básica nunca fue diseñada para hacerlo. Pero, eso siempre resultará en mejoras y no en otra forma de extinguirse a menos que los robots se encarguen de esto también.

Dudo que alguien pueda dar una respuesta definitiva a tu pregunta. Algunos argumentarán que NoSQL es el futuro, otros dicen que esto y big data son una moda pasajera, otros afirman que la persistencia políglota, donde las organizaciones tienen diferentes bases de datos para diferentes tipos de datos, es el futuro.

Hay al menos otra pregunta en Quora en ¿Cuál es el futuro de las bases de datos? sobre este tema, pero es posible que desee leer algunos de los artículos actuales que analizan el futuro de las bases de datos: algunos de estos se enumeran a continuación:

  • SQL, NoSQL y el futuro de las bases de datos – Base de datos DZone
  • Las tecnologías de base de datos del futuro
  • SQL o NoSQL: ¿Cuál es el futuro de las bases de datos?
  • El dilema del elefante: ¿Cómo es realmente el futuro de las bases de datos? | ZDNet
  • ¿Es NoSQL (o No + SQL) el futuro de las bases de datos? – DATAVERSITY

Sea cual sea el caso, el RDBMS tradicional seguirá existiendo por un tiempo todavía.

A juzgar por las tendencias actuales, diría que no habrá una base de datos, pero hay muchas que debes saber, cada una más especializada y optimizada para ciertos problemas que abordan.

Habrá bases de datos de uso menos general, en lugar de eso tendrán un propósito especial muy parecido a cómo Neo4j maneja los gráficos sociales en lugar de las cosas en su carrito de compras.

Las bases de datos se pueden abstraer completamente en API RESTful de fácil uso, de código abierto que abordan la mayoría de las funciones del sitio web. Muchos de los servicios de SaaS y PaaS que hacen esto hoy tendrán una contraparte de código abierto mañana, así que asegúrese de aprovecharlos.

Aquí hay un sitio que ofrece ejemplos de algunas bases de datos de propósitos especiales: comparación de Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase vs Couchbase vs Hypertable vs ElasticSearch vs Accumulo vs VoltDB vs Scalaris

Los datos están creciendo a un ritmo sorprendente. La base de datos relacional tradicional y confiable se esfuerza por hacer frente a la forma en que fue diseñada hace décadas. Los tiempos de consulta para tablas grandes son inaceptables en un entorno multiusuario como Internet. Y todos quieren consultar algo, ¿no es así? Los analistas trabajan en grandes conjuntos de datos por lo general en un entorno en vivo. Los operadores de terminales realizan inserciones masivas de tablas cada día y se ejecutan múltiples consultas de validación durante esas inserciones. No importa la eficiencia con la que se diseñe el RDBMS, es insuficiente para satisfacer una demanda creciente.

Quizás el tipo de base de datos orientado a objetos ganaría popularidad o bases de datos que puedan manejar tablas multidimensionales o que profesionales calificados diseñen cubos OLAP en vivo para que trabajen los analistas. Los humanos interactúan fácilmente con datos en dos dimensiones, filas y columnas. Pero se necesitan eficiencias detrás de eso para generar esas dos dimensiones desde múltiples dimensiones rápidamente.

La arquitectura de Hadoop no es lo suficientemente rápida para reemplazar las bases de datos transaccionales, por lo que si algo como Hadoop es el futuro, es solo una parte del futuro; Todavía vas a necesitar una base de datos transaccional rápida. (Supongo que de una manera similar a la Ley de Moore podríamos llegar a un punto en el que sea lo suficientemente rápido, aunque aún será significativamente más lento que otras opciones).

Me inclino a creer que el futuro de las bases de datos se parece a NuoDB con algo como Hadapt adjunto.

En otras palabras, tendrá un almacén de datos permanente / archivado, tendrá servidores de caché de lectura / escritura en línea que mantienen la suficiente coherencia, tendrá servidores de manejo de solicitudes que recuperan los datos adecuados de los servidores de caché, y usted Tendremos servidores de consultas que convierten SQL en solicitudes para los servidores de manejo de solicitudes. Para BI, tendrá cubos generados casi en tiempo real desde los servidores de caché, y podrá emitir SQL, pero a un motor de tipo MapReduce, para consultarlos.

Y todo esto sucederá debido a la virtualización / computación en la nube y la creciente capacidad para eliminar puntos únicos de falla (y acelerar dramáticamente las operaciones) con bases de datos de forma automática.

El futuro detrás de tales DBMS como el ClickHouse, desde. Es OLAP + bigdata y es aplicable para OLTP.

La base de datos es sobre la mejor gestión de datos. A medida que los datos crecen, el futuro de la base de datos parece más brillante.