2011-11-25 11 views
5

¿Cuál es el sentido de alimentar un clúster de Hadoop y usar ese clúster para enviar datos a un datawarehouse de Vertica/InfoBright?¿Por qué las bases de datos orientadas a columnas como Vertica/InfoBright/GreenPlum hacen un alboroto de Hadoop?

Todos los vendedores siguen diciendo "nos podemos conectar con Hadoop", pero no entiendo cuál es el punto. ¿Cuál es el interés de almacenar en Hadoop y transferirlo a InfoBright? ¿Por qué no hacer que las aplicaciones se almacenen directamente en Infobright/Vertica DW?

¡Gracias!

Respuesta

0

no soy un usuario Hadoop (sólo un Vertica usuario/DBA), pero yo supongo que la respuesta sería algo como lo siguiente:

-Usted ya tienen una configuración utilizando Hadoop y que desea añadir una base de datos de "Big Data" para un análisis analítico intensivo.

- Desea utilizar Hadoop para funciones y procesamiento no analíticos y una base de datos para el análisis. Pero es la misma información, por lo que no hay necesidad de dos alimentaciones.

3

Existen varias razones por las que puede querer hacer eso 1. Costo por TB. Los costos de almacenamiento en Hadoop son mucho más baratos que Vertica/Netezza/greenplum y similares. Puede obtener retención a largo plazo en Hadoop y datos a más corto plazo en el DB de análisis 2. Las capacidades de ingestión de datos en hadoop (realizar transformaciones) son mejores en Hadoop 3. análisis programático (bibliotecas como Mahout) para que pueda generar análisis de texto avanzados 4. se trata de datos no estructurados

el DBS MPP proporcionan un mejor rendimiento en las consultas ad-hoc, mejor trata de datos estructurados y conectividad a las herramientas tradicionales de BI (OLAP y presentación de informes) - así que básicamente Hadoop complementa la oferta de estos DBs

0

Para ampliar ligeramente la respuesta de Arnon, Hadoop ha sido reconocido como una fuerza que no se va y está ganando cada vez más trafico en las organizaciones, muchas veces a través de esfuerzos de base de los desarrolladores. Las bases de datos de MPP son buenas para responder preguntas que conocemos en el momento del diseño, como "¿Cuántas transacciones obtenemos por hora por país?".

Hadoop comenzó como una plataforma para un nuevo tipo de desarrollador que vive en algún lugar entre analistas y desarrolladores, uno que puede escribir código pero también entiende el análisis de datos y el aprendizaje automático. Las bases de datos de MPP (columna o no) son muy pobres para este tipo de desarrolladores que a menudo analizan datos no estructurados, utilizando algoritmos que requieren demasiada potencia de CPU para ejecutarse en una base de datos o conjuntos de datos que son demasiado grandes. La gran cantidad de potencia de CPU necesaria para construir algunos modelos hace que sea imposible ejecutar estos algoritmos en cualquier tipo de BD fragmentada tradicional.

Mi oleoducto personal utilizando Hadoop normalmente se ve como:

  1. Ejecutar una serie de consultas globales muy grandes en Hadoop para tener una idea básica de los datos y la distribución de las variables.
  2. Use Hadoop para compilar un conjunto de datos más pequeño con los datos que me interesan.
  3. Exportar el conjunto de datos más pequeño a una base de datos relacional.
  4. un montón de ejecución de pequeñas consultas en la base de datos relacional, construir hojas de Excel, a veces hacer un poco R.

Tenga en cuenta que este flujo de trabajo sólo funciona para el "desarrollador analista" o "científico de datos". Otras millas variarán.

Volviendo a su pregunta debido a que personas como yo abandonan sus herramientas, estas compañías buscan formas de seguir siendo relevantes en una era donde Hadoop es sinónimo de big data, las mejores startups y tecnología de vanguardia (ya sea que se gane o no se puede discutir entre ustedes.) También muchas instalaciones Hadoop son de un orden de magnitud o más grandes que las implementaciones MPP de una organización, lo que significa que se retienen más datos por más tiempo en Hadoop.

14

¿Por qué combinar las soluciones? Hadoop tiene algunas capacidades excelentes (ver la URL a continuación). Sin embargo, estas capacidades no incluyen que los usuarios empresariales puedan ejecutar análisis rápidos. Las consultas que demoran entre 30 minutos y horas en Hadoop se entregan en 10 segundos con Infobright.

Por cierto, su pregunta inicial no presuponía una arquitectura MPP y por una buena razón. Los clientes de Infobright Liverail, AdSafe Media & InMobi, entre otros, utilizan IEE con Hadoop.

Si se registra para un White Paper Industry http://support.infobright.com/Support/Resource-Library/Whitepapers/, verá una vista del mercado actual donde se describen cuatro casos de uso sugeridos para Hadoop. Fue creado por Wayne Eckerson, Director de Investigación, Aplicaciones Comerciales y Grupo de Arquitectura, TechTarget, en septiembre de 2011.

