Prefacio

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

En mi puesto actual en Google, tengo la oportunidad de trabajar junto a científicos de datos e ingenieros de datos de diversos sectores que trasladan sus métodos de procesamiento y análisis de datos a la nube pública. Algunos intentan hacer las mismas cosas que hacen en las instalaciones, de la misma manera que las hacen, sólo que con recursos informáticos alquilados. Los usuarios visionarios, sin embargo, se replantean sus sistemas, transforman su forma de trabajar con los datos y, de este modo, son capaces de innovar más rápidamente.

Ya en 2011, un artículo de Harvard Business Review reconocía que algunos de los mayores éxitos de la computación en nube proceden de permitir que grupos y comunidades trabajen juntos de formas que antes no eran posibles. Ahora esto se reconoce mucho más ampliamente. Una encuesta realizada por el MIT en 2017 reveló que más encuestados (45%) citaron el aumento de la agilidad en lugar del ahorro de costes (34%) como motivo para pasarse a la nube pública. Sin embargo, todavía no se ha conseguido de forma generalizada. McKinsey estimó en 2021 que las empresas están dejando atrás casi 1 billón de dólares de valor al no considerar la nube pública como una fuente de valor transformador. Por tanto, ser capaz de trabajar en un proyecto de ciencia de datos en la nube es una habilidad en la que merece la pena invertir.

En este libro, recorremos un ejemplo de una forma colaborativa, transformativa y nativa en la nube de hacer ciencia de datos. Aprenderás a implantar una canalización de datos de extremo a extremo: empezaremos por la ingesta de datos sin servidor y seguiremos por la exploración de datos, los cuadros de mando, las bases de datos relacionales y los datos en streaming, hasta llegar al entrenamiento y la creación de un modelo de aprendizaje automático operativo. Abarco todos estos aspectos de los servicios basados en datos porque los ingenieros de datos participarán en el diseño de los servicios, el desarrollo de los modelos estadísticos y de aprendizaje automático, y su aplicación en la producción a gran escala y en tiempo real.

A quién va dirigido este libro

Si utilizas ordenadores para trabajar con datos, este libro es para ti. Puede que hoy en día recibas el título de analista de datos, administrador de bases de datos, ingeniero de datos, científico de datos o programador de sistemas. Aunque puede que tu función sea más limitada hoy en día (quizá sólo hagas análisis de datos, o sólo construcción de modelos, o sólo DevOps), quieres estirar un poco las alas: quieres aprender a crear modelos de ciencia de datos, así como a implementarlos a escala en sistemas de producción.

Google Cloud Platform está diseñada para que te olvides de la infraestructura. Los servicios de datos estrella -Google BigQuery, Cloud Dataflow, Cloud Pub/Sub y Vertex AI- no tienen servidor y son autoescalables. Cuando envías una consulta a BigQuery, se ejecuta en miles de nodos y obtienes el resultado; no tienes que crear un clúster ni instalar ningún software. Del mismo modo, en Cloud Dataflow, cuando envías una canalización de datos, y en Vertex AI, cuando envías un trabajo de aprendizaje automático, puedes procesar datos a escala y entrenar modelos a escala sin preocuparte de la gestión de clusters o la recuperación de fallos. Cloud Pub/Sub es un servicio de mensajería global que se autoescala según el rendimiento y el número de suscriptores y editores sin ningún trabajo por tu parte. Incluso cuando ejecutas software de código abierto como Apache Spark, diseñado para funcionar en un clúster, Google Cloud Platform te lo pone fácil con clústeres específicos para cada trabajo y Spark sin servidor. Gracias a esta infraestructura específica para cada trabajo, no tienes que temer un sobreaprovisionamiento de hardware o quedarte sin capacidad para ejecutar un trabajo cuando lo necesites. Además, los datos se cifran, tanto en reposo como en tránsito, y se mantienen seguros. Como científico de datos, no tener que gestionar la infraestructura es increíblemente liberador.

