Necesito agregar datos de una variedad de fuentes, y estoy considerando usar BigQuery o Keen IO – Analytics for Developers como una especie de almacén de datos. ¿Cómo se comparan? ¿Alguien ha tenido una experiencia de ambos?

BigQuery es una infraestructura que requiere que cargue los datos en Big Query antes de hacer una pregunta. Tendrá que cargar sus datos, en lote. Entonces, si está haciendo un análisis de datos antiguos o históricos, puede hacerlo en BigQuery. Pero si está haciendo análisis en vivo de datos que llegan uno por uno, entiendo que no puede hacerlo fácilmente en BigQuery.

Si necesita hacer OLAP o procesamiento de análisis en vivo en línea, es posible que desee utilizar Keen IO. Le permite enviar eventos constantemente y ejecutar análisis en la parte superior para obtener métricas de último minuto. Al mismo tiempo, está construido teniendo en cuenta la escalabilidad en todo el conjunto y utiliza tecnologías como Apache Storm [1], Apache Kafka [2] y Cassandra [3]. Al usar una herramienta de desarrollador como Keen, puede aprovechar el almacenamiento, el análisis y la visualización de datos directamente a través de la API. Esto es genial porque es simple en comparación con el mismo esfuerzo de orquestación requerido para mantener la infraestructura.

Si necesita crear informes que no sean análisis ad-hoc, puede hacerlo construyendo sobre BigQuery. Keen también te permite construir cosas encima. Es más fácil construir cosas sobre Keen IO, porque es una herramienta que le brinda muchas opciones ya construidas para este propósito. Keen tiene la capacidad de crear informes personalizados y paneles que analizan datos en vivo. Nuestros clientes piden esto todo el tiempo, tanto que le hemos dado un nombre: Native Analytics: las empresas de análisis en vivo incorporan sus aplicaciones para que estén orientadas al cliente.

Sin repetir lo que otros han respondido aquí, también he encontrado este artículo del Blog de análisis de datos sobre las diferencias entre BigQuery y Keen IO: análisis para desarrolladores bastante útil: ¿Keen.io o Google BigQuery?

Tanto BigQuery como Keen IO utilizan un modelo de pago por uso. La facturación se basa en cuánto almacena y calcula. Los conceptos de almacenamiento y cómputo son independientes, lo que le permite escalar y pagar cada uno de forma independiente, lo que ayuda a mantener las cosas flexibles para aquellos que comienzan a encontrar el precio que se adapte a sus necesidades. Para Keen hay un plan de autoservicio gratuito disponible; cualquier uso de hasta $ 20 es gratis. Ambas compañías ofrecen un modelo de pago por uso o un precio mensual fijo para aquellos que necesitan previsibilidad de costos.

Notas al pie

[1] Storm (procesador de eventos) – Wikipedia

[2] Apache Kafka – Wikipedia

[3] Apache Cassandra – Wikipedia

Keen IO está creado para conjuntos de datos “basados ​​en eventos”. Usted registra una secuencia de eventos sobre cosas que están sucediendo … podrían ser clientes haciendo cosas, o un dispositivo que escupe registros. Ofrecen una API REST y una biblioteca de visualización basada en JavaScript construida sobre su almacén de datos subyacente. Internamente, creo que Keen IO se basa en Cassandra (The Apache Cassandra Project) y Storm (Storm, computación distribuida y tolerante a fallas en tiempo real).

BigQuery es una herramienta de consulta más general. Se basa en el proyecto Dremel de Google ( https://cloud.google.com/files/B …) y expone una API SQL sobre REST. Puede cargar todo tipo de datos en BigQuery, más allá de las secuencias de eventos. Básicamente es una base de datos SQL realmente rápida.

Redshift es otra alternativa de Amazon, que nuevamente le permite cargar todo tipo de datos y expone un punto final de protocolo de conexión PostgreSQL. Redshift es básicamente una base de datos SQL altamente escalable, creada para análisis de datos de tipo analítico. Si está buscando analizar datos de clientes, https://segment.com/redshift podría ser una forma muy fácil de comenzar.

Aunque tanto Keen IO – Analytics for Developers como BigQuery son sobre análisis; Tienen algunas diferencias fundamentales.

Keen le ofrece (tal como mencionó Peter Reinhardt), una biblioteca que puede usar para emitir datos junto con una API REST para ejecutar consultas y crear visualizaciones que puede integrar en un producto o una página web. En cierto sentido, intentan cubrir todos los aspectos del proceso de análisis de datos, desde la recopilación hasta la visualización de los resultados de sus consultas.

BigQuery, por otro lado (o Redshift), es más una solución tradicional de almacenamiento de datos. Se centra principalmente en almacenar y consultar grandes cantidades de datos, y la interfaz que generalmente tiene con estos sistemas es SQL.

La forma en que se recopilarán y cargarán los datos y qué usar para visualizar los resultados de sus consultas depende totalmente de usted. No puedo hablar sobre la escalabilidad y el costo de Keen, pero las soluciones de almacenamiento de datos como BigQuery tienen que ver con la escalabilidad y la rentabilidad.

Por lo tanto, la cantidad de datos junto con su presupuesto y la flexibilidad que desea tener con respecto a cómo cargar y visualizar sus datos son los principales factores decisivos aquí.

Un escenario típico para usar algo como BigQuery es usar una herramienta como Blendo para cargar sus datos provenientes de diferentes fuentes en su almacén de datos y luego usar algo como Looker o Tableau para consultas y visualización (descargo de responsabilidad: soy cofundador de Blendo) .