Analizar tus datos

Last reviewed 2023-08-08 UTC

En este documento del framework de arquitectura de Google Cloud, se explican algunos de los principios básicos y las prácticas recomendadas para el análisis de datos en Google Cloud. Obtendrás información sobre algunos de los servicios de análisis de datos clave y cómo pueden ayudar en las diferentes etapas del ciclo de vida de los datos. Estas prácticas recomendadas te ayudan a satisfacer tus necesidades de análisis de datos y a crear el diseño de tu sistema.

Principios básicos

Las empresas quieren analizar datos y generar estadísticas prácticas a partir de ellos. Google Cloud te proporciona varios servicios que te ayudan durante todo el ciclo de vida de los datos, desde transferencia de datos hasta informes y visualización. La mayoría de estos servicios están completamente administrados y algunos no tienen servidores. También puedes compilar y administrar un entorno de análisis de datos en las VM de Compute Engine, como para alojar por cuenta propia Apache Hadoop. o Beam

Tu enfoque particular, perspectiva estratégica y la experiencia del equipo te ayudan a determinar qué servicios de Google Cloud debes adoptar para respaldar tus necesidades de análisis de datos. Por ejemplo, Dataflow te permite escribir transformaciones complejas en un enfoque sin servidores, pero debes depender de una versión bien definida de los parámetros de configuración para las necesidades de procesamiento. Como alternativa, Dataproc te permite ejecutar las mismas transformaciones, pero puedes administrar los clústeres y ajustar los trabajos por tu cuenta.

Para el diseño de tu sistema, piensa en la estrategia de procesamiento que usan tus equipos, como extracción, transformación y carga (ETL) o extracción, carga y transformación (ELT). Para el diseño de tu sistema, también debes considerar si necesitas procesar análisis por lotes o análisis de transmisiones. Google Cloud proporciona una plataforma de datos unificada y te permite compilar un data lake o un almacén de datos para satisfacer tus necesidades comerciales.

Servicios clave

En la siguiente tabla, se proporciona una descripción general de alto nivel de los servicios de análisis de Google Cloud:

Servicio de Google Cloud Descripción
Pub/Sub Base sencilla, confiable y escalable para el análisis de transmisiones y los sistemas de procesamiento basados en eventos.
Dataflow Un servicio completamente administrado para transformar y enriquecer datos en modos de transmisión (en tiempo real) y por lotes (históricos).
Dataprep de Trifacta Servicio de datos inteligente que permite limpiar, preparar y explorar de manera visual los datos estructurados y no estructurados para su análisis.
Dataproc Es un servicio en la nube rápido, fácil de usar y completamente administrado que permite ejecutar clústeres de Apache Spark y Apache Hadoop.
Cloud Data Fusion Servicio de integración de datos completamente administrado y compilado para la nube que te permite compilar y administrar canalizaciones de datos de ETL/ELT. Cloud Data Fusion proporciona una interfaz gráfica y una amplia biblioteca de código abierto de conectores y transformaciones preconfigurados.
BigQuery Almacén de datos sin servidores, completamente administrado y de bajo costo que se escala según tus necesidades de almacenamiento y potencia de procesamiento. BigQuery es una base de datos en columnas de ANSI SQL que puede analizar terabytes o petabytes de datos.
Cloud Composer Es un servicio de organización de flujos de trabajo completamente administrado que te permite crear, programar y supervisar canalizaciones que abarcan nubes y centros de datos locales.
Data Catalog Servicio de administración de metadatos completamente administrado y escalable que te ayuda a descubrir, administrar y comprender todos tus datos.
Looker Studio Servicio de análisis visual completamente administrado que puede ayudarte a obtener estadísticas de los datos a través de paneles interactivos.
Looker Plataforma empresarial que conecta, analiza y visualiza datos en entornos de múltiples nubes.
DataForm Producto completamente administrado que te ayuda a colaborar, crear e implementar canalizaciones de datos, y garantizar su calidad.
Dataplex Servicio de data lake administrado que administra, supervisa y rige datos en data lakes, almacenes de datos y data marts con controles coherentes.
AnalyticsHub Plataforma que intercambia de manera eficiente y segura los recursos de análisis de datos en toda tu organización para abordar los desafíos de confiabilidad y costo de los datos.

