Acerca de los servicios de Google Cloud

En esta descripción general, se presentan algunos de los servicios de Google Cloud que más se usan. Consulta la página de productos y servicios para ver la lista completa.

En esta descripción, se abarcan los siguientes tipos de servicios:

Servicios de procesamiento y hosting

Google Cloud te brinda opciones de procesamiento y hosting. Puedes elegir realizar alguna de las siguientes acciones:

  • Trabajar en un entorno sin servidores
  • Usar una plataforma de aplicación administrada
  • Aprovechar las tecnologías de contenedores para obtener una gran flexibilidad
  • Compilar tu propia infraestructura basada en la nube para tener el máximo control y flexibilidad

Imagina un espectro en el que, en un extremo, tú tienes la mayoría de las responsabilidades para la administración de recursos y, en el otro, es Google quien la tiene.

Computación sin servidores

Cloud Functions, la oferta de funciones como servicio (FaaS) de Google Cloud, proporciona un entorno de ejecución sin servidores para compilar y conectar servicios en la nube. Con Cloud Functions, puedes programar funciones simples de un solo propósito vinculadas a eventos que se emiten desde la infraestructura y servicios en la nube. La función se activa cuando se lleva a cabo un evento que se está supervisando. Tu código se ejecuta en un entorno completamente administrado, sin necesidad de aprovisionar infraestructura ni de preocuparte por administrar servidores.

Las funciones de Cloud Functions se pueden escribir mediante JavaScript, Python 3, Go o Java. Puedes ejecutar la función en cualquier entorno estándar de Node.js (Node.js 10), Python 3 (Python 3.7), Go (Go 1.11 o 1.13) o Java (Java 11), lo que simplifica la portabilidad y las pruebas locales.

Las funciones de Cloud Functions son una buena opción para los casos prácticos que tienen las siguientes características:

  • Operaciones de ETL y procesamiento de datos para situaciones que implican transcodificación de videos y datos de transmisión de IoT
  • Webhooks para responder a activadores HTTP
  • API ligeras que constituyen la lógica de estructura flexible de las aplicaciones
  • Funciones de backend para dispositivos móviles

Plataforma de aplicaciones

App Engine es la plataforma como servicio (PaaS) de Google Cloud. Con App Engine, Google controla la mayor parte de la administración de los recursos por ti. Por ejemplo, si tu aplicación necesita más recursos de procesamiento debido al aumento del tráfico hacia tu sitio web, Google ajustará automáticamente la escala del sistema para proporcionar esos recursos. También administraremos por ti las actualizaciones de seguridad del software del sistema.

Si compilas tu aplicación en App Engine, podrás realizar las siguientes acciones:

Consulta la documentación de App Engine para ver una lista y una descripción completas de sus funciones.

Contenedores

Con el procesamiento basado en contenedores, puedes centrarte en el código de la aplicación, en lugar de las implementaciones y la integración en entornos de hosting. Google Kubernetes Engine (GKE), la oferta de contenedores como servicio (CaaS) de Google Cloud, se compiló en el sistema Kubernetes de código abierto, que te brinda la flexibilidad de usar nubes híbridas o locales, además de la infraestructura de nube pública de Google Cloud.

Si compilas con GKE, podrás realizar las siguientes acciones:

  • Crear y administrar grupos de instancias de Compute Engine que se ejecutan en Kubernetes, también conocidos como clústeres. GKE usa instancias de Compute Engine como nodos en un clúster Cada nodo usa el entorno de ejecución Docker, un agente de nodo de Kubernetes que supervisa el estado del nodo y un proxy de red sencillo

  • Declarar los requisitos de tus contenedores de Docker mediante un archivo de configuración JSON simple

  • Usar Container Registry para obtener almacenamiento privado y seguro de las imágenes de Docker. Puedes enviar imágenes al registro y, luego, extraerlas en cualquier instancia de Compute Engine o tu propio hardware mediante un extremo HTTP

  • Crear pods de uno o varios contenedores. Cada pod representa un host lógico que puede incluir uno o más contenedores. Los contenedores de un pod comparten recursos, como los de herramientas de redes, para funcionar en conjunto. Combinado, un conjunto de pods podría constituir una aplicación completa, un microservicio o una capa en una aplicación de varios niveles

  • Crear y administrar controladores de replicación, que controlan la creación y eliminación de las réplicas de pods en función de una plantilla. Los controladores de replicación ayudan a garantizar que la aplicación cuente con los recursos necesarios para realizar ejecuciones de manera confiable y ajustar el escalamiento de manera adecuada

  • Crear y administrar servicios. Estos crean una capa de abstracción que separa a los clientes de frontend de los pods que proporcionan las funciones de backend. De esta manera, los clientes pueden funcionar sin tener que preocuparse por pods que se crean y borran en un momento determinado

  • Crear un balanceador de cargas de red externo