1) Cree un archivo en línea.
Con Hadoop, las organizaciones no tienen que eliminar ni enviar los datos al almacenamiento sin conexión; pueden mantenerlo en línea indefinidamente al agregar servidores básicos para cumplir con los requisitos de almacenamiento y procesamiento. Hadoop se convierte en una alternativa de bajo costo para cumplir con los requisitos de archivo en línea.

2) Alimente el almacén de datos.
Las organizaciones también pueden usar Hadoop para analizar, integrar y agregar grandes volúmenes de datos web u otros tipos de datos y luego enviarlos al almacén de datos, donde los usuarios ocasionales y avanzados pueden consultar y analizar los datos utilizando herramientas de BI conocidas. Aquí, Hadoop se convierte en una herramienta de ETL para procesar grandes volúmenes de datos web antes de que llegue al almacén de datos corporativo.

3) Soporte analítico.
El grupo de big data (es decir, desarrolladores de Internet) ve a Hadoop principalmente como un motor analítico para ejecutar cálculos analíticos frente a grandes volúmenes de datos. Para consultar Hadoop, los analistas actualmente necesitan escribir programas en Java u otros lenguajes y comprender MapReduce, un marco para escribir aplicaciones distribuidas (o paralelas). La ventaja aquí es que los analistas no están restringidos por SQL cuando formulan consultas. SQL no es compatible con muchos tipos de análisis, especialmente aquellos que implican cálculos entre filas, que son comunes en el análisis del tráfico web. La desventaja es que Hadoop está orientado a lotes y no es propicio para consultas iterativas.

4) Ejecutar informes.
La orientación por lotes de Hadoop, sin embargo, lo hace adecuado para ejecutar informes programados regularmente. En lugar de ejecutar informes contra datos de resumen, las organizaciones ahora pueden ejecutarlos contra datos brutos, lo que garantiza los resultados más precisos.

0

La base de datos paralela masiva como Greenplum DB es excelente para manejar grandes cantidades de datos estructurados. Hadoop es excelente en el manejo de cantidades aún más masivas de datos no estructurados, p. sitios web.

Hoy en día, un montón de análisis interesantes combinan estos dos tipos de datos para obtener información. Por lo tanto, es importante que estos sistemas de bases de datos puedan integrarse con Hadoop.

Por ejemplo, podría hacer el procesamiento de texto en el clúster Hadoop usando MapReduce hasta que tenga algún valor de puntuación por producto o algo así. Este valor de puntuación podría ser utilizado por la base de datos para combinarlo con otros datos que ya están almacenados en la base de datos o datos que se han cargado en la base de datos desde otras fuentes.

3

Hadoop es más una plataforma que una base de datos.

Piense en Hadoop como un limpio sistema de archivos que admite muchas consultas sobre diferentes tipos de archivos. Con esto en mente, la mayoría de las personas vuelcan los datos sin procesar en Hadoop y los utilizan como una capa de transición en la cadena de datos, donde pueden masticar los datos y enviarlos a otros sistemas como Vertica o cualquier otro. Tiene varias ventajas que se pueden reanudar en desacoplando.

Así que Hadoop está convirtiendo en la plataforma de almacenamiento de facto para grandes cantidades de datos. Es simple, tolerante a fallas, escala bien y es fácil de alimentar y obtener datos de él. Por lo tanto, la mayoría de los proveedores intentan impulsar un producto para las empresas que probablemente tengan una instalación de Hadoop.

0

Los datos no estructurados, por su naturaleza, no son adecuados para cargar en su depósito de datos tradicional. Los trabajos de mapreduce de Hadoop pueden extraer estructuras de sus archivos de registro (por ejemplo) y luego pueden transferirse a su DW para su análisis. Hadoop es un procesamiento por lotes, por lo tanto, no es adecuado para el procesamiento analítico de consultas. Entonces puede procesar sus datos usando hadoop para traer algo de estructura, y luego hacer que la consulta esté lista a través de su capa de visualización/sql.

0

¿De qué sirve alimentar un clúster de Hadoop y usar ese clúster para enviar datos a un datawarehouse de Vertica/InfoBright?

El punto es que no le gustaría que sus usuarios inicien una consulta y esperen unos minutos, a veces horas antes de volver con una respuesta. Hadoop no puede proporcionarle una respuesta de consulta en tiempo real. Aunque esto está cambiando con la llegada del Impala de Cloudera y Stinger de Hortonworks. Estos son motores de procesamiento de datos en tiempo real sobre Hadoop.

El sistema de datos subyacente de Hadoop, HDFS, permite fragmentar sus datos y distribuirlos sobre los nodos de su clúster. De hecho, HDFS también puede ser reemplazado por un almacenamiento de datos de terceros como S3. El punto es: Hadoop proporciona tanto -> almacenamiento + procesamiento. Así que le invitamos a utilizar hadoop como motor de almacenamiento y extraer los datos en su almacén de datos cuando sea necesario. También puede usar Hadoop para crear cubos y marts y almacenar estos marts en el almacén.