Ciclo de vida de los datos

Cuando creas el diseño de tu sistema, puedes agrupar los servicios de análisis de datos de Google Cloud en torno al movimiento de datos general en cualquier sistema o en torno al ciclo de vida de los datos.

El ciclo de vida de los datos incluye las siguientes etapas y servicios de ejemplo:

Las siguientes etapas y servicios se ejecutan durante todo el ciclo de vida de los datos:

  • La integración de datos incluye servicios como Data Fusion.
  • La administración de metadatos incluyen servicios como Data Catalog.
  • La administración de flujos de trabajo incluye servicios como Cloud Composer.

Transferencia de datos

Aplica las siguientes prácticas recomendadas de transferencia de datos en tu propio entorno.

Determina la fuente de datos para la transferencia

Por lo general, los datos provienen de otro proveedor o servicio en la nube, o de una ubicación local:

Ten en cuenta cómo deseas procesar tus datos después de transferirlos. Por ejemplo, el Servicio de transferencia de almacenamiento solo escribe datos en un bucket de Cloud Storage, y el Servicio de transferencia de datos de BigQuery solo escribe datos en un conjunto de datos de BigQuery. Cloud Data Fusion admite varios destinos.

Identifica las fuentes de datos por lotes o de transmisión

Ten en cuenta cómo necesitas usar tus datos y, además, identifica dónde tienes casos de uso de transmisión o por lotes. Por ejemplo, si ejecutas un servicio de transmisión global que tiene requisitos de latencia baja, puedes usar Pub/Sub. Si necesitas los datos para usarlos en informes y análisis, puedes transmitir datos a BigQuery.

Si necesitas transmitir datos desde un sistema como Apache Kafka en un entorno local o en otro entorno de nube, usa la plantilla de Dataflow de Kafka a BigQuery. En el caso de las cargas de trabajo por lotes, el primer paso suele ser transferir datos a Cloud Storage. Usa la herramienta de gsutil o el Servicio de transferencia de almacenamiento para transferir datos.

Transfiere datos con herramientas automatizadas

La transferencia manual de datos desde otros sistemas a la nube puede ser un desafío. Si es posible, usa herramientas que te permitan automatizar los procesos de transferencia de datos. Por ejemplo, Cloud Data Fusion proporciona conectores y complementos para llevar datos de fuentes externas con una GUI de arrastrar y soltar. Si los equipos quieren escribir algún código, Data Flow o BigQuery pueden ayudar a automatizar la transferencia de datos. Pub/Sub puede ayudar en un enfoque de bajo nivel de codificación o con prioridad en el código. Para transferir datos a buckets de almacenamiento, usa gsutil para tamaños de datos de hasta 1 TB. Para transferir cantidades de datos superiores a 1 TB, usa el Servicio de transferencia de almacenamiento.

Usa herramientas de migración para transferir datos desde otro almacén de datos

Si necesitas migrar desde otro sistema de almacén de datos, como Teradata, Netezza o Redshift, puedes usar la asistencia para la migración del Servicio de transferencia de datos de BigQuery. El Servicio de transferencia de datos de BigQuery también proporciona transferencias de terceros que te ayudan a transferir datos según un programa desde fuentes externas. Para obtener más información, consulta los enfoques de migración detallados de cada almacén de datos.

Estima tus necesidades de transferencia de datos