Máquinas virtuales

El servicio de procesamiento no administrado de Google Cloud es Compute Engine. Se lo puede considerar como un proveedor de infraestructura como servicio (IaaS), porque el sistema proporciona una infraestructura de procesamiento completa, pero se deben elegir los componentes de la plataforma que se quieren usar y, además, se los debe configurar. Con Compute Engine, tú eres responsable de configurar, administrar y supervisar los sistemas. Google se asegurará de que los recursos estén disponibles, que sean confiables y que estén listos para usar, pero depende de ti aprovisionarlos y administrarlos. La ventaja es que tienes un control total sobre los sistemas, además de flexibilidad sin límites.

Cuando compilas en Compute Engine, podrás realizar las siguientes acciones:

  • Usar máquinas virtuales (VM), conocidas como instancias, para compilar tu aplicación, de manera muy similar a como lo harías con tu propia infraestructura de hardware. Puedes elegir entre una variedad de tipos de instancia a fin de personalizar tu configuración para que se ajuste a tu presupuesto y tus necesidades

  • Elegir en qué regiones y zonas globales implementar tus recursos, lo que te permite controlar dónde se almacenan y usan tus datos

  • Elegir los sistemas operativos, pilas de desarrollo, lenguajes, marcos de trabajo, servicios y otras tecnologías de software que prefieras

  • Crear instancias a partir de imágenes públicas o privadas

  • Usar las tecnologías de almacenamiento de Google Cloud o las tecnologías de terceros que prefieras

  • Usar Google Cloud Marketplace para implementar con rapidez paquetes de software preconfigurados. Por ejemplo, puedes implementar una pila LAMP o MEAN con unos pocos clics

  • Crear grupos de instancias para facilitar la administración de varias instancias a la vez

  • Usar el ajuste de escala automático en un grupo de instancias a fin de agregar y quitar capacidad automáticamente

  • Conectar y desconectar discos según sea necesario

  • Usar SSH para conectarte directamente a las instancias

Combina las opciones de procesamiento y hosting

No es necesario que te limites a un solo tipo de servicio de procesamiento. Por ejemplo, puedes combinar App Engine y Compute Engine para aprovechar las funciones y los beneficios de cada uno. Para ver un ejemplo del uso de App Engine y Compute Engine, consulta Programación confiable de tareas en Compute Engine.

Consulta Entrega de sitios web para ver ejemplos detallados de estas opciones.

Servicios de almacenamiento

Cualquiera que sea tu aplicación, es posible que debas almacenar algunos archivos multimedia, copias de seguridad o, también, otros objetos similares a archivos. Google Cloud ofrece una variedad de servicios de almacenamiento, incluidos los siguientes:

  • Almacenamiento de datos coherente, escalable y de gran capacidad en Cloud Storage. Cloud Storage ofrece las siguientes modalidades:

    • Cloud Storage estándar proporciona la máxima disponibilidad.
    • Cloud Storage Nearline proporciona almacenamiento de archivos de bajo costo, ideal para los datos a los que se accede menos de una vez al mes.
    • Cloud Storage Coldline proporciona un almacenamiento de archivos aún más económico, ideal para los datos a los que se accede menos de una vez por trimestre.
    • Cloud Storage Archive proporciona el almacenamiento de archivos de menor costo para copias de seguridad y recuperación ante desastres, ideal para los datos a los que deseas acceder menos de una vez al año.
  • Discos persistentes en Compute Engine, para usar como almacenamiento principal en tus instancias. Compute Engine ofrece discos persistentes basados en discos duros, conocidos como discos persistentes estándar y discos persistentes de estado sólido, conocidos como SSD.

  • Servidores de archivos NFS completamente administrados en Filestore. Puedes usar instancias de Filestore para almacenar datos de aplicaciones que se ejecutan en instancias de VM de Compute Engine o clústeres de GKE.

    Para comprender la gama completa y los beneficios de los servicios de almacenamiento en Google Cloud, obtén más información sobre nuestras opciones de almacenamiento.

Servicios de base de datos

Google Cloud proporciona una variedad de servicios de bases de datos SQL y NoSQL:

  • Una base de datos SQL en Cloud SQL, que proporciona bases de datos MySQL o PostgreSQL

  • Un servicio de base de datos relacional, esencial y completamente administrado en Cloud Spanner que ofrece coherencia transaccional a escala global, esquemas, consultas de SQL y replicación síncrona y automática a fin de lograr una alta disponibilidad

  • Existen dos opciones para el almacenamiento de datos NoSQL: Firestore con datos similares a documentos, y Cloud Bigtable con datos tabulares