Estos servicios autoescalables y totalmente gestionados facilitan la implementación de modelos de ciencia de datos a escala, por lo que los científicos de datos ya no necesitan entregar sus modelos a los ingenieros de datos. En su lugar, pueden escribir una carga de trabajo de ciencia de datos, enviarla a la nube, y hacer que esa carga de trabajo se ejecute automáticamente de forma autoescalada. Al mismo tiempo, los paquetes de ciencia de datos son cada vez más sencillos. Así, se ha vuelto extremadamente fácil para un ingeniero sorber datos y utilizar un modelo enlatado para tener un modelo inicial (y a menudo muy bueno) en funcionamiento. Con paquetes bien diseñados y API fáciles de consumir, no necesitas conocer los detalles esotéricos de los algoritmos de la ciencia de datos, sólo lo que hace cada algoritmo y cómo enlazar algoritmos para resolver problemas realistas. Esta convergencia entre la ciencia de datos y la ingeniería de datos es la razón por la que puedes extender tus alas más allá de tu función actual.

En lugar de leer este libro de principio a fin, te animo encarecidamente a que me sigas probando el código. El código fuente completo del pipeline de extremo a extremo que construyo en este libro está en GitHub. Crea un proyecto de Google Cloud Platform y, después de leer cada capítulo, intenta repetir lo que yo hice consultando el código y el archivo README.md de cada carpeta del repositorio de GitHub.

Sigue las instrucciones de los archivos README.md en GitHub para probar el código. Los fragmentos de código del libro suelen estar incompletos; por ejemplo, puede que omita algunos argumentos de los comandos de la nube por motivos de claridad o concisión.

Ten en cuenta que éste no es un libro de referencia: la mejor referencia sobre Google Cloud es su documentación, y reproducirla en un libro tiene muy poco valor. En lugar de eso, este libro te muestra cómo utilizar conjuntamente una serie de herramientas para resolver un problema. Mi objetivo aquí es enseñarte a pensar en un problema para resolverlo utilizando Google Cloud, no cubrir exhaustivamente ningún producto en particular.

Si te fascina un tema de este libro y quieres profundizar en él, al final de cada capítulo encontrarás algunos recursos seleccionados que profundizan en los temas tratados en el capítulo. No te sientas obligado a ver todos los vídeos ni a leer todos los artículos.

Convenciones utilizadas en este libro

En este libro se utilizan las siguientes convenciones tipográficas:

Cursiva
Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivo y extensiones de archivo.
Constant width
Se utiliza en los listados de programas, así como dentro de los párrafos para referirse a elementos del programa como nombres de variables o funciones, bases de datos, tipos de datos, variables de entorno, sentencias y palabras clave.
Constant width bold
Muestra comandos u otros textos que deben ser tecleados literalmente por el usuario.
Cursiva de ancho constante
Muestra el texto que debe sustituirse por valores proporcionados por el usuario o por valores determinados por el contexto.

Este elemento significa un consejo o sugerencia.

Este elemento significa una nota general.

Este elemento indica una advertencia o precaución.

Utilizar ejemplos de código

El material complementario (ejemplos de código, ejercicios, etc.) se puede descargar en https://github.com/GoogleCloudPlatform/data-science-on-gcp.

Si tienes una pregunta técnica o un problema al utilizar los ejemplos de código, envía un correo electrónico

Este libro está aquí para ayudarte a hacer tu trabajo. En general, si se ofrece código de ejemplo con este libro, puedes utilizarlo en tus programas y documentación. No es necesario que te pongas en contacto con nosotros para pedirnos permiso, a menos que estés reproduciendo una parte importante del código. Por ejemplo, escribir un programa que utilice varios trozos de código de este libro no requiere permiso. Vender o distribuir ejemplos de los libros de O'Reilly sí requiere permiso. Responder a una pregunta citando este libro y el código de ejemplo no requiere permiso. Incorporar una cantidad significativa de código de ejemplo de este libro en la documentación de tu producto sí requiere permiso.