El volumen de datos que necesitas transferir te ayuda a determinar qué servicio usar en el diseño de tu sistema. Para la transferencia de datos de transmisión, Pub/Sub escala a decenas de gigabytes por segundo. Los requisitos regionales, de almacenamiento y de capacidad de tus datos te ayudan a determinar si Pub/Sub Lite es una mejor opción para el diseño de tu sistema. Para obtener más información, consulta Elige Pub/Sub o Pub/Sub Lite.

Para la transferencia por lotes de los datos, calcula cuántos datos deseas transferir en total y qué tan rápido deseas hacerlo. Revisa las opciones de migración disponibles, incluidas una estimación del tiempo y la comparación entre las transferencias en línea y las transferencias sin conexión.

Usa las herramientas adecuadas para transferir datos con regularidad y según un programa

El Servicio de transferencia de almacenamiento y el Servicio de transferencia de datos de BigQuery te permiten programar trabajos de transferencia. Para obtener un control detallado del tiempo de la transferencia o el sistema de origen y destino, usa un sistema de administración de flujos de trabajo como Cloud Composer. Si deseas un enfoque más manual, puedes usar Cloud Scheduler y Pub/Sub para activar una Cloud Function.
Si deseas administrar la infraestructura de procesamiento, puedes usar el comando de gsutil con cron para transferir hasta 1 TB de datos. Si usas este enfoque manual en lugar de Cloud Composer, sigue las prácticas recomendadas para crear secuencia de comandos de transferencias de producción.

Revise las necesidades de transferencia de datos de servidor FTP/SFTP

Si necesitas un entorno sin código para transferir datos de un servidor FTP/SFTP, puedes usar los complementos de copia de FTP. Si deseas modernizar y crear una solución de flujo de trabajo a largo plazo, Cloud Composer es un servicio completamente administrado que te permite leer y escribir desde varias fuentes y receptores.

Usa conectores de Apache Kafka para transferir datos

Si usas Pub/Sub, Dataflow o BigQuery, puedes transferir datos mediante uno de los conectores de Apache Kafka. Por ejemplo, el conector de Pub/Sub Kafka de código abierto te permite transferir datos desde Pub/Sub o Pub/Sub Lite.

Recursos adicionales

Almacenamiento de datos

Aplica las siguientes prácticas recomendadas de almacenamiento de datos en tu propio entorno.

Elige el almacén de datos adecuado para tus necesidades

Para ayudarte a elegir qué tipo de solución de almacenamiento usar, revisa y comprende el uso posterior de tus datos. Los siguientes casos de uso comunes de los datos ofrecen recomendaciones sobre qué producto de Google Cloud usar:

Caso de uso de datos Recomendación de producto
Basada en archivo Filestore
Servidores basados en objetos Cloud Storage
Latencia baja Bigtable
Series temporales Bigtable
Caché en línea Memorystore
Procesamiento de transacciones Cloud SQL
Inteligencia empresarial (IE) y estadísticas BigQuery
Procesamiento por lotes Cloud Storage

Bigtable si los datos entrantes son series temporales y necesitas acceso de baja latencia a ellos.

BigQuery si usas SQL.

Revisa las necesidades de estructura de los datos

Para la mayoría de los datos no estructurados, como archivos de texto y documentos, archivos de audio y video, o registros, un almacén basado en objetos es la opción más adecuada. Luego, puedes cargar y procesar los datos del almacenamiento de objetos cuando los necesites.

En el caso de los datos semiestructurados, como XML o JSON, los casos de uso y patrones de acceso a los datos ayudan a guiar tu elección. Puedes cargar esos conjuntos de datos en BigQuery para la detección automática de esquemas. Si tienes requisitos de latencia baja, puedes cargar tus datos JSON en Bigtable. Si tienes requisitos heredados o tus aplicaciones funcionan con bases de datos relacionales, también puedes cargar conjuntos de datos en un almacén de relación.

En el caso de los datos estructurados, como CSV, Parquet, Avro o ORC, puedes usar BigQuery si tienes requisitos de IE y estadísticas que usan SQL. Si deseas obtener más información, consulta cómo cargar datos por lotes. Si deseas crear un data lake en estándares y tecnologías abiertos, puedes usar Cloud Storage.

