1:04:11
2024-10-09 10:47:18
1:29:40
2024-10-09 12:28:28
25:55
2024-10-10 09:26:29
2:38:45
2024-10-10 09:59:31
46:32
2024-10-10 15:02:46
Visit the Big Data course recordings page
WEBVTT
-->
Entonces, partiendo este hecho, le voy a graficar entonces lo que tenemos montado aquí actualmente.
-->
Aquí lo voy a hacer directamente en esta máquina, va a entrar aquí a draw.io.
-->
Esto lo voy a crear de manera local.
-->
Para ganar tiempo mientras explico esta arquitectura, porque de pronto puede demorar montando,
-->
hay un enlace directo al administrador de Hyper-V que está en la parte izquierda inferior,
-->
el último que está como dos equipos ahí. Ese virtualizador, el hypervisor de Hyper-V,
-->
déjalo doble clic para abrir la interfaz.
-->
Y debería aparecer una máquina virtual que dice Ubuntu. Déle doble clic ahí donde dice Ubuntu.
-->
Para que inicie la máquina.
-->
Aparece una interfaz y le da por favor iniciar.
-->
Bueno, esa la deja que vaya iniciando ahí, por favor. Va cargando y nos vamos entonces
-->
acá.
-->
Bueno, la deja montando ahí, por favor. Crear nuevo diagrama. Diagrama en blanco.
-->
Perfecto, ahora sí está listo. Bien, entonces tenemos lo siguiente.
-->
Nuestra máquina, bueno, que es una máquina virtual, está montada sobre Windows.
-->
Me quedé sin memoria, ¿qué fue?
-->
Ahora tengo esto bloqueado. Dejé de revisar un poquito la máquina virtual,
-->
¿qué pasó? Parecía ser que me bloqueó esto.
-->
Ahora, porque tengo 15 gigas. Bueno, por favor, vayamos al team mejor y vemos acá
-->
la arquitectura. Mientras está montando aquí, está amparando mucho para montar,
-->
no sé qué pasó aquí. Entonces, voy a hacerlo directamente aquí en el team.
-->
Vaya al team listo. Entonces, inicialmente tenemos aquí un Windows.
-->
Está montado, la máquina virtual está montado con Windows 10. Sería la máquina
-->
host que está en la máquina virtual. Sobre esta máquina virtual que está aquí,
-->
tenemos montado un Hyper-V, que es el hypervisor de Microsoft, Hyper-V.
-->
Este Hyper-V de este lado, lo que va a hacer es que tiene montado otra máquina virtual,
-->
aquí, te voy a explicar, que está sobre Ubuntu y sobre esta máquina virtual tengo
-->
el Hadoop montado. O sea, aquí estaría el Hadoop montado, que es el que vamos a usar.
-->
Hadoop. Significa que ahora voy a tener montado de este lado el Talent Big Data
-->
en esta máquina y este Talent Big Data se va a comunicar a este Hadoop de acá.
-->
Listo. De esa misma forma, entonces, voy a tener montado lo siguiente. Sobre este Windows va
-->
a estar montado un motor de contenedores llamado Docker, más popular. Sobre este Docker tengo
-->
montado un Hyper-V, perdón, un Hive. Este Hive viene todo ahí mismo está montado con Hadoop.
-->
No usa Hadoop de acá, sino este Hive viene montado con el señor Hadoop. Recuerda que Hive puede
-->
utilizar Hadoop para HDFS y puede progresar ya sea con Macreduce o puede progresar con Spark.
-->
Entonces la idea es que ahora este Talent se conecte también a este Hive de acá.
-->
Con este Hive de acá lo que vamos a hacer es un Data Warehouse que nos quede montado sobre
-->
una infraestructura de Big Data. Esa es la idea que tenemos entonces y esta es la infraestructura
-->
que vamos entonces a configurar inicialmente. Vamos acá nuevamente a la máquina virtual y
-->
voy a... Vamos a ver, vamos a ver, no lo veo todavía en el chat. Es como... Será que no te
-->
agregará un momento. Disculpeme un momento y le comunico a quien. Ok, déjenme, yo también
-->
le pregunto acá a... Me permita un momento, por favor. Un momento, por favor. Me habló Fueba, ¿verdad?
-->
Hey, copio.
-->
Bueno, enviérmelo. Lo que pasa es que hoy Ximena está viajando, entonces...
-->
Pero y me responde, porque creo que hay que agregarle al curso, pero en realidad no sé...
-->
No sé cómo hacerlo y tampoco creo que tenga permiso para eso. Esperamos si nos responde en
-->
un momento. Mientras, por favor, vamos entonces a la parte de la máquina virtual.
-->
Nos situamos ahí y nos va a pedir que nos lo guiemos. Ahí hay dos usuarios por defecto.
-->
Vamos al usuario que se llama Hedu y el Power es el mismo del usuario, pero con H minúscula.
-->
El mismo del usuario, pero con máquina minúscula... Con H minúscula.
-->
Bien, claro que nada más tiene dos gigas, por eso entonces cuando inicia,
-->
puede que demore un poco en cargar. Para ir ganando tiempo, porque en realidad son
-->
muchas temáticas. Vaya abriendo. En la máquina host, en la máquina Windows,
-->
habrá alguna shell, ya sea con PowerShell o con CMD, Command Line.
-->
Particularmente, voy a abrir aquí PowerShell. Acá es la máquina Windows para ver si
-->
tenemos conectividad de las máquinas. Escriba PowerShell. Tengo un poquito lenta.
-->
Si tengo 15 gigas, está raro. PowerShell, por favor.
-->
Windows PowerShell, lo deja abierto ahí. Y listo. Vaya por favor y habrá una terminal
-->
en la máquina virtual de Ubuntu. Se van los punticos, eso que están ahí.
-->
Y debería aparecer terminal. Debería aparecer una terminal. Aquí está terminal,
-->
o escribí la palabra terminal como usted quiera.
-->
Deja esta terminal abierta, porque vamos a hacer un par de configuraciones.
-->
Listo. Aparte de eso, créese y abra en la máquina host un archivito de texto,
-->
un notepad. Quiere bloc de notas o notepad más, cualquiera de los dos. Me fui al notepad.
-->
Para ir apuntando algunas configuraciones, si en algún momento tiene problemas, puede
-->
ir este archivito de comandos y se los puede llevar a algún lado. Se los puede hacer una
-->
copia de este archivito de comandos. Bien, verifiquemos, entonces, Red. Como vamos a
-->
comunicar el Talent Big Data con Hadut. Ven, todavía no me han respondido. Te aviso, Eva,
-->
cuando me responda. Bien, como el Talent Big Data, quiero comunicarlo con la
-->
terminal. ¿Qué IP tiene este señor? Creo que le di una IP estática. Del comando ifconfig.
-->
Del lado de la máquina virtual ifconfig. Lo apunto a este lado, ifconfig.
-->
A Hadut, el mismo del usuario que está a Hadut, pero con la H minúscula. ¿Quién me habló?
-->
Qué pena contigo, Eva, que no me han respondido. Es que tengo un correo,
-->
le mando un correo. Pero no me ha respondido. Espero liso. Todos deberíamos tener la misma
-->
IP, porque esa IP estática. Entonces, vayamos y verifiquemos la conectividad entre los dos
-->
puntos. Vamos a hacer un ping desde la shell del host, o sea, de PowerShell. Vamos a hacer
-->
siguiente comando. Vamos a ver si nos da respuesta. Ping a la 10.0.3.250. Este comando.
-->
Ping 10.0.3.250. Es decir, escribo aquí, ping 10.0.3.250. Perfecto. Hay respuesta.
-->
Y por cosas de la vida, este tipo de mensajes se llama ICMP. Puede estar bloqueado en los
-->
mensajes de uno de los dos puntos. Váyase a la máquina. En la máquina esta, que estoy en PowerShell,
-->
escriba el comando ipconfig. Es el mismo de arriba, siendo que acá en Windows lo tienen
-->
como ipconfig. Y esa máquina es la dirección en la 10.0.3.15. Esta que está aquí,
-->
10.0.3.15. Hagamos entonces un ping desde la máquina virtual a la 10.0.3.15. Y debería haber
-->
respuesta. Perfecto. ¿Por qué hacemos esto? Porque va a haber comunicación entre la máquina
-->
virtual y al revés. Aquí damos control C para terminar. Control C. Control C y detiene la
-->
ejecución. Control C. Control C y la detiene. Perfecto. Listo. Eso confirmamos que hay conectividad
-->
entre los dos puntos. Necesaria para comunicar el Big Data tanto de ida como de regreso.
-->
Ok. Vamos entonces a lo siguiente. Vamos al sistema Hadoop. Voy aquí, estos comandos aquí,
-->
voy a colocar aquí comandos redes. Comandos Hadoop. Primero, recordará que Hadoop se divide
-->
en dos partes. Una parte de almacenamiento y una parte de procesamiento. Ok. Entonces,
-->
voy a iniciar con la parte de almacenamiento. En la parte de almacenamiento voy a hacer lo
-->
siguiente. Ya en esta máquina virtual está montado Hadoop. Carece de sentido explicar
-->
cómo se montó porque normalmente uno desarrolla y ya tiene la infraestructura. Y normalmente
-->
pues ya estás con Azure o estás con AWS y ya estos señores tienen montado esta capa.
-->
Tú lo único que no es que te conecte. Bien. Con esta capa montada vamos a hacer lo siguiente.
-->
Vamos a formatear el sistema de ficheros para empezar desde cero. Vamos a dar el siguiente
-->
comando. Los comandos para almacenamiento empiezan por HDFS. O sea, sería HDFS. Lo
-->
que sea más fácilmente. Vamos a colocar aquí NameNode, que es el nodo principal y
-->
le voy a dar menos forma. Esto lo escribe por favor en la terminal de la máquina
-->
virtual. HDFS NameNode menos forma. Es decir, de este lado voy a escribir HDFS, HDFS,
-->
NameNode menos. Ojo, que esté menos. Hay que ver cómo sale porque creo que el idioma
-->
ya está en americano y acá está en latinoamericano. No sé. Bueno, voy a dar menos forma. Ahora
-->
me confirma si puedo copiar y pegar de allá, de la máquina. A ver si me deja
-->
bien para ver. Perfecto, listo. Voy a comprobar para ver si yo tomo esto que está aquí
-->
y copio y lo puedo pegar acá. No, no me está dejando. Claro, no nos preocupes.
-->
Esto lo vamos a hacer solamente una sola vez. Es decir, vamos a dar sistema configurado
-->
y montado y ya con eso configurado y montado, pues en teoría no creo que tengamos más
-->
problemas, pero estamos en una carrera en que los sistemas son propensos a fallar y
-->
lo que uno cree que funcionaba bien, pues se dañó de un momento a otro. Perfecto, listo.
-->
Primer paso. Ahora vamos a montar Hadoop. Para montar Hadoop vamos a ejecutar dos comandos.
-->
El primer comando que vamos a ejecutar es este que dice start de iniciar menos dfs.sh.
-->
Este es el primer click que vamos a ejecutar. Y terminado de ese click de ejecutar le
-->
es utilizar Hadoop. Entonces, él va a levantar varios demonios ahí. Start dfs.sh. Aquí se me
-->
está colocando dfs.sh. Terminado la ejecución de ese click, ejecutas el segundo click que
-->
es start jar.sh. Listo, está montado la arquitectura del name nodes que es el nodo principal o el
-->
master que no debería llamarse hoy en día master porque maestro hace evocarle la esclavitud.
-->
Y day nodes que serían los nodos esclavos, que esos nodos esclavos, day nodes donde se van
-->
a guardar los diferentes ficheros que tengo. Para este caso particular de la infraestructura
-->
solamente tenemos un data node. O sea, solamente un solo nodo, nada más. Pero al final es dar
-->
lo mismo si haya tres o cuatro. Al final lo que buscamos es entender cómo funciona el
-->
talent big data. Listo, terminada esa parte, ejecute start jar.sh y después que termine
-->
ejecutar comprueba qué servicio montó, qué demonios montó con el comando jps. Por lo regular
-->
deberíamos mostrarte el comando jps 6 demonios. Day node, jps, secondary day node, resource
-->
managers y node manager. Son propios de arquitectura. Claro que esto no lo vamos a dejar montado
-->
aquí y esta máquina virtual la vamos a guardar el estado para que no tengamos que
-->
montar en cada clase. Ahora a nivel de redes, esos servicios y esos demonios van a montar unos
-->
servicios y esos se van a exponer sobre unos puertos. Entonces, como comando de redes,
-->
que esto lo habíamos visto cuando vimos el talent sv, el comando net sapra,
-->
de los puertos que habría. Vamos a darle comando net stat en su versión más fácil que
-->
net stat menos punta, net stat menos punta, net stat menos punta. Y eso lo que abre son
-->
unos puertos para ver. Me interesa en este puerto que es el 9870 y este puerto que es
-->
9000. Recuerde que esa prefija 0.0.0 indica que cualquier dirección ip se podía comunicar
-->
a ese servicio. Me interesa que tenga abierto el 9870 y el 9000. Seguramente se los montó,
-->
no sé si los quiere buscar, simplemente era para colocar el comando y para recordarle
-->
que cuando empieza con 0.0.0 indica en que cualquier ip se puede comunicar. Caso contrario,
-->
por ejemplo, con este 127. Aquí está indicando en que solamente en este puerto se puede
-->
comunicar localmente. Listo, confirmemos para ver si montó bien la infraestructura.
-->
Váyase al bronco. Sí, qué pena. Vamos a ver quién me habló. Bernardo, vamos a ver qué
-->
pasa. Dale JPS un momento, Bernardo. Baja un momentito, baja y dale JPS. JPS, un momento.
-->
Dale gente, por favor. No, no ha montado. Vamos entonces. El comando HDFS, name no,
-->
menos forma, ya lo ejecutaste. Vamos a ejecutar HDFS, espacio, name de nombre inglés, no de,
-->
name no de, menos espacio, menos forma. Menos, ahí tiene, menos forma. Entra, por favor.
-->
De pronto ya lo había hecho, pero para asegurarnos de pronto que no haya ningún
-->
problema de eso. Ahí lo que hace es que formatea el sistema de fichador HDFS de
-->
esta máquina. Dale yes. Sí, ya lo había ejecutado ya. Ahora, dele el comando start,
-->
de iniciar, con iniciar en inglés, start. Start, menos, quite ante el espacio, menos,
-->
sin espacio, menos def, punto SH, listo. Sí, señor. Listo, él entra, esperemos a que suba
-->
para ver si ahora que no tengamos ningún error. Ahí está montando el name no,
-->
no principal, data nodes, que sería los workers o los esclavos.
-->
Listo, ahí estamos, puede ser posible. Ahí monta tres servicios,
-->
pero vamos a ejecutar ahora el start, menos yard. El yard, para que terminemos. Sí,
-->
está bien. Vamos a probar imediatamente si tiene abierto el 98, entra a la siguiente manera.
-->
Abremos todos el browser de la máquina HOS, la máquina Windows, por favor. Y vamos a
-->
colocar la siguiente dirección, que sería la máquina HOS, que sería 10.0.3.250, 2.9870,
-->
que es el que está escuchando el servicio web. Y damos enter. Debería aparecer una interfaz web
-->
del señor Hadut. Sí, el previso para ver si a todos les apareció. Perfecto, perfecto, listo.
-->
Bueno, aquí hay muchas características Hadut. Váyase al menú superior, al lado de overview,
-->
data nodes, y le va a aparecer cuántos nodes de datos tiene. Aquí nada más tiene uno. La
-->
realidad real tiene muchísimos, en realidad. Y crear una data node es sumamente sencillo,
-->
a diferencia de montar un clúster, o sea, un elemento más en el node de un clúster de
-->
base de datos. Bueno, con eso no vamos a trabajar, eso lo hace internamente. Váyase
-->
donde dice utilities, que es la última opción del menú superior, y hay una opción que dice
-->
browse de file system, y ahí le va a mostrar entonces los archivos que están en el sistema
-->
Hadut. Debería aparecer vacío. Catalina, voy a ver que estás apuntando la dirección. Vamos a
-->
ver. Sí, está listo. Está bien, Catalina. Vete a la última opción que dice utilities,
-->
en ese mismo menú donde está overview. Le das click a ese combo que tienes ahí,
-->
acá arriba, acá en el menú de acá arriba. Utilities, y vas donde dice browse de file
-->
system. Y debería aparecer a todo vacío, porque acabamos de formatear el sistema de
-->
ficheros. ¿Cómo lo formateamos? Con el HDFS name no menos forma. Listo. Vamos nuevamente a la
-->
máquina virtual. Si quiere, dele comando clear aquí, clear, para limpiar esa máquina un momento,
-->
clear. Y vamos a hacer lo siguiente. Comando Hadut, sigo acá. Vamos a crear una carpeta
-->
donde vamos a organizar nuestros archivos. Para crear una carpeta, le da HDFS. HDFS.
-->
DFS menos MKDIR. Slash inputs. Lo va a colocar en inglés. Inputs. Esto es lo que hace que crea
-->
una carpeta dentro del sistema de ficheros. Yo la voy a hacer acá. Ahí está. HDFS. DFS menos
-->
MKDIR. Menos MKDIR. Input. Perfecto. Agregue el siguiente comando para permisos. HDFS. Sería
-->
ejecutado sobre el sistema de ficheros, pero son los mismos que tiene a nivel de Linux. HMOD. Le
-->
va a colocar aquí HMOD. Para cambiar los permisos. 777. Pues todos los permisos. No estamos en
-->
seguridad. Estamos a nivel académico. Y le da este comando así. Le daría aquí CHMOD. 777.
-->
Por último, podía dar lo siguiente. HDFS. DFS menos LS. Slash. Eso me va a mostrar la
-->
estructura directorio que tengo montado en Hadut. HDFS. DFS menos LS. Slash. Perdón. Ahí se me
-->
fue un... era menos. Se me fue un slash. Y ahí aparece la carpeta inputs que creamos ahora.
-->
HDFS. El último. Voy a guardar este señor fichero aquí. Lo voy a guardar aquí en C.
-->
Me voy a guardar en documentos y lo voy a llamar comandos. Martina, que te salió vuestra ver.
-->
Dale flechita arriba, Martina, por favor. Para ver que ejecutaste flecha arriba.
-->
Ah, te faltó. Vete con flecha de izquierda. Después del HDFS, agrega DFS. DFS. Enter. Ahora
-->
sí, enter. Y ahora dale el comando para listar que es el último que es HDFS. DFS menos LS. Slash.
-->
Listo. Ese mismo comando que tiene ahí, cuando yo doy HDFS menos LS, es lo mismo que hace esta
-->
página. Por favor, ahora sí, vaya a hacer el browser. Y dele, por favor, enter ahí.
-->
Y debería aparecer la carpeta inputs que creo ahora.
-->
Hagamos lo siguiente, entonces. Cerremos esta shell que tengo aquí.
-->
Voy a cerrar esta ventana, que esta ventana lo que hace es que cierra la conexión, la UI de conexión,
-->
pero me queda ejecutando acá. O sea, aquí me queda ejecutando la máquina virtual. No
-->
va a hacer más nada con la máquina virtual. Voy a cerrar este Notepad que lo tenía aquí.
-->
Y procede ahora, cuando termine de cerrar todos estos elementos, procede a abrir el
-->
file en Big Data. Yasmín, muéstrame la máquina virtual, por favor.
-->
Dale flechita arriba, por favor, flecha arriba, flecha arriba. Ahí,
-->
le dice comando flecha arriba para buscar el comando MKDIR. Sube más, otra flecha arriba,
-->
sube otra flecha arriba. Flecha abajo, esta flecha abajo, flecha abajo. Creo que
-->
ya lo viste, flecha abajo. S, déjate un espacio ahí, después de la S, déjate un espacio.
-->
O sea, el guión, antes del guión, debía haber un espacio. Dale con flecha izquierda,
-->
hasta que llegue y le das entonces espacio, por favor. No, ahí no. Ahí dale, quita ese
-->
espacio que hiciste ahí. Más atrás, entre DFS y el menos. Ahí va un espacio, ahí listo. Dale enter.
-->
Dale flecha arriba hasta que encuentres el CHMOD, el comando CHMOD, flecha arriba, hasta que
-->
encuentres el CHMOD. Ahí está, enter. Dale flecha arriba hasta que salga el LS. S, enter.
-->
Perfecto, ahí está. Ahora recarga la página, recarga por favor la página, recarga la página.
-->
Le hizo tuya. Dale F5 ahí y debería aparecer. Ahí está, input. Eso es lo que tiene. Perfecto.
-->
Vamos a ver, desde lo que vayamos haciendo, lo vamos a ver directamente aquí. Que esta es la
-->
conexión que tengo hacia el HADU que tengo montado allá en la máquina virtual. Regálenme
-->
5 minutos, que me tienen preocupado. Estación Deva, un momento, ve si de pronto Ximena me
-->
coge el celular. Sé que está viajando, pero no me responde. Un momento, por favor,
-->
ya vengo, me regala 5 minutos. Bueno, volví nuevamente. Bueno, desafortunadamente no me
-->
respondió Eva, que la verdad no sé que esta parte no me dedico yo a adicionar y no sé por
-->
dónde se hace y creo que tampoco tengo permiso de hacerlo para adicionar estudiantes. Esperamos
-->
a ver de pronto si me responde más tarde y les de un mensaje, pero no, no le llegan los
-->
mensajes. Bueno, continuamos a ver. Listo, ¿Quién me llamó por ahí? Salió, creo que un
-->
pequeño warding. Sí, vamos a ver. Creo que salió un pequeño. Dale OK a ese warding ahí que
-->
está ahí. Vamos a darle aquí OK. Listo, sí, OK. Sale un pequeño warding ahí de una
-->
librería ahí. Intenta cerrar esa ventana, Bernardo, a ver. Listo. Esa es una librería
-->
de actualización de repositorios. A ver, ¿Qué pasó ahí? Lo que pasa es que ese es un repositorio
-->
para agregar nuevos componentes en talent. Usted en el talent studio tiene un repositorio
-->
que ya está, digamos, cuando instalo ya está definido y ahí puedo agregar más componentes.
-->
Dale OK, José, por favor. OK y cierra las ventanas. Entonces, acá como talent dejó
-->
de dar soporte, entonces quitó ese repositorio. Dale OK, José. Cuando tengas tiempo, le
-->
da OK y cierra todo, por favor. Si deseas, ciérrate la shell de PowerShell para que
-->
no te cause ruido y cierra la interfaz de Ubuntu. Quedaría ejecutando sobre Hyper-V.
-->
Listo, ahí cierra esa interfaz. Sigue su ejecución, lo que es que ahora no
-->
me permite verlo ahí. Bueno, listo, entonces estoy aquí en esa interfaz. Voy a tener nada
-->
más dos cosas abiertas que es prácticamente el browser y el talent big data. OK, eso es lo
-->
que va a tener. Bueno, carece de sentido, pues explicar esto porque es la misma interfaz que
-->
tiene el data integration y parte muy parecida al talent sb. Esos son los mismos componentes,
-->
la misma job, designer, context, código, exactamente lo mismo. Vamos a lo siguiente,
-->
vamos a crear aquí un nuevo folder. Crea un folder, por favor. Y vamos a titular este
-->
folder, entonces Hadoop. Vamos a colocar todos los jobs que tengan que ver inicialmente
-->
con Hadoop. Todavía aquí no voy a procesar todavía, simplemente voy a almacenar para que
-->
quede claro. Para que quede claro, voy simplemente a almacenar, no a procesar. Es lo que voy a
-->
hacer inicialmente. Aquí me quedó un Hadoop. Voy a darle aquí clic derecho y voy a crear el
-->
primer job. Recordarás que te había dicho que Hadoop se divide en dos elementos, un elemento
-->
para procesar que es MacReduce y un elemento para almacenar que es HDFS. Entonces, para poder
-->
procesar con MacReduce, los ficheros tienen que estar metidos en HDFS. Vamos a ver cómo la
-->
herramienta me permite procesar y hacer transacciones con ficheros en HDFS. Lo primero
-->
es un ejemplo muy sencillo y vamos a llamarlo, entonces, lo siguiente. Job, underscore, subir,
-->
archivo, underscore, Hadoop. Este es el primer ejemplo que vamos a hacer. Job, subir, archivo
-->
a Hadoop. Mirifico para ver. Job, subir, listo. Le damos finish para que nos cree y nos muestre
-->
el canvas. Listo, está subiendo el canvas, creando. Perfecto, me abrió el canvas. Perfecto, listo.
-->
Vamos a agregar los siguientes componentes que vamos a trabajar y voy a tratar de hacerlo en
-->
cada uno de los ficheros. Voy a tratar de agregar algo diferente dentro del talent.
-->
Significa que esto que voy a hacer te va a funcionar con el data integration o con el
-->
data, lo que tú quieras. Entonces, voy a tratar de modificar cada uno y agregando muchas cosas.
-->
Primero vamos entonces a agregar algo que necesito. Primero necesito conectarme al
-->
sistema HDFS que tenga el Hadoop. Entonces, para eso vamos a buscar el siguiente componente.
-->
H, perdón, T, HDFS, perdón, acá, listo, T, HDFS. Te conecto aquí, T, así. T, HDFS.
-->
Y hay uno que se llama connection. Sí, T se llama T, HDFS, connection.
-->
Voy a agregar ahora un componente que es el que me va a permitir agregar elementos
-->
al sistema de Hadoop que es T, HDFS. Todos empiezan en el mismo. Y se llama PUT de poner.
-->
Estos son componentes propios de lo que es Hadoop y ahora va a colocar un componente
-->
general que se llama T-WAR, de warning, T-WAR.
-->
Ese no lo habíamos visto. Este T-WAR no manda ninguna salida en consola o muestra algo,
-->
simplemente es para que agregue este elemento en el archivo log que tengas configurado en
-->
tu proyecto. O sea, los logs, te acordarás. Tengo la fecha, dice qué fue lo que hice.
-->
Eso es T-WAR, para eso sirve el T-WAR. Vamos a ver los puntos rojos que nos está indicando
-->
algún problema de configuración. Vamos al HDFS connection, por favor. Y nos dice que
-->
ese componente no está instalado. Instalemos ese componente. Bajar todo, aquí lo de aquí,
-->
bajar todo, instalar. Y creo que automáticamente también bajó el del HDFS, listo. Perfecto,
-->
dice que bajar e instalar todo. El botón que dice bajar e instalar todo. Listo, sigamos
-->
entonces. Vamos al HDFS connection y vamos a darle doble clic y vamos entonces a configurar
-->
ese componente. Perfecto, entonces vamos a lo siguiente. Aquí en las configuraciones
-->
básicas del componente de conexión, le preguntan la distribución de Hadoop que
-->
existe. Ya le había dicho que la mayor parte de estas empresas tomaron Hadoop
-->
open source y le colocaron una capa de ellos propia. Entre esos tengo el MR que es de Amazon
-->
y aquí está el de Azure, Cloudera, Horton. Y en este caso, como es una configuración que
-->
es propia, no la de ningún proveedor, voy entonces a escoger la opción que dice Universal.
-->
Y te pide que instales los componentes necesarios para Universal. Entonces le damos
-->
aquí instalar. Listo, ahí va a buscar entonces los componentes. Bueno, aquí los baja todos.
-->
Perfecto. Esto solamente lo descargará una sola vez y lo deslizaremos en n veces. Bajar
-->
e instalar, por favor. Listo, acto seguido entonces, vamos a configurar donde dice name
-->
node, name node URI, que es el nodo principal en el Clouder de Hadoop que tengo. Entonces,
-->
por defecto lo que nada más debería cambiar y por eso fue lo que te comenté, que principalmente
-->
tengo que tener puertos 98, 70 y 9 mil abiertos. Tienes que tener en cuenta que si tú vas a
-->
montar tu propia infraestructura, tienes que abrir el firewall en ese puerto. Entonces,
-->
voy a cambiar la palabra localhost por la dirección IP de mi equipo, que sería 10.0.3.250.
-->
9 mil. Nada más me quedaría, o sea, quedaría al final 10.10. Mira, te lo voy a colocar
-->
acá en grande para que veas cómo te va a quedar. Lo único que cambié fue la palabra
-->
localhost por 10.0.350, que es la máquina virtual, la dirección de la máquina virtual
-->
que está en Ubuntu. Sigo, acto seguido. Voy a lo siguiente, entonces. Cierro aquí.
-->
Bajo para ver, aquí me piden elementos de autenticación. En realidad, el Hadoop lo
-->
que hace es conectarse anónimamente a cualquiera. Evidentemente, ya cuando tuve un ambiente
-->
de producción in real, pues hay que definir el uso de Hadoop. Y ahí están algunas
-->
propiedades de Hadoop, pero esas propiedades de Hadoop ya yo las configuré en Ubuntu.
-->
En pocas palabras, cuando estamos trabajando con esto, te da la infraestructura ya
-->
de Hadoop y tú lo que haces es utilizarla. Aquí no voy a hacer más nada. Listo.
-->
Ahora lo que voy a hacer es lo siguiente. Voy a conectar ahora este HDF connection
-->
con el HDF de Putro. Vamos a darle aquí clic derecho y note que está nada más la opción
-->
disparador. Entonces, aquí sí voy a explicar algo que no había explicado anteriormente,
-->
que lo encontraste en el data integration. Ya habíamos visto la opción esta que dice
-->
onsujocokey, ¿cierto? Si yo no la hago usted ya, mire acá un momento para que pronto
-->
lo tenga que borrar ya. Si yo cojo la opción onsujocokey significa en que está
-->
dividiendo estos elementos en dos suyos, suyoc1 y suyoc2. Ahora voy a escoger una opción diferente
-->
que es clic derecho y hay una opción que dice oncomponentokey y conecto. ¿Qué diferencia hay?
-->
El onsujocokey divide en varios suyos y el oncomponentokey, bueno en el onsujocokey,
-->
hay error en el primer suyoc, no se ejecuta el segundo suyoc. Ahora he escogido oncomponentokey,
-->
lo que quiere decir entonces es que ahora tengo un solo suyoc y solamente el elemento que se
-->
llama HDFSput se ejecuta siempre y cuando no haya un error en el elemento anterior. O sea,
-->
siempre y cuando. El componente cuando lo ejecuté no dio ningún error. Esa es la
-->
misma suyoc y solamente se ejecuta el siguiente siempre y cuando el componente
-->
no haya tenido error. Voy a hacer lo siguiente ahora, vamos a darle clic derecho aquí,
-->
disparador y escoge oncomponenterror t1. Y ahí está. Bueno, en este caso ¿qué
-->
pasaría? Si hay un error de conexión, entonces mandaría en este caso un log y no se mandaría
-->
a consola ese error que pasó. Eso es lo nuevo que he agregado aquí que son ese que no lo
-->
había visto en los cursos anteriores. Bueno, en realidad era para cambiar el ejercicio,
-->
pero hay que entender la diferencia. Si coloco un suyoc me quedan dos suyoc diferentes y
-->
oncomponent me queda un solo suyoc. Sí, es para entender, de pronto tengas un contexto que
-->
necesites mejor un suyoc que oncomponent. Ok, para dividirlo. Sí, pero me hubiese fusionado
-->
exactamente igual si hubiese colocado un suyoc. Ok, para este caso. Bueno, listo,
-->
ahora vamos al componente que se llama y vamos a confiarlo HDFSput. Este ahora ¿qué pasa?
-->
Todos los componentes de HDFS tienen que tener una conexión. Como ya yo definí la
-->
conexión, lo mejor ahora es que yo diga voy a usar una conexión existente. Doy click en usar
-->
conexión existente y escojo del listado que nada más debe haber una, la primera conexión que
-->
es la que ya definí. Listo, vamos entonces a lo siguiente ahora. Para este ejemplo vamos a
-->
explorar el archivo de Windows y vamos a crear una carpeta que tenga aquí, temporal.
-->
Y en temporal vas a crear una subcarpeta llamada descargas.
-->
Descargas, ahí confirmo algo para ver si lo agregué. Perfecto Luis, listo.
-->
En temporal y descarga. Ahora, en el escritorio de la máquina virtual vas a encontrar un
-->
archivito que dice URL carpeta compartida por los problemas que tuvimos la última vez. Aquí
-->
toma esa URL por favor y la colocas en el browser.
-->
Y está la carpeta descarga de la carpeta, perdón, esta es la carpeta TBD, está la
-->
data y descarga la carpeta que se llama Dataset, por favor, Dataset. Dataset la descargamos.
-->
Está en el escritorio que se llama URL carpeta compartida.
-->
Por favor, la descomprime y la pegas todos los archivos que descomprimiste,
-->
Dataset voy a descomprimirla y los archivos lo voy a pegar en mi temporal.
-->
Aquí tengo estos archivos que son trageo.csv y lo voy a pegar aquí en mi temp.
-->
Bueno, listo, te quedo en tu temporal. Perfecto, listo, creo que ya todos tenemos
-->
falta todavía algunos. Bueno, perfecto.
-->
Vayamos entonces ahora nuevamente al talent big data y nos quedamos en la configuración del
-->
hdfs puto. Te pregunta, local directorio donde vamos a tomar como referencia los
-->
archivos que deseamos subir al hdfs, entonces dale click aquí en el botón y vamos a escoger
-->
en este caso la carpeta ten. Temporal, escoge la carpeta.
-->
¿Quién me habló? ¿Quién me habló? Ah, Jasmine, váyase al escritorio por favor,
-->
al escritorio de la máquina, en el escritorio de la máquina y va a encontrar en el escritorio
-->
un archivito que se llama url carpeta compartida, por favor ahí lo tienes,
-->
ahí lo tienes, url compartir, el penúltimo, doble click, tome esa url y la coloca en
-->
el browser entonces. Váyase a la carpeta tbd, que está en big data que es la segunda,
-->
descargue el archivo que se llame data set, data set. Descárguese los tres archivos si
-->
usted quiere o descargue la carpeta como ustedes quieren. Ahora la descomprime y los pega en su
-->
carpeta temporal en descarga, descomprímalo por favor. Está descargado todavía, está
-->
descargado todavía, creo que pesa como 50 megabytes, está descargando. Voy a hacer la
-->
para ver a browser para estar descargando. Ah ya, ya descargó, ya descargó. Data set son 96
-->
megabytes, no es mucho. Es traer aquí, toma esos archivos y los manda entonces a la carpeta temporal
-->
que tiene usted ahí. Temporal, listo. Y ahí le falta una su carpeta que es descargas.
-->
Vamos a utilizar ahora, carpeta, descargas. Vamos al talent, big data y donde dice local
-->
directorio por favor en el botón, en el botón al final, escoja la carpeta T.
-->
Temporal, en ese caso usted la llamo temporal. Entra temporal y le da a seleccionar carpeta
-->
temporal, acceda, doble clic y le da a seleccionar carpeta. Y por ahí vamos, listo,
-->
por ahí vamos. Ahora, en el HDFS directorio recuerda que habíamos creado una carpeta que
-->
llama inputs. Debería, como ese señor está en linux allá, entonces tiene que ser slash y
-->
como el linux es en cilia mayúscula y minúscula, exactamente igual. Inputs,
-->
todo en minúscula. Segundo me pide el action file, así como el action data. Aquí hay dos,
-->
crear y sobreescribir. Crear lo que hace es que, bueno, lo que la primera vez,
-->
segunda vez, si está creado, manda error. Entonces, si usted va a ejecutar varias veces
-->
este job, escoja sobreescribir. Si no está creado, pues lo crea y si ya está creado,
-->
pues lo sobreescribe. Y aquí adicione en el file max, esta parte ya, no recuerdo este,
-->
per, 5 ahora voy a buscar para ver, no recuerdo si es per 5 o cualquiera. Agreguemos aquí una
-->
fila y en el file max va a colocar el archivo que está en esa carpeta que va a subir. Ese
-->
es el archivo que se llama, productium.csv. Voy a subir el archivo que se llama productium.csv.
-->
Productium tiene que coincidir, bueno, como es windows, no hay problema con la mayúscula y
-->
minúscula, no debería, productium.csv. Y acá en el name, va a colocar el name como quiere
-->
que se agregue en hadut. En este caso voy a colocar el mismo, productium y productium de
-->
este lado. Voy a subir otro archivo, el otro se llama, creo que, team nba, team nba.csv.
-->
Entonces voy a agregar aquí el nombre team nba, team nba, team underscore, me pasa que dice, nba.
-->
Le puse el guión, .csv. Confirmo para ver, era team nba, sí, ccv. Y voy a colocar el
-->
mismo nombre para que lo suba, listo, .c, listo, pego aquí. Perfecto, voy a entonces,
-->
creo que tiene más nada. Bueno, aquí voy a ejecutar directamente. Aquí, no sé qué pasó,
-->
voy a ejecutar nuevamente. No sé qué pasó ahí. Si no hay ningún error, debió subir esos dos
-->
archivos, dale ok ahí, Bernardo, ok. Y te vas a la pestaña run yo para lo vuelve a ejecutar
-->
nuevamente. Está creando el código java ahí, está generando el código java. Debimos colocarle
-->
más memoria a este talent para que sea un poco más rápido. Bueno, ahora sí va a empezar la
-->
ejecución en el caso mío. Ahí tengo un pequeño warning de configuración de algo de la versión
-->
del componente con el hadut. Y listo, en el caso mío funcionó y debería coincidir. Voy al
-->
browser de HDFS, a la interfaz. Voy a darle click aquí en input y deberían estar los dos
-->
archivos. El caso tuyo. Martina, listo. Martina, colocaste el nombre en plural,
-->
y es productium. Vete al HDFput. ¿Me dijiste cuál configuración, la de el HDFput o la de
-->
connectium? Aquí está. Acá abajo están los nombres que están en la carpeta ten que queden
-->
coincidir exactamente. Por lo menos el nombre, porque señores Windows. Alejandro, vamos con el
-->
caso tuyo. ¿Lo subiste? ¿Es qué? Sí, te di un error. Listo, ahora lo siguiente. Alejandro,
-->
vete a la configuración del HDFconnectium, por favor. Vete a tu HDFconnectium, designer,
-->
HDFconnectium. Doble click. Y la IP del server es 10.3. Confírmame, .250, 9000. Perfecto,
-->
ahí está bien. Sí, ¿Por qué salió error ahí? Está bien. Ahora, vete a tu HDFput un momento,
-->
HDFput. Ahí está el problema. Lo que pasa es que tienes que usar la conexión existente.
-->
Dale click en la segunda opción donde dice un checkbox. Hay un checkbox, el primer checkbox.
-->
Dale usar conexión existente. En el primer checkbox, ese que está al lado izquierdo,
-->
ahí está el mouse. Hay un checkbox que dice usar una conexión existente. Un poquito más
-->
arriba. Ese, ese que está ahí. Sí, porque no intenta comentarte de manera local. Dale,
-->
chuléalo, por favor. Y ahora escoge, ahí donde dice component list, la conexión del HDFconnectium.
-->
En component list, que está vacío, dale click ahí y escoge HDFconnectium. Dale ejecutar.
-->
Perfecto. Búscate ahora en el browser HDFS y debió subir. Dale F5 ahí, por favor.
-->
Debió subir los dos archivos. Ah, tú lo subiste directamente al root, no a la carpeta de input.
-->
Perfecto, no hay ningún problema. No hay ningún problema. Martina, vamos a ver qué pasa contigo.
-->
Ah, ya lo subiste, perdón. Listo, creo que ya subiste. Héctor, vamos a ver, Héctor,
-->
qué error marcó. Búscate la carpeta. Vete el HDFput. El HDFput, por favor. Y mírame la
-->
carpeta local a donde apunta. La carpeta local apunta a cedo punto ten. Creo que ese señor tiene
-->
un problema con ese bendito slash. Cambian el slash de ten, de ese se llama slash,
-->
colócalo el backslash. Claro que yo no, a veces me pierdo. Ejecuta nuevamente para ver si
-->
ese es el root. Sí, el señor es un poquito delegado con eso. Dale F5 ahí. Aquí estás en
-->
los dos archivos. Listo, perfecto, sigamos entonces. Sí, sigamos, sigamos. Veamos para
-->
ver entonces, permítame y veo tu pantalla, Jasmine. Vamos a ver. Listo, pero si subió,
-->
no. Vete a tu, muéstrame tu HDFput antes que te vayas para allá para ver dónde lo mandaste.
-->
Vete a tu HDFput y lo mandaste a input. Listo, vete ahora a tu browser y muéstrame la interfaz
-->
del HDFS. Entra a inputs ahí, al lado derecho de la carpeta que está al final, inputs,
-->
entra la carpeta. Ahí donde está inputs, click ahí y están allá adentro. Bien, vamos a
-->
ver la descarga de un archivo. Entonces vamos a aplicar con buena práctica. El problema que
-->
tengo es que esa IP que tengo ahí es fija. Esa IP al dejarla fija ahí va a tener un problema
-->
cuando estoy en developer y voy a pasar a Cuba o a producción, donde se vio no me puede
-->
cambiar. Entonces voy a definir los siguientes contextos aquí. Click derecho aquí, crear
-->
contexto de grupo. Voy a llamarlo AXA. Esto lo hicimos solamente en el caso del
-->
talent integration, pero bueno, puede usarlo acá. De igual forma, next. Y solamente voy
-->
a definir un solo ambiente, pero dos variables. Voy a definir la variable que voy a llamar
-->
y el valor, dirección, under score servidor, under score hadut y el valor dirección under
-->
score servidor hadut y la dirección es 10.0.3.250. Todo es igual. Dirección servidor hadut y el
-->
valor 250. Agregue otra variable. Colóquelo ruta under score raíz y aquí coloca slash
-->
inputs que es la carpeta que definimos allá. Esto para asociar la buena práctica porque
-->
si dejo esto que estoy en developer, lo dejo pegado de esa forma cuando vaya
-->
a pasar a QA y después a producción voy a tener unos problemas que me toca modificar
-->
mucho para cambiar. Simplemente cambio la variable de entorno y fuera list de configuración.
-->
En la variable de configuración no hay entorno. En el entorno de, nada más tenemos uno que es
-->
default. Vamos aquí a finish. Perfecto. Por favor, ahora agregue un nuevo job. Sí,
-->
dígame. Claro. Claro, cómo no. Claro, cómo no. Sí, señor. Next. Aquí tengo
-->
dos variables. Una que se llama dirección servidor hadut con valor 10.0.3.250 y tengo
-->
una que se llama ruta raíz con valor slash inputs. Listo. Perfecto. Finish aquí. Ahora,
-->
note lo siguiente. Yo he usado este componente que se llama HDFS connection y lo estoy
-->
usando aquí. Cuando es recomendable usar este componente, cuando tú tengas varios
-->
componentes HDFS y para evitar configurar uno por uno, nada más configuras una conexión
-->
y listo. Todo el mundo toma la configuración. Pero vamos a ver el caso en que de pronto
-->
nada más tenga un solo componente. Va a ser lo diferente. Ahora click de derecho
-->
vamos a crear un nuevo job y lo voy a llamar job descargar, descargar on the record, archivo
-->
on the record hadut. Job descargar archivo hadut. Vamos a esperar. Voy a cerrar el
-->
anterior y voy a agregar aquí un archivo que se llama HDFS y este componente es el
-->
componente get. Este get nos va a permitir obtener o descargar un archivo que esté
-->
en un sistema de ficheros de hadut. En este caso HDFS se llama el sistema de ficheros.
-->
THDFS Martina. Listo perfecto. Y aquí voy a agregar dos componentes que fue el primer
-->
ejemplo que hicimos que es un TMS, TMSG box. Voy a agregar dos de este tipo. Uno aquí
-->
voy a copiar este componente y lo voy a pegar acá. En este caso no vamos a usar
-->
Ernesto connection. La idea es hacerlo un poco diferente al anterior. Nada más deja
-->
por favor nada más el get. Vamos entonces al HDFS get y dese cuenta que tiene la misma
-->
configuración de un connection. ¿Cuándo debería usar el connection? Cuando esa conexión la vas
-->
a re-usar en n veces. Entonces como nada más tengo uno solo puedo conectar directamente sin
-->
HDFS connection. Puedo conectarlo directamente en el componente. Entonces el primer ejemplo lo
-->
mostrar el HDFS connection que en el mejor de los casos lo vas a usar cuando tengas varios
-->
tipos componentes HDFS. ¿Para qué? Para que no tenga que configurar cada una de ellas.
-->
Entonces vamos aquí en distribución. Sería universal. Como he agregado unos contextos
-->
a nivel de proyectos, vete a la pestaña de context del job que está en la misma
-->
perspectiva de configuración y le dices aquí donde está la libreta con el chulito y vas a
-->
importar el contexto que tienes a nivel del proyecto. Vete aquí al room, perdón,
-->
vete nuevamente a la configuración del componente, el TS get, dale doble clic en el
-->
HDFS get y vamos entonces a hacer lo siguiente. Te va a quedar, te lo voy a mostrar cómo te
-->
queda inicialmente. Este señor va a borrar el localhost y te debería quedar de esta manera.
-->
Aquí borra este localhost, cierra comilla doble, le das aquí más, más comilla doble.
-->
Vamos a agregar una variable intermedia ahí. ¿Sabes qué hubiese sido mejor práctica? Colocar
-->
toda la URL completa. No sé para qué coloque esa URL. O sea, HDFS las hubiese sido más
-->
sencillas. Pero bueno, ya está. Te quedaría de esta forma y entonces copias esto. Lo pegas
-->
aquí y entre los más vas a colocar la palabra con, con todo el espacio y vas a buscar la
-->
versión del servidor. Y de esa forma pues puedes cambiar la variable en una sola parte
-->
y automáticamente todo va a estar. Ahora mira lo que te pide. Te pide el HDFS directorio
-->
donde va a tomar los archivos que va a descargar. Entonces ya lo habíamos configurado. Borra
-->
esos signos de comilla doble, borrar los todos y colocas con, controlespacio y buscas
-->
context-ruta-raíz. Te pide ahora el directorio local y con la, el botón escoge dentro de temporal
-->
la carpeta descargas. Seleccionar carpeta. En el add-on file coloca sobre escribir,
-->
por si acaso vamos a ejecutar varias veces, sobre escribir. Y es muy parecido al put.
-->
Aquí en el file max voy a decir el archivo que está en hadut que voy a descargar. Entonces
-->
se llama producción, el file max, producción, production.csv y acá lo voy a llamar simplemente
-->
copy.csv para cambiar el nombre. El file max es el nombre de archivo original y el new name sería
-->
el nombre del archivo con que quiere que se descargue la copy. Seguimos. Si agregamos
-->
algo diferente que es muy interesante. Vamos a conectar el HDFS get con el T mesa boss.
-->
Entonces vamos a hacer lo siguiente, dele clic derecho al T get HDFS get y vamos donde dice
-->
disparador y vamos a coger un disparador diferente. Vamos a coger un disparador que
-->
dice run if, o sea ejecuta si. Run if, soltamos de este lado aquí. Significa que ahora se va
-->
a ejecutar el señor siempre y cuando se cumpla una condición. Run if, clic derecho, disparador,
-->
echo run if. Dale doble clic al if. Bueno, perdón, al if no es, es a la línea del if,
-->
a la línea del if doble clic y te aparece una interfaz, un textalia que dice condición. Si
-->
lo ubicas, run if, lo ejecutas, después le das clic a la línea que tiene el if y sale un
-->
menú que dice condición. Y vamos a ver una perspectiva que es sumamente importante que no
-->
lo habíamos visto. Esta perspectiva busque en la parte inferior izquierda. Hay una
-->
perspectiva que se llama outline. Y ahí le dice todos los componentes que tiene en el job.
-->
Note lo siguiente ahora, el if está conectado de entrada con el HDFS get y va hacia T mesa
-->
voz. Entonces, como la entrada viene el get, busque en el outline, expanda las opciones de
-->
código que ofrece el HDFS get. Expandala aquí, clic y mira que cuando expandes te ofrece un
-->
conjunto de variables. Te aparece mensaje de error si hay, número de archivos, curren
-->
status, mensaje de transferencia. Me interesa el archivo que se llama number of file y te dice
-->
cuando se ejecuta, se ejecuta después del componente. Entonces, tome este señor y lo
-->
suelta de este lado, clic sostenido y lo suelta de este lado. Ese me va a colocar el número de
-->
archivos transferidos. Entonces, voy a hacer la comparación aquí al final con Java. Si esto
-->
es igual a cero, voy a transferir solamente uno, indica que si es igual a cero hay un error.
-->
Colóclele doble igual cero. Eva aquí me dice la encargada que hay un participante,
-->
no sé que de más, que va a revisar. Bueno, lo importante es que ya me respondió Eva. Ahora
-->
vemos cómo hacemos para copiar la máquina mía para que no te atropecen mucho. Listo, vamos,
-->
sigamos entonces. Ah, el error estaba, según aquí me cuenta, es que estaba Chantal y Chantal
-->
no estaba en el grupo. Intenta conectarte ahora nuevamente para ver. Por favor, me
-->
da un momento a ver si solucionamos el problemita de aquí de Eva. Yo miro la ventana. Intenta
-->
conectarte ahora para ver.