También puedes configurar tu tecnología de base de datos preferida en Compute Engine mediante el uso de discos persistentes. Por ejemplo, puedes configurar MongoDB para el almacenamiento de documentos NoSQL.

Para obtener información sobre las diferencias entre nuestros servicios de base de datos, consulta las bases de datos de Google Cloud.

Servicios de Herramientas de redes

Si bien App Engine administra las redes por ti y GKE usa el modelo de Kubernetes, Compute Engine proporciona un conjunto de servicios de herramientas de redes. Estos servicios ayudan a balancear la carga del tráfico entre los recursos, crear registros DNS y conectar a tu red existente con la de Google.

Redes, firewalls y rutas

La nube privada virtual (VPC) proporciona un conjunto de servicios de herramientas de redes que usan las instancias de VM. Una instancia puede tener más de una interfaz, pero cada una debe estar conectada a una red diferente. Cada proyecto de VPC tiene una red predeterminada. Puedes crear redes adicionales en tu proyecto, pero estas no se pueden compartir entre los proyectos.

Las reglas de Firewall controlan el tráfico que entra a las instancias de una red. La red predeterminada tiene un conjunto predefinido de reglas de firewall y, además, puedes crear tus propias reglas.

Una ruta permiten implementar funciones de herramientas de redes más avanzadas en las instancias, como crear VPN. Las rutas especifican cómo se deben dirigir los paquetes que salen de una instancia. Por ejemplo, una ruta podría especificar que los paquetes destinados a un rango de red específico se deberían controlar mediante una instancia de máquina virtual con puerta de enlace que tú configuras y operas.

Balanceo de cargas

Si tu sitio web o aplicación se ejecuta en Compute Engine, puede que tengas que distribuir la carga de trabajo en varias instancias con el tiempo. Las funciones de balanceo de cargas del servidor brindan las siguientes opciones:

  • El balanceo de cargas de red te permite distribuir el tráfico entre las instancias del servidor que se encuentren en la misma región, en función de los datos entrantes de protocolo IP, como la dirección, el puerto y el protocolo. El balanceo de cargas de red es una gran solución si, por ejemplo, necesitas satisfacer la demanda del aumento de tráfico hacia el sitio web.

  • Con el balanceo de cargas HTTP(S), puedes distribuir el tráfico entre las regiones a fin de asegurarte de que las solicitudes se enruten a la región más cercana o, en caso de fallas o de que se excedan los límites de capacidad, a una instancia en buen estado de la próxima región más cercana. También puedes usar el balanceo de cargas HTTP(S) para distribuir el tráfico en función del tipo de contenido. Por ejemplo, puedes configurar tu sistema para que entregue contenido estático, como imágenes y CSS, desde un servidor y contenido dinámico, como páginas PHP, desde otro. El balanceador de cargas puede dirigir cada solicitud al servidor que entrega el tipo de contenido requerido.

Cloud DNS

Puedes publicar y mantener registros del sistema de nombres de dominio (DNS) mediante la misma infraestructura que usa Google. Puedes usar Google Cloud Console, la línea de comandos o una API de REST para trabajar con zonas administradas y registros DNS.

Conectividad avanzada

Si tienes una red existente que quieres conectar a los recursos de Google Cloud, se ofrecen las siguientes opciones de conectividad avanzada:

  • Cloud Interconnect te permite realizar una conexión de grado empresarial, baja latencia y alta disponibilidad entre una red existente y una de VPC. Podrás conectarte directamente a Google con la interconexión dedicada o también puedes hacerlo a través de un proveedor de servicios admitido mediante la interconexión de socio.

  • Cloud VPN te permite realizar una conexión IPSec entre una red existente y una de VPC. También puedes usar VPN para conectar dos puertas de enlace de Cloud VPN entre sí.

  • El intercambio de tráfico directo te permite intercambiar el tráfico de Internet entre la red de tu negocio y la de Google en una de las ubicaciones de red perimetral de gran alcance de Google. Consulta el sitio de intercambio de tráfico de Google para obtener más información sobre las ubicaciones perimetrales.

  • El intercambio de tráfico por proveedores te permite realizar conexiones de baja latencia y alta disponibilidad entre la infraestructura y la red perimetral de Google mediante proveedores de servicios. También puedes extender la red privada hacia la red de nube privada virtual mediante vínculos de intercambio de tráfico por proveedores a través de un túnel de VPN entre las redes.

Servicios de macrodatos

Estos te permiten procesar y consultar macrodatos en la nube a fin de obtener respuestas a preguntas complicadas con rapidez.

Análisis de datos