Migra datos y reduce los costos de HDFS

Busca formas de migrar datos del sistema de archivos distribuido de Hadoop (HDFS) de un entorno local o de otro proveedor de servicios en la nube a un sistema de almacenamiento de objetos más económico. Cloud Storage es la opción más frecuente de almacén de datos alternativo que eligen las empresas. Para obtener información sobre las ventajas y desventajas de esta opción, consulta Comparación entre HDFS y Cloud Storage.

Puedes migrar datos con un método de envío o extracción. Ambos métodos usan el comando hadoop distcp. Para obtener más información, consulta Migra datos de HDFS de un entorno local a Google Cloud.

También puedes utilizar el conector de Cloud Storage de código abierto para permitir que los trabajos de Hadoop y Spark accedan a los datos en Cloud Storage. El conector se instala de forma predeterminada en los clústeres de Dataproc y se puede instalar de forma manual en otros clústeres.

Usa el almacenamiento de objetos para compilar un data lake cohesivo

Un data lake es un repositorio centralizado diseñado para almacenar, procesar y proteger grandes cantidades de datos estructurados, semiestructurados o sin estructurar. Puedes usar Cloud Composer y Cloud Data Fusion para compilar un data lake.

Para compilar una plataforma de datos moderna, puedes usar BigQuery como tu fuente de datos central en lugar de Cloud Storage. BigQuery es un almacén de datos moderno con separación de almacenamiento y procesamiento. Un data lake compilado en BigQuery te permite realizar análisis tradicional de BigQuery en la consola de Cloud. También te permite acceder a los datos almacenados desde otros frameworks, como Apache Spark.

Recursos adicionales

Procesa y transforma datos

Aplica las siguientes prácticas recomendadas de análisis de datos a tu propio entorno cuando proceses y transformes datos.

Explora el software de código abierto que puedes usar en Google Cloud

Muchos servicios de Google Cloud usan software de código abierto para ayudarte a realizar la transición sin problemas. Google Cloud ofrece soluciones administradas y sin servidores que tienen API abiertas y son compatibles con frameworks de código abierto para reducir la dependencia de un proveedor.

Dataproc es un servicio administrado compatible con Hadoop que te permite alojar software de código abierto con poca carga operativa. Dataproc incluye compatibilidad con Spark, Hive, Pig, Presto y Zookeeper. También proporciona Hive Metastore como un servicio administrado para quitarse como un punto único de fallo en el ecosistema de Hadoop.

Puedes migrar a Dataflow si actualmente usas Apache Beam como motor de procesamiento por lotes y de transmisión. Dataflow es un servicio completamente administrado y sin servidores que usa Apache Beam. Usa Dataflow para escribir trabajos en Beam, pero deja que Google Cloud administre el entorno de ejecución.

Si usas CDAP como tu plataforma de integración de datos, puedes migrar a Cloud Data Fusion para obtener una experiencia completamente administrada.

Determina tus necesidades de procesamiento de datos de ETL o ELT

La experiencia y las preferencias de tu equipo ayudan a determinar el diseño del sistema sobre cómo procesar los datos. Google Cloud te permite usar sistemas de procesamiento de datos de ETL tradicionales o ELT más modernos.

Usa el framework adecuado para tu caso de uso de datos

