Curso de apache Kafka y fluido en la nube para principiantes | AMG Inc | Skillshare

Velocidad de reproducción


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Curso de apache Kafka y fluido en la nube para principiantes

teacher avatar AMG Inc, Technologist

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Lecciones en esta clase

    • 1.

      Introducción al curso

      3:42

    • 2.

      Qué es el análisis

      5:27

    • 3.

      Qué es Apache Kafka

      3:02

    • 4.

      Arquitectura de Kafka

      4:40

    • 5.

      Solución gestionada

      1:38

    • 6.

      Cómo comenzar rápido

      22:02

    • 7.

      Introducción a KSQLDB

      1:53

    • 8.

      Cómo usar KSQLDB

      19:02

    • 9.

      Resumen de los flujos de Kafka

      2:47

    • 10.

      Introducción a Kafka

      2:29

    • 11.

      Catálogo de libros de Project1: descripción

      0:57

    • 12.

      Catálogo de libros de Project1: crear productor

      2:55

    • 13.

      Catálogo de libros de Project1: crear tema

      1:08

    • 14.

      Catálogo de libros de Project1: producir mensajes

      1:29

    • 15.

      Catálogo de libros de Project1: crea consumidores

      2:07

    • 16.

      Catálogo de libros de Project1: consumo de mensajes

      2:56

    • 17.

      Project2 PacMan: descripción

      1:08

    • 18.

      Project2 PacMan: configurar y ejecutar

      6:32

    • 19.

      Project2 PacMan: cómo configurar los requisitos pre

      2:30

    • 20.

      Project2 PacMan: cómo configurar KSQLDB

      4:53

    • 21.

      Project2 PacMan: ejecuta datos de proyectos y sumideros

      11:14

  • --
  • Nivel principiante
  • Nivel intermedio
  • Nivel avanzado
  • Todos los niveles

Generado por la comunidad

El nivel se determina según la opinión de la mayoría de los estudiantes que han dejado reseñas en esta clase. La recomendación del profesor o de la profesora se muestra hasta que se recopilen al menos 5 reseñas de estudiantes.

121

Estudiantes

--

Proyectos

Acerca de esta clase

Bienvenido al curso de introducción fluido en la nube. Confluent emplea el uso de Apache Kafka para transmitir eventos en tiempo real, lo que se ha convertido en una necesidad para la mayoría de compañías de Fortune 500. La transmisión de eventos en tiempo real es el medio por el cual muchas empresas están tomando decisiones en el momento adecuado y evitan pérdidas financieras significativas. Cubrimos la parte introductoria para cada uno con conceptos fundamentales cubiertos con ejemplos de casos de uso. Este curso está diseñado para estudiantes que se encuentran en su etapa inicial en el aprendizaje de Cloud Computing y Streaming de eventos y es adecuado para aquellos que quieren comenzar su carrera en esta área.

Este curso se centra en qué es fluido y cómo puede usarse para transmitir eventos y datos en tiempo real. También incluye ejercicios prácticos de laboratorio que cubren una parte importante en la implementación y la organización de aplicaciones.

Utilizamos una combinación de la línea CMD y la programación de terminales para lanzar cualquier aplicación que elijas como arquitectura de microservicios. La parte de programación incluye principalmente escribir guiones de conchas y luego usar comandos de línea de comandos para ejecutarlos y obtener los resultados que queremos.

Incluso si no tienes experiencia previa usando ninguna de estas tecnologías, todavía podrás obtener el 100% del beneficio de este curso.

Conoce a tu profesor(a)

Teacher Profile Image

AMG Inc

Technologist

Profesor(a)

Our company goal is to produce best online courses in Data Science and Cloud Computing technologies. Below is our team of experienced instructors.

Instructor1

Adnan Shaikh has been in the information technology industry for the past 18 years and has worked for the fortune 500 companies in North America. He has held roles from Data Analyst , Systems Analyst, Data Modeler, Data Manager to Data Architect with various technology companies.

He has worked with Oracle , SQL Server, DB2 , MySql and many other relational and non relational databases over the course of his career. He has written multiple data access applications using complex SQL queries and Stored Procedures for critical production systems.

He has a masters degree from Northwestern University of Chica... Ver perfil completo

Habilidades relacionadas

Desarrollo Más Desarrollo Ciencia de datos
Level: Beginner

Valoración de la clase

¿Se cumplieron las expectativas?
    ¡Superadas!
  • 0%
  • 0%
  • Un poco
  • 0%
  • No realmente
  • 0%

¿Por qué unirse a Skillshare?

Mira las galardonadas Skillshare Originals

Cada clase tiene lecciones cortas y proyectos prácticos

Tu membresía apoya a los profesores de Skillshare

Aprende desde cualquier lugar

Ve clases sobre la marcha con la aplicación de Skillshare. Progresa en línea o descarga las clases para verlas en el avión, el metro o donde sea que aprendas mejor.

Transcripciones