BigQuery ofrece servicios de análisis de datos. Con este servicio, puedes realizar las siguientes acciones:

  • Crear esquemas personalizados para organizar conjuntos de datos y tablas
  • Cargar datos desde diversas fuentes, como datos de transmisión
  • Usar comandos similares a los de SQL para consultar conjuntos de datos masivos de forma muy rápida. BigQuery está diseñado y optimizado para proporcionar velocidad
  • Usar la IU web, la interfaz de línea de comandos o la API
  • Usar trabajos para cargar, consultar, exportar y copiar datos
  • Administrar datos y protegerlos mediante permisos

Si quieres probar BigQuery con rapidez y de manera sencilla, usa la Guía de inicio rápido de IU web para consultar un conjunto de datos públicos.

Procesamiento de datos por lotes y de transmisión

Dataflow proporciona un servicio administrado y un conjunto de SDK que puedes usar para realizar tareas de procesamiento de datos por lotes y de transmisión. Dataflow es ideal para el procesamiento de grandes volúmenes, en especial cuando las tareas de procesamiento se pueden dividir de manera clara y sencilla en cargas de trabajo paralelas. Además, es idóneo para las tareas de extracción, transformación y carga (ETL), que resultan útiles en la transferencia de datos entre distintos medios de almacenamiento, la transformación de datos a un formato más conveniente o la carga de datos en un sistema de almacenamiento nuevo.

Mensajería asíncrona

Pub/Sub es un servicio de mensajería asíncrona. Este servicio permite que tu aplicación envíe mensajes, como estructuras de datos JSON, hacia una unidad de publicación conocida como tema. Debido a que los temas de Pub/Sub son un recurso global, las demás aplicaciones de tus proyectos se pueden suscribir a ellos a fin de recibir los mensajes mediante solicitudes HTTP o cuerpos de respuesta. Si quieres familiarizarte con Pub/Sub, consulta la guía de inicio rápido de Pub/Sub.

La utilidad de Pub/Sub no se limita a los macrodatos. Puedes usar Pub/Sub en muchos casos en los que necesites un servicio de mensajería asíncrona. Para ver un ejemplo en el que se usa Pub/Sub con el fin de coordinar App Engine y Compute Engine, consulta Programación confiable de tareas en Compute Engine.

Servicios de aprendizaje automático

AI Platform ofrece una variedad de servicios de aprendizaje automático (AA) potentes. Puedes usar API con modelos previamente entrenados que se optimizaron para aplicaciones específicas, o bien compilar y entrenar tus propios modelos sofisticados y a gran escala, mediante un marco de trabajo administrado de TensorFlow.

API de aprendizaje automático

Google Cloud ofrece una variedad de API que permiten aprovechar el AA de Google sin tener que crear y entrenar tus propios modelos.

  • La API de Video Intelligence te permite usar la tecnología de análisis de videos que proporciona detección de etiquetas, de contenido explícito y de cambio de toma y características de regionalización.

  • Speech-to-Text te permite convertir audio en texto y reconoce más de 110 idiomas y variantes para admitir tu base de usuarios global. Puedes transcribir el texto que dicten los usuarios al micrófono de una aplicación, habilitar el uso de comandos de voz o transcribir archivos de audio, entre muchos otros casos prácticos.

  • Cloud Vision te permite integrar fácilmente funciones de detección de visión, como etiquetado de imágenes, detección de rostros y puntos de referencia, reconocimiento óptico de caracteres (OCR) y etiquetado de contenido explícito.

  • La API de Cloud Natural Language te permite agregar análisis de opiniones, análisis de entidades, análisis de opiniones por entidad, clasificación de contenido y análisis de sintaxis.

  • Cloud Translation te permite traducir con rapidez el texto de origen a cualquiera de los más de cien idiomas admitidos. La detección de idiomas resulta útil en los casos en que se desconoce el idioma de origen.

  • Dialogflow te permite crear interfaces de conversación para sitios web, aplicaciones para dispositivos móviles, plataformas de mensajería populares y dispositivos IoT. Puedes usarlo para compilar interfaces, como chatbots, que son capaces de interactuar de forma natural y elaborada con personas.

AI Platform

AI Platform combina la infraestructura administrada de Google Cloud con la potencia y flexibilidad de TensorFlow. Puedes usarlo para entrenar tus modelos de aprendizaje automático a gran escala y alojar modelos entrenados a fin de realizar predicciones sobre los datos nuevos de la nube.

AI Platform te permite entrenar modelos de aprendizaje automático mediante la ejecución de aplicaciones de entrenamiento de TensorFlow en Google Cloud y alojar esos modelos entrenados para que puedas usarlos a fin de obtener predicciones sobre datos nuevos. AI Platform administra los recursos de procesamiento que tu trabajo de entrenamiento necesita para ejecutarse, de forma que te puedas enfocar más en tu modelo que en la configuración de hardware o la administración de recursos.

Para probar AI Platform, consulta Primeros pasos: Entrenamiento y predicción con Keras.

Siguiente: Aprende sobre las Herramientas para desarrolladores y administradores