Redshift vs BigQuery vs Snowflake: una comparación del DataWarehouse más popular para la transformación digital basada en datos y el análisis de datos dentro de las empresas

Bootcamp AI
8 min readOct 14, 2020

--

La transformación digital es la nueva norma dentro de la organización moderna, en la que continuamente desafían el status quo, experimentan y se sienten cómodos con el fracaso para impulsar nuevos éxitos; como tales, estos experimentos requieren una rápida configuración de DataWarehouse y soluciones de análisis de datos listas para usar.

Solía ​​llevar meses, si no trimestres, poner en funcionamiento un DataWarehouse. Y necesitaría la ayuda de Accenture o IBM. Bueno, ya no.

La arquitectura del DataWarehouse está cambiando rápidamente. Las empresas se están moviendo cada vez más hacia DataWarehouse basados ​​en la nube con un costo inicial más bajo, escalabilidad mejorada y rendimiento en lugar de los sistemas tradicionales en las instalaciones.

Cuando nuestros clientes nos preguntan cuál es el mejor DataWarehouse para sus proyectos de análisis de datos o transformación digital basada en datos, consideramos la respuesta en función de sus necesidades específicas. Por lo general, necesitan datos casi en tiempo real a un precio bajo sin la necesidad de mantener la infraestructura de DataWarehouse. En este caso, les recomendamos que utilicen DataWarehouse modernos como Redshift, BigQuery o Snowflake.

Desde el 18 de mayo de 2020, las 3 soluciones han atraído una atención bastante seria:

Fuentes para su adopción individual: RedShift , BigQuery , Snowflake

Consideraciones

Generalmente, cuando los equipos de transformación digital tienen la intención de usar un DataWarehouse dentro de un entorno de nube, deberían considerar:

  • Geolocalización de los datos
  • Volumen de datos
  • Recursos humanos dedicados para el soporte y mantenimiento
  • Escalabilidad: horizontal frente a vertical
  • Seguridad
  • Modelos de precios

Ubicación geográfica del DataWarehouse

Dependiendo del país en el que se encuentre, puede enfrentar diferentes restricciones sobre el tipo de datos que pueden residir fuera del país, lo que limita la solución que puede utilizar. A partir del 18 de mayo de 2020, las soluciones están disponibles en estos países:

Para obtener una versión actualizada, consulte las regiones Redshift , Bigquery y Snowflake .

Si no puede encontrar su país en la lista, no se preocupe, todavía hay formas en las que puede aprovechar estos recursos. Para hacerlo, debe:

  • Anonimizar sus datos (eliminar toda la información de identificación personal (PII) como nombre, número de teléfono, dirección, direcciones de correo electrónico, etc.)
  • Asegúrese de que su política de cifrado de datos en la plataforma coincida con los requisitos de su país
  • Consulte con su delegado de protección de datos interno o con las autoridades pertinentes.

Una vez que haya terminado, debería poder continuar con estos servicios.

Volumen de datos

Necesita conocer las estimaciones del volumen de datos (y el tipo de datos) con los que tratará y la fuente de la que vendrán.

Volúmenes de datos:

  • El punto óptimo de Postgres, MySQL, MSSQL y muchos otros RDBMS es de hasta 1 TB de datos involucrados en análisis. Si se excede este tamaño, puede experimentar un rendimiento degradado.
  • Las soluciones basadas en Amazon Redshift, Google BigQuery, Snowflake y Hadoop admiten un tamaño de conjunto de datos de hasta varios petabytes de manera óptima.

Tipo de datos:

Fuente de datos:

Si aún no está utilizando ninguna de las infraestructuras en la nube para ejecutar sus servicios existentes, deberá considerar invertir en la construcción de tuberías de datos para enviar datos a través de Internet a través de VPN para enviar sus datos al DataWarehouse respectivo. Ejemplos de cómo se verá para cada servicio son los siguientes:

  1. AWS Redshift

Ejemplo de una canalización de datos para AWS Redshift. Fuente: Automatización de flujos de trabajo de análisis en AWS

2. Google BigQuery

Ejemplo de una canalización de datos para Google BigQuery. Fuente: Ejecución de Spark en Dataproc y carga en BigQuery con Apache Airflow

3. Snowflake

Ejemplo de una canalización de datos para Snowflake. Fuente: conector de fábrica de datos Snowflake (con credenciales dinámicas y SQL)

El diseño variará según su caso de uso.

Recursos humanos dedicados para el soporte y mantenimiento

Si tiene recursos dedicados para el soporte y el mantenimiento, se ha ganado muchas más opciones para elegir la base de datos.

Los criterios de selección se desglosan en:

  • Configurar recursos de ingeniería
  • Recursos de ingeniería de mantenimiento continuo
  • Conjuntos de habilidades del personal