Sin embargo, con el advenimiento de Stinger e Impala, la fuerza de estos reclamos eventualmente se borrará. Así que estate atento.

3

¿Qué hace que la implementación conjunta sea tan efectiva para este software?

En primer lugar, ambas plataformas tienen mucho en común:

  • Especialmente diseñado desde cero para la transformación de datos grandes y análisis de la arquitectura
  • apalancamiento MPP a escala con hardware comercial, capaz de gestionar TBs a través de PB de datos
  • apoyo
  • Native HA con una sobrecarga bajo administración

Hadoop es ideal para el análisis inicial de datos exploratorios, donde los datos suelen estar disponibles en HDFS y no requiere esquemas, y los trabajos por lotes suelen ser suficientes, mientras que Vertica es ideal para análisis estilizados e interactivos, donde se conoce un método analítico debe aplicarse repetidamente a los lotes de datos entrantes.

Al usar conector Hadoop de Vertica, los usuarios pueden mover fácilmente los datos entre las dos plataformas. Además, un único trabajo analítico se puede descomponer en partes y piezas que aprovechan el poder de ejecución de ambas plataformas; por ejemplo, en un caso de uso de análisis web, los datos JSON generados por los servidores web se vierten inicialmente en HDFS. A continuación, se invoca un trabajo de reducción de mapa para convertir dichos datos semiestructurados en tuplas relacionales, y los resultados se cargan en Vertica para su almacenamiento y recuperación optimizados mediante consultas analíticas posteriores.

¿Cuáles son las principales diferencias que hacen que Hadoop y Vertica se complementen entre sí al abordar Big Data.

  • interfaz y extensibilidad

    Hadoop
    de Hadoop-mapa reducir interfaz de programación está diseñada para developers.The plataforma es aclamado por su soporte multi-idioma, así como paquetes de bibliotecas de análisis ya hechos suministrado por una comunidad fuerte.
    Vertica
    La interfaz de Vertica cumple con los estándares de la industria de BI (SQL, ODBC, JDBC, etc.). Esto permite que tanto los tecnólogos como los analistas de negocios aprovechen Vertica en sus casos de uso analítico. El SDK es una alternativa al paradigma map-reduce y, a menudo, ofrece un mayor rendimiento.

  • cadena de herramientas/sistema Eco



    Hadoop
    Hadoop HDFS y se integran bien con muchas otras herramientas de código abierto. Está emergiendo su integración con las herramientas de BI existentes.
    Vertica
    Vertica se integra con las herramientas de BI debido a su interfaz compatible con los estándares. A través del conector Hadoop de Vertica, los datos se pueden intercambiar en paralelo entre Hadoop y Vertica.

  • gestión de almacenamiento



    Hadoop Hadoop
    replica los datos de 3 veces por defecto para HA. Segmenta los datos en el clúster de la máquina para equilibrar la carga, pero el esquema de segmentación de datos es opaco para los usuarios finales y no se puede modificar para optimizar los trabajos analíticos.
    Vertica
    La compresión columnar de Vertica a menudo alcanza 10: 1 en su relación de compresión. Una implementación típica de Vertica replica los datos una vez para HA, y ambas réplicas de datos pueden lograr un diseño físico diferente para optimizar una mayor variedad de consultas. Finalmente, Vertica segmenta los datos no solo para el balanceo de carga, sino también para la optimización de la carga de trabajo de compresión y consulta.

  • optimización en tiempo de ejecución

    Hadoop
    Debido a que la gestión de almacenamiento HDFS no ordena o segmentar los datos de maneras que optimizan para un trabajo analítico, en tiempo de ejecución de trabajo los datos de entrada a menudo tiene que ser resegmented a través de la clúster y/o ordenado, incurriendo en una gran cantidad de E/S de red y disco.

    Vertica
    El diseño de datos es a menudo optimizado para la carga de trabajo de consulta de destino durante la carga de datos, de modo que una mínima cantidad de I/O se incurre en tiempo de ejecución de la consulta. Como resultado, Vertica está diseñado para análisis en tiempo real en lugar de procesamiento de datos por lotes.

  • sintonización automática

    Hadoop
    El mapa-reducen programas utilizan lenguas de procedimiento (Java, Python, etc), que proporcionan a los desarrolladores un control detallado de la lógica analítica, pero también requiere que el los desarrolladores optimizan los trabajos cuidadosamente en sus programas.
    Vertica
    El Diseñador de base de datos de Vertica proporciona un ajuste de rendimiento automático dada una carga de trabajo de entrada. Las consultas se especifican en el lenguaje de SQL declarativo y se optimizan automáticamente mediante el optimizador de columnas Vertica.
Cuestiones relacionadas