Agradecemos, pero no exigimos, la atribución. Una atribución suele incluir el título, el autor, la editorial y el ISBN. Por ejemplo "Data Science on the Google Cloud Platform por Valliappa Lakshmanan (O'Reilly). Copyright 2022 Google LLC, 978-1-098-11895-2".

Si crees que el uso que haces de los ejemplos de código no se ajusta al uso legítimo o al permiso concedido anteriormente, no dudes en ponerte en contacto con nosotros en

Aprendizaje en línea O'Reilly

Durante más de 40 años, O'Reilly Media ha proporcionado formación tecnológica y empresarial, conocimientos y perspectivas para ayudar a las empresas a alcanzar el éxito.

Nuestra red única de expertos e innovadores comparten sus conocimientos y experiencia a través de libros, artículos y nuestra plataforma de aprendizaje online. La plataforma de aprendizaje en línea de O'Reilly te ofrece acceso bajo demanda a cursos de formación en directo, rutas de aprendizaje en profundidad, entornos de codificación interactivos y una amplia colección de textos y vídeos de O'Reilly y de más de 200 editoriales. Para más información, visita https://oreilly.com.

Cómo contactar con nosotros

Dirige tus comentarios y preguntas sobre este libro a la editorial:

  • O'Reilly Media, Inc.
  • 1005 Gravenstein Highway Norte
  • Sebastopol, CA 95472
  • 800-998-9938 (en Estados Unidos o Canadá)
  • 707-829-0515 (internacional o local)
  • 707-829-0104 (fax)

Tenemos una página web para este libro, donde se enumeran erratas, ejemplos y cualquier información adicional. Puedes acceder a esta página en https://oreil.ly/data-science-on-gcp.

Envía un correo electrónico para comentar o hacer preguntas técnicas sobre este libro.

Para noticias e información sobre nuestros libros y cursos, visita https://oreilly.com.

Encuéntranos en Facebook: https://facebook.com/oreilly.

Síguenos en Twitter: https://twitter.com/oreillymedia.

Míranos en YouTube: https://www.youtube.com/oreillymedia.

Agradecimientos

Cuando empecé a trabajar en Google en 2014, utilizaba la nube pública simplemente como una forma de alquilar infraestructura, es decir, montaba máquinas virtuales, instalaba el software que necesitaba en ellas y luego ejecutaba mis tareas de procesamiento de datos utilizando mi flujo de trabajo habitual. Afortunadamente, me di cuenta de que la pila de big data de Google era diferente, así que me propuse aprender a aprovechar al máximo todas las herramientas de datos y aprendizaje automático de Google Cloud Platform.

La forma en que mejor aprendo es escribiendo código, y eso es lo que hice. Cuando un grupo de encuentro de Python me pidió que hablara sobre Google Cloud Platform, mostré el código que había escrito. Resultó que un recorrido por el código para construir un sistema de extremo a extremo, al tiempo que se contrastaban distintos enfoques de un problema de ciencia de datos, resultó bastante educativo para los asistentes. Escribí la esencia de mi charla como propuesta de libro y la envié a O'Reilly Media.

Un libro, por supuesto, tiene que tener mucha más profundidad que un paseo por el código de 60 minutos. Imagina que un día llegas al trabajo y te encuentras con un correo electrónico de un nuevo empleado de tu empresa, alguien que lleva en ella menos de seis meses. De algún modo, ha decidido que va a escribir un libro sobre la plataforma bastante sofisticada en cuya construcción has participado y te pide ayuda. No forma parte de tu equipo, ayudarle no forma parte de tu trabajo y ni siquiera se encuentra en la misma oficina que tú. ¿Cuál es tu respuesta? ¿Te presentarías voluntario?

