¿Cuál es la mejor estructura de base de datos para almacenar y consultar conjuntos de datos grandes?

Creo que está utilizando la estructura de datos de palabras incorrectamente.

Presto es un motor de consulta analítico enfocado.

Hadoop es una colección de plataformas y aplicaciones HDFS administradas por Apache.

Cassandra es una plataforma de base de datos que es principalmente un almacén de valores clave con algunas características de columnas híbridas.

Las estructuras de datos son abstracciones para definir cómo una computadora puede organizar e interactuar efectivamente con los datos. Se utiliza con un grano mucho más fino que una plataforma. es decir, matriz o tabla hash.

La mayoría de las plataformas de datos utilizarán múltiples tipos de estructuras de datos para interactuar con los datos.

Además, la mayoría de las personas en el espacio de big data que tienen varios tipos de casos de uso a escala buscan una sola plataforma de datos para resolver todo. En general, se supone que tenemos que usar múltiples tipos de herramientas para diferentes tipos de casos de uso.

La verdadera respuesta a su pregunta que creo que está haciendo es; “Utilice las herramientas que se ajusten a la forma en que necesita interactuar con sus datos”.

Todavía hay muchas preguntas sin respuesta antes de que podamos discutir lo que eso significa específicamente. Greg Kemnitz habla de muchos de ellos.

Muchas plataformas pueden almacenar petabytes de datos y analizarlos. ¿Qué tipo de análisis? Menciona clientes, así que supongo que puede particionar por cliente y subpartición por tiempo. ¿Cuál es la cantidad de tiempo común que necesita para interactuar? ¿Cómo lo analizarás? La interacción en el consumo será diferente al mantenimiento. ¿Qué patrones de diseño de mantenimiento tienes? ¿Cuál es el tamaño común por subpartición? ¿Cuáles son las diferencias de distribución entre los clientes más grandes y más pequeños? Tengo muchas más preguntas que necesitan respuesta antes de pensar en plataformas.

Para volúmenes de datos de este tipo, necesitará determinar cuidadosamente sus requisitos. Algunas preguntas:

  • ¿Qué tipo de consulta estás haciendo? ¿Está buscando filas o realmente necesita hacer consultas de búsqueda de propiedades y / o uniones?
  • ¿Qué tan rápido necesita consultar datos? Es decir, ¿puede permitirse cargar datos, crear estructuras de búsqueda y realizar consultas (acceso por lotes, posiblemente horas para construir sus estructuras de búsqueda), ¿necesita tiempo real o puede permitirse algunos lotes? Cuanto más se acerque al tiempo real, más caro será su mundo.
  • ¿Cuánto tiempo necesita conservar los datos? Si va a terminar con docenas o cientos de terabytes de datos, y debe buscarse para siempre, deberá abrir su billetera aún más.

Una vez que descubra sus requisitos para la búsqueda, puede considerar mundos db particulares. Supongo que podría terminar con algún tipo de mundo combinado donde tiene un mundo SQL para la agregación y la creación de informes y un mundo NoSQL para el almacenamiento sin procesar, posiblemente con algún tipo de caché de memoria elegante si realmente necesita super-dooper tiempo real.

Todo lo que puedo decir es que no va a ser barato …

More Interesting

¿Existe algún proyecto de datos abiertos que utilice el aprendizaje automático y la ciencia de datos para proporcionar información sobre los datos de incidentes de aplicación de la ley disponibles públicamente?

¿Por qué utilizamos la política codiciosa de epsilon para la evaluación en el aprendizaje por refuerzo?

¿Cuál es la diferencia entre modelos discriminativos y generativos en el contexto de la segmentación de imágenes?

¿Qué es el aprendizaje automático y cuál es su futuro?

Serie temporal: ¿Existe un enfoque para la detección de anomalías que no se base en datos de entrenamiento anteriores?

¿Cuál es la diferencia entre un contenedor y un algoritmo de filtro en Data Mining / Machine Learning?

¿Cómo determinaría si el error de cuando ejecuta su algoritmo de aprendizaje automático es de alto sesgo o alta varianza (también conocido como corte o sobreajuste)?

Cómo identificar la ubicación de cualquier mensaje de texto usando ML o NLP

¿Es Cortana de Microsoft una copia flagrante de Siri de Apple?

¿Por qué una gran proporción de los nuevos estudiantes de CS optan por especializarse en áreas más nuevas como el aprendizaje automático, la informática social y la informática móvil en lugar de las más antiguas como los sistemas, la arquitectura y las redes?

¿Podemos usar SGD para entrenar el modelo de mezcla, como GMM y movMF?

¿Es la informática de alto rendimiento un conocimiento esencial para el aprendizaje profundo dado que se trata de una gran red neuronal?

¿Cómo entrenamos redes neuronales en imágenes en lugar de datos numéricos?

En su opinión, ¿la sugerencia de lectura recomendada basada en la actividad de navegación de los usuarios de Wikipedia mejorará la genialidad del sitio?

Si la tasa de predicción de un algoritmo de aprendizaje automático mantiene porcentajes bajos (50% a 60%) en un conjunto de datos, ¿cómo puedo mejorar?