google cloud platform y python

62
Google Cloud Platform y Python Carlos Toxtli

Upload: carlos-toxtli

Post on 13-Apr-2017

1.119 views

Category:

Software


5 download

TRANSCRIPT

Page 1: Google Cloud Platform y Python

Google Cloud Platform y PythonCarlos Toxtli

Page 2: Google Cloud Platform y Python

PresentaciónMaestro en Innovación Empresarial y Tecnológica15 años de experienciaExperto en TI

Page 3: Google Cloud Platform y Python
Page 4: Google Cloud Platform y Python

Compute EngineCompute Engine es una plataforma que nos permite montar servidores dedicados en una máquina virtual con una IP solo para nosotros. Los servidores pueden ser montados en Linux o en Windows. Soportan las tecnologías que queramos instalar y nos conectamos por SSH a ellos.

Page 5: Google Cloud Platform y Python

Compute Engine - PythonExisten 2 formas en que python funciona.Una es instalando y corriendo aplicaciones expuestas a través de los puertos.La segunda es usándola para automatizar el monitoreo y creación de instancias de compute engine.Veamos un ejemplo

Page 6: Google Cloud Platform y Python

Compute Engine - PythonEjemplo de como borrar una instancia programáticamente

Page 7: Google Cloud Platform y Python

Compute Engine - URLshttps://cloud.google.com/compute/docs/tutorials/python-guide

Page 8: Google Cloud Platform y Python

App EngineNos permite crear proyectos sobre un servidor de aplicaciones. Este servidor está hospedado y controlado por Google, nosotros solo subimos nuestro código en python, java, PHP y Go. Así como los principales frameworks como por ejemplo Django.

Page 9: Google Cloud Platform y Python

App Engine y PythonCreamos el archivo de recursos y el código y lo subimos a través de la herramienta.

Page 10: Google Cloud Platform y Python

App Engine - URLshttps://cloud.google.com/appengine/docs/python/gettingstartedpython27/helloworld

Page 11: Google Cloud Platform y Python

Container EngineNos permite montar contenedores de Docker. Se puede empaquetar una aplicación y sus dependencias en un contenedor virtual que se puede ejecutar en cualquier servidor Linux. Esto ayuda a permitir la flexibilidad y portabilidad. Se les conoce también como “maquinas virtuales ligeras” que corren sobre el mismo sistema operativo.

Page 12: Google Cloud Platform y Python

Container EngineExisten 2 formas de usar Python aquí.Una corriendose dentro de un container de Docker y desplegándose bajo las configuraciones de sistema operativo deseado.La otra forma de usarlo es para automatizar los contenedores de forma automática, veamos un ejemplo.

Page 13: Google Cloud Platform y Python

Container Engine - Python

Page 15: Google Cloud Platform y Python

Cloud StorageEs almacenamiento de datos, esta plataforma es usada porque muchas veces tenemos gran volúmen de datos y si lo almacenamos en instancias, por su tamaño estarían “en discos separados”. Es por eso que nace este servicio, que es muy veloz y no importa que tanta información haya, no se fragmenta en varias unidades.

Page 16: Google Cloud Platform y Python

Cloud Storage - Python

Page 17: Google Cloud Platform y Python

Cloud Storage - URLshttps://cloud.google.com/storage/docs/gspythonlibrary?hl=en

Page 18: Google Cloud Platform y Python

Es el concepto de almacenamiento frío de Google. El almacenamiento frío es el que se realiza de datos que una empresa u organización no puede perder, pero no se usan muy seguido. Esa información histórica que es mucha es mejor guardarla aquí porque es más barato y es casi ilimitado el espacio.

Nearline

Page 19: Google Cloud Platform y Python

Los servicios de DRA (el intermedio entre Standard y Nearline) y Nearline se usan desde la misma librería de Google Storage. La librería gcsannex de python lo hace de una manera muy sencilla para los 3 servicios (Standard, DRA y Nearline)

Nearline - Python

Page 20: Google Cloud Platform y Python

https://pypi.python.org/pypi/gcsannex/

Nearline - URLs

Page 21: Google Cloud Platform y Python

Cloud SQLEs una instancia de MySQL en la nube dedicada para ti. Cabe aclarar que de verdad es un servidor completo solo corriendo MySQL para ti, es por ello que cuando lo das de alta te pide sobre que tipo de instancia deseas ejecutarlo. Cuenta con acceso remoto para conectarte desde aplicaciones externas.

Page 22: Google Cloud Platform y Python

Cloud SQL - PythonPython

Page 23: Google Cloud Platform y Python

Cloud SQL - PythonDjango

Page 25: Google Cloud Platform y Python

DataStoreEs una base de datos no relacional basada en NoSQL. Es muy facil de usar y muy veloz, está administrada por las instancias de Google y se adapta a lenguajes donde con estructuras de arreglos asociativos se guarden datos a modo de objetos.

Page 26: Google Cloud Platform y Python

DataStore - Python

Page 27: Google Cloud Platform y Python

DataStorehttps://cloud.google.com/appengine/docs/python/datastore/

Page 28: Google Cloud Platform y Python