Lo que hace de Google un lugar tan estupendo para trabajar es la gente que trabaja aquí. Es un testimonio de la cultura de la empresa que tantas personas -ingenieros, jefes técnicos, gestores de productos, arquitectos de soluciones, científicos de datos, asesores jurídicos, directores- de tantos equipos diferentes ofrecieran gustosamente su experiencia a alguien que no conocían (de hecho, todavía no he conocido a muchas de estas personas en persona). Así pues, este libro es inconmensurablemente mejor gracias a (por orden alfabético de apellidos) William Brockman, Mike Dahlin, Tony DiLoreto, Bob Evans, Roland Hess, Brett Hesterberg, Dennis Huo, Chad Jennings, Puneith Kaul, Dinesh Kulkarni, Manish Kurse, Reuven Lax, Jonathan Liu, James Malone, Dave Oleson, Mosha Pasumansky, Kevin Peterson, Olivia Puerta, Reza Rokni, Karn Seth, Sergei Sokolenko y Amy Unruh. En particular, gracias a Mike Dahlin, Manish Kurse y Olivia Puerta por revisar cada uno de los capítulos. Cuando la primera edición del libro estaba en acceso anticipado, recibí valiosos informes de errores de Anthonios Partheniou y David Schwantner. Huelga decir que soy responsable de los errores que puedan quedar.

Unas cuantas veces, durante la redacción del libro, me encontré completamente atascada. A veces, los problemas eran técnicos. Gracias a (por orden alfabético) Ahmet Altay, Eli Bixby, Ben Chambers, Slava Chernyak, Marián Dvorský, Robbie Haertel, Felipe Hoffa, Amir Hormati, Qiming (Bradley) Jiang, Kenneth Knowles, Nikhil Kothari y Chris Meyers por mostrarme el camino a seguir. Otras veces, los problemas estaban relacionados con averiguar la política de la empresa o conseguir acceso al equipo, documento o estadística adecuados. Este libro habría sido mucho más pobre si estos colegas no me hubieran desbloqueado en momentos críticos (de nuevo por orden alfabético): Louise Byrne, Apurva Desai, Rochana Golani, Fausto Ibarra, Jason Martin, Neal Mueller, Philippe Poutonnet, Brad Svee, Jordan Tigani, William Vampenebe y Miles Ward. Gracias a todos por vuestra ayuda y ánimo.

Cinco años después, sigo sintiéndome humilde ante el increíble talento y la colaboración de mis colegas. Sagar Baliyara, Filipe Gracio, Polong Lin y Krishnan Saidapet (por orden alfabético de apellidos) han seguido de cerca la segunda edición y han hecho muchas sugerencias estupendas.

Gracias también al equipo de O'Reilly -Marie Beaugureau, Kristen Brown, Ben Lorica, Tim McGovern, Rachel Roumeliotis y Heather Scherer- por creer en mí y hacer que el proceso de pasar del borrador a la primera edición del libro fuera indoloro. Katherine Tozer, Michele Cronin y Tom Sullivan agilizaron enormemente la producción de la segunda edición.

La segunda edición también se ha beneficiado enormemente de nuevas perspectivas externas. Colin Dietrich verificó gran parte del código del libro y realizó numerosas pull requests al repositorio de GitHub. Joy Payton sugirió muchas mejoras para hacer el libro más accesible a los principiantes en la ciencia de datos. Michael Hopkins y Margaret Maynard-Reid examinaron el libro en busca de áreas que necesitaban actualización. Gracias también a los lectores de la primera edición que dejaron reseñas del libro en Amazon, presentaron problemas en GitHub y se pusieron en contacto conmigo por correo electrónico y en Twitter. Vuestros comentarios han mejorado enormemente esta edición del libro.

Por último, y lo más importante, gracias a Abirami, Sidharth y Sarada por vuestra comprensión y paciencia incluso cuando me enfrasqué en escribir y codificar. Vosotros hacéis que todo valga la pena.

Voy a donar el 100% de los derechos de autor de este libro a United Way of King County, donde vivo. Te animo encarecidamente a que participes en una organización benéfica local para dar, ofrecerte como voluntario y actuar para ayudar a resolver los retos más difíciles de tu comunidad.

Get Ciencia de Datos en la Plataforma en la Nube de Google, 2ª Edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.