Tus casos de uso de datos determinan qué herramientas y frameworks usar. Algunos productos de Google Cloud están compilados para manejar todos los siguientes casos de uso de datos, mientras que otros admiten mejor solo un caso de uso en particular.

  • Para un sistema de procesamiento de datos por lotes, puedes procesar y transformar datos en BigQuery con una interfaz de SQL que conoces. Si tienes una canalización existente que se ejecuta en Apache Hadoop o Spark de forma local o en otra nube pública, puedes usar Dataproc.
    • También puedes usar Dataflow si deseas una interfaz de programación unificada para casos de uso por lotes y de transmisión. Te recomendamos que modernices y uses Dataflow para ETL y BigQuery para ELT.
  • Para las canalizaciones de datos de transmisión, usa un servicio administrado y sin servidores como Dataflow, que proporciona sistema de ventanas, ajuste de escala automático y plantillas. Si deseas obtener más información, consulta Compila canalizaciones de datos listas para la producción mediante Dataflow.

  • Para casos de uso en tiempo real, como el análisis de series temporales o el análisis de videos en streaming, usa Dataflow.

Mantenga el control futuro de su motor de ejecución

Para minimizar la dependencia de un proveedor y poder usar una plataforma diferente en el futuro, usa el modelo de programación de Apache Beam y Dataflow como una solución administrada sin servidores. El modelo de programación de Beam te permite cambiar el motor de ejecución subyacente, como cambiar de Dataflow a Apache Flink o Apache Spark.

Usa Dataflow para transferir datos desde varias fuentes

Para transferir datos de varias fuentes, como Pub/Sub, Cloud Storage, HDFS, S3 o Kafka, usa Dataflow. Dataflow es un servicio administrado sin servidores que admite plantillas de Dataflow, lo que permite a tus equipos ejecutar plantillas desde diferentes herramientas.

Dataflow Prime proporciona ajuste de escala automático horizontal y vertical de máquinas que se utilizan en el proceso de ejecución de una canalización. También proporciona diagnósticos y recomendaciones inteligentes que identifican problemas y sugieren cómo solucionarlos.

Descubra, identifique y proteja datos sensibles

Usa la Sensitive Data Protection para inspeccionar y transformar datos estructurados y no estructurados. Sensitive Data Protection funciona con datos ubicados en cualquier parte de Google Cloud, como Cloud Storage o bases de datos. Puedes clasificar y enmascarar tus datos sensibles y asignarles tokens a fin de seguir usándolos de forma segura para el procesamiento posterior. Usa Sensitive Data Protection para realizar acciones como analizar datos de BigQuery o desidentificar y reidentificar PII en conjuntos de datos a gran escala.

Modernice los procesos de transformación de datos

Usa Dataform para escribir las transformaciones de datos como código y comenzar a usar el control de versión de forma predeterminada. También puedes adoptar prácticas recomendadas de desarrollo de software, como CI/CD, pruebas de unidades y control de versión para el código SQL. Dataform admite todos los productos y bases de datos principales de almacenes de datos en la nube, como PostgreSQL.

Recursos adicionales

Almacenes y análisis de datos

Aplica las siguientes prácticas recomendadas de análisis de datos y almacenes en tu propio entorno.

Revisa tus necesidades de almacenamiento de datos

Los data lakes y los almacenes de datos no son mutuamente exclusivos. Los data lakes son útiles para el almacenamiento y el procesamiento de datos no estructurados y semiestructurados. Los almacenes de datos son mejores para el análisis y la IE.

Revisa tus necesidades de datos a fin de determinar dónde almacenarlos y qué producto de Google Cloud es el más adecuado para procesar y analizar los datos. Los productos como BigQuery pueden procesar petabytes de datos y crecer con tus demandas.

Identifica oportunidades para migrar de un almacén de datos tradicional a BigQuery

Revisa los almacenes de datos tradicionales que se encuentran en uso en el entorno. A fin de reducir la complejidad y reducir los costos, identifica las oportunidades para migrar los almacenes de datos tradicionales a un servicio de Google Cloud, como BigQuery. Para obtener más información y ejemplos de situaciones, consulta Migra almacenes de datos a BigQuery.

Planifica el acceso federado a los datos

Revisa los requisitos de los datos y cómo quizás debas interactuar con otros productos y servicios. Identifica tus necesidades de federación de datos y crea un diseño de sistema adecuado.

