stringtranslate.com

Base de datos paralela

Un sistema de base de datos paralela busca mejorar el rendimiento mediante la paralelización de varias operaciones, como la carga de datos, la creación de índices y la evaluación de consultas. [1] Aunque los datos se pueden almacenar de forma distribuida, la distribución se rige únicamente por consideraciones de rendimiento. Las bases de datos paralelas mejoran la velocidad de procesamiento y de entrada/salida mediante el uso de múltiples CPU y discos en paralelo. Los sistemas de bases de datos centralizados y cliente-servidor no son lo suficientemente potentes para manejar tales aplicaciones. En el procesamiento paralelo, muchas operaciones se realizan simultáneamente, a diferencia del procesamiento en serie, en el que los pasos computacionales se realizan secuencialmente. Las bases de datos paralelas se pueden dividir a grandes rasgos en dos grupos, el primer grupo de arquitectura es la arquitectura multiprocesador, cuyas alternativas son las siguientes:

Arquitectura de memoria compartida
Donde varios procesadores comparten el espacio de memoria principal (RAM) pero cada procesador tiene su propio disco (HDD). Si se ejecutan muchos procesos simultáneamente, la velocidad se reduce, lo mismo que ocurre con una computadora cuando se ejecutan muchas tareas en paralelo y la computadora se vuelve más lenta.
Arquitectura de disco compartido
Donde cada nodo tiene su propia memoria principal, pero todos los nodos comparten un almacenamiento masivo, normalmente una red de área de almacenamiento . En la práctica, cada nodo suele tener también varios procesadores.
Arquitectura sin nada compartido
Donde cada nodo tiene su propio almacenamiento masivo así como memoria principal.

El otro grupo de arquitectura se denomina arquitectura híbrida, que incluye:

En este caso, se utilizan conmutadores o concentradores para conectar diferentes computadoras; su forma más barata y sencilla es utilizar solo topologías simples para conectar diferentes computadoras. Es mucho más inteligente si se implementan conmutadores .

Tipos de paralelismo

Paralelismo intraconsulta
Una única consulta que se ejecuta en paralelo utilizando múltiples procesadores o discos. [2]
Paralelismo independiente
Ejecución de cada operación individualmente en diferentes procesadores solo si se pueden ejecutar independientemente una de otra. Por ejemplo, si necesitamos unir cuatro tablas, entonces dos se pueden unir en un procesador y las otras dos en otro procesador. La unión final se puede realizar más tarde.
Paralelismo en línea de tuberías
Ejecución de diferentes operaciones de forma segmentada. Por ejemplo, si necesitamos unir tres tablas, un procesador puede unir dos tablas y enviar los registros del conjunto de resultados a medida que se producen al otro procesador. En el otro procesador, se puede unir la tercera tabla con los registros entrantes y se puede producir el resultado final.
Paralelismo intraoperativo
Ejecución de operaciones complejas o grandes en paralelo en varios procesadores. Por ejemplo, la cláusula ORDER BY de una consulta que intenta ejecutarse en millones de registros se puede paralelizar en varios procesadores.

Referencias

  1. ^ Dewitt, David ; Gray, Jim (1992). "Sistemas de bases de datos paralelas: El futuro de los sistemas de bases de datos de alto rendimiento" (PDF) . Comunicaciones de la ACM . 35 (6): 85. CiteSeerX  10.1.1.119.8427 . doi :10.1145/129888.129894.
  2. ^ Kandasamy, Saravanakumar. "Base de datos paralela - Paralelismo intraconsulta - Sistema avanzado de gestión de bases de datos". Blogger . Consultado el 10 de septiembre de 2017 .