Los nombres no mienten, es una tabla multidimensional con muchas columnas y muy muy grande. Es lo que Google ha usado por muchos años internamente para sistemas que deban dar respuestas inmediatas. Es no relacional con almacenamiento de datos distribuido y de replicas multidimensionales.

BigTable

Page 29: Google Cloud Platform y Python

BigTable

Page 31: Google Cloud Platform y Python

Cloud NetworkingEsta herramienta cuenta de varias interfaces, tanto las que sirven para dministrar los DNS, las que controlan el balanceo de la carga, las que controlan los certificados SSL, la interconexion entre servidores internos, la interconexión con el carrier. Basicamente todas las opciones de ser se conjuntan aquí.

Page 32: Google Cloud Platform y Python

Cloud Networking

Page 33: Google Cloud Platform y Python

Cloud Networking - URLshttps://developers.google.com/api-client-library/python/apis/dns/v1?hl=en

Page 34: Google Cloud Platform y Python

Permite realizar almacenamiento y consulta de conjuntos de datos masivos con billones de filas. Su uso es sencillo y permite a los desarrolladores y analistas de negocio estudiar bases de datos (casi) en tiempo real. Realiza consultas del tipo SQL sobre conjuntos de datos que contienen terabytes de información en unos pocos segundos.

BigQuery

Page 35: Google Cloud Platform y Python

BigQuery

Page 36: Google Cloud Platform y Python

https://cloud.google.com/bigquery/bigquery-api-quickstart?hl=en

BigQuery - URLs

Page 37: Google Cloud Platform y Python

DataFlow

Diseñada para crear flujos en los cuales se ejecuten secuencias en batch mientras pasa la información entre sistemas de BigData. Usando un SDK de forma sencilla se pueden crear pre procesos o post procesos en el canal y no en los extremos.

Page 38: Google Cloud Platform y Python

DataFlow - Python

Se está creando el SDK para Python 3 mientras tanto se puede usar el de Java

Page 39: Google Cloud Platform y Python

https://cloud.google.com/dataflow/getting-started-eclipse

DataFlow

Page 40: Google Cloud Platform y Python

Pub/SubSistema de mensajería “muchos a muchos” asíncrono. Plataformas basadas en arquitecturas orientadas a servicios necesitan que los módulos se interconectan internamente y los sistemas de mensajería con alta demanda requieren una infraestructura robusta como la que ofrece Google.

Page 41: Google Cloud Platform y Python

Pub/Sub - Python

Page 42: Google Cloud Platform y Python

Pub/Subhttps://cloud.google.com/pubsub/configure

Page 43: Google Cloud Platform y Python

Translate APIAlgunas APIs como la de traductor se encuentran como parte de Google Cloud Platform, existe suficiente documentación y librerías para usarla ya que tiene más tiempo de existir, solo ahora se anexa a la plataforma. Traduce textos de un idioma a otro.

Page 44: Google Cloud Platform y Python

Translate API

Page 45: Google Cloud Platform y Python

https://cloud.google.com/translate/docs

Translate API

Page 46: Google Cloud Platform y Python

Prediction APIHerramienta muy poderosa que permite predecir tendencias a través de datos, mediante un proceso de entrenamiento detecta patrones. Una herramienta comúnmente usada en sistemas de Machine Learning.

Page 47: Google Cloud Platform y Python

Prediction API

Page 49: Google Cloud Platform y Python

Cloud EndpointsCrear un servicio RESTful ahora es muy sencillo con Cloud Endpoints ya que proporciona la autenticación por OAuth2, los tokens, las llaves y clientes compatibles para iOS, Android y Javascript entre otros. La solución ideal para exponer un App Engine con servicios REST.

Page 50: Google Cloud Platform y Python

Cloud Endpoints

Page 52: Google Cloud Platform y Python

Cloud MonitoringObten los indicadores de desempeño de tus servidores y elabora reportes con los datos de uso de los mismos.

Page 53: Google Cloud Platform y Python

Cloud Monitoring

Page 55: Google Cloud Platform y Python

Cloud Deployment ManagerPara los casos en los que queramos replicar una serie de servicios configurados a nuestro agrado, podemos automatizarlo para que se replique un ambiente similar

Page 56: Google Cloud Platform y Python

Cloud Deployment Manager

Page 57: Google Cloud Platform y Python

Cloud Deployment Managerhttps://cloud.google.com/deployment-manager/quickstart-guide

Page 58: Google Cloud Platform y Python

Cloud LoggingNos permite escribir registros de actividades de las aplicaciones que tengamos corriendo en App Engine o Compute Engine, ayuda a centralizar todo en un mismo repositorio de Logs.

Page 59: Google Cloud Platform y Python

Cloud Logging

Page 60: Google Cloud Platform y Python

Cloud Logginghttps://cloud.google.com/logging/docs/api/

Page 61: Google Cloud Platform y Python

ConclusiónLos servicios de Google Cloud Platform están pensados en dar una solución robusta a proyectos que pueden escalar. Python es la base de varias tecnologías de Google y es por ello que existen ya librerías para automatizar prácticamente todos los servicios disponibles en esta plataforma.

Page 62: Google Cloud Platform y Python

Descarga la presentaciónLa presentación la subiré a mis redes sociales

http://google.com/+CarlosToxtlihttp://facebook.com/carlos.toxtli