Por ejemplo, BigQuery te permite definir tablas externas que pueden leer datos de otras fuentes, como Bigtable, Cloud SQL, Cloud Storage o Google Drive. Puedes unir estas fuentes externas con tablas que almacenes en BigQuery.

Usa ranuras flexibles de BigQuery para proporcionar capacidad de aumentos de actividad a pedido

A veces necesitas capacidad adicional para realizar análisis experimentales o exploratorios que necesitan muchos recursos de procesamiento. BigQuery te permite obtener capacidad de procesamiento adicional en forma de ranuras flexibles. Estas ranuras flexibles te ayudan cuando hay un período de alta demanda o cuando deseas completar un análisis importante.

Comprende las diferencias de esquema si migras a BigQuery

BigQuery es compatible con esquemas de estrella y copo de nieve, pero, de forma predeterminada, usa campos anidados y repetidos. Los campos anidados y repetidos pueden ser más fáciles de leer y correlacionar en comparación con otros esquemas. Si tus datos están representados en un esquema de estrella o copo de nieve, y si deseas migrar a BigQuery, revisa el diseño del sistema para detectar si se necesitan hacer cambios en los procesos o los análisis.

Recursos adicionales

Informes y visualización

Aplica las siguientes prácticas recomendadas de informes y visualización a tu propio entorno.

Usa BigQuery BI Engine para visualizar tus datos

BigQuery BI Engine es un servicio de análisis rápido y en la memoria. Puedes usar BI Engine para analizar los datos almacenados en BigQuery con un tiempo de respuesta de fracciones de segundo a las consultas y con alta simultaneidad. BI Engine está integrado en la API de BigQuery. Usa la capacidad de BI Engine reservada para administrar los precios según demanda o de tarifa plana según tus necesidades. BI Engine también puede funcionar con otras aplicaciones de IE o de paneles personalizados que requieren tiempos de respuesta de fracciones de segundo.

Moderniza tus procesos de BI con Looker

Looker es una plataforma empresarial moderna para IE, aplicaciones de datos y análisis incorporados. Puedes crear modelos de datos coherentes sobre tus datos con rapidez y precisión, y acceder a los datos dentro de los almacenes de datos analíticos y transaccionales. Looker también puede analizar tus datos en varias bases de datos y nubes. Si tienes procesos y herramientas de IE existentes, te recomendamos que te modernices y uses una plataforma central como Looker.

Recursos adicionales

Usa herramientas de administración de flujos de trabajo

El análisis de datos incluye varios procesos y servicios. Se transfieren datos entre diferentes herramientas y canalizaciones de procesamiento durante el ciclo de vida del análisis de datos. Para administrar y mantener las canalizaciones de datos de extremo a extremo, usa las herramientas de administración de flujos de trabajo adecuadas. Cloud Composer es una herramienta de administración de flujos de trabajo completamente administrada basada en el proyecto de Apache Airflow de código abierto.

Puedes usar Cloud Composer para iniciar canalizaciones de Dataflow y usar plantillas de flujo de trabajo de Dataproc. Cloud Composer también puede ayudarte a crear una canalización de CI/CD a fin de probar, sincronizar e implementar DAG o usar una canalización de CI/CD para el procesamiento de datos flujos de trabajo. Para obtener más información, consulta Cloud Composer: prácticas recomendadas de desarrollo.

Recursos de migración

Si ya ejecutas una plataforma de análisis de datos y deseas migrar algunas o todas las cargas de trabajo a Google Cloud, revisa los siguientes recursos de migración para obtener prácticas recomendadas y orientación:

¿Qué sigue?

Obtén información sobre las prácticas recomendadas del diseño de sistemas para la IA y el aprendizaje automático de Google Cloud, incluido lo siguiente:

Explora otras categorías en el framework de arquitectura, como la confiabilidad, la excelencia operativa y la seguridad, la privacidad y el cumplimiento.