1. Introducción al curso: Hola, bienvenidos a la introducción al curso de la nube de consola. Mi nombre es Shannon, y espero con interés nuestro tiempo juntos en este curso. Durante la duración de este curso, estarás enfocándote en lo siguiente. En primer lugar, te vamos a enseñar en eventos de demanda, transmitir habilidades en confluencia a través de ejercicios prácticos de laboratorio. También te enseñaremos el uso del entorno de nube de consola, que es extremadamente fácil de usar y muy funcional. Los conceptos clave en este curso se explican con visuales apropiados para que el cemento sea fácil y que los entienda rápidamente. También vamos a tener un proyecto capstone al final del curso. Encontrarás cuestionarios regulares durante la duración de este curso para poner a prueba tus conocimientos sobre lo que has aprendido, así como cementar algunos fundamentos a medida que avanzamos. Conoce a nuestro equipo de instructores que han creado y diseñado este curso. Juntos, contamos con poco más de diez años de experiencia en implementaciones prácticas de tecnología en la enseñanza de cursos técnicos a nivel universitario. Los miembros de nuestro equipo cuentan con especializaciones en las áreas de tecnología de la información, ingeniería de software, y ciencia y diseño de datos. ruta de aprendizaje que vamos a seguir para este curso. Vamos a empezar con Apache Kafka y enseñarte todo lo que necesitas saber al respecto para poder trabajar con contornos. El siguiente paso es realmente mostrarte confluente y mostrarte de qué se trata todo y configurarlo para ti. Después de eso, vamos a echar un vistazo a case equal db, cómo usamos eso y cuáles son sus aplicaciones. Pasando de ahí, vamos a explorar transmisiones, qué son, las bibliotecas involucradas, y cómo se puede trabajar con ellos. Por último, vamos a ver la conexión católica en cuanto a cómo podemos trabajar con eso y cómo podemos vincular nuestros proyectos externamente. Después de que terminemos con todos estos conceptos, vamos a seguir adelante y crear dos proyectos. Kafka es un servicio de streaming de datos que permite al productor escribir mensajes a un tema que se han consumido con el consumidor. Aunque este concepto es extremadamente simple en la práctica, las cosas pueden volverse un poco confusas y perderse en el camino. Por eso tratamos de explicar los conceptos este fin de semana. Con explicaciones visuales Entre confluentes se encuentra un servicio de streaming de eventos basado en la nube. Proporciona el entorno en forma de clústeres para evitar streaming y proporciona una visualización muy agradable de las operaciones. Dicho esto, vas a estar viendo mucho esta pantalla por la duración de este curso. Más allá de la teoría y explicación tres partes de este curso para el hogar. De igual manera estar trabajando mucho en biopsia, vamos a estar viendo cómo podemos correr en nuestra nube de consola y Kafka usando la CLI. Y vamos a montar un proyecto en el que vamos a hacer algo increíble y ver cómo produce toda esa información en nuestros eventos streaming es una frase de gran objetivo. Y las empresas de Fortune 500 hoy en día, estas son solo algunas de las empresas que necesitan expertos en streaming de eventos para llenar sus operaciones cotidianas y necesidades críticas de desarrollo de software. Esperamos tenerte unirte a nuestro curso. Y prometimos que este curso te ayudará a construir tu base de eventos streaming y consola de conocimiento. Esto te ayudará a que tu currículum destaque y exija un salario competitivo en el mercado. 2. Qué es el análisis de transmisión: Hola, y bienvenidos a este curso donde te estaré enseñando cómo usar confluentes y tus aplicaciones de streaming de eventos. En esta primera sección, estaremos discutiendo Apache Kafka y todo lo que necesitas saber al respecto para entender y usar confluente como servicio. En primer lugar, necesitamos entender qué significa incluso la analítica de streaming de palabras de moda y por qué es tan popular en estos días. ¿ Qué es el análisis de streaming? En términos lacos? Es el procesamiento constante de los datos ya que se generan y reciben en tiempo real. Estos datos se encuentran en la mayoría de los lugares. Por ejemplo, la forma más común de datos que se utiliza para analizarse en el análisis de streaming es la información de redes sociales. En el momento en que realices algo en las redes sociales, ese evento se transmite en tiempo real para ser procesado con el fin de mostrarte contenido que es más relevante para tus gustos en mostrarte contenido que es más relevante para lugar de cosas que no lo harías me gusta ver. En el pasado. Y en realidad en muchos lugares aún hoy, los datos se enviaban en lotes más que como un flujo continuo. Los datos se recogieron hasta un intervalo de tiempo. Y cuando llegó el punto medio interno, los datos se enviaron como un pedazo grande para ser procesado. Aunque este proceso es mucho más barato que el streaming de datos en tiempo real. No da insights en tiempo real y no puede usarse para acciones instantáneas y generación de gráficos en tiempo real. El análisis de streaming se creó para resolver este problema dentro del procesamiento por lotes, que se podrían tomar decisiones en tiempo real y se podrían tomar acciones. Ahora veamos cómo funciona el análisis de streaming. La primera parte de los eventos en streaming es el evento que se produce. Este evento podría ser producido ya sea por algún dispositivo o aplicación o cualquier otro productor para ese asunto, es esencialmente solo un mensaje. Ese mensaje se envía a un hub. Ese Q es el mensaje detrás de otros mensajes y lo hace ingerible dentro del servicio de análisis de streaming. Dentro de la fase de análisis de streaming, se decide qué hacer con ese mensaje. Ya sea para presentarlo en un gráfico en algún tablero, o para enviar un comando para realizar una determinada acción o evento solo para simplemente almacenar ese mensaje. Eso es todo decidido dentro de la parte de análisis de corriente. Por último, el mensaje se envía en adelante desde el servicio Stream Analytics para ser consumido por el consumidor final. Esos son proceso puede parecer un poco técnico. Y tal vez te estés preguntando en este punto por qué incluso pasar por tal proceso en primer lugar. Hay una cantidad justa de ventajas al usar el análisis de streaming. Usando la visualización de datos. Incluso alguien que no puede leer bien los números, puede dar sentido a cómo están progresando las cosas. Además, te da una ventaja competitiva a medida que obtienes insights en tiempo real y puedes hacer movimientos más rápidos de lo que tu competencia puede incluso darse cuenta. También te da una visión mucho más profunda y clara de las operaciones ya que sabes qué operaciones se están realizando en tiempo real. La capacidad de obtener información tan pronto como se produzca puede tanto crear como identificar oportunidades perdidas en el mundo empresarial y más. Por último, identificar tendencias con análisis de streaming puede ayudar a mitigar las pérdidas al alertar a la empresa de las cosas correctas en el momento adecuado. Muchas empresas en el mercado hoy emplean el uso de la analítica de streaming con aún más adoptarla todos y cada día. La mayoría de las organizaciones están descubriendo su necesidad datos continuos en tiempo real y cuánto sirven para ganar de ellos. Puede que no sea evidente en la superficie de la misma, pero en muchas industrias son candidatos naturales para la transmisión de datos. Por ejemplo, considere las siguientes industrias. Finanzas, es fundamental saber si se está cometiendo un fraude en tiempo real. De lo contrario podría llevar a una enorme pérdida para la empresa. Además, el análisis de mercado en tiempo real es un elemento fundamental en las decisiones empresariales en el comercio electrónico. Veamos al padre de todo el comercio electrónico dice Amazon. Amazon se ocupa de una cantidad absolutamente enorme de datos. Y utiliza esos datos para ajustar continuamente las ofertas y valores de sus productos para optimizar sus celdas. Además, ayuda en las recomendaciones de productos para los clientes así como a optimizar la logística de toda la operación. Amazon en realidad tiene su propio producto para esto, se llama Amazon Kinesis. En los deportes. Echemos un vistazo a la Fórmula Uno. Cada automóvil de Fórmula Uno produce gigabytes de datos a través de la gran cantidad de instrumentos que se instalan. Solo durante la carrera, los equipos recogen una tremenda cantidad de datos que necesitan para tomar decisiones en tiempo real que puedan tomar o romper la carrera por ellos. La misma lógica también se aplica a los juegos en línea, donde los detalles técnicos y los datos del jugador se utilizan para optimizar el rendimiento del juego y afinar la experiencia general. 3. Qué es Apache Kafka: Cuando usted dice el término análisis de streaming, encontrará que en su mayoría está asociado con Apache Kafka. Eso se debe a que apache Kafka es el servicio de streaming de datos más corriente que la mayoría de las empresas utilizan para sus requisitos de transmisión de datos. Vamos a explorar qué es Apache Kafka. En un libro de texto. Apache Kafka es un servicio de streaming de datos. Es de código abierto y utilizado por miles de empresas para el análisis de streaming. En una definición más simple, brinda el servicio que discutimos cuando miramos ese diagrama de flujo de cómo funciona el análisis de streaming. Lo que hace Apache Kafka es que toma eventos o mensajes de un productor. Ahora ese productor podría ser un dispositivo IoT o un smartphone, y lo empuja a Apache Kafka. Apache Kafka entonces lo gestiona de tal manera para que se pueda dar a muchos consumidores, elimina la necesidad de tener flujos de datos individuales de cada productor a un consumidor. Y esencialmente lo hace para que cada productor y consumidor solo tenga un único flujo de datos que no se ve afectado por factores externos. Veamos un ejemplo para una mejor comprensión. Ahora, diciendo que hay que los productores y tres consumidores sin Apache Kafka, cada productor necesita una corriente a un consumidor con dos productores y tres consumidores. Eso nos da un total de seis corrientes para gestionar. Estos arroyos están acoplados, es decir que pueden ahogarse debido a factores externos. consumidor lento puede afectar al productor. Agregar consumidores afectaría a los productores. El fracaso de un consumidor bloquearía toda una corriente. Hay muchas debilidades en un sistema como este. Tomemos el sistema de antes y agreguemos tres productores más y a más consumidores. Sin Apache Kafka, necesitaríamos mantener y administrar 25 arroyos. Ahora eso es una gran cantidad de corrientes y mucho mantenimiento, lo que también significa altos costos así como riesgo añadido. Con Apache Kafka, solo necesitaríamos diez flujos y tener al agregado una fianza de que esas corrientes están desacopladas y no se verán afectadas por una capacidad de productores o consumidores para realizar sus tareas. Del ejemplo, ahora deberías poder contar cuán ventajoso Apache Kafka y lo importante que es darle servicio brinda los beneficios de Kafka o que es muy rápido, fácilmente escalable, sin fin confiable, extremadamente duradero, y lo mejor de todo, es de código abierto. No obstante, también lo puedes encontrar como un servicio gestionado, como lo veremos más adelante durante este curso. 4. Arquitectura de Kafka: Ahora que sabemos qué es Apache Kafka y para qué se utiliza. Veamos cómo funciona por dentro. Dentro de Apache Kafka, encontrará la siguiente competencia. Productores, consumidores, corredores, temas, particiones, clusters, y el zookeeper. Estaremos mirando cada confianza por separado y viendo lo que hacen. Productores. Estos son los elementos que producen los eventos son mensajes que se envían a Apache Kafka. como discutimos anteriormente, estos podrían ser un dispositivo o una aplicación. Los mensajes que envían los productores se escriben a un tema con mensajes similares en su interior. Es importante entender que pueden existir múltiples productores dentro de la misma aplicación. Todos los mensajes que son productor producen sentido directamente al clúster Kafka. Consumidores. Estos son los chicos en el extremo opuesto del productor. Están ahí para tomar los mensajes del productor y leer, o en un sentido más técnico, consumirlos. Los consumidores se suscriben a temas. Y cuando se envían mensajes a esos temas, el consumidor consume esos mensajes a medida que vienen. Al trabajar con Apache Kafka, múltiples consumidores pueden consumir el mismo mensaje del mismo tema. Aunque los mensajes se consumen, no se destruyen después del proceso. Esa es una de las bellezas de Apache Kafka. Los consumidores pueden consumir diferentes tipos de mensajes de los clústeres también. Además, los consumidores saben exactamente dónde se encuentran los datos que necesitan consumir dentro del clúster de Kafka. Corredores. Cuando discutimos cómo los productores envían mensajes a Apache Kafka, donde realmente envían esos mensajes a son los corredores dentro del clúster de Kafka. Los corredores son los servidores Kafka que reciben y luego almacenan estos mensajes para los consumidores los tomen y los consuman. Un clúster de Kafka puede tener múltiples corredores, y cada corredor administra múltiples particiones. Como veremos pronto. Temas. Estos son simplemente los canales definidos a través de los cuales se transmiten los datos. Los productores producen sus mensajes a los temas. Los consumidores se suscriben a temas para consumir los mensajes dentro de ellos. Básicamente es solo un medio para compartimentar y organizar mensajes y ordenarlos por sus rasgos particulares. Temas de nombres identificativos únicos dentro del clúster de Kafka. Y van a ser cualquier número de temas. No hay límite definido. Particiones. Los temas se dividen en estas particiones y se replican a otros corredores. Múltiples consumidores pueden leer de un tema en paralelo con la ayuda de esto, con particiones, los productores pueden agregar claves a sus maestros para controlar a qué partición va el mensaje. De lo contrario simplemente va alrededor y alrededor del patrón Robin, donde una partición recibe un mensaje y la otra partición obtiene la siguiente, y así sucesivamente y así sucesivamente. Las claves permiten al productor controlar el orden del procesamiento de mensajes, lo cual puede ser útil si la aplicación requiere ese control sobre los registros. Al igual que los temas, no hay límite definido en las particiones. Dado que el clúster es la capacidad de procesamiento puede manejar y administrar TI. Clusters. Estos son los sistemas que gestionan los corredores. Es esencialmente toda la arquitectura de corredores a la que llamamos clúster. Los mensajes se escriben a temas que están dentro de los corredores, que están dentro de clústeres. Esos mensajes son entonces leídos por los consumidores siguiendo la misma jerarquía. El Zookeeper, este elemento se encarga de gestionar y coordinar el clúster kafka, algo así como un conductor de una orquesta. Notifica a todos los nodos del sistema cuando se produce un cambio de topología. Esto puede ser la unión de un nuevo corredor o incluso el fallar de uno. El Zookeeper también permite elecciones de liderazgo entre corredores y pares de particiones temáticas para determinar qué corredor debe ser el líder una partición en particular y cuáles tienen réplicas de esos datos. En términos lacos, el Zookeeper gestiona y coordina todo lo que hace el clúster de Kafka y proporciona a prueba de fallas para un día lluvioso. 5. Solución administrada Kafka: Veamos las soluciones administradas disponibles en el mercado para Apache Kafka. En este momento en 2021, hay una serie de proveedores de soluciones administradas para Apache Kafka. Uno de ellos siendo confluente. Aparte de eso, también tenemos Azure, HDInsight, AWS, Kinesis, en lugar de clúster. E incluso hay muchas ventajas al pagar a un proveedor de servicios administrados por Apache Kafka en lugar usar el sabor de código abierto de la misma. Hay muchas molestias asociadas con la kafka de código abierto y mucha gestión y se requiere mucha gestión y mantenimiento que se debe hacer regularmente. Hay tantas operaciones que hay que realizar solo para que las cosas funcionen. Con un servicio gestionado. No necesitas preocuparte por realizar ninguna operación, ahí el término no ops. Además, no es necesario descargar ningún archivo ni administrar ningún archivo localmente. Todo se hace en la Nube. Por último, puedes estar seguro de que estarás ejecutando Kafka sin problemas sin ningún enganche. Piense en usar el código abierto como motor de automóvil libre. Es potente y puede generar mucho torque, pero por sí mismo, realmente no puede hacer nada. No hasta que construya el resto de las piezas necesarias para que el motor sea útil. Las soluciones administradas por comparación, son como autos de pleno derecho listos para conducir. No hay molestia de configurar mucho nada, solo gira una llave y ponte en marcha. Es esa conveniencia que muchas empresas miran a la hora de considerar soluciones administradas. 6. Inicio rápido con Confluent Cloud: Arranque la nube confluente. Vamos a arrancar las cosas haciendo algunas tareas básicas dentro del conflicto. Vamos a configurar un clúster que un tema. Y luego vamos a ver cómo podemos crear productores y consumidores que enviarán mensajes desde y hacia ese tema usando la consola y la CLI de Cloud. Para empezar con confluente, lo primero que vamos a tener que hacer es ir a la página web de la consola, que es sólo confluent.io. Una vez ahí, se puede ver la opción de empezar de forma gratuita. Al hacer clic en él, le presentarán sus opciones de implementación y simplemente puede elegir la opción de implementación y stark free. Aquí puedes rellenar tu nombre completo, tu empresa, país de correo electrónico, y escoger una contraseña y simplemente hacer click en este botón. Cuando hagas eso, como se dice aquí, recibirás $400 para gastar dentro Consola y Cloud durante tus primeros 60 días. Cuando rellene este formulario y haga clic en Iniciar gratis, le enviará un enlace a su correo electrónico donde tendrá que confirmar la titularidad y acceso a ese correo electrónico, desde qué punto podrá iniciar sesión para entrar en conflicto. Dado que ya tenemos una cuenta con confluente, no vamos a estar haciendo esto, en cambio estaremos iniciando sesión en confluente. Para ello, lo que vamos a tener que hacer es volver a la página de Empezar. Y solo dice en la parte inferior aquí, tengo un login de cuenta. Ahí vamos. Abre esto en una nueva pestaña donde podamos iniciar sesión. Ahí vamos. Ese es mi e-mail. Doy clic en Siguiente, esa es mi contraseña. Hago clic en Siguiente. Ahora este es el punto donde el conflicto va a empezar a darte un tutorial sobre cómo se supone que debes configurar tus clústeres dentro de Consola y Cloud. Este es un excelente tutorial si quieres tomarte el tiempo, sí te recomiendo que lo pases y leas sobre él. Aunque, para nuestros proyectos, estaremos aportando todos los materiales que necesitarás para crearlos. Ahí está este botón que dice Create Cluster. Adelante y haz clic en él. Y ahora se te presentarán tres opciones diferentes para crear un clúster. Tienes tu clúster básico, tu clúster estándar y tu dedicado. Ahora, el básico es el que vamos a utilizar porque como se puede ver, no tiene ningún costo basado asociado a ella. Y tiene muchos límites de uso. Tiene ingreso de un 100 mgs, salida de un 100 MBAs, y almacenamiento de hasta 5 mil GBs. Puede soportar un alto flujo de datos. No estaríamos yendo a ninguna parte cerca de estos números, no en nuestros proyectos. Podemos simplemente seleccionar el tipo básico por el bien del conocimiento, es bueno saber que si fuiste por la opción estándar, te costará $1.50 por hora. Y puede soportar más almacenamiento. En realidad, puedes llevarlo hasta un almacenamiento ilimitado. Ese es solo el único beneficio que realmente vas a obtener de tomar estándar sobre básico. Cuando vas a dedicarlo, puedes ver que a medida que avanza esta barra, obtienes cada vez más beneficios. Entonces llegas a un punto en el que te dicen que se ha puesto en contacto para que podamos manejar algo hacia fuera para Clusters Dedicados. Pero como no vamos a ir por ninguna de estas opciones, sólo vamos a conseguir un clúster básico en marcha. Cuando vienes a esta región, zona donde te preguntan qué región quieres seleccionar. Por aquí puedes ver cuán confluente se asocia realmente con AWS, gcp y Azure. Y puede ver que tiene elecciones de servicio de todas estas, puede elegir un servidor de AWS, un servidor GCP o un servidor Azure, cualquiera que quiera, o cualquiera que sea el servicio que se encuentre ya usando. Es ideal normalmente que si quieres conectar kafka a un servicio que ya tienes en ejecución, que debes crear el clúster en una región utilizando un servicio que ya tienes que ir antes. Entonces, por ejemplo, digamos que tienes un Azure IoT Hub. Quieres usar confluente para el streaming de eventos, entonces probablemente deberías usar Microsoft Azure para hospedar tu clúster confluente. Generalmente, hace las cosas más fluidas y hace las cosas más fáciles y hay menos molestias y el proceso Connect, pero más que eso, solo es fácil de administrar y reduce la latencia de nuestros proyectos ya que realmente no tenemos nada más que ir, sólo podemos ir directamente a ahí vamos. Simplemente podemos elegir. No hay Asia, Singapur, Ahí vamos. No necesitamos una disponibilidad multizona. Zona única funciona perfectamente bien para nosotros. Entonces ese es exactamente el que vamos a ir. Ahora cuando vengas a esta tercera página, te avisará, te pedirá una tarjeta de crédito. Y cobrará esa tarjeta de crédito inicialmente, pero se le reembolsará su monto, y necesita una tarjeta de crédito para verificar. Entonces en caso de que rebases tu límite o vayas más allá de los 60 días, tu límite o vayas más allá de los 60 días,te envía una notificación para hacerte saber, hey, si quieres seguir usando confluente, háganoslo saber, lo cobraremos en la tarjeta y nosotros Simplemente guardará los clústeres que tengas en los proyectos que tengas en marcha. Por lo que este clúster está perfectamente bien. Podemos llamar a este cluster cluster underscore 0, que funciona para nosotros. Y sólo podemos lanzar este clúster. Ahí vamos. Con esto. Hemos configurado nuestro clúster de consola. Ahora vamos a proceder con hacer un tema dentro de nuestro clúster de cátodo, así como iniciar sesión en nuestra nube confluente a través de nuestra CLI. Para eso, vayamos a confluir ahora mismo. A partir de aquí, solo podemos volver al enlace de Primeros pasos y simplemente iniciar sesión. Ahí vamos. Ese es mi e-mail, así que voy a golpear Next, esa es mi contraseña. Voy a iniciar sesión. Ahí vamos. Una vez que tengas una configuración de clúster, esto es lo que vas a ver dentro confluente. Te va a mostrar que tienes una configuración de clúster. Está en vivo, está funcionando. Por lo que sólo sigue adelante y da clic en este clúster que has hecho. Una vez que estés dentro, verás el tablero. Verás que te da un montón de opciones en las que puedes canalizar datos, configurar un cliente si querías configurar la CLI. Pronto estaremos montando el CLI, pero antes de eso vamos a configurar un tema. Pasemos al tema aquí mismo y creemos un tema. Podemos darle a este tema cualquier nombre. Podemos decir que tiene sujetos. ¿ Por qué no? Podemos hacer estos cursos escolares, y podemos simplemente dejar esto en este defecto, predeterminado mientras que ustedes seis, realmente no va a cambiar mucho de nada, así que sólo podemos ir a crearlo con sus valores predeterminados. Teníamos más de dos mensajes. Para que podamos producir nuevo mensaje a este tema. Podemos decir que ahí tenemos una vista a la montaña CA, todo el resto de ella. De acuerdo, así que como no queremos enviar ningún mensaje técnico por el momento en este punto, solo estamos tratando de entender qué son los temas, qué hacen, y cómo se enviarían los mensajes de vuelta y adelante y cómo los veríamos. Olvidémonos de todos estos bits técnicos de código que están en la sección de valor y solo podemos darle cualquier valor, digamos que le damos el tema del inglés. Ese siempre es un tema divertido. Y podemos convertir ese volumen a uno. Se puede producir eso. Ahí vamos. Árbol de partición inglés, impresionante. Entonces podemos decir que queremos producir no. Se puede decir que queremos otro tema, matemáticas. Y supongo que la última sería la ciencia. Decimos que queremos que nuestro mensaje final sea ciencia. Ahí vamos. Ahora tenemos tres mensajes que tenemos configurado. Estos son solo tres temas que hemos dicho que, vale, Estos son tres mensajes bajo el tema de materia o materias. En nuestro caso, como podemos ver aquí, sujetos. Y solo queremos pasar estos tres mensajes a lo largo de que tenemos ciencia, matemáticas e inglés como tema nuestro. Ahora que hemos configurado nuestro tema y tenemos algunos mensajes dentro de nuestro tema ahora, probablemente deberíamos seguir adelante e intentar configurar nuestro CLI para que en realidad podamos entonces configurar un consumidor. Las construcciones son realmente simples. Si vas por aquí a la página CLI de configuración, todas las instrucciones están justo ahí frente a ti y puedes simplemente copiar estos comandos. Si estás trabajando en un Mac, esto debería ser bastante simple en este comando funcionará fuera de la caja. No habrá ningún problema. No obstante, si eres como yo y estás usando, estás tratando de configurar Cloud o CLI confluente en una máquina con Windows, sí necesitas un terminal Linux para poder hacer esto. Si estás en Windows 11, para conseguir una ventana, el terminal de Ubuntu es bastante fácil. Todo lo que tienes que hacer es ir a la Tienda Windows. Desde aquí, solo puedes buscar Ubuntu. Ubuntu, obtendrás esta app de Ubuntu así como Ubuntu 12.04 LTS y 18.04 LTS. que ya tengo esto instalado, solo tengo que seguir adelante y abrirlo. Yo sí tengo que aconsejaros chicos sin embargo, que si van a configurar una ayuda para que así les guste, necesitará Windows Hypervisor si están trabajando con máquinas Intel o si están trabajando con AMD máquinas, sí es necesario habilitar SVM para que esto funcione. De acuerdo, entonces ahora que tenemos, son El terminal Ubuntu abierto, probablemente sea hora de ejecutar nuestros comandos CLI. obstante, no estaré ejecutando este comando curl ya que ya lo ejecuté y no quiero caer en el problema de directorios duplicados. Probablemente deberías seguir adelante y correr esto primero. Se le debe dar una C Cloud instalada después. Y cuando eso sucede, todo lo que necesitas hacer es simplemente ejecutar un comando simple que diga ver actualización en la nube. Y comprobará si hay actualizaciones en C cloud para ver si hay alguna. Probablemente debería haber una actualización importante para mí, pero no la voy a estar actualizando en este momento. Sí, ahí vamos. La única actualización es una versión importante y no tengo tiempo para eso en este momento. Voy a dejarlo después. Creo que es hora de ahora iniciar sesión en num2. Ahora otra cosa que tenemos que hacer desde dentro de nuestro CLI o terminal es que necesitamos obtener acceso a nuestra Consola y Cloud desde aquí. Para ello, necesitamos contar con algunos medios de comunicarnos a nuestra Consola y Cloud. Para comunicarte con la Consola y Cloud, debes dirigirte a la integración de datos en el lado izquierdo, y verás aquí una pequeña pestaña que dice claves API. Por aquí, puedes crear una clave API. Te dará dos opciones aquí. Digamos que puedes tener acceso global o puedes tener acceso granular. Para ello, te recomendaría que vayas por acceso global. Una vez que tengas acceso global, puedes seguir adelante y usar estas credenciales para conectarte a tu cliente, el terminal de Ubuntu. Ahora podemos darle a esto la mayoría cualquier descripción en su mayor parte, solo puedo llamar a esto la clave de curva de habilidad. Si quiero, solo puedo descargar esto y continuar. Incluso te da este pequeño texto que da esta clave si tuya, todos los detalles de tu clave, te proporciona un archivo de texto con todos ellos. Ahora que lo tengo y mi clave API está hecha, solo voy a volver a mi terminal de Ubuntu. Ahora asignados para iniciar sesión en nuestra Consola y Nube usando los determinantes de la Luna son para eso. Sólo voy a ir a ver nube, iniciar sesión, guión, dash save. Ahora desde aquí va a preguntarme mi credencial confluente. Sólo voy a ponerlos en apoyo al ritmo calificada acera. Una vez que los ponga, me va a pedir mi contraseña. Sólo voy a hacer una pausa muy rápido y poner eso. De acuerdo, así que ahora que tengo mi contraseña y sólo voy a presionar Enter, debería iniciar sesión en mis comps quiero nube. Y ha escrito esas credenciales en el archivo NET RC. Ahora que estoy conectado a confluente, es hora de ver nuestro clúster en un CLI solo para que sepas que en realidad estamos logueados. Y siempre es agradable una especie de asegurarte que puedes ver el clúster. Para eso. Bueno, tenemos que hacer es que necesitamos apenas escribir C Cloud Kafka lista de clústeres para ver qué podemos encontrar. Y como se puede ver, solo hicimos un clúster. Y podemos ver el ID aquí mismo. Entonces este es solo el único clúster que tenemos y quisiéramos usar este clúster por defecto. No queremos tener que poner el ID en cada momento cuando estamos usando este clúster. Entonces lo que podemos hacer para que sea nuestro clúster predeterminado es que solo podemos escribir C espacio en la nube, clúster espacial Kafka, uso del espacio. Y luego este nombre, así L, K, c dash z, dos parlamentarios. Ahí vamos. Se ha establecido son que son un clúster Kafka como el clúster predeterminado y activo para nuestro entorno de trabajo actual. De acuerdo, Así que ahora que tenemos nuestra configuración predeterminada de clúster dentro de la terminal, dentro de la CLI, ahora es un buen momento en realidad para traer nuestra clave API que hicimos para que podamos vincular los dos juntos. Para vincular la clave API, necesitamos escribirla como C Cloud space API dash key y store. Y lo que necesitamos almacenar aquí es la clave API, que solo estoy copiando sobre un aquí, espacio y pegado. Después de eso, me va a preguntar si es un poco difícil de ver, pero en la esquina inferior ahí está diciendo, ¿cuál es tu secreto API? Estoy copiando sobre ese secreto de API en este momento. Y ahí vamos. Ahora ha almacenado el secreto de la API, y está almacenada la clave API para que la use. Ahora que tengo una clave API en, quiero decirle a mi CLI, está bien, ahora para, para un recurso dado, quiero usar esta clave API por defecto. Lo que esencialmente estamos haciendo es hacer que esta clave API funcione forma predeterminada para el clúster que acabamos de establecer. Entonces para hacer eso, lo que tenemos que hacer es solo tenemos que ir a ver cloud API dash q0, forward slash use. En realidad necesitamos esta cosita aquí, como antes. Sólo podemos poner eso. Para que podamos hacer dash, dash recurso. De nuevo, solo podemos tomar nuestro nombre de recurso desde aquí y copiarlo. Y ahora hemos establecido nuestra clave API, tal y como la clave API activa para el único clúster que hemos configurado. Con esto hecho, ahora estamos básicamente todos configurados para seguir adelante y comenzar a consumir e incluso producir mensajes desde y hacia nuestra Consola y Cloud. Ahora, para consumir mensajes, recomendaría que abramos un nuevo terminal para Ubuntu para que podamos verlo por separado. Por lo que sólo podemos abrir uno más de esos y traer a los que decidan aquí mismo. Ahora, para consumir con de un clúster kafka o de confluente. En nuestro caso, lo que tenemos que hacer es que necesitamos escribir un comando y especificar el tema del que queremos estar consumiendo. Entonces en nuestro caso que se convertirá en C Cloud, Kafka, topic, consume dash, dash. Desde el principio. En donde especificamos queremos que todo venga desde el principio. Lo alimentamos sujetos. Ahí vamos. Ahora se puede ver que tenemos inglés, matemáticas, y ciencia. Estos son los temas que realmente ponemos en Kafka nosotros mismos. Entonces este es el pedacito emocionante de Kafka que hemos hecho, que hemos hecho mensajes y ahora podemos ver esos mensajes como un consumidor. Hasta ahora hemos visto que nos hemos conectado a nuestro clúster confluente y hemos configurado mensajes y nuestro tema y hemos consumido esos mensajes. Eso está todo bien y bueno. Pero creo que ahora debemos pasar desde el lado del consumidor hacia sitio del productor y producir mensajes para nuestro clúster. Antes de hacer esto, de vuelta desde la GUI dentro de confluente, acabamos de abrir la página y fuimos al tema y acabamos ponerlos en esta realmente bonita página web de GUI, pero deberíamos saber cómo hacerlo desde CLI. Y si dentro de CLI podemos verlo funcionando en tiempo real. Entonces para hacerlo desde CLI, el comando que usaríamos es C Cloud, space, Kafka, topic, produce dash, dash, dash, key, space, dash, dash, delimitador. Entonces más allá de eso tenemos un colon más allá del cual tenemos el formato de valor. Podemos decir por nuestro ejemplo, ya que estamos trabajando con cadenas, podemos decir que se trata de una cadena. Y simplemente especificamos el tema que en nuestro caso está sujeto. Cuando presionamos Enter, ahí vamos. Dice que está empezando el productor kafka. A partir de aquí, en realidad se puede empezar a agregar, producir mensajes. Y deberíamos estar viendo esos mensajes llegan al consumidor del lado derecho de la pantalla en el momento en que los producimos. Por ejemplo, digamos que queremos sumar más temas. Podemos ir por geografía. Producimos geografía. Y ahí vas. Se sumó directamente a nuestro consumidor. Decimos que la geografía es buena en OB, pero también quiero aprender historia por lo suficiente. Ahí vamos. La historia apareció en el lado derecho. Entonces decimos seis, por ejemplo, que ahora eso no es lo suficientemente bueno. Quería hacer asuntos internos o internos o asuntos globales y nada. Podemos hacer que estos asuntos globales simplemente sigan apareciendo. Y eso es sólo la belleza de Apache Kafka. Por eso es una tecnología tan bonita, es que en el momento en que producimos un mensaje, el consumidor recibió el mensaje, se hizo el momento y la actualización. El consumidor fue alertado al respecto, el consumidor lo sabía y podría consumir los mensajes actualizados de inmediato. Con esto, ahora hemos conseguido un agarre sobre las consonantes CLI. Ahora sabemos cómo funciona. Podemos hacer un productor, podemos hacer un consumidor todo dentro de la CLI. Y hemos creado un clúster dentro de nuestra Confluence Cloud, y hemos creado un tema. Hemos hecho prácticamente la mayoría de los fundamentos a la hora de trabajar en Apache Kafka. Posteriormente, también estaremos viendo cómo trabajar con arroyos. Y también estaremos echando un vistazo a qué caso igual a DBS. 7. Introducción a KSQLDB: Árbol de sección, K SQL DB, introducción a SQL DB. ¿ Qué es el caso igual a dB? Bueno, K SQL DB es una base de datos de streaming de eventos en tiempo real que se construye sobre las transmisiones Apache Kafka y Kafka. Ahora lo que los flujos Kafka son como un tema que vamos a discutir más adelante. Pero por ahora, todo lo que necesitas entender es esto. La forma en que se define un flujo en el nivel realmente fundamental es el flujo de datos de un productor a un consumidor. K SQL DB toma este flujo y lo vincula a un modelo de base de datos relacional utilizando comandos SQL. Hay muchos casos de uso de K SQL DB, y se usa mucho en la industria por lo simple y fácil que es de usar. ¿ Cómo funciona el caso igual a db? Casey igual db separa su capa de computación distribuida de su capa de almacenamiento para la que emplea a Kafka. Caso igual a DB mismo manejó todas las tareas asociadas con los datos, ya sea filtrado, procesamiento, streaming, lo que sea. Y luego deja el almacenamiento a Kafka para averiguarlo y manejarlo. ¿ Cómo interactuamos con Casey igual a EB. Si bien esto se puede hacer de varias maneras, podemos hacerlo a través de API de descanso. Podemos tirarlo directamente a través del código. O lo vamos a hacer de las formas que hemos definido en este curso. La primera forma en que vamos a comunicarnos con case equal db es usar el caso igual db CLI. El segundo modo en que vamos a estar interactuando con K SQL DB es usar la interfaz de usuario de nube confluente que vemos en la Consola. Y la propia Nube. 8. Uso de KSQLDB: Usando caso igual db. De acuerdo, así que para empezar a usar KSQL dB, lo primero que tenemos que hacer es configurar un clúster dentro del cual estaremos trabajando. Cuando vayas a tu Consola y Cloud a la página de tus entornos, deberías estar viendo algo como esto. Si no, tal vez un poco diferente si ya tienes 12 clústeres configurados. Dado que no tenemos como configuración de clúster, solo vamos a entrar en nuestro entorno predeterminado aquí y simplemente configurar un clúster. Por lo que dice Crear clúster por mi cuenta, sólo tiene que ir por un clúster básico, comenzar a la configuración. Puedes establecer esta región a lo que quieras que sea y simplemente establecer zona única y continuar porque verás el costo base de esto es de $0 la hora, que para esta demostración, no realmente necesita algo demasiado elegante. Así que sólo vamos a ir con eso. Así que una vez hecho eso, solo puedes lanzar tu clúster y debería lanzarse muy rápido. Y acaba de terminar de configurar el clúster que estamos creando el aprovisionamiento del clúster podría tardar uno o dos segundos. Una vez que hayas terminado, te va a dar la pantalla y va a decir mira, quieres configurar tal vez un cliente o algo más. Realmente no quieres hacer eso ahora mismo, así que solo puedes cruzarlo aquí y debería llevarte a la visión general de tu clúster. Una vez que estés en este resumen, verás aquí un pequeño menú en el lado izquierdo. Ahora con el fin de trabajar con K SQL DB, es una especie de dado que se necesita un tema con el que jugar, para crear tablas y streams para que tengamos un medio de obtener información desde y hacia y tenemos una referencia que va a ir la información. Si vamos a temas y debe haber, sí, no hay configuración de tema aquí. Y por supuesto tu clúster estará listo para usar en uno o dos minutos. Como dije, el aprovisionamiento lleva un poco de tiempo. Entonces lo que voy a hacer es pausar el video aquí. Voy a volver del clúster está completamente aprovisionado y luego vamos a seguir adelante y establecer un tema. De acuerdo, entonces ahora que el clúster ha sido aprovisionado y me está permitiendo crear un tema. Entonces voy a seguir adelante y crear un tema aquí. Puedo llamar a este tema cualquier cosa. Por el bien de esta manifestación, llamémosla súbditos. ¿Por qué no? O podemos simplemente llamarlo a decir usuarios. Porque en los usuarios puedes tener un montón de información y es más fácil crear generalmente una secuencia a partir de ella. Así que sólo voy a crear esto con los valores predeterminados. Y debería simplemente tener el tema de este usuario listo para ir en el momento en que configuras esto. Así que ahora que tienes tu tema, configurarlo asignado para que realmente vaya a tu caso SQL DB y configura una aplicación de base de datos igual de caso que vamos a estar usando para manipular este tema y realmente trabajar con él. Entonces, ¿qué vas a un caso igual a VB? Yep. Dirá que te dará la capacidad de crearlo con el tutorial o simplemente puedes crear la aplicación tú mismo. Sólo vamos a seguir adelante y crear la aplicación nosotros mismos, dar un acceso global, Continuar. Puedes llamarlo como quieras para definitivamente hacer un poco ciego de diferencia. Voy a ir con el tamaño de aplicación más pequeño para que no haya demasiado costo en mi Consola y Cloud. Y sólo voy a ponerlo en marcha. Ahora debes saber en este punto que configurar aplicaciones de db iguales de caso lleva un poco más de tiempo. De hecho, lleva mucho más tiempo que aprovisionar un clúster kafka confluente. Este proceso debe tardar hasta de cuatro a cinco minutos. Entonces lo que voy a hacer ahora es que voy a pausar el video aquí y volver cuando se termine de aprovisionar el caso igual DB app. Es posible que vea que cuando se termine de aprovisionar su caso aplicación de base de datos igual que podría encontrar un error donde dice el clúster, no puedo conectarme a este caso aplicación SQL DB. No necesitas entrar en pánico. Eso sigue siendo parte del aprovisionamiento. Tan pronto como se complete el aprovisionamiento, ese error debe desaparecer por sí solo. Ahora que tenemos eso, aclararlo, voy a pausar el video ahora, dejar esta provisión y volver cuando todo esté hecho. De acuerdo, Así que nuestra aplicación DB igual caso ahora está en marcha y en funcionamiento. Se ha aprovisionado. Para que podamos entrar y echarle un vistazo rápido y se puede ver cómo en el interior, así es como se verá una aplicación DB igual de caso. Tendrás aquí un editor que te permitirá ejecutar tus consultas SQL en él. Y luego a su lado verás la pestaña de flujo, que te mostrará exactamente cómo funcionan las cosas, en qué corrientes se están alimentando, qué son las tablas, qué tablas se están alimentando en qué corriente, etcétera y así sucesivamente. Podrás ver tus transmisiones, la lista de todas las secuencias, en este caso igual DB app aquí, ellos enumerarán todas tus tablas así como tus consultas. Aparte de eso, entonces puedes ver, wow, tu caso igual DB app está haciendo lo bien que está funcionando. Puedes consultar diferentes configuraciones para tu caso igual DB app. Tendrías que conocer algunos de estos ajustes en caso de que quieras conectarte a ella. Por ejemplo, este punto final aquí a menudo estará usando un endpoint para conectarse a aplicaciones de db iguales a mayúsculas cuando tenga que trabajar con k es igual a EB. Por último, tendrás instrucciones de CLI al final que te permitirán iniciar sesión en caso igual db e iniciar sesión en tu Consola y Cloud y usar tu app de base de datos igual de caso desde la CLI. Ahora que tenemos este caso es igual a la aplicación DB en funcionamiento, es hora de ordenar generar alguna información en nuestro tema y luego hacer algunas secuencias y tablas a partir de esa información. Así que volvamos a nuestro resumen de Cluster. Ahora vamos a ver cómo podemos generar alguna información en nuestro tema de usuarios. Kafka en realidad tiene una cosa bastante ordenada si quieres generar información o mensajes en un tema es que tiene un montón de generadores de datos prefabricados que seguirán enviando información a un tema si se requiere configurar un generador de datos, lo que vamos a hacer es que vamos a entrar en Integración de Datos y pasar a conectores. Cuando entre en conectores aquí, verás todos estos conectores aquí. Estamos buscando generación de datos, así que sólo vamos a buscar fuente de generación de datos y esto es de Ladin Kafka no es un tercero, por lo que no se va a encontrar con ningún problema en la configuración. Ahora que estás aquí, tienes que armar un montón de cosas. Lo primero, por supuesto, es el nombre del conector de fuente de la gen de datos. Bien, bastante justo, realmente no importa. Podemos usar una clave API Kafka para conectarnos a nuestro conector. Entonces tenemos una configuración de clave API en este punto, realmente no necesitamos preocuparnos ese problema porque tenemos un pequeño enlace aquí que generará una clave de API Kafka y secreto para nosotros en tiempo real. Y lo que podemos hacer es hacer clic en él. Y ahí vamos. Nos ha dado una clave API y un secreto. Simplemente podemos llamar a esto nuestra clave de la gen de datos. Y descargará esa clave tal y como se hace justo ahí. Y va a poner en las credenciales para ti. No tienes que pasar por ningún problema y no hay riesgo de cometer un error introduciendo eso en. Ahora ya lo hemos hecho. Tienes que pasar a temas. Nuestro tema son usuarios ahí mismo. Ahora tienes que escoger tus mensajes de salida para que podamos decir Danos los valores y JSON. Por último, este es el bit importante donde dice datos datos datos datos conjuntos donde tienes que elegir ahora qué plantilla de información querrás alimentar en tu tema. Si abres este menú desplegable, verás solo en realidad un montón de datos diferentes Jens disponibles para nosotros. Contamos con clickstream, códigos clickstream , tarjetas de crédito del usuario, inventario, pedidos, localizadores, compras de productos, calificación, etc. y así sucesivamente. Pero lo curioso es que hay un jet de datos aquí exactamente para los usuarios. Entonces lo que vamos a hacer es que vamos a clic en este Data, Jen, y vamos a establecer un valor predeterminado del valor predeterminado de tus mensajes que se envían, que es básicamente el intervalo entre mensajes. Se envía un mensaje, ¿ cuándo envía el siguiente? Por defecto, los valores 1000. Entonces, si dejas esto completamente vacío, lo que va a hacer es que sólo va a seguir enviando mensajes cada segundo o cada 100 milisegundos. Así que sólo voy a dejar eso por ahora. Quiero poner 1000 aquí para mostrarte que va a estar enviando mensajes después de cada segundo. Pero aunque no lo haga, seguirá mandando mensajes cada segundo. Entonces, si planeas mantenerlo así, posible que hayas dejado este campo vacío. Lo estoy dejando, estoy poniendo el valor aquí solo para que sepamos que hemos definido este valor de 1 segundo para cada mensaje. Ahora después de que esto se haga, podemos pasar al número de tareas que este conector está permitido realizar. Ahora, con cada tarea, sube el costo de ejecutar el conector. Verás que si eliges más de un conector, tienes que actualizar tu cuenta confluente para que funcionen más tareas. Entonces no vamos a entrar en esa tarea es bastante para este ejemplo. Entonces sólo vamos a hacer una tarea. Vamos a dejar todo lo demás y sólo vamos a ir a continuación. Cuando hagas esto, te va a decir, mira, por cada hora de tarea, te va a cobrar tanto. Y por cada GB de datos que uses, te va a cobrar tanto. Tienes $400 en tu cuenta de prueba con confianza. Así que realmente correr esto por unos minutos no va a ser un problema en absoluto. Así que no te preocupes demasiado por el costo de funcionamiento de esto y simplemente lanzar. Junto al botón Launch, por supuesto, hay una vista previa de datos que te permite ver qué tipo de información estarías obteniendo. Pero me gustaría mostrarles eso en el tema mismo en lugar de mostrarlo ahí. Así que ahora que tienes conector principal, va a ser aprovisionamiento por unos minutos al igual que case es igual a DB hizo. Entonces lo que voy a hacer es pausar el video aquí, volver cuando se aprovisione y luego te mostraré la información que se alimenta en el tema. De acuerdo, entonces configurar mi conector para mi generación de datos estaba tardando más de lo que había anticipado. Y supuse que era porque había usado ese nombre antes y tenía un cliente que ya estaba conectado a ese conectar su nombre. Tuve que volver atrás, borrar el generador de datos que hice y hacer uno nuevo llamado Mi papá hizo generador de datos. Y ahora que eso está en marcha, vamos adentro y veamos lo que está haciendo. Si entras en mi generador de datos, verás que lo es, bueno hasta ahora se produce 82 mensajes. Y tiene esa una tarea yendo que se está ejecutando solo va a cerrar esta pequeña información aquí que me está diciendo que mi generador de datos se está ejecutando. Si entras en ajustes, verás toda la configuración que le diste. Incluso puedes volver y cambiar esta información si es necesario, pero no la recomendaría porque podría hacer que tu stream se vaya topsy turvy por completo. Todas tus configuraciones tendrían que cambiar en consecuencia y solo sería un desastre. Por lo que no te recomendaría que hagas ningún cambio a esto a menos que sea absolutamente necesario. Ahora que sabemos cómo está funcionando el generador de datos, pasemos a nuestros temas. Sí, pasemos a nuestro tema de usuarios. Pero antes de eso podemos ver que a tiene un valor asociado ahora dentro de su campo de producción, lo que es decir que este tema realmente está recibiendo algo. Lo que es, vamos adentro y echemos un vistazo. Si entramos en mensajes, deberíamos estar viendo qué mensajes se han producido aquí. Entonces como has venido aquí, ahora te ha mostrado los mensajes que hasta ahora se han generado al tema de este usuario. Y ahí vas. Acabas de recibir otra. Si abrimos este último, se puede ver que en realidad hay un montón de valores asociados a un mensaje. Entonces si solo miramos los valores aquí, tenemos el tiempo registrado, el usuario, el id de la región , y el género. Si entramos en el encabezado, podemos ver cuál es la, cómo se generó la clave, el ID de tarea, iteración actual, y por último pero no menos importante clave, que es la clave para este mensaje, que es el guión bajo de usuario tres. Tenemos estos datos que se generan ahora en nuestros temas para que podamos seguir adelante y la decaimiento es igual a db y configurar un stream para estos datos. Así que vamos a entrar en la app. Ahora podemos realmente configurar una corriente desde el editor aquí. Voy a hacer el arroyo a mano para que pueda explicar cada elemento del arroyo a medida que avanzamos haciéndolo. Entonces lo primero que tenemos que escribir es crear stream. En realidad, si estás en Create, verás que te da dos opciones. Cuando haces crear stream, puedes ver que te da un montón de opciones aquí. Entonces si solo haces crear stream eso, entonces podemos simplemente llamar a este stream como queramos. Podríamos llamarlo nuestros usuarios subrayan extremo. Ahora tenemos que darle los campos que tiene que tomar. Lo que podemos hacer por eso es que podemos entrar en temas, usuarios, mensajes, y solo podemos echar un vistazo básico a qué mensajes tenemos dentro este escoger cualquiera de estos mensajes, abrirlo. Podemos ver que tenemos tiempo registrado. Ya ha llegado a una identificación y género. Y estos van a entrar en donde ocurran. Esto va a entrar, creo, un gran int. Así que sólo voy a poner esto en un gran int y espero que no me vaya a estrellar como yo hago eso. Sólo voy a abrir un bloc de notas aquí. Sólo vamos a almacenar esta información en un bloc de notas aquí mismo. Entonces cuando vuelvo a case equal db y configuro mi stream, pero ahora podemos hacer crear stream, usuario guión bajo stream. Podemos darle tiempo registrado como un gran int. Podemos darle un ID de usuario como trabajador, donde podemos darle un ID de motivo, que también es trabajador. Por último, podemos dar un género, que también se da. Cuando hayas hecho esto, has definido qué campos van a entrar en la corriente. Ahora hay que decirle de qué tema va a recibir esta información y cuál será el formato de valor. Así que ahora lo vamos a poner con el subrayado Kafka. El tema es igual a, podemos decir usuarios. Y podemos decir que el formato de valor va a ser tu formato de subrayado va a ser JSON. Ahora que lo hemos hecho, sólo podemos poner un punto y coma al final de la misma. Podemos establecer esto a lo más temprano, el auto offset reset más temprano para que obtenga los valores desde el principio de la existencia de los temas, por así decirlo, y simplemente ejecutar la consulta. Ahí vamos. Entonces si esto ha corrido para ti status éxito, lo que significa que sí conseguimos nuestra secuencia creada. Si funcionó para ti, puedes ir a tu flujo y deberías ver una nueva configuración de stream aquí llamada flujo de guiones bajos de usuario. Y si abres flujo de guiones bajos de usuario, bueno, no nos está mostrando nada aquí, pero si vamos aquí y consultamos el stream así con más temprano, deberíamos recibir algunos mensajes. Sí, ahí vamos. En realidad estamos recibiendo una cantidad justa de mensajes. Pero, de nuevo, está recibiendo todos los mensajes desde el principio. Entonces se va a llevar su tiempo y nos va a dar todos estos mensajes. Si queríamos incluso, incluso podemos detener esta consulta en cualquier momento. Ahí vamos. Ahora solo podemos usar cualquier cosa que obtengamos de aquí. Entonces toda esta información que tenemos, tenemos en nuestra corriente. Se va ahora hemos configurado un arroyo. Si pasamos a nuestra integración de datos y pasamos a clientes, podemos ver que en realidad tenemos un productor de conectores y una configuración de consumidor que en realidad está tomando toda esta información si vas a temas, sí, lo está tomando de los temas de los usuarios. Por lo que tu stream está funcionando ahora como productor y como consumidor. Y si vas a tu linaje de stream, verás que tu generador de datos está generando información a los usuarios de tus temas, que luego van consumidos por estos dos consumidores, tus aplicaciones personalizadas , si lo harías, que están consumiendo la información. Ahora que hemos hecho esto, hemos configurado un arroyo. Ahora vamos a seguir adelante y ver cómo podemos armar una mesa. Entonces sigamos adelante y hagamos eso. Así que vamos a entrar en su caso igual DB app otra vez. De nuestra aplicación DB igual caso otra vez. Ahora en lugar de ahora tiene una configuración de consulta para que listo para ir seleccione estrella de los usuarios stream y emita los cambios donde te mostraría todo lo que estaba dentro de la corriente de usuario. Pero no queremos hacer eso ahora mismo. Queremos seguir adelante y crear una mesa. Entonces lo que vamos a hacer ahora es que vamos a deshacernos de esta consulta que nos han dado. Y decimos crear una mesa. Podemos simplemente llamar a la misma longitud. Y así podemos llamar a la tabla de subrayados de este usuario porque estamos usando el mismo tema. No estamos cambiando mucho de nada aquí, así que solo podemos llamarlo ID de usuario. Donde la atención, porque es una mesa. Si conoces SQL básico, sabes cómo funciona. Tienes que asociar una clave primaria a las tablas que creas. Entonces vamos a establecer nuestro ID de usuario como la clave principal de esta tabla, que es el identificador para cada fila que nos permite saber que es único y que no se ha repetido. Por lo que podemos establecer el tiempo de registro. Big int. Nuevamente, solo voy a dar un gran género int como Barker, el trabajador de id región dijo que el ancho igual que el tema de subrayado Kafka asignado es igual a los usuarios. Y el formato de valor, nuevo, mientras que subrayas, mientras que el formato de subrayado se convierte en JSON. Ahí vamos. Entonces solo podemos poner eso al final, el punto y coma y ejecutar la consulta. Ahí vamos. Y nos ha dado un mensaje de éxito, lo que significa que nuestra mesa ha sido creada. Por lo que ahora si volvemos a nuestro flotador, ahora veremos que tenemos una mesa de usuario, configuración de tabla para nosotros. Y si entramos en mesa, podemos entrar aquí y consultar la tabla. Si pasamos a R, Si ejecutamos la consulta, vemos que ya tiene toda esta información dentro de ella, que se obtiene del tema. Todo lo que teníamos que hacer fue montar una mesa contra el tema y se ha generado toda esta tabla para nosotros. Acaban de salir del bate. No teníamos que hacer más configuración entonces que una línea de SQL teníamos que escribir para configurar esta tabla. Con esto, efectivamente has creado una buena corriente así como una mesa. Con eso configura de manera efectiva una aplicación de base de datos de caso igual así como un stream y una tabla y un tema al que se están generando datos. Dos. Ahora ya sabes cómo configurar estos elementos en la Nube de Confluencia y ponerte en marcha con ellos. 9. Descripción general de los canales Kafka: Sección para arroyos Kafka. Visión general de los arroyos de Kafka. Lo que arroja nuestra Kafka. Bueno, si nos fijamos en las secuencias de Kafka, básicamente es solo una biblioteca Java que nos ayuda a hacer lo que esencialmente acabamos hacer hasta este punto. Pero de una manera mucho más fácil. Stream define el flujo completo de productor a tema a consumidor. Y te permite crear ese flujo con significativamente menos código del que necesitarías de otra manera si lo estuvieras yendo de manera diferente. Los arroyos kafka son extremadamente tolerantes a fallas debido a la naturaleza distribuida de los clústeres de Kafka. También podríamos decir que los propios arroyos tienen esa propiedad distribuida. Considere el siguiente ejemplo de cómo se crea un consumidor y un productor en un programa. Primero tendrías que crear al consumidor, luego tienes que crear el productor, suscribirte al tema, que en este caso son widgets y sacar tu registro de consumidor de ella, que en nuestro caso, eso viene a color rojo. Sólo queremos que un consumidor consuma este mensaje que los productores van a enviar, que tenemos un fiar que es del color rojo. Ahora considera este código. Lo gracioso es que pensarías que estas cuatro líneas no son completamente diferentes a lo que acabas de ver antes. O pueden ser complementan el código que acabas de ver antes de esto. Pero en realidad hace lo mismo. Simplemente abstrae toda esa programación y te quita mucho de esa casa. Y solo lo pone todo en un arroyo. Así es como los flujos pueden codificar conciso y fácil de trabajar con los desarrolladores. Aunque podría ser todo bien y bueno que flujos Kafka nos den la capacidad de escribir código más largo y forma más corta. ¿ Por qué deberíamos incluso usar arroyos Kafka? Mientras que al final del día, los flujos de Kafka son más que simplemente hacer conciso el código. Las secuencias nos permiten realizar ciertas tareas en nuestros datos, tareas de datos que no pudimos realizar de otra manera, como filtrar, unir una agregación. Estas son tareas que queremos que hagan nuestras transmisiones porque queremos que nuestros datos se vuelvan más significativos para el consumidor final a través de transmisiones Kafka. Bueno, en realidad logramos medida que tomamos los datos que se están produciendo y consumiendo y le damos mucho más significado. Para que uno sea realmente analizado y mirado. Podemos hacer entendimientos adecuados de esos datos y posiblemente incluso usarlos para tableros y para análisis más adelante. 10. Introducción a Kafka Connect: Sección para Kafka Connect. Introducción a Kafka Connect. ¿ Qué es Kafka connect? Bueno, con Kafka Connect es un competente de Apache Kafka, y probablemente sea el competente más importante de Apache Kafka. Si planea utilizar los servicios de Kafka y AT con una configuración que ya tiene existente. Catholic Connect te permite conectar tu clúster de Kafka y tus servicios de Kafka a una variedad de servicios diferentes. Cuenta con conectores para la mayoría de los servicios de datos por ahí. Ya sea Amazon, GCP, Hadoop, Kafka Connect proporciona integración de streaming entre Kafka y otros servicios. Y te permite conectar ambas fuentes así como sincronizar datos a tu clúster de Kafka. Puedes tener datos provenientes de una fuente de datos a tu clúster de Kafka. ¿ Por qué se conecta un católico? O puedes tener datos que van desde tu clúster de capital a un sumidero de datos. Por qué un Kafka conecta esa sincronización de datos, por supuesto, estar en un servicio que no es Kafka. Ahora en nuestro caso, para el proyecto que vamos a hacer, vamos a configurar un sumidero de datos dentro de Amazon S3. Ahora, ¿cuáles son los casos de uso de Kafka Connect? Si bien como comentamos anteriormente, Kafka Connect permite integrarse con servicios externos que ya se están utilizando. Ya tienes datos sobre estos servicios y sería inútil seguir adelante y hacer un clúster completamente nuevo y luego poblar ese clúster con toda esa información que ya tenías. En cambio, es más fácil simplemente conectarte con lo que actualmente tienes pasando. La segunda cosa es católica y proporciona lo que es básicamente una integración perfecta con tus servicios en su mayor parte. Solo necesitas configurarlo mayormente en la GUI. Y realmente no tienes mucho de ningún problema en cuanto a configuración. Si solo decides cómo quieres esos datos, qué forma de datos quieres. Y eso es que en su mayor parte. El último gran beneficio de usar Catholic connect en su lugar, abre muchas oportunidades en el dominio de la transmisión de datos para ti. Por lo que ahora puedes conseguir ese flujo de datos marcha y realmente puedes ejecutar consultas en él. Puedes convertirlo en flujos y convertirlo en datos mucho más significativos de lo que se estaba haciendo antes. Sí, hay muchos usos para Kafka Connect y lo estaremos explorando en nuestro segundo proyecto en este curso. 11. Proyecto 1: descripción del catálogo de libros: De acuerdo, así que para que este proyecto comience, solo consigamos una visión general de lo que vamos a hacer hoy. Entonces lo primero que vamos a estar haciendo es que vamos a crear un productor en Python que va a producir nuestros mensajes a nuestro tema. Lo segundo que vamos a hacer es que vamos a seguir adelante en nuestro cúmulo consonante. Y vamos a crear un tema que va a recibir nuestros mensajes del productor. Una vez que tengamos estas dos cosas configuradas, entonces vamos a publicar mensajes a nuestro tema para que podamos poblarlo muy bien para cuando creamos a nuestro consumidor. Después de esto, vamos a seguir adelante y configurar a nuestro consumidor. Y luego vamos a estar listos para empezar a consumir mensajes de nuestro tema Kafka dentro de confluente. Va a ser un proyecto realmente sencillo, no demasiado técnico. Entonces, sin más preámbulos, vamos a meternos en ello. 12. Proyecto 1: crea un productor: Ahora es el momento de ver cómo configurar nuestro productor en Python. Porque ahora que tenemos toda nuestra configuración lista para ir, es el momento de crear nuestro productor que va a producir los mensajes para nosotros a nuestro clúster Kafka. Para eso, hagamos aquí un nuevo archivo. Podemos llamarlo productor dot p-y. Ahí vamos. Por lo que ahora tenemos un expediente de productor listo para ir. Apenas abramos a nuestro productor. Bien, cierto, Estas guías de bienvenida. Ahora para este productor, hay un poco de código que ya estoy escrito para ti. Sólo voy a pegar eso aquí y explicarte lo que hace. Este bit superior del código aquí, todo lo que hace es analizar la línea de comandos y analiza la configuración. Lo que eso significa es que solo está tratando de averiguar a qué clúster tengo que enviar mis mensajes. Hazlo. En realidad tengo una clave API que me permite hacer eso. ¿ Tengo el secreto correcto, así sucesivamente y así sucesivamente. Entonces este mango, todo eso solo en este analizador de conflictos. Después de eso, más allá de eso, tenemos un productor que estamos creando. Una instancia de. Decimos que tenemos un productor que es un café productor. Ahora, después de esto, no estamos tratando de enviar mensajes. Cuando nosotros, cuando enviamos mensajes, a menudo existe la posibilidad de que el mensaje no sea enviado por ninguna razón. Entonces en el caso de que eso suceda, tenemos un método de devolución de llamada de entrega que dice, bien, si te encuentras con algún problema, imprime el mensaje de error y dígale al usuario cuál fue el problema. De lo contrario, si fuiste capaz de enviarlo, entonces dígales cliente o al usuario que hey, produzco tu evento, un tema, sea cual sea tu tema con esta clave y este valor. Ahora, si vinieras al fondo aquí, esta es nuestra carga útil, líneas 34 a 36, donde nuestro tema es libros. Tenemos un montón de identificaciones de usuario en contra de un montón de productos. ¿ Cómo vamos a crear mensajes? Está justo aquí de las líneas 38 a 44, donde acabamos de tomar un rango de diez. Para diez mensajes, estamos asignando al azar un ID de usuario a un libro. Por ejemplo, podría ser Jack y crepúsculo, podría ser Miguel y el Señor de los Anillos, podría ser Hannah y Aragón. Y algunos de ellos incluso podrían suceder dos o tres veces. Es completamente aleatorio, pero le sacaremos diez mensajes. Este es un productor realmente simple, realmente fácil, realmente ligero que va a producir diez mensajes para nosotros a nuestro clúster de Kafka en nuestro tema. Sólo guardemos este archivo y cerremos. 13. Catálogo de libros de proyecto1: crea tema: De acuerdo, entonces ahora que tenemos nuestra configuración de productores, es hora de ir y crear ese tema al que dijimos que vamos a producir nuestros mensajes al productor. Ahora que tenemos nuestra configuración de productor, es hora de seguir adelante y hacer nuestro tema. Así que sólo voy a abrir aquí una nueva ventana y vamos a pasar a confluir y crear ese tema al que estaremos enviando nuestros mensajes. Vamos a iniciar sesión en nuestra Consola y Cloud. Ahí vamos. Así que vamos a la cabeza hacia nuestro clúster. Y desde aquí podemos entrar en temas desde el lado izquierdo. Y por aquí deberíamos ver nuestros temas. Ahora como se puede ver en este momento, no tenemos un tema establecido para los libros, lo que sólo tenemos que agregar ese tema de inmediato. Podemos simplemente llamarlo libros como lo hemos hecho en nuestro programa. Una vez dijimos que la creación, boom, se crea, no hay rezago para esta creación. Ahora esa configuración, todo lo que podemos hacer, o lo que realmente tenemos que hacer ahora es avanzar. 14. Catálogo de libros del proyecto1: produce mensajes: Ahora que nuestro tema está listo y puede recibir mensajes, es hora de producir mensajes a nuestro tema. Hacer al producir mensajes a tu clúster de Kafka usando el método que estamos usando hoy en día es realmente bastante simple. Sólo vamos a repasar dos. Vamos a pasar a nuestro directorio de proyectos. A partir de ahí entramos en nuestro entorno virtual usando el entorno fuente bin activate. Ahora, hay otro paso extra que tenemos que hacer aquí porque hemos hecho nuestros archivos en Windows. Unix no le gustan mucho esos archivos. Tienes que hacer una pequeña conversión usando los comandos DOS a Unix. Entonces hacemos productor de DOS Unix dot p-y a Unix, config dot yoduro. Una vez que hayamos hecho eso, podemos CH mod nuestro archivo productor, u plus x, productor dot PY. Y ahora podemos dirigir a nuestro productor. Ahí vamos. Ha producido eventos para temas libros. Decimos que Jack se llevó a Aragón, Jack llevó el libro de Harry Potter, Animal Farm, Michael a Animal Farm, , así sucesivamente. Solo tenemos diez claves y diez valores, diez mensajes que hemos enviado a nuestro tema dentro de nuestro clúster Kafka. 15. Proyecto 1: crea un consumidor: Ahora que hemos producido mensajes a nuestro tema y está poblado, es hora de configurar un consumidor para que consuma esos mensajes. Configurar un consumidor es realmente simple. Todo lo que tenemos que hacer es pasar a nuestro proyecto Python, crear un nuevo archivo. Podemos llamar a este archivo consumidor dot p-y. Una vez que hayas hecho eso, solo dirígete interior y simplemente pega este pedazo de código que debes encontrar en la descripción. Este es un consumo realmente simple, realmente básico que vamos a estar haciendo si hay mensajes del clúster de Kafka. Entonces lo primero que vamos a hacer, claro, como estábamos haciendo con el productor, solo analizando la configuración en la línea de comandos. Después de eso, solo estamos creando una instancia de consumidor. Y a medida que creamos esta instancia de consumidor, queremos que escoja mensajes desde lo más alto, desde el principio mismo de todos los mensajes. Dijimos el offset, básicamente, que es lo que estamos haciendo aquí. Definimos el offset de reinicio y lo llevamos todo el camino hasta el principio. Entonces esto se compensa comenzando todo el camino hacia atrás. Después de esto, estamos suscribiéndonos al tema. Tenemos nuestros libros de temas, por supuesto, como lo hacemos para el productor. Nuevamente, en un signo restablece compensaciones. Entonces como nos suscribimos, vamos todo el camino de regreso. Ahora, lo que sucede a continuación es en realidad un proceso continuo hasta que se interrumpa donde constantemente estamos tratando y comprobando. Si tenemos un mensaje esperándonos. Si lo hacemos, entonces obtenemos esa impresión de evento consumido de temas, etcétera y así sucesivamente. Si no lo hacemos, solo tenemos este mensaje esperando y si nos encontramos con un error, obtenemos este mensaje de error. Este último bit es solo la interrupción del teclado donde decimos si quieres detener esto, puedes controlar C y terminará. Esto se trata de huesos tan básicos como un consumidor como usted puede obtener. Y hemos configurado nuestra suscripción temática dentro de nuestro consumidor. Entonces matando a dos pájaros de una piedra ahí. 16. Proyecto 1: Consuma mensajes: Ahora que nuestro consumidor está preparado y listo en nuestro tema tiene los mensajes poblados. Es hora de consumir mensajes y ver cómo se ve ese consumo en tiempo real. Además, en realidad producir y consumir mensajes en tiempo real es un proceso bastante simple. Nuevamente, porque de nuevo, hicimos nuestro archivo PY de punto de consumidor dentro de Windows. Tenemos que convertir eso para que un unix lo lea. Entonces solo decimos, escucha, necesitamos que cambies a nuestro consumidor dot p-y a la caída de lectura de Unix. Entonces ahora que hemos hecho eso, solo puedes CH mod a nuestro consumidor. Ahora podemos ejecutar nuestro consumidor dot p-y. Con el conflicto. Ahí vamos. Nuestro consumidor realmente recibió todos esos mensajes que enviamos de nuestro productor antes y como los leemos ahora, otra cosa genial de esto es que realmente podemos hacer esto en tiempo real. Así digamos por ejemplo, dirijo a mi productor desde el lado. Por lo que digo que dirijo aquí mi productor. En el momento en que se produjeron esos mensajes, el consumidor los consiguió y los consumen en el orden exacto que allí se produjeron. Y si lo volvemos a ejecutar, lo volveremos a ver. Pero eso no es lo más interesante. Lo más interesante es que si hicieras estos mensajes en tiempo real, aún los verías y aún puedes leerlos. Ahora vamos a ir a nuestra consola y fluir. Mueve esta ventana hacia un costado. Pasemos a nuestros temas e vayamos a los libros. Y como podemos ver, tenemos algo de producción pasando aquí. Se ve que tenemos actividad. Si vamos a producir un nuevo mensaje, podemos llamarlo de cualquier manera. Podemos darle un valor de decir, un buen valor de vuelta al futuro. A pesar de que eso no es un libro, es una película. Me digredo. Podemos dejar los ácidos clave y en el momento en que produzca ese mensaje, boom, se obtiene ese mensaje en su consumidor en tiempo real que tenemos un evento con el valor de vuelta al futuro y la clave 18. Y con esto, tienes trabajo creado con éxito una aplicación que tanto produce y consume eventos o mensajes usando confluente y Apache Kafka. 17. Project2 PacMan: descripción: Así que aquí hay una breve visión general de lo que vamos a estar viendo en nuestra aplicación que la convierte en una aplicación de streaming. Entonces lo primero que vamos a tener es que vamos a tener dos temas, juego de usuarios y pérdidas de usuarios. Y estos dos temas serán la base sobre la cual vamos a crear dos corrientes. Estas dos corrientes van a alimentar su información en dos tablas. El flujo de pérdidas de usuario va a alimentar su información a las pérdidas por tabla de usuarios. Esto está dispuesto a registrar cuántas veces has perdido toda tu vida en el juego. Estos son stream de juego va a alimentar su información en las estadísticas por tabla de usuario, donde va a grabar tu puntuación más alta y cuántas veces has jugado realmente el juego y perdido eso información de cuántas veces has perdido el juego realmente va a ser alimentado a través de tus pérdidas por tabla de usuario en tus estadísticas por tabla de usuario. Por último, se van a consultar estas estadísticas por tabla de usuario para generar el marcador que te muestre no solo tu puntuación, sino las puntuaciones de todos los que han jugado el juego. Para que puedas comparar tus estadísticas con todos los demás que hayan jugado el juego. 18. Project2 PacMan: configurar y ejecutar: Ya que uso Windows Subsystem para Linux, me permite ir directamente a mi directorio de proyectos en mi Windows y ver los archivos tal como están. Para que como podemos ver nuestra aplicación Pac-Man streaming, podemos ver que tenemos un montón de archivos y carpetas aquí. Lo primero que tenemos que hacer es entrar en nuestro archivo de conflicto, que deberíamos tener un demo dot CFG. Si abrimos esto, debería tener nuestra clave de acceso de AWS y nuestra clave secreta de AWS ahí mismo. Ahora, lo que es esto es es el acceso que define a su cuenta de AWS. ¿ Dónde encontraría su clave de acceso de AWS en su clave secreta de AWS? Bueno, sigamos adelante y veamos eso. Lo que vamos a hacer es minimizar esto, venir a nuestro AWS y simplemente buscar en IAM. Y luego dirígete a aquí. Una vez que estés aquí, puedes mirar a los usuarios en tu Gestión de Acceso. Para que solo puedas ir a los usuarios. Y desde aquí puedes agregar un usuario. Al agregar un usuario, puede darle el nombre de usuario, luego configurarlo como clave de acceso en lugar de contraseña, que le asignará un ID de clave de acceso y una clave de acceso secreta. Entonces si agrego un nuevo usuario, llámalo curva de escala. Ve a continuación. Puedes agregarlo a un grupo de usuarios para los admins. O si no tienes esta configuración como no lo harías si tienes una nueva cuenta, solo puedes crear un grupo, asignar acceso de administrador de TI y llamarlo el grupo de usuarios administradores. Selecciónelo, y luego simplemente desplácese por las siguientes dos etiquetas y solo puede agregar cualquier clave aquí. Simplemente puedo llamar a esta clave de filtro. Eso es todo lo que necesito. Honestamente. Sólo puedo asignarle el mismo valor. Sólo ve Siguiente. Y va a crear este usuario. En el momento en que haga eso, te va a dar esta página de éxito y te va a permitir descargar como CSV las credenciales para tu usuario. Aparte de eso, también te muestra ID de clave de acceso y tu clave de acceso secreta. Toma nota de estos porque los necesitarás para este proyecto. Te recomendaría descargar el CSV. Entonces cuando lo abras, te dará exactamente lo que necesitas. Tu clave de acceso es, oops. Simplemente debería darte tu acceso y tu clave de acceso secreta aquí mismo, que son tanto las cosas que necesitas para alimentar a tu configuración. Ya tengo una configuración de cuenta en mi configuración, por lo que no voy a alimentar esta nueva clave de acceso y clave de acceso secreta dentro de ella. Sólo voy a pasar a lo siguiente. Voy a cerrar esto, guardarlo como uno, y seguir adelante. Ahora que eso está hecho, volvamos a nuestra carpeta y volvamos a nuestro archivo. Nuestro demo dot CFG es bueno, así que sólo vamos a cerrar eso y ahora estamos volviendo a transmitir Pac-Man. Lo siguiente que vamos a tener que ver es nuestra carpeta stack configs. Tenemos que asegurarnos de que no haya nada dentro de la carpeta stack configs porque esta configuración va a ser lo que Terraform va a utilizar para configurar toda la aplicación. La primera vez que ejecutes el script start, ya que estoy a punto de correr, vas a ver que va a crear muchas cosas para ti. Y entonces la próxima vez que ejecutes ese script es forma de invierno va a aprovisionar y crear todos los recursos. Ahora lo que podemos hacer es que podamos ir a nuestra terminal. Y desde aquí solo podemos cd en nuestro proyecto de transmisión Pac-Man y simplemente ejecutar nuestro script de inicio. Entonces si aún no lo has hecho primero, tendrías que CH mod u plus x. tu punto inicial SH loops u plus x. y luego puedes hacer lo mismo por tu punto parado SH. Puedes hacer lo mismo para Crear caso igual db app.js. Estos son los tres archivos shell que necesitas para darte los permisos para ejecutar. Ahora que lo has hecho, todo lo que necesitas hacer es simplemente ejecutar el comando start, Start shell. Por lo que acabamos de ejecutar start dot SH. Y ahí vamos. Sólo va a correr para ti. Y te va a dar este aviso. Y va a decir que Mira, escucha, esto va a crear recursos que van a costar algo. Entonces, ¿estás seguro de que quieres proceder? Y porque tenemos que hacerlo, sólo vamos a decir que sí, no queremos proceder. Mientras el script se está ejecutando. Sólo voy a volver aquí y volver a nuestra página S3 porque una vez que hayamos terminado de ejecutar nuestro script, en realidad vamos a ver un bucket S3 creado aquí. También. Sólo voy a entrar en nuestra página de entornos en nuestra consola pensó y ya está configurado. Eso es realmente un poco ordenado. Ya está configurando tu entorno constante para ti. Podemos ver eso aquí mismo, creando conflicto CloudStack para el entorno y establecer el clúster Kafka y clúster activo para entorno E y nosotros ECD en 23. En realidad podemos comprobar esto. Entonces lo que podemos hacer es que podamos abrir una nueva terminal. Déjame ir a ver lista de entornos en la nube. Sin embargo se puede ver la ENV ZD y 23 es nuestro streaming Pac-Man y entorno público que acabamos de crear para esta aplicación. Así que voy a dejar correr esto y volveré. Cuando esto empiece. Shell en realidad ha terminado de correr. Esto lleva hasta cinco a diez minutos. Vale, entonces el script de inicio ha terminado de ejecutarse. Y lo que se hace es, déjame llevarte hasta la cima aquí desde donde empezamos. Yep. Ahora es lo que hizo fue crear un usuario y le dio todos los permisos para hacer exactamente lo que necesita hacer, para crear todos los recursos que necesita crear para que la aplicación funcione. Ahora, todas las cosas que tuvieron que hacerlo hicieron correctamente hasta que llegó a la parte de KSQL donde se estrelló. Lo creé para que se supone que se estrelle aquí. Ahora veamos en la siguiente sección lo que se supone que debemos hacer para que esto funcione correctamente. 19. Project2 PacMan: configuración de los requisitos de los pre: Antes de comenzar este proyecto, me gustaría dar un gran grito a Ricardo Ferrara para la aplicación original de transmisión de juegos Pac-Man. Es su aplicación que en realidad vamos a estar corriendo y usando hoy que la he ajustado y modificarlo un poco para que tengamos que realizar ciertas tareas en nuestra Confluence Cloud en orden para que todo el asunto funcione. Ahora que lo hemos hecho a un lado, es hora de ver lo que realmente necesitamos para que el proyecto funcione hoy. Lo primero que vamos a necesitar es una cuenta de Cloud confluente. Si no tienes una cuenta de Cloud confluente, te recomendaría ir y conseguir una, una cuenta de prueba la cual debería darte unos 400 dólares, que es más que suficiente para que todo este proyecto funcione. Lo segundo que vas a necesitar es una cuenta de Amazon AWS. Nuevamente, puedes configurar una cuenta de prueba, que por la corta duración que te da es más que suficiente. Y es suficiente para el proyecto que vamos a estar haciendo hoy. Una vez que terminemos con el proyecto, deberías ver un bucket S3 aquí creado para ti. Y luego estaremos creando otro bucket S3 para nuestra sincronización de datos. Lo último que vas a necesitar es Terraform. Terraform es lo que va a crear la aplicación para nosotros. N va a aprovisionar los recursos que necesitamos en nuestro AWS S3 para configurar a nuestro formulario en tu Linux, solo tienes que ejecutar estos tres comandos. Si aún no lo has hecho, te recomendaría seguir adelante e instalar terraform en tu sistema local. Además de esto, solo necesitamos dos cosas más. Tenemos que comprobar si tenemos Java, así que ejecutamos el comando java dash version. Necesitamos Java 11 o mayor para este proyecto. Por lo tanto, asegúrese de que su versión JDK sea 11 o superior. Lo segundo que necesitamos es continente, para que podamos revisar nuestra versión Maven. Y sí, estábamos ejecutando Apache Maven 3.6.3. Si has estado siguiendo este tutorial hasta este punto, deberías tener confluente y ver Cloud instalado. Acabas de correr ver nube. Ahí vamos. Si miramos confluente, ahí vamos. Entonces si aún no has iniciado sesión en tu C Cloud, recomendaría que lo hagas ahora, verías inicio de sesión en la nube, dash, dash safe. Y lo que esto hace es que guarda tus credenciales y el archivo RC neto. Una vez que veas Cloud Login, te pide que pongas tus credenciales o si ya tienes tus credenciales guardadas en el archivo RC neto, solo te iniciará sesión. Ahora que tenemos nuestro entorno completamente configurado, vamos a seguir adelante y empezar a hacer nuestro proyecto. 20. Project2 PacMan: configuración de KSQLDB: De acuerdo, así que ahora que hemos corrido nuestro guión, en realidad no se ha hecho todo lo que se suponía que debía hacer. Nos deja algo del trabajo y sólo vamos a seguir adelante y hacer esos pequeños pedacitos de trabajo que se suponía que debíamos hacer y simplemente seguir adelante y hacer que la cosa realmente funcione. Entonces lo poco que tenemos que hacer ahora, podemos hacer desde el conflicto Cloud GUI. Entonces entramos en el nuevo entorno Es creado para nosotros. Entramos en el clúster. Y desde dentro del clúster deberíamos ver un caso igual DB app ya configurada y creada para nosotros. Si entramos en este caso es igual a la aplicación DB, muéstranos que no tenemos ninguna corriente yendo en este momento, solo una estándar. No hay flujo real, solo este flujo predeterminado que se le da con cada caso igual DB app y sin tablas. Además, si entramos en temas, veremos que no tenemos temas, solo éste procesando registros que obtenemos. Sólo voy a añadir un tema aquí. Voy a llamarlo usuario subrayado juego. Sólo voy a crear esto con defecto. Ahora vuelvo a temas y creo otro tema llamado pérdidas de subrayado de usuario. Ahora que he hecho eso, ahora tengo dos temas. Los dos temas que dije que iba a tener al principio en el panorama general de este proyecto. Ahora que tenemos estos dos temas, es el momento de hacer flujos y tablas para correlacionar estos temas. Así que voy a volver a la caja es igual a DB. En este pequeño editor aquí. Voy a ejecutar algunos comandos SQL case. Qué esos comandos están disponibles aquí mismo en las declaraciones voy a archivo SQL. Puedes abrir esto y tendrás estas cinco líneas aquí que crean dos transmisiones, juego de usuario, pérdidas de usuarios, y tres mesas. Pérdidas por usuario, estadísticas por usuario y Estadísticas de resumen. Entonces podemos simplemente copiar todo esto, volver a la caja igual a db y pegada aquí mismo y ejecutar la consulta. Ahí vamos. Se ejecuta la consulta y se ha creado las secuencias y las tablas para nosotros. Entonces si volvemos a nuestra pestaña de flujo, deberíamos ver ahí vamos que tenemos este flujo de pérdidas de usuario que crea una tabla de pérdidas por usuario, entonces el flujo de juegos de usuario, que crea las estadísticas de la tabla por usuario y también alimenta una tabla de estadísticas resumidas. Estadísticas resumidas es solo la tabla extra que nos muestra la visión general de lo que está pasando en el juego a la vez. Y si volvemos a ir a arroyos, veremos los dos arroyos e iremos a las tablas. Veremos estas tres mesas. Ahora que hemos hecho esto, en realidad es el momento de ir a dar permiso a nuestra cuenta de servicio para realmente manipular los temas, sin embargo necesita hacerlo. Entonces para eso, vamos a volver a nuestra terminal de Ubuntu. Y sólo vamos a entrar en nuestro entorno primero PARA ver la lista de entornos en la nube. Whoops, vea la lista de entornos en la nube. Entonces vamos a ver el entorno en la nube usar E y Z, D N23. Entonces solo vamos a ejecutar ver lista de clúster de cátodo en la nube y ver clúster Kafka usar L Casey dash six, j m r cubos, seis cubo GMR. Ahora que estamos aquí, tenemos que ejecutar un comando que sea C Cloud, Kafka, ACL create dash, dash. Permitir. Entonces necesitamos una cuenta de servicio. Bueno, tenemos que hacer antes de eso es que necesitamos ejecutar ver lista de cuentas de servicio en la nube, que tenemos cinco años doble 495 en Análisis ver cloud Kafka, ACO, crear dash, dash, dash, dash, dash cuenta de servicio 50, doble 4952, operación. Leer, así como operación derecha y el tablero, funcionamiento del tablero. Describir guión, tema de guión, juego de subrayado de usuario. Y se hace precisamente eso por nosotros. Ahora si lo ejecutamos para un usuario subrayar pérdidas, se hace eso por nosotros. Entonces ahora que hemos hecho todo lo que teníamos hacer en el caso igual db lado, podemos simplemente ejecutar de nuevo la aplicación y empezar el juego. 21. Project2 PacMan: ejecuta datos de proyecto y fregadero: Ahora empecemos el juego ejecutando de nuevo el script de inicio, para que podamos hacer la estrella de corte hacia adelante. Sólo va a empezar a usar terraform para crear todo el proyecto. Una vez que Terraform se haya inicializado con éxito, va a seguir adelante y crear el proyecto. Nuevamente, este es un proceso que toma su tiempo. Así que voy a pausar el video aquí y volver. Cuando esté hecho. Ahí vamos. Entonces el script de inicio ha terminado de ejecutarse y termina dándote solo esta salida con una URL que dice que tu juego Pac-Man está en esta URL aquí. Nos abren esto en una nueva pestaña aquí mismo. Antes de eso, no vimos ningún cubo en nuestro S3 antes de esto. Y como dije, estaríamos viendo uno en el momento en que esto acabara. Entonces si actualizamos esto, ahí vamos. Tenemos aquí un bucket llamado streaming, Pac-Man y GPB. Y esto fue creado para nosotros por la aplicación. Y esto contiene básicamente el sitio web de transmisión Pac-Man. Para que puedas ver todos los archivos del sitio web aquí mismo. Sólo voy a volver a Amazon S3 e ir al juego. Así que sólo voy a poner en el nombre para que sólo podamos llamar a ese nombre curva de habilidad. Y podemos jugar. Cuando hagamos eso. Nos va a llevar a la pantorrilla, al juego Pac-Man que estamos usando para nuestro streaming de eventos, lo voy a generar, pero si un marcador, y luego voy a seguir adelante y morir para que nos podemos ver todos los posibles eventos y podemos ver exactamente cómo se ve eso en nuestro tablero de eventos. Ahí vamos. Ese es nuestro marcador. Y como se podría ver que esta puntuación es en realidad bastante grande. Y acabas de verme lanzar la aplicación. Bueno, eso es porque pausé el video y seguí adelante y jugué un poco el juego para generar un poco más de puntuación y en realidad tener alguna forma o flujo de muchos mensajes para que podamos seguir adelante y ver cómo almacenaríamos eso usando Kafka Connect en nuestro S3. Entonces si venimos a nuestro S3 ahora, se puede ver por supuesto que tenemos nuestro cubo aquí. Pero si volvemos a nuestro clúster de Kafka, por aquí, verás integración de datos y verás una sección aquí llamada conectores. Lo que puedes hacer aquí es que puedes configurar un conector para cualquier sincronización de datos o cualquier tipo de lugar del que quieras incluso obtener información de si quieres traer datos a tu clúster católico. Pero en nuestro caso, vamos a estar enviándolo a un fregadero. Entonces vamos a usar este aquí llamado Amazon S3 sync. Cuando hagamos eso, va a decir, acuerdo, ¿qué realmente quieres almacenar? Bueno, sólo voy a darle todos mis temas. Entonces el primero, el que nos dio por defecto, no queremos ese. Aparte de eso, los queremos a todos. Entonces sólo vamos a seguir aquí. Y ahora va a estar como bien, entonces, ¿cómo quieres acceder a tu conector de sincronización S3? ¿ Quieres usar tal vez una clave API existente que tengas para este clúster, o quieres tal vez elegir un acceso diferente? Pero en nuestro caso, lo que vamos a hacer es que sólo vamos a crear nuestras credenciales API aquí. Cuando hagas eso, se va a descargar el archivo para ti así así. Y lo va a configurar. Entonces va a ser por defecto poniendo no tienes que hacer nada y solo puedes llamar a esto cualquier cosa. Simplemente puedes llamar a este fregadero de salpicadero Pac-Man Nash S3. Entonces podemos continuar. Ahora aquí en realidad aquí es donde es importante es que necesitas tu clave de acceso de Amazon, ID, clave de acceso secreto de Amazon y tus nombres de bucket de Amazon S3. Entonces lo que voy a hacer es que voy a ir a mi S3. Ahora presta atención a la región. Dice US West para hacer mi otro cubo S3 en una región diferente. Probablemente me va a dar un error. Es una buena práctica mantener todos tus elementos de un proyecto en la misma región. Entonces lo que voy a hacer ahora es que voy a crear un cubo. Voy a llamar a este cubo mi fregadero de salpicadero Pac-Man. Va a ser en EE.UU. Oeste dos. No tengo que cambiar nada más aquí. Sólo puedo crear el cubo. Después de que crea el cubo. Ahí vamos. Entonces tienes mi fregadero Pac-Man. Está todo ahí. Está todo listo para irse. Sólo voy a copiar este nombre sobre mi fregadero Pac-Man y traerlo aquí. Tu ID de clave de acceso de Amazon y la clave de acceso secreta de tu Amazon son las mismas que usas para la configuración de este archivo. Entonces si entras en tu configuración y puedes escoger tu clave de acceso de Amazon y secreto de este archivo aun así puedo simplemente copiar esto, pegado aquí, copiar mi secreto y pegar eso ahí. Y entonces simplemente puedo continuar. Ahora te va a preguntar, ¿ cómo quieres que comenten tus datos? ¿ Quieres que venga tal vez como Avro, tan proto buff como JSON. Entonces voy a hacer un JSON porque esa es la forma más fácil y también está muy bien definida. Por lo que es realmente fácil ver lo que hay dentro de tu archivo y formato de mensaje de salida, también JSON. Ahora cuando hayas hecho estas dos cosas te va a preguntar, vale, ¿qué tan regularmente quieres que tu S3 sea poblado? ¿ Quieres que se haga por hora o quieres que se haga todos los días? Para este ejemplo, lo voy a hacer por hora porque no vamos a tenerlo configurado por demasiado tiempo. Sólo vamos a tenerlo configurado por unos minutos. Vamos a ver cómo van los datos dentro, y entonces ese será el final de la misma. No es necesario entrar en configuraciones avanzadas. Entonces si quisieras, podrías cambiar muchas propiedades, cuyas descripciones están aquí. Si pasas el puntero sobre el pequeño i, te dirá exactamente qué es esto. No me metería demasiado con esto a menos que tuviera requisitos de configuración específicos para mi proyecto. Pero por ahora, como no lo hacemos, sólo vamos a ignorarlo y seguir adelante. Ahora, cuando estás en esta etapa, iba a preguntarte en términos de dimensionamiento, ¿cuántas tareas quieres hacer por hora? Y cuantas más tareas lo definirías para hacer por hora, te pido que actualices si es más de una e incluso para cada tarea te va a cobrar 0.034 por hora en mi caso. Entonces lo que vamos a hacer es que sólo vamos a poner esto fuera y sólo vamos a continuar. Ahora. Por último, solo te va a dar toda esa información. Va a decir, Mira, esto es lo que nos has pedido. ¿ Estás seguro de que puedes establecer el nombre de tu conector, no va a cambiarlo aquí. No veas el punto a ello. Y solo vamos a lanzar y solo ten en cuenta que tu conector de precios para cada uno por tus tareas, tu cargo tanto por hora, pero luego también por tu uso o cobra tanto por hora, lo que suma cuando lo lanzas, puedes ver exactamente cuánto te van a cobrar para tenerlo en cuenta, aunque sea una cuenta de prueba, por ahora no importa. Pero si en realidad estás usando confluente y lo estás usando de tu propio dinero. Esto puede acumularse con bastante rapidez. Ahora nuestro conector está siendo aprovisionado y por supuesto el proceso lleva tiempo. Entonces lo que voy a hacer es volver a este clúster y ir al conector. Y voy a pausar el video aquí y lo traeré de vuelta. Cuando todo esto esté hecho. Ahí vamos. Por lo que ahora nuestro conector está arriba. Está corriendo. Un pequeño mensaje aquí que dice que su conector de sincronización S3 0 se está ejecutando ahora. Tiene ese estado funcionando. Y si vamos aquí, sí, dice correr. Si te encuentras con algún problema en la configuración de este conector, verías ese error en esta área donde diría que Look, nos hemos topado con esto en este problema. Entonces, ya sabes, descifrarlo. Ahora vamos a ver tenemos esta configuración de conector, pero lo que realmente lo ha enviado al arte como tres fregaderos. Entonces si entramos en nuestra sincronización S3, por el momento, no tiene nada. En pocos minutos en realidad va a mandar algo. Tiene esta tarea en ejecución. Y hasta ahora no ha dicho mucho de nada. Entonces si solo juego el juego un poco más, juega un poco el juego, pausa el video, vuelve, y veremos entonces qué es lo que realmente se envía a nuestro clúster S3. Quiero decir, sincronización de datos S3. De acuerdo, Así que jugué un poco el juego en una cuenta diferente. Si vamos al marcador, se lo va a decir. Sí, Tiene una segunda cuenta, consiguió un puntaje de 1000 sobre la anterior. Pero si volvemos a nuestro bucket S3 ahora, que está aquí, ahora veremos que tiene este tema de carpetas dentro. Y si entramos, tiene carpetas para cada cosa para la que ha recibido información. Si entramos en juego de usuarios. Y tiene el año, el mes, el día y la hora. Y en esta hora ha recibido estos JSON. Veamos, abramos uno de estos JSON y veamos lo que realmente tiene dentro de él. Si acabamos de abrir esto. En mi caso, probablemente se va a descargar todavía y podemos abrir esto. Podemos ver que se comparte toda esta información con nosotros en este JSON, que hubo este usuario jugando el juego y generó tanto puntaje. Es así como podemos usar un Data Sync para almacenar toda la información que se consume de nuestro clúster de Kafka. Pero todo se salva. Y si necesitaríamos consultarlo o comprobarlo más adelante, todo está disponible para nosotros aquí en nuestra sincronización de datos. Ahora que hemos hecho esto, sabemos sincronizar obras y lo hemos visto funcionando. Esto en realidad está tomando una gran cantidad de recursos para correr. Lo que voy a hacer es ahora te voy a mostrar cómo puedes destruir todos estos recursos que has creado. Lo primero que quieres hacer es que quieras entrar en tu conector y simplemente decir, Mira, ya no quiero que este conector funcione. Por lo borrado. Usted copia este nombre en el nombre del conector. Y ahí vas. Confirmar. Tu conector de sincronización S3 se elimina, se ha ido. Ya no tienes este conector disponible para ti. Entonces si vuelves a tu Ubuntu por aquí, solo tienes que ejecutar el script. Por lo que dirías dot slash, stop, dot SH. Y te está diciendo ahora que va a destruir todos los recursos que te han hecho decir? Sí. De acuerdo, adelante y haz eso. Y ahora va a proceder a destruir todos los recursos que se ha creado. Este es un proceso que toma su tiempo en correr también. Así que sólo voy a pausar el video aquí y volver cuando todo esté hecho. Ahí vamos. Ahora ha ejecutado con éxito el script stop y ha destruido todos los recursos que asignó para realizar este proyecto. Si vas a nuestro S3, ahora si vamos a nuestros fregaderos S3, encontraremos ese bucket S3 que creamos para nuestro proyecto, se ha ido y podemos eliminar este bucket simplemente vaciándolo. Por lo que sólo podemos decir buscar eliminar permanentemente. Para que puedas llenar esto, lleno de eliminar permanentemente. Una vez que hagas eso, entonces puedes salir de esto y eliminar este bucket. Para eso, solo necesitas copiar el pegado, copiar el nombre y pegarlo aquí. Sí, eso está hecho. Y si vas a la nube de tu consola, vas a los entornos. Encontrarás que el medio ambiente se ha ido por completo. Con eso, has corrido con éxito el proyecto dos, lo has completado y bien hecho.