Aunque Redshift, Bigquery y Snowflake son mucho más fáciles de usar, necesitará comprender el impacto de cada limitación.

Escalabilidad: horizontal frente a vertical

Cuando comienza a trabajar con una base de datos, espera que sea lo suficientemente escalable para respaldar su mayor crecimiento. En términos generales, la escalabilidad de la base de datos se puede lograr de dos formas, horizontal o verticalmente.

La escalabilidad horizontal se refiere a la adición de más máquinas, mientras que la escalabilidad vertical significa la adición de recursos en un solo nodo para aumentar su capacidad.

En la mayoría de los casos, el escalado horizontal se refiere al aumento de la potencia informática, mientras que el escalado vertical se refiere a agregar más almacenamiento o memoria de acceso aleatorio (RAM).

Esto significa que se deben realizar más esfuerzos de ingeniería para configurar Redshift, ya que la computación y el almacenamiento están acoplados, no puede agregar nuevos procesadores para computar ni agregar espacio de almacenamiento adicional sin reconfigurar el clúster. Mientras que para BigQuery y Snowflake, no existe tal preocupación, ya que la computación y el almacenamiento son independientes con procesos ya integrados en anticipación del escalado vertical u horizontal.

Seguridad

Otro factor importante que afecta la decisión de compra de un servicio de almacenamiento de datos es la seguridad. Es importante saber que los datos no se filtrarán a terceros malintencionados. De hecho, las 3 soluciones tienen medidas de seguridad integradas para proteger sus datos.

Consulte lo siguiente para conocer las características de seguridad de Redshift , BigQuery y Snowflake .

Modelos de precios

Determinar qué solución tiene la mejor relación calidad-precio es la más difícil de medir, ya que depende en gran medida del caso de uso, por lo tanto, describiremos los casos de uso mejor aplicados para cada plataforma; pero primero, echemos un vistazo a los modelos de precios:

Consulte lo siguiente para conocer los precios de Redshift , BigQuery y Snowflake .

En términos de precios, Redshift es más predecible ya que los recursos ya están predeterminados, Snowflake también se puede medir fácilmente ya que depende del tiempo invertido, mientras que BigQuery es más difícil de predecir ya que el recurso de consulta requerido varía a menos que esté dispuesto a pagar un precio fijo.

Veamos qué casos son óptimos para cada servicio según los modelos de precios.

1) Redshift

Se aplica mejor a escenarios que requieren un cálculo constante, por ejemplo:

a) Informes diarios de NASDAQ: carga de trabajo urgente para informes de datos

b) Ofertas publicitarias automatizadas: las ofertas en ciertas redes publicitarias se ajustan a través de modelos predictivos sobre Redshift casi en tiempo real

c) Paneles de control en vivo: tener transmisión de datos en vivo con consultas continuas mediante actualización

2) BigQuery

Se aplica mejor a escenarios con cargas de trabajo puntiagudas (es decir, está ejecutando muchas consultas ocasionalmente, con un alto tiempo de inactividad), por ejemplo:

a) Modelos de recomendación: que se ejecutan una vez al día para aplicaciones de comercio electrónico

b) Informes ad-hoc: consultas complejas en ocasiones para un informe trimestral

c) Inteligencia de ventas: para que los equipos de ventas o marketing realicen descubrimientos ad-hoc mediante el análisis de los datos de la forma que deseen.

d) Machine Learning: para descubrir nuevos patrones en los datos, especialmente el comportamiento del consumidor.

3) Snowflake

Se aplica mejor a un patrón de uso más constante y continuo, pero requiere un aumento y reducción constante, por ejemplo:

a) Empresas de inteligencia empresarial: muchos usuarios simultáneos (de 100 a 1000) consultan los datos al mismo tiempo para descubrir un patrón en los datos.

b) Proporcionar datos como un servicio: otorgar a miles de clientes acceso a sus datos con fines de análisis en forma de una interfaz de usuario de análisis o API de datos.

¿Qué DataWarehouse es el adecuado para usted?

En última instancia, en el mundo de los DataWarehouse basados ​​en la nube, Redshift, BigQuery y Snowflake son similares en el sentido de que brindan la escala y el ahorro de costos de una solución en la nube. La principal diferencia que probablemente querrá considerar es la forma en que se facturan los servicios, especialmente en términos de cómo funcionará este estilo de facturación con su estilo de flujo de trabajo. Si tiene datos muy grandes, pero una carga de trabajo con picos (es decir, está ejecutando muchas consultas ocasionalmente, con un alto tiempo de inactividad), BigQuery probablemente será más barato y más fácil para usted. Si tiene un patrón de uso más constante y continuo cuando se trata de consultas y los datos con los que está trabajando, puede ser más rentable optar por Snowflake, ya que podrá acumular más consultas en las horas que desee. estás pagando.

Conoce más de Bootcamp AI

www.bootcampai.org

--

--