sql >> Base de Datos >  >> RDS >> Database

¿Qué es la base de datos Greenplum? Introducción a la base de datos de Big Data

La base de datos Greenplum es una base de datos SQL de procesamiento paralelo masivo (MPP) que está construida y basada en PostgreSQL. Puede escalar hacia una carga de trabajo de datos de nivel de varios petabytes sin un solo problema y permite el acceso a un grupo de servidores potentes que trabajarán juntos dentro de una sola interfaz SQL donde puede ver todos los datos. En esta publicación de blog, explicamos qué es Greenplum y desglosamos la arquitectura de Greenplum, las ventajas, los principales casos de uso y cómo comenzar.

¿Qué es exactamente Greenplum?

Greenplum Database es una base de datos MPP independiente del hardware y de código abierto para análisis, basada en PostgreSQL y desarrollada por Pivotal, que luego fue adquirida por VMware. Su arquitectura se diseñó especialmente para administrar almacenes de datos a gran escala y cargas de trabajo de inteligencia comercial al brindarle la capacidad de distribuir sus datos en una multitud de servidores.

Esta base de datos repleta de funciones proporciona análisis potentes y rápidos sobre datos que se amplían a volúmenes de petabytes.

De un vistazo:TLDR

La Arquitectura Greenplum

Greenplum utiliza un diseño de base de datos MPP que puede ayudarlo a desarrollar una implementación escalable y de alto rendimiento. Leer ahora

Ventajas de Greenplum

El alto rendimiento, la optimización de consultas, el código abierto y el almacenamiento de datos polimórficos son las principales ventajas de Greenplum. Leer ahora

Casos de uso principales

Vea por qué Greenplum es la mejor base de datos para análisis, aprendizaje automático y casos de uso de IA. Leer ahora

La Arquitectura Greenplum

Para comprender bien la arquitectura de Greenplum, veamos primero qué es una base de datos MPP.

¿Qué es una base de datos MPP?

Al manejar grandes cantidades de datos complejos, o big data, es probable que su máquina principal comience a verse aplastada por todos los datos que tiene que procesar para producir su análisis resultados. Para satisfacer esta necesidad de procesamiento más rápido y permitir resultados más rápidos, muchas organizaciones consideran adoptar una base de datos MPP.

El sistema MPP aprovecha una arquitectura de nada compartido para manejar múltiples operaciones en paralelo. Utiliza varias unidades de procesamiento diferentes que funcionan de forma independiente utilizando su propia memoria y recursos dedicados, por lo que la carga de trabajo se comparte entre varios dispositivos en lugar de uno solo. Por lo general, un sistema MPP tiene un nodo líder y uno o varios nodos de cómputo. El nodo líder, llamado "maestro" en Greenplum, les dice a todos los demás nodos, llamados segmentos en Greenplum, qué hacer y fusiona sus respuestas para crear la respuesta final.

Bases de datos MPP escalar horizontalmente agregando más recursos informáticos (nodos), en lugar de tener que preocuparse por actualizar a servidores individuales cada vez más costosos (escalar verticalmente).

Diseño arquitectónico Greenplum

Basado en la arquitectura PostgreSQL, Greenplum esencialmente aprovecha varias instancias de bases de datos PostgreSQL a la vez en un único clúster de Greenplum. Los usuarios de PostgreSQL pueden familiarizarse rápidamente con este tipo de base de datos, ya que muchas de las funciones, configuraciones y funcionalidades son las mismas en Greenplum e incluyen funciones diseñadas para optimizar el funcionamiento de PostgreSQL para tareas y cargas de trabajo de inteligencia empresarial (BI).

Greenplum también introdujo muchas funciones que no están disponibles en PostgreSQL, como la carga de datos en paralelo, la gestión de recursos, las mejoras de almacenamiento y la optimización avanzada de consultas, lo que la convierte en una oferta atractiva cuando se compara el dos.

Al igual que PostgreSQL, Greenplum aprovecha un servidor maestro, o host, que es el punto de entrada a la base de datos, acepta conexiones y consultas SQL. Sin embargo, donde PostgreSQL aprovecha los nodos en espera para distribuir geográficamente su implementación, Greenplum usa hosts de segmento que almacenan y procesan los datos. Los segmentos de Greenplum son independientes y cada uno almacena una parte de los datos, aunque manejan la mayoría del procesamiento de consultas. Puede aprovechar tan solo dos hosts de segmento y escalar a una capacidad ilimitada. Si tiene la duplicación habilitada, debe aumentar los hosts de su segmento en incrementos de al menos dos.

Entonces, ¿cómo se coordina todo esto? La interconexión de Greenplum es la capa de red de la arquitectura y administra la comunicación entre los segmentos de Greenplum y la infraestructura de red del host principal.

Ventajas de Greenplum

Estas son algunas de las ventajas clave de Greenplum que pueden ayudarlo a mejorar el rendimiento de su base de datos:

  • Alto rendimiento

    Greenplum tiene una canalización de datos de diseño único que puede transmitir datos de manera eficiente desde el disco a la CPU, sin depender de que los datos encajen en la memoria RAM, como se explica en Greenplum Next Generation Big Plataforma de datos:Artículo de las 5 razones principales. Esto proporciona a las implementaciones de Greenplum un gran impulso en el rendimiento sobre los sistemas en memoria que necesitan suficiente memoria para almacenar sus datos, o sistemas no basados ​​en RDBMS que son motores de procesamiento en memoria que asignan RAM para cada consulta simultánea. El alto rendimiento de Greenplum elimina el desafío que la mayoría de los RDBMS tienen para escalar a niveles de datos petabtye, ya que pueden escalar linealmente para procesar datos de manera eficiente.

  • Optimización de consultas

    Greenplum presenta un optimizador de consultas basado en costos para cargas de trabajo de big data a gran escala. Aprovechando el rendimiento como lo mencionamos anteriormente, Greenplum escala el análisis interactivo y en modo por lotes a una escala de petabytes sin degradar el rendimiento de su consulta. Esto permite que Greenplum distribuya la carga entre sus diferentes segmentos y use todos los recursos del sistema en paralelo para procesar una consulta.

    Además, con las mejoras en la carga de trabajo de OLTP (procesamiento transaccional en línea) en Greenplum 6, el rendimiento de consultas únicas ha mejorado más de 3.5c con respecto a Greenplum 5. Con esta actualización, Greenplum eliminó muchos de los bloquear la competencia para que el uso de la CPU maestra pueda superar el 90 %, lo que mejora el rendimiento de la consulta al mejorar el rendimiento del hardware del nodo maestro.

  • Código abierto

    La base de datos Greenplum es un proyecto de almacén de datos de código abierto basado en el núcleo de código abierto de PostgreSQL, que permite a los usuarios aprovechar las décadas de desarrollo experto detrás de PostgreSQL, junto con la personalización específica de Greenplum. para aplicaciones de grandes datos. Greenplum puede ejecutarse en cualquier servidor Linux, ya sea que esté alojado en la nube o en las instalaciones, y puede ejecutarse en cualquier entorno.

    Si bien Greenplum es mantenido por un equipo central de desarrolladores con derechos de compromiso en el repositorio principal, están ansiosos por recibir nuevos colaboradores que tengan experiencia con la base de datos para ayudar a dar forma al futuro de Greenplum. Obtenga más información sobre cómo participar a través de la página de Greenplum GitHub.

  • Almacenamiento de datos polimórficos

    El almacenamiento de datos polimórficos de Greenplum le permite controlar la configuración de su tabla y el almacenamiento de particiones con la libertad de ejecutar y comprimir archivos en cualquier momento. Esto le permitirá diseñar sus tablas en función de la forma en que se accede a sus datos específicos y, a su vez, tener una jerarquía de almacenamiento orientada a filas o columnas.

    Cuando crea una tabla en Greenplum, puede controlar la orientación con la capacidad de elegir datos orientados a columnas oa filas. La orientación por columnas suele ser mejor para escaneos completos, mientras que la orientación por filas es mejor para escaneos pequeños o búsquedas.

Greenplum incluso le permite crear funciones y tipos de datos específicos del dominio. Mediante el uso de tipos de datos semiestructurados, que incluyen XML, HStore y JSON, tiene la capacidad de almacenar y analizar datos estructurados y no estructurados dentro de una base de datos.

¿Qué es la base de datos Greenplum? Introducción a la base de datos de Big DataHaga clic para twittear

Casos de uso principales

Greenplum proporciona una poderosa combinación de bases de datos de procesamiento paralelo masivo y análisis de datos avanzados que le permite crear un marco para que los científicos y arquitectos de datos tomen decisiones comerciales basadas en datos recopilados por inteligencia artificial. y aprendizaje automático. Repasemos los principales casos de uso de Greenplum:

Análisis

El análisis avanzado proporcionado por Greenplum se está utilizando en muchos sectores verticales, incluidos finanzas, fabricación, automoción, gobierno, energía, educación, comercio minorista, etc., para abordar una amplia variedad de problemas Algunas de las capacidades de análisis de la base de datos de Greenplum destacadas por Pivotal incluyen la capacidad de analizar una multitud de tipos de datos, aprovechar el conocimiento de SQL existente y entrenar más modelos en menos tiempo mediante el uso de la arquitectura MPP.

Además, Greenplum proporciona análisis en la base de datos que le permite ejecutar análisis directamente en la base de datos en lugar de exportar y ejecutar sus datos en un motor de análisis externo. Como una base de datos adaptada a las cargas de trabajo empresariales, proporciona la capacidad necesaria para explorar grandes conjuntos de datos junto con el alto rendimiento que se logra al comparar los análisis en los hosts de segmento disponibles. También puede aprovechar una amplia gama de herramientas de análisis de potencia con Greenplum, incluidas MADlib, lenguaje estadístico R, SAS y lenguaje de marcado de modelado predictivo (PMML).

Por ejemplo, una empresa de marketing en Internet a escala de mil millones de dólares está utilizando análisis avanzados de Greenplum para realizar perfiles de audiencia para comprender quién es su audiencia, qué compran, qué redes y dispositivos utilizan, y dónde están ubicados geográficamente para que puedan comprender y servir mejor a su mercado.

Aprendizaje automático

Greenplum es una base de datos excelente para el aprendizaje automático:el estudio de algoritmos informáticos que mejoran automáticamente a través de la experiencia. Apache MADlib es una biblioteca de aprendizaje automático basada en SQL de código abierto que se ejecuta en la base de datos en Greenplum, así como en PostgreSQL. Esta combinación lo ayuda a mejorar el paralelismo, la escalabilidad y la precisión predictiva de su implementación de aprendizaje automático de Greenplum. Las capacidades de transformación de datos e ingeniería de características también están disponibles a través de MADlib para el aprendizaje automático, incluidas las estadísticas descriptivas e inferenciales, pivote, sesionización y codificación de variables categóricas.

Por ejemplo, una empresa de retención de ingresos por fraude del gobierno está aprovechando las capacidades de aprendizaje automático de Greenplum junto con GemFire ​​para realizar una detección de fraude a gran escala para evitar el robo de identidad, detectando y reteniendo $ 5 mil millones anuales y procesando 8 millones de casos al día.

IA

La inteligencia artificial (IA), si bien es similar al aprendizaje automático, se refiere a la idea más amplia de que las máquinas pueden ejecutar tareas de manera inteligente. Greenplum es una excelente opción de base de datos para aplicaciones que buscan imitar las habilidades humanas a través de máquinas inteligentes. Con la capacidad de Greenplum para ingerir grandes volúmenes de datos a altas velocidades, convierte a esta base de datos en una herramienta poderosa para aplicaciones inteligentes que necesitan interactuar de manera inteligente en función de una cantidad ilimitada de escenarios únicos.

Por ejemplo, una empresa de telecomunicaciones está utilizando las capacidades de IA de la base de datos de Greenplum para sus sensores inteligentes del sistema de informes operativos de IoT para analizar y ejecutar eventos utilizados para el mantenimiento, la seguridad y la eficiencia operativa.

Entonces, ¿quién usa Greenplum hoy? Los clientes de Greenplum incluyen American Express, Walmart, Asurian, Bank of America y muchos más en los mercados de banca, servicios profesionales, medios, seguros, atención médica, automotriz y minorista.

Cómo empezar

Como se menciona a lo largo de esta publicación, Greenplum es una base de datos de código abierto, por lo que la descarga y el uso de la versión comunitaria son totalmente gratuitos. La pequeña pero activa comunidad de Greenplum da la bienvenida a nuevos colaboradores, acepta comentarios y colabora con los evangelistas de Greenplum para promover la base de datos de big data.

Muchas organizaciones que aprovechan Greenplum buscan soporte y herramientas adicionales para ayudar a sus administradores de bases de datos a administrar sus implementaciones. Estas son las dos opciones diferentes de administración y soporte de bases de datos disponibles para Greenplum:

ScaleGrid para la base de datos Greenplum®:versión de código abierto

ScaleGrid for Greenplum® Database es una solución completamente administrada para la versión de código abierto de Greenplum, que se lanzará en mayo de 2020. La plataforma de múltiples nubes le permite implementar y administrar en AWS, Plataformas en la nube Azure o Google Cloud (próximamente), o entornos locales de VMware. ScaleGrid proporciona a los usuarios de Greenplum las herramientas de administración avanzada que necesitan para implementar con un solo clic, automatizar las copias de seguridad y escalar dinámicamente con la capacidad de mantener todos los privilegios de administrador de superusuario sobre sus implementaciones de código abierto.

Pivotal Greenplum:versión comercial

Pivotal Greenplum, ahora VMware Tanzu es el creador detrás de la base de datos de código abierto que ofrece una versión comercial de la base de datos para ayudarlo a implementar y administrar Greenplum en la nube y en las instalaciones. Pivotal Greenplum ofrece muchas ventajas, como la capacidad de maximizar el tiempo de actividad, proteger la integridad de los datos y manejar datos de transmisión y datos en la nube con facilidad.

Tanto ScaleGrid como Pivotal Greenplum ofrecen paquetes de soporte avanzados para ayudar a su DBA a optimizar sus implementaciones de Greenplum.