5 videos 📅 2024-10-09 09:00:00 America/Bahia_Banderas
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

United Arab Emirates - Big Data Hadoop Analyst Training

                WEBVTT

00:00:15.040 --> 00:00:24.440
Perfecto, listo. Ok y nos falta definir entonces este archivo, este hfc output. Recuerda que

00:00:24.920 --> 00:00:33.340
un put que era que tenía un archivo en un sistema, en este caso en el sistema hos y lo mandé a

00:00:33.340 --> 00:00:37.920
hadut. En este caso le voy a decir ahora, oye lo que tú estás convirtiendo, déjalo en hadut,

00:00:39.620 --> 00:00:44.640
en el output. Dele doble clic por favor a ese output y dígale que vamos a usar una conexión

00:00:48.300 --> 00:01:01.360
existente. En el nombre del archivo váyase y escoja producción y le agrega el prefijo

00:01:01.360 --> 00:01:11.180
curado al final para que sea más sencillo la configuración curado y colóquenle, sí curado,

00:01:13.960 --> 00:01:24.220
.csv, aquí está, .csv, producción y le coloca el sufijo, le coloca el sufijo, perdón,

00:01:24.440 --> 00:01:29.380
con the score curado es sufijo, no prefiero, quedaría como producción, voy a mostrar aquí

00:01:29.380 --> 00:01:39.480
cómo quedaría el nombre de salida, quedaría inputs producción, vean aquí me quedó mal,

00:01:40.080 --> 00:01:44.680
con the score curado, le coloco un punto ahí demás,

00:01:58.540 --> 00:02:05.020
bueno creo que, perdón, todavía falta una configuración en el thdfs output, asegura que

00:02:05.020 --> 00:02:12.440
el separador no lo cambie porque por defecto está con punto y coma, colóquenle coma y dígale

00:02:12.440 --> 00:02:25.340
que incluya el header, incluir header, bueno creo que ahora sí no tenemos ya más configuraciones,

00:02:33.200 --> 00:02:38.740
vamos a darle mejor sobre escribir porque si lo ejecutamos dos veces este job no sale error,

00:02:39.900 --> 00:02:46.360
entonces sí vamos al thdfs output y vamos a darle sobre escribir y bueno voy a proceder a

00:02:46.360 --> 00:02:53.160
ejecutarlo a ver si tenemos algún problema, bueno aquí me dice ok, guardamos elementos,

00:02:57.040 --> 00:03:00.220
bueno aquí tenemos un problemita que se puede estar agarrando,

00:03:31.700 --> 00:03:36.700
si tengo poca memoria, listo ya empezó la ejecución en el caso mío,

00:03:41.640 --> 00:03:50.260
bueno en el caso mío listo, se ejecutó y me mostró el log, este que está aquí,

00:03:50.560 --> 00:03:58.740
que es un log de tipo trace y debería estar este archivito acá también en el

00:03:58.740 --> 00:04:09.480
explorador de archivos, en la carpeta tech, va a estar entonces en esta carpeta, aquí está

00:04:09.480 --> 00:04:16.920
los logs y ahí está entonces mi archivo de log diciéndole que primero se conectó,

00:04:16.920 --> 00:04:23.060
inició la lectura y archivo curado de forma correcta, si todo está bien debería ver ese

00:04:24.200 --> 00:04:32.400
archivo en explorador de en el browser, ahí está producción curado, veamos a ver quién tiene

00:04:33.060 --> 00:04:45.700
problemas, Eva tienes problemas, no sé que está viendo el código, vamos a ver muéstame el

00:04:45.700 --> 00:04:49.640
run, la ejecución, ahí hay la pestaña de run job, la que tienes al lado de component,

00:04:49.700 --> 00:04:59.160
ahí es el que no salió, listo, file no puede invocar, listo sigue va a ver, al final sigue hasta

00:04:59.160 --> 00:05:06.740
el final, si está mal, hdf, oc, output y snoo, dale doble clic ahora si, dale doble clic para ver si

00:05:07.400 --> 00:05:11.380
el problema es que no creaste la conexión, dale doble clic a la configuración del output,

00:05:14.160 --> 00:05:23.200
listo, si notas usaste conexión existente pero no en el component list no sesionaste la conexión,

00:05:23.220 --> 00:05:29.780
entonces ahí sería a efecto, ahora vuelve a ejecutar nuevamente, perfecto, listo,

00:05:30.760 --> 00:05:35.420
voy a intentar ejecutar nuevamente para ver cómo me queda el log, ejecutar nuevamente,

00:05:40.480 --> 00:05:44.860
aquí pues estaría la misma salida y el archivo se sobreescribe,

00:05:53.120 --> 00:05:56.780
perfecto, noto que tienes un error Martín, vamos a ver qué error te salió,

00:06:00.920 --> 00:06:05.220
dice error debido, muéstrame el run nuevamente, muéstrame el run y dice lo siguiente,

00:06:08.320 --> 00:06:13.900
run time, ya existe, ok, vete a tu file output delimite, por favor dale doble clic, doble clic

00:06:14.820 --> 00:06:24.580
y vete en advanced settings, en ese mismo, en el lado izquierdo exactamente, advanced settings,

00:06:27.860 --> 00:06:31.620
voy a ver si amplio memoria ahora más tarde porque reducimos al,

00:06:33.070 --> 00:06:38.970
espera que cargue un momentico que está previamente lento, raro, espera un momento,

00:06:44.910 --> 00:06:50.770
que fue que se logó, mientras voy a revisar la memoria de mi máquina un momento Martín,

00:06:52.770 --> 00:06:56.730
a ver CMD, voy a ejecutar aquí en CMD,

00:07:02.830 --> 00:07:06.690
dale doble clic nuevamente al componente para que vea si de pronto ya coge, estás,

00:07:16.110 --> 00:07:17.390
memoria 73%,

00:07:24.330 --> 00:07:28.610
voy a conectarme de forma interactiva a tu máquina Martín un momento,

00:07:39.830 --> 00:07:47.230
memoria, no hay mucho problema, voy a hacer al ingeniero entonces,

00:07:47.530 --> 00:07:50.610
vamos a cerrar aquí y vamos a abrir nuevamente este job,

00:07:55.210 --> 00:07:56.630
vamos a darle aquí doble clic,

00:08:02.490 --> 00:08:05.330
no, pero ese componente parece que estuviese como vacío,

00:08:05.330 --> 00:08:09.330
no, vamos a borrarlo un momento al ingeniero también, vamos a borrarlo aquí,

00:08:12.550 --> 00:08:14.770
como si no subiese a agregar el código de forma correcta,

00:08:16.930 --> 00:08:22.290
lo voy a eliminar un momento y voy a agregar nuevamente un test file,

00:08:35.190 --> 00:08:42.970
conectamos este señor acá y tu carpeta es temporal, sí, tengo temporal,

00:08:42.990 --> 00:08:46.570
vamos a ver,

00:08:51.270 --> 00:08:56.610
log.txt y aquí puede haber una opción, bueno aquí le digo incluir header,

00:08:56.610 --> 00:09:03.310
que añada y advance settings, no, no está por defecto, no sé,

00:09:03.370 --> 00:09:07.630
ese componente tuyo está como raro, es decir, cuando le agregaste parece que

00:09:07.630 --> 00:09:11.650
no hubiese agregado el código del componente raro,

00:09:17.170 --> 00:09:21.490
listo, esperemos un momento a ver si ejecuta de forma correcta, listo,

00:09:22.630 --> 00:09:29.210
aquí hay algo extrañamente raro, es que el teguar, este job te lo,

00:09:30.630 --> 00:09:33.930
vea lo siguiente, este job, no sé, aquí hubo un error,

00:09:34.310 --> 00:09:38.110
que está ejecutando este teguar por cada línea que está llegando aquí,

00:09:38.190 --> 00:09:38.850
vamos a ver qué pasó aquí,

00:09:41.930 --> 00:09:49.810
vamos a ver a eso, que tienes aquí, no, al eso, porque en ese caso él permitió,

00:09:49.810 --> 00:09:56.610
mira lo siguiente, él permitió que conectaras un main acá, al conectar este main de aquí

00:09:56.610 --> 00:10:01.710
a acá, que fue donde la pregunta, la pregunta que me están haciendo también alguien del componente

00:10:01.710 --> 00:10:08.230
y por qué no main, en este caso al conectar el main de aquí a acá, cada fila que está escribiendo

00:10:08.230 --> 00:10:18.750
va a generar un log, entonces aquí vamos a eliminar este señor de aquí y vamos a

00:10:18.750 --> 00:10:28.910
contar, manda un mensaje, listo, voy a ejecutar aquí, sí, porque si no al main por cada línea

00:10:28.910 --> 00:10:41.210
me va a ejecutar el señor ese, fíjate que ahora sí, listo, perfecto, dese cuenta que él no está

00:10:41.210 --> 00:10:45.730
mostrando fila por fila porque él está en macreduce y trata de actualizar la interfaz

00:10:45.730 --> 00:10:52.190
para que se vea gráficamente qué es lo que estoy haciendo, bueno, ahí tenemos eso, debería tener

00:10:52.190 --> 00:11:02.330
tu archivo de temporal, y este Jog lo que buscaba era lo siguiente, y cerré sin querer mi

00:11:04.990 --> 00:11:10.030
invitata, lo que buscaba pues es agregar el componente t igual que lo habíamos dicho,

00:11:10.170 --> 00:11:15.150
pero cómo hacíamos para gestionar esos logs, que esos logs me van a mandar si

00:11:15.150 --> 00:11:19.910
hay algún error o si he hecho alguna trazabilidad con el t igual que fue el caso que hice,

00:11:20.930 --> 00:11:24.510
entonces vamos con el siguiente ejemplo, dígame,

00:11:31.210 --> 00:11:31.730
ok,

00:11:36.250 --> 00:11:38.630
ok, pero bueno, pero te ejecuto bien ahora,

00:11:41.270 --> 00:11:47.130
ah bueno, perfecto, ahí no sé qué pudo haber pasado, ahí en realidad contó algo que faltaba

00:11:47.130 --> 00:11:54.010
por actualizar quizás, bueno, vamos entonces a hacer el siguiente ahora, sí,

00:12:01.470 --> 00:12:07.090
ah, listo, bien, subescribiendo, hay dos formas, listo, vamos a ver un momento,

00:12:08.730 --> 00:12:14.110
en el momento que me cargue aquí, lo cerré sin querer, como el log lo estoy mandando a este

00:12:14.110 --> 00:12:20.070
archivo que es el tfile output, voy a darle doble clic aquí, y aquí yo cogí la opción

00:12:20.070 --> 00:12:27.370
añadir, si esto lo quito, él sobreescribe, como lo dejé, entonces le va añadiendo,

00:12:27.450 --> 00:12:33.350
pero como es log, tengo que añadirlo, porque van a haber muchas ejecuciones ahí, listo,

00:12:33.350 --> 00:12:39.490
perfecto, vamos entonces, esta es una limpieza ahí para entender que todo lo que está después

00:12:39.490 --> 00:12:44.090
del input hacia allá, entonces va a generar un script para ejecutarlo con más produce,

00:12:44.850 --> 00:12:50.430
vamos a hacer entonces ahora clic derecho, aquí otro job, si son tan amables,

00:12:55.810 --> 00:12:58.710
voy a hacer lo siguiente, job

00:12:59.890 --> 00:13:02.510
calcular, vamos a llamarlo job calcular,

00:13:07.170 --> 00:13:12.050
producción por estado y temporada,

00:13:14.370 --> 00:13:20.810
calcula producción por estado y temporada, cierto, el día de ayer me hicieron dos preguntas,

00:13:21.170 --> 00:13:28.250
la primera pregunta era con relación, qué pasaría si yo tengo un job de un tercero y

00:13:28.250 --> 00:13:32.450
no hay una relación de orden de cuál se ejecuta primero, es decir, no está un

00:13:32.450 --> 00:13:42.290
subyoke ok o un component ok, o en su efecto un error pues, ahí pues, ahí sería prueba y error,

00:13:43.450 --> 00:13:49.230
es decir, ejecutar el job y ver para ver qué se ejecuta primero, después segundo, no hay forma,

00:13:50.050 --> 00:13:56.330
la documentación no se refiere a cómo haría en ese caso, de ahí a lo que me hizo la

00:13:56.570 --> 00:14:03.230
pregunta, que me parece interesante, es adoptar buenas prácticas de tal forma en que cuando

00:14:03.230 --> 00:14:09.830
tenga su job le defina un orden, de tal forma que un tercero, cuando lo lea ya sepa de dónde

00:14:09.830 --> 00:14:18.230
empieza, qué sigue y dónde termina, la otra pregunta que me hicieron fue con respecto a

00:14:18.230 --> 00:14:25.610
si podía cambiar los permisos de archivo desde acá, desde un job, cuando migraba,

00:14:25.610 --> 00:14:34.350
cuando ponía un archivo allá en Hadut, no, no podría, ahí lo máximo es que tú tienes eso en

00:14:34.350 --> 00:14:41.350
el clúster de Hadut y en el caso particular como lo tengo en Linus, lo que haría es que se

00:14:41.350 --> 00:14:49.830
define la política de a nivel de grupo y a nivel de archivo cuando se adiciona ese usuario

00:14:49.830 --> 00:14:53.730
en ese elemento, es decir, en pocas palabras, lo hago a nivel del sistema operativo donde

00:14:53.910 --> 00:14:59.510
clúster y no lo podía hacer desde talent, no hay forma en que te hagas, depende directamente de

00:14:59.510 --> 00:15:08.670
cómo tengas configurado tu clúster ahí arriba. Si, hay un, puedes hacer aquí dos cosas,

00:15:10.230 --> 00:15:17.330
si no estoy mal, este señor no sé si lo tiene, pero aquí tienes un TSCH y te conectas

00:15:17.930 --> 00:15:24.330
a terminal, por ejemplo, y ahí le mandas el componente y hay otro componente,

00:15:25.110 --> 00:15:35.210
este por SH y hay otro componente que se llama T, no, espérame y me acuerdo el componente,

00:15:37.270 --> 00:15:41.230
que lo que hace es que me ejecuta un script, pero el script lo ejecuta directamente sobre la

00:15:41.230 --> 00:15:45.810
máquina en que esté, donde tenga el job, por ejemplo, pero déjame ir, recuerdo ahora,

00:15:45.810 --> 00:15:51.430
pero sé que podía con SH conectarme y mandarle el comando, si estoy remoto, si estoy local,

00:15:51.610 --> 00:15:55.970
hay otro componente ahí que me permite ejecutar un script, ahora me acuerdo bien y te lo busco

00:15:55.970 --> 00:16:01.890
bien y ahora se me olvidó. Listo, vamos entonces aquí a crear job, vamos aquí,

00:16:01.890 --> 00:16:07.290
era, ¿cómo se llamaba? Job Calcular, Producción,

00:16:13.670 --> 00:16:21.210
por, muchas gracias, por estado y temporada. Le vamos a dar aquí Finish,

00:16:25.620 --> 00:16:33.340
en este no me voy a poner tan formal, agregando el T-Preyoy y el T-Warp, simplemente lo que

00:16:33.340 --> 00:16:38.260
quería mostrar con esto es que ya sabe cómo puede hacer trazabilidad a nivel de log, ok?

00:16:39.340 --> 00:16:44.500
Vamos en este señor y lo que voy a hacer es lo siguiente, voy a agregar aquí un componente

00:16:44.620 --> 00:16:53.420
de tipo thsinput, es más, no me complico la vida y lo voy a copiar de acá, este,

00:16:53.600 --> 00:16:59.660
porque voy a usar el mismo archivo, copiar y lo voy a pegar en el nuevo, pegar aquí.

00:17:06.710 --> 00:17:13.310
Acto seguido, voy a agregar entonces el señor, voy a hacer una función de grupo,

00:17:14.570 --> 00:17:21.750
esta función de grupo ya no utilizaría el SELECT, bueno, principalmente porque no estoy

00:17:21.750 --> 00:17:27.330
en una base de datos, no tengo el lenguaje de consulta SELECT, pero por ejemplo el caso

00:17:27.330 --> 00:17:37.850
del señor Spark, partiendo de que ya tú has tenido, mucha gente sabe del señor de SQL,

00:17:38.630 --> 00:17:45.950
entonces como te mostré en esta diapositiva que estaba acá, este señor, hay una librería que

00:17:45.950 --> 00:17:51.870
tú generas un punto SQL, o sea, te das un punto SQL, generas una consulta SQL sobre un

00:17:51.870 --> 00:17:57.970
archivo y este señor, esa librería lo que hace es que automáticamente pues la convierte en

00:17:57.970 --> 00:18:03.010
un script, o sea, toma eso y lo convierte en unas funciones propias para sacar lo que tú

00:18:03.010 --> 00:18:10.530
quieres, entonces aclaro que lo que voy a hacer, porque para hacer funciones de grupo hay dos

00:18:10.530 --> 00:18:20.950
elementos, un T-aggregator row y un T-aggregator show row, esos son los dos señores que están

00:18:20.950 --> 00:18:27.970
aquí. A ver, esta fue la pregunta que me habían hecho inicialmente, creo que en el primer curso

00:18:27.970 --> 00:18:35.150
de talent data integration, listo, ¿qué es la diferencia que hay? La diferencia que hay es que

00:18:35.150 --> 00:18:40.610
en primer lugar lo que hace este T-aggregator row, vamos a suponer que yo tenga el siguiente

00:18:40.610 --> 00:18:57.690
listado de registros, voy a crear aquí algo nuevo, tengo por ejemplo department ID y tenga

00:19:01.770 --> 00:19:09.570
salario, listo, aquí este agregador funcionaría igual si viniera de una base de datos o si

00:19:09.570 --> 00:19:17.070
viniera de un archivo, funcionaría igual a excepción de esta parte porque este agregador

00:19:17.070 --> 00:19:27.670
row lo que haría como viene de un THCF input, él mandaría click a mac reduce, pero si no

00:19:27.670 --> 00:19:35.490
lo siguiente, uno por acá, digamos gana cinco pesos, este señor tiene uno, mismo departamento,

00:19:35.730 --> 00:19:42.030
gana dos pesos, este señor aquí, bueno voy a colocar aquí algo intermedio para que se

00:19:42.030 --> 00:19:51.530
vea más fácilmente y no agregar tanto registro, cuatro que está aquí, listo, entonces aquí

00:19:51.530 --> 00:20:00.510
tiene nueve, listo por acá y aquí tiene por ejemplo un dos y aquí gana tres, entonces tú haces,

00:20:00.690 --> 00:20:08.910
bueno voy a hacer un agrupamiento, un group by y le voy a decir department ID, por ejemplo que

00:20:08.910 --> 00:20:15.710
agrupe por departamento, lo mismo que hablamos allá, si en realidad esto viene de una base

00:20:15.710 --> 00:20:19.570
de datos, hay una alta probabilidad que salga más eficiente que haga el group by

00:20:19.570 --> 00:20:25.270
directamente y lo utilices acá a que te haga el group by la herramienta, pero vamos a ver cómo

00:20:25.270 --> 00:20:31.170
funciona, a ver, este group by department ID lo que hace entonces es que toma los registros

00:20:31.170 --> 00:20:36.050
tal cual como vengan de la base de datos, significa en que empieza a ser grupitos,

00:20:37.030 --> 00:20:42.930
entonces dice, bueno en el grupo de uno voy a meter este departamento de aquí, listo,

00:20:43.090 --> 00:20:48.050
voy a meter este señor de aquí, en el grupo de este señor que está aquí no es igual,

00:20:48.050 --> 00:20:51.710
no lo meto, este señor entonces como no lo meto aquí, creo otro grupo acá,

00:20:52.390 --> 00:20:59.990
este grupo lo voy a llamar cuatro y este señor aquí entonces agrega a este señor,

00:21:00.810 --> 00:21:04.910
a este registro aquí, después sigue recorriendo y se da cuenta que hay uno que ya, un grupo

00:21:04.910 --> 00:21:11.590
que ya creó, adiciona este señor aquí y se da cuenta que este elemento no está,

00:21:11.710 --> 00:21:16.110
entonces crea otro grupo y nada más tiene un registro, ya después que él tiene los grupos,

00:21:16.110 --> 00:21:20.810
es claro entonces en que yo puedo hacerle cualquier función de grupo, entonces yo digo

00:21:20.810 --> 00:21:28.050
sum por ejemplo salario, ya se da cuenta entonces internamente que hay tres grupos,

00:21:28.590 --> 00:21:35.890
mandaría el grupo uno y suma este con este, que es salario, daría siete, después tiene el

00:21:35.890 --> 00:21:42.710
cuatro y el cuatro nada más hay uno, daría nueve y viene el dos y nada más hay un registro

00:21:42.710 --> 00:21:50.570
y le daría tres, eso es lo que hace este agregante, a nivel de que cómo hace internamente el señor,

00:21:50.830 --> 00:21:56.830
pues en realidad es una tabla de un diccionario de datos, un diccionario y hashea las claves y

00:21:56.830 --> 00:22:02.390
después busca con los claves hash, cuáles son iguales y con diccionarios es mucho más

00:22:02.390 --> 00:22:08.150
eficiente y haciendo tablas hash, es un más eficiente internamente, claro que este método

00:22:08.150 --> 00:22:17.490
funciona muy bien cuando la tabla, los elementos son muy, que vas a ordenar no es tan grande.

00:22:19.170 --> 00:22:24.250
La otra que es el T-agregate short row, lo que hace es internamente lo siguiente,

00:22:27.170 --> 00:22:32.650
primero antes de agrupar entonces ordeno los datos, entonces ordenar los datos me

00:22:35.610 --> 00:22:43.750
quedaría más o menos el registro es así uno, me quedaría este señor acá, me quedaría después el dos

00:22:47.210 --> 00:22:53.910
y me quedaría después el cuatro, notará que el algoritmo ahora de agrupamiento es sencillo,

00:22:54.690 --> 00:22:58.350
tomo este primer elemento hasta que encuentre uno diferente, recorro, recorro, recorro,

00:22:58.470 --> 00:23:01.450
aquí encuentro el primer diferente, este es un grupo, esto lo meto en un grupo,

00:23:01.450 --> 00:23:07.050
después empiezo otro grupo desde aquí hasta donde hay uno diferente y esto es mucho más rápido,

00:23:09.110 --> 00:23:14.110
claro, habría que analizar algo, cuánto te cuesta el ordenamiento, cuánto te cuesta,

00:23:14.390 --> 00:23:20.130
porque te puede costar. Listo, entonces esa sería la idea,

00:23:22.830 --> 00:23:27.810
si, bueno esta pregunta será interesante, no lo he analizado, es si hay diferencias,

00:23:27.810 --> 00:23:33.930
como yo mando esto a Macreduce, si hay diferencia en el script generado cuando hago este

00:23:33.930 --> 00:23:40.410
ordenamiento, ese lo voy a investigar porque ahora se me ocurrió esa pregunta y no sé,

00:23:40.510 --> 00:23:46.610
es decir, si hay diferencia justamente cuando, como esto lo mando a Macreduce,

00:23:47.830 --> 00:23:50.830
al usar un T-agregate o usar un T-agregate short row,

00:23:50.950 --> 00:23:52.670
¿qué diferencia habría en el script generado?

00:23:53.090 --> 00:23:57.670
Me lo investigo porque Java, este herramienta no te muestra el script que generó,

00:23:58.610 --> 00:24:01.710
no sé por qué no te muestra ese script, el internamente es un script pero te lo oculta

00:24:02.330 --> 00:24:06.630
y lo manda a ejecutar con Macreduce en tiempo de ejecución, perdón, no que te lo oculte,

00:24:06.670 --> 00:24:10.510
creo que el tiempo de ejecución es que te lo genera y lo manda para Macreduce.

00:24:11.650 --> 00:24:15.050
Son las dos formas, como este archivo es muy pequeño, vamos a usar la primera,

00:24:15.570 --> 00:24:19.230
en verdad hay un poco de datos que es a T-agregate row, ahora voy a usar otro con

00:24:19.250 --> 00:24:26.870
T-shorter row y voy a hacer lo siguiente entonces, voy a hacer aquí un T-HDFS,

00:24:28.730 --> 00:24:34.210
T-HDFS output, este output de aquí me lo voy a llevar

00:24:41.410 --> 00:24:46.730
y me voy a traer, qué pena, la conexión esta del T-Preyoxy para que sea más

00:24:46.730 --> 00:24:50.690
eficiente porque tengo, voy a usar tres componentes que se van a conectar a Hadoop,

00:24:52.070 --> 00:24:56.930
entonces voy a conectar, voy a traerme también el T-Preyoxy.

00:24:57.040 --> 00:25:20.240
Y listo, llego entonces, voy a enlazar los componentes, main aquí y este de acá,

00:25:28.460 --> 00:25:33.520
como esto lo copié, seguramente tiene la configuración del punto y está perfecto,

00:25:34.420 --> 00:25:41.920
este T-HDFS output, lo copié de allá, creo que me va a copiar el esquema anterior,

00:25:43.760 --> 00:25:47.840
no, qué pena, este T-HDFS output, créelo, porque este va a ser nuevo,

00:25:47.940 --> 00:25:55.960
no es el mismo formato, vamos a borrarlo de aquí y agreguemos un T-HDFS output de cero,

00:25:57.720 --> 00:25:59.960
porque la salida va a ser un poco diferente.

00:26:05.440 --> 00:26:10.540
Voy a iniciar con esto y después voy a agregar algo interesante en el T-Aggregate y voy a ver

00:26:10.540 --> 00:26:16.640
dos formas de hacerle lo mismo, usted analizará cuál, hay una que es más fácil pero de pronto

00:26:16.640 --> 00:26:20.900
la otra forma te pueda solucionar algún problema diferente. Vamos a empezar con este que es muy

00:26:22.120 --> 00:26:31.780
sencillo. Voy a conectar el T-Aggregate si al nuevo T-HDFS output, voy a agregar la conexión

00:26:31.780 --> 00:26:37.480
que creo que debe estar aquí ya, esta y el output no debe estar, porque es nuevo,

00:26:37.720 --> 00:26:44.220
voy a usar conexión existente y por favor asegura que me parece un pequeño, bueno,

00:26:44.520 --> 00:26:49.060
no box, no sé si era un box o una pequeña falla en este componente en que si hay una

00:26:49.060 --> 00:26:53.380
conexión solamente una debería aparecer esa conexión ya automáticamente.

00:26:56.220 --> 00:27:02.420
Listo, entonces voy a hacer lo siguiente ahora, voy a configurar este T-Aggregate row,

00:27:04.700 --> 00:27:10.660
nos piden, aquí tengo el enunciado, espérate que es por estado, producción,

00:27:10.660 --> 00:27:15.460
prestado y temporada Listo, entonces vamos aquí a editar el esquema,

00:27:19.820 --> 00:27:23.800
borremos este esquema de salida que me quedó de la vez pasada Listo que hemos todo este

00:27:23.800 --> 00:27:27.440
esquema de salida, borremos todas estas y solamente vamos a mandar la que necesitamos.

00:27:28.380 --> 00:27:38.120
El estado está en el campo state name, la mando para este lado, la temporada está en season,

00:27:40.660 --> 00:27:49.800
y el total de esa temporada va a ser una columna nueva, entonces mejor agrego una nueva columna

00:27:49.800 --> 00:28:00.580
aquí, total, under score, temporada, total temporada, bueno, aunque aquí lo coloque,

00:28:00.580 --> 00:28:11.600
aquí es una mezcolanza de inglés con español, vamos a darle aquí, ok,

00:28:12.440 --> 00:28:21.620
yes, espérate un momento que no lo, ok, dígame, ah perfecto Listo, qué pena, iba a comentar

00:28:21.790 --> 00:28:30.490
algo, se me olvidó, editar esquema, aquí este campo es Float porque este señor viene la

00:28:30.490 --> 00:28:37.750
producción, esta producción no sé por qué está string, esta producción debería ser,

00:28:38.870 --> 00:28:45.590
confirmo el archivo, voy a confirmar el archivo un momento,

00:28:48.610 --> 00:28:53.610
esa producción tiene que ser Float, no sé por qué está de tipo string, la tomo mal,

00:28:55.550 --> 00:29:00.170
voy a cambiar aquí producción a Float, esperamos que no tengamos problemas, Float,

00:29:01.310 --> 00:29:04.910
y el total debería ser como hizo usted Float porque voy a calcular un valor,

00:29:05.150 --> 00:29:09.330
Float aquí y Float acá, esperamos que no tengamos problemas,

00:29:16.310 --> 00:29:21.110
perfecto, entonces listo, damos aquí ok, y aquí ahora es sencillo entonces,

00:29:21.210 --> 00:29:27.690
como nos piden por estado y temporada, la agrupación va a ser primero por estado y

00:29:27.690 --> 00:29:33.830
después por temporada, y acto seguido, vamos a calcular, damos aquí, en la columna salida

00:29:33.830 --> 00:29:45.210
total temporada, vamos a hacer un zoom de la producción e ignora los nulos, por favor,

00:29:45.210 --> 00:29:49.870
porque si hay un nulo, como esto estoy ejecutando es contra Java, si hay un nulo

00:29:49.870 --> 00:29:55.010
va a tener un problema en la suma esa, entonces para evitar cualquier vamos a darle

00:29:55.010 --> 00:29:59.970
ignorar nulos, perfecto, listo, aquí no hay más nada, vamos a la salida,

00:30:02.810 --> 00:30:05.770
confirmemos que el esquema de salida corresponde al de entrada, es decir,

00:30:05.990 --> 00:30:13.630
deberían llegar tres columnas acá, aquí esta sería stay name, season y total temporada, ok,

00:30:15.250 --> 00:30:22.350
voy aquí a abrir nombre archivo, para que sea más sencillo la ruta, voy a coger cualquier

00:30:22.350 --> 00:30:25.990
archivo que está en input aquí y le voy a cambiar el nombre, voy a coger producción

00:30:25.990 --> 00:30:33.710
nuevamente, ok, y lo voy a llamar entonces ahora, producción underscore por estado,

00:30:34.310 --> 00:30:36.490
underscore temporada,

00:30:42.390 --> 00:30:52.710
le voy a decir que el separador es coma y que incluya un header, voy a hacer entonces

00:30:52.710 --> 00:31:04.190
aquí un thdfs input, input y un telokrow para confirmar a ver qué me está dando,

00:31:08.370 --> 00:31:16.910
conecto el input con el telokrow y como buena práctica ya deberíamos para la

00:31:16.910 --> 00:31:21.530
pregunta que me hicieron de los job, vamos a colocarle un disparador para que un tercero

00:31:21.530 --> 00:31:28.790
sepa que la ejecución va a ser en este orden, primero el de arriba y después este que está

00:31:28.790 --> 00:31:39.150
aquí, configuremos lo siguiente, el thdfs input, entonces voy a copiar la salida de este señor,

00:31:40.150 --> 00:31:45.750
es decir, el nombre archivo de salida, control c, lo voy a colocar acá de entrada,

00:31:47.610 --> 00:31:49.610
le digo usar conexión existente,

00:31:52.610 --> 00:31:59.450
tomo la entrada, le digo que es por coma y que tiene un encabezado,

00:32:03.330 --> 00:32:11.730
por último falta el esquema del input 2, ese esquema pues son tres columnas y quizás

00:32:11.730 --> 00:32:16.910
podíamos hacerlo de forma manual, no demoramos menos, pero podíamos aplicar

00:32:16.910 --> 00:32:22.670
lo mismo del día de ayer, partiendo que el esquema de salida va a ser igual a este de entrada,

00:32:23.530 --> 00:32:30.550
vamos aquí al output, vamos aquí a editar esquema y hay una opción que dice exportar,

00:32:31.490 --> 00:32:43.410
es la antepenultima, exportar y le voy a colocar esquema producción por estado,

00:32:46.910 --> 00:32:51.870
se me escapaba, no leí el punto csv o después no lo leí, esquema producción

00:32:53.550 --> 00:33:04.470
con direct core por estado, punto xml que es csv, xml, ok, guardar, ok y ahora lo recupera en

00:33:04.470 --> 00:33:11.910
el input, le da editar esquema, ahí aparece nada más una sola opción y debería aparecer

00:33:14.370 --> 00:33:22.530
y importas entonces el esquema, vamos listo, quiero copiar el esquema de salida a esta

00:33:22.530 --> 00:33:30.210
entrada, ok, vamos primero al output que es el que tiene el esquema, damos click al

00:33:30.210 --> 00:33:38.030
lado de editar esquema, ya hay el botón que está antepenultimo que dice exportar todas

00:33:38.030 --> 00:33:43.750
las filas a un archivo xml, le damos click ahí, listo aquí le coloca un nombre y asegura que

00:33:43.750 --> 00:33:50.990
tenga extensión al final, punto xml, le damos guardar y ahora lo que procedemos a hacer lo

00:33:50.990 --> 00:34:00.810
siguiente ahora, váyase al input, váyase a editar esquema y aparece una opción nada más

00:34:00.810 --> 00:34:10.770
si está vacío, si no le da opción este replace all, escoge aquí y busca el esquema de salida y va a

00:34:10.770 --> 00:34:17.850
copiar exactamente los valores que están ahí, perfecto, listo, creo que aquí no hay más nada

00:34:17.850 --> 00:34:23.490
que hacer, vamos a darle guardar y vamos a intentar ejecutar para ver si no hay ningún error

00:34:27.330 --> 00:34:29.830
vamos a ver que no hay error esperando para ver

00:34:35.090 --> 00:34:40.430
no sé si de pronto la conversión que hicimos a ese flood, esperemos que no nos cause algún

00:34:40.430 --> 00:34:43.670
tipo de error, vamos a ver, sí terminó bien, perfecto

00:34:46.870 --> 00:34:51.690
Eva noto que tienes un error allá, ya llegó a tu

00:34:53.090 --> 00:34:59.890
máquina para ver, bueno en el caso mío creo que me está ejecutando el de limpieza

00:35:02.530 --> 00:35:10.730
y quiero que ejecute es este de producción, si me ejecutó el que no era es el archivo de

00:35:11.930 --> 00:35:12.990
producción por estado

00:35:26.550 --> 00:35:27.670
perfecto, listo

00:35:30.310 --> 00:35:35.930
aquí sabes que vamos a cambiar la entrada porque vamos a tomar archivo curado para que

00:35:35.930 --> 00:35:41.890
no salga ese espacio en blanco, voy a cambiar aquí producción por producción curado a ver

00:35:42.590 --> 00:35:51.590
si dejamos el mismo, pero producción curado lo tengo en cero, ah porque lo ejecuté y lo

00:35:51.590 --> 00:35:53.590
intento ejecutar nuevamente

00:35:55.330 --> 00:36:00.750
Eva voy con el caso tuyo, vamos a ver, dice cuál es el error, que no está que, archivo

00:36:00.750 --> 00:36:10.350
no existe, ah Eva el problema, es un problema complicado, un momento te explico que pasó,

00:36:10.390 --> 00:36:16.810
bueno interesante, Eva vamos, todos estamos en la ventana de mirándolas, si no alcanzan

00:36:16.810 --> 00:36:20.770
a ver la máquina Eva que estoy presentando verdad, Eva el problema es el siguiente,

00:36:20.770 --> 00:36:27.370
fíjate lo siguiente, el primer subyok, el primer subyok que tienes allá arriba lo

00:36:27.370 --> 00:36:33.450
uniste con el subyok de abajo con un component ok, entonces prácticamente estamos uniendo

00:36:33.450 --> 00:36:38.830
tal vez todo un subyok, entonces date cuenta que él empezó a agregar y también ejecutó

00:36:38.830 --> 00:36:44.230
hacia abajo, por qué, porque le colocaste un component ok, al colocarle un component

00:36:44.230 --> 00:36:50.750
ok entonces intenta ejecutar los dos secuencialmente, primero empezó con la parte de la

00:36:52.050 --> 00:36:57.670
sacarla de los archivos y intentó leer un archivo que tuyo está creado, entonces

00:36:57.670 --> 00:37:02.490
cámbiale porque necesito que se ejecute primero el subyok de arriba, cámbiale y borra la

00:37:02.490 --> 00:37:07.850
línea de un component y ahora únela con disparador, click derecho, disparador y

00:37:07.850 --> 00:37:12.770
colócale on subyok ok, de tal forma que termine el subyok primero en la primera

00:37:12.770 --> 00:37:19.730
opción, on subyok ok, la conectas por favor, e intenta ejecutar ahora a ver,

00:37:19.730 --> 00:37:25.570
pues el orden ejecutaría el subyok de arriba primero y después ejecutaría el subyok de abajo

00:37:27.770 --> 00:37:33.750
listo, que decía, que vamos a cambiar, voy a ejecutar nuevamente en el caso mío que

00:37:33.750 --> 00:37:37.210
tengo un problemita aquí, voy a ejecutar nuevamente el de limpieza

00:37:39.290 --> 00:37:41.490
el de limpieza lo voy a ejecutar un momento

00:37:46.510 --> 00:37:48.130
si, ejecutando limpieza

00:37:52.370 --> 00:37:58.450
porque se me borró, cuando lo intenté ejecutarlo cancele y me quedó en cero

00:37:59.530 --> 00:38:06.170
ahora el nuevo subyok no voy a coger ahora en el input, en el primer input

00:38:06.170 --> 00:38:10.210
no voy a coger producción, sino producción curado

00:38:14.150 --> 00:38:21.570
producción curado, no debería porque el mismo formato de archivo no debería causar

00:38:21.570 --> 00:38:27.430
problemas, voy a ejecutar nuevamente aquí y me va a ejecutar nuevamente limpieza

00:38:31.830 --> 00:38:40.190
me espere un momento listo, deja que termine para que no me quede el

00:38:40.970 --> 00:38:44.970
ejecutar el nuevo con el curado para que no me aparezcan los espacios en blanco

00:38:51.210 --> 00:38:52.090
ahí, ejecuto aquí

00:38:56.990 --> 00:38:59.150
listo, vamos a ver qué error me salió

00:39:03.970 --> 00:39:08.810
ah, ya existe, claro, se me escapó la recomendación, aquí le tengo como create,

00:39:08.810 --> 00:39:15.290
debí darle sobrescribir, aquí no es crear, sino sobrescribir, ejecuto

00:39:23.170 --> 00:39:28.710
se cuenta que esta arquitectura de tener una conexión es mucho mejor en el sentido de que

00:39:28.710 --> 00:39:33.050
la puedo aprovechar, aquí ya está el archivo curado, es decir, te va a salir el espacio en blanco

00:39:34.670 --> 00:39:41.870
Ernesto, tienes un error, es porque seguramente vete al tu input y mira a ver si tienes configurado

00:39:41.870 --> 00:39:48.150
que está para crear o para sobrescribir, dale doble clic al thf output y busca la opción,

00:39:48.250 --> 00:39:52.290
ahí cambia la opción de crear por sobrescribir y vuelve a ejecutar por favor, bueno,

00:39:52.330 --> 00:39:59.670
me avisas si alguno no le sale, por favor, o tiene algún error, listo

00:39:59.670 --> 00:40:08.070
Eva, Jasmine, voy con tu máquina, Jasmine, que no la estoy viendo, claro, vete a tu input,

00:40:08.390 --> 00:40:15.170
por favor, a tu input, el primero, el primer input, el primer input, por favor,

00:40:15.310 --> 00:40:21.270
dale doble clic, ese es el input, el input, el input, thf input, ese que está ahí el primero,

00:40:21.470 --> 00:40:28.190
sí, exactamente, vete a tu nombre de archivo y dale al final al botón, al botón,

00:40:30.530 --> 00:40:34.270
vete a tu input y escoge mejor producción curado,

00:40:36.610 --> 00:40:40.290
producción curado, que es más pequeño porque le quitará espacio en blanco, vuelve a ejecutar,

00:40:40.450 --> 00:40:44.850
por favor, si estás amable, perfecto, estoy claro, el archivo, porque ese lo curé en la

00:40:44.850 --> 00:40:52.190
primer job, seguimos entonces, seguimos, voy a alguien que tenga todavía algún error, Catalina,

00:40:57.890 --> 00:41:03.870
bueno, muéstrame el run que ejecutó, muéstrame el run, no sale el error, muéstrame el hdf output,

00:41:06.150 --> 00:41:13.030
hdf output, doble clic, bueno, parece que todo está bien, vamos a ejecutar entonces, a ver,

00:41:13.170 --> 00:41:18.310
qué pasa, ejecutamos para ver eso, ahí está, ok, tenemos un error de codificación,

00:41:18.310 --> 00:41:22.350
ve esa code un momento, ahí esa code para ver dónde marca el error,

00:41:22.650 --> 00:41:30.270
está el punto rojo ahí, dele el punto rojo, por favor, suba, carajo, ahora sí tenemos un

00:41:30.270 --> 00:41:38.650
problema ahí con ese cache, suba a ver, suba un poco para ver, déjeme yo, que este error sí

00:41:38.650 --> 00:41:45.570
está diferente porque está marcando, espérense a su máquina de manera interactiva, que este

00:41:45.570 --> 00:41:54.090
está marcando un punto de listo, permítame descontrolar un momento, este cache cierra,

00:42:00.770 --> 00:42:03.130
aquí hay un telok row,

00:42:04.830 --> 00:42:09.610
ok, permítame montar aquí, editar esquema,

00:42:12.210 --> 00:42:22.770
ah, tiene el esquema vacío, yo te hice el export de la salida del esquema del hdf output,

00:42:26.330 --> 00:42:31.930
ahora sí tome el control usted, Catarina, entre a thdf output, por favor, dele doble clic,

00:42:32.230 --> 00:42:42.770
al dedo, váyase donde dice editar esquema si es tan amable, listo, váyase a la parte izquierda

00:42:42.770 --> 00:42:47.050
de los botones de la parte izquierda y busque el botoncito que hice exportar, al ladito

00:42:47.050 --> 00:42:52.510
del que, ese que está ahí listo, ah no, ya lo tiene, ya lo había hecho ya, faltó

00:42:52.510 --> 00:42:57.950
importarlo, dale cancelar entonces, cancelar, váyase al input, editar esquema,

00:42:59.210 --> 00:43:06.650
y al botón, al último botón que hizo, entonces dale clic ahí por favor, escogemos ese, abrir,

00:43:08.670 --> 00:43:14.670
ok, ah yes, dele ejecutar para ahí, yo creo que ese es el error, porque estaba esperando un

00:43:14.670 --> 00:43:24.910
código ahí, y quizás ese sería el error, hay un problema en el zoom de la salida,

00:43:24.910 --> 00:43:31.970
dele kill, mate ese proceso, mate ese proceso, ve yase al t-aggregator row, porque está sumando

00:43:31.970 --> 00:43:36.630
state temporada, ahí el input column, dale clic ahí, debería ser total, clic ahí,

00:43:38.730 --> 00:43:44.950
de ese producción, producción, ahora sí, intente ejecutar nuevamente, creo que,

00:43:44.950 --> 00:43:55.050
váyase a su HDFS input un momento, al input, el HDFS input por favor, o no,

00:43:55.530 --> 00:43:59.510
o en el t-rrow, creo que lo podemos hacer en el t-rrow, váyase al t-rrow por favor,

00:44:01.430 --> 00:44:09.090
váyase a editar esquema, ahora sí, ah no, qué pena, es un error red de Java, dele ok

00:44:09.090 --> 00:44:13.350
nuevamente, qué pena, ok, váyase al input column, de su cuenta que la cambió, y le

00:44:13.350 --> 00:44:22.550
apreció, recuerda que había cogido producción, dele un enter, que ese es un problema de Java con

00:44:22.550 --> 00:44:28.670
ese table, dele enter ahí, ahora sí, es un problema netamente de ese con el table de Java,

00:44:29.490 --> 00:44:34.330
ese componente yo lo odiaba a nivel cuando hacía interfaces de stock, un componente muy

00:44:34.330 --> 00:44:41.930
complicado de manejar, ahora sí se da cuenta que no, ahora sí está calculando, ahora sí,

00:44:43.890 --> 00:44:49.650
perfecto, listo, entonces ahí está, bueno, listo, bueno, qué tal si hacemos un pequeño break,

00:44:49.790 --> 00:44:52.710
ya pasaron las primeras dos horas, hacemos un break de 10 minutos, y volvemos entonces en 10,

00:44:53.230 --> 00:44:58.770
ok, a tomar algo frío, yo en este caso caliente, a tomar un cafecito, volvemos en 10 entonces,

00:45:03.710 --> 00:45:09.710
bueno, nuevamente continuamos, bueno, nuevamente continuamos entonces, después de

00:45:09.710 --> 00:45:17.330
ese pequeño receso, vamos a agregar otro elemento para comparar lo siguiente, hay unas

00:45:17.330 --> 00:45:23.650
opciones que te ofrece la herramienta, que son opciones de compresión de los datos, es decir,

00:45:23.890 --> 00:45:30.850
partiendo de que vamos a tener sobre un sistema Hadoop, y Hadoop, los nodos que tenga, va a

00:45:30.850 --> 00:45:36.390
replicar los archivos, es claro que vas a consumir bastante almacenamiento secundario,

00:45:36.390 --> 00:45:41.870
pero si uno hace una comparación, el secundario es muchísimo más barato que el primario, lo que

00:45:41.870 --> 00:45:47.490
en realidad vale es ese primario, entre más memoria, pues pagando mucho más. Ahora,

00:45:47.630 --> 00:45:51.510
vamos a hacer lo siguiente para la prueba y hacer la pequeña comparación entonces,

00:45:52.390 --> 00:45:58.010
vamos a darle aquí clic derecho al job, vamos a copiar ese mismo yo,

00:45:58.090 --> 00:46:05.450
el que se llama Job Calcular, producción por estado, vamos a copiarlo, bueno, perdón,

00:46:05.450 --> 00:46:15.250
vamos mejor a duplicarlo, Duplicate, y vamos a llamarlo entonces Job, bueno,

00:46:15.410 --> 00:46:24.310
el mismo nombre, y le coloco el sufijo al final, comprimido, comprimido, claro que,

00:46:24.450 --> 00:46:29.690
de te cuenta, esto que hicimos fue sumar y restar, que es lo mismo, normalmente tú

00:46:29.690 --> 00:46:34.850
llevas a un archivo y ese archivo, pues lo llevas a un Data Warehouse, un Data Lighthouse,

00:46:34.970 --> 00:46:39.010
y ahí lo graficas lo que tú quieres, estamos asumiendo que ese archivo, producción,

00:46:39.530 --> 00:46:43.670
era elevadamente grande, entonces, al ser elevadamente grande, un sistema tradicional,

00:46:43.730 --> 00:46:48.770
pues puede ser un poco más, más tedioso y complicado, evidentemente, ahora vamos a hacer

00:46:48.770 --> 00:46:54.870
el labor, el Join, vamos a ver cómo nos funciona ese Join ahora, vamos a darle aquí OK,

00:46:55.570 --> 00:47:01.070
y cierra, por favor, el de temporada y abre la duplicado, lo que termina en comprimido,

00:47:02.930 --> 00:47:03.670
si es tan amable,

00:47:10.230 --> 00:47:19.170
listo, y ahora a la salida, al THDFC Output, haga lo siguiente, dele doble clic a esta salida

00:47:19.170 --> 00:47:30.310
aquí, y ahora hay una opción que dice comprensión de data, comprensión, comprensión de data,

00:47:31.230 --> 00:47:36.730
y hay diferentes algoritmos de comprensión, solamente, bueno, especifica GSI y BSI,

00:47:36.950 --> 00:47:40.830
que son algoritmos de comprensión, implementaciones de algoritmos de comprensión para Linux,

00:47:42.810 --> 00:47:47.790
GSI, que fue creado en el mundo Linux, más que todo, ahí dejamos por defecto,

00:47:47.790 --> 00:47:54.570
y ahora, como va a estar comprimido, voy a cambiarle el nombre, le voy a quitar el punto

00:47:54.570 --> 00:48:01.270
CSV, y lo voy a dejar, producción por estado, temporada, donde el score comprimido y no va

00:48:01.270 --> 00:48:11.330
a tener extensión, comprimido, sin extensión, listo, entonces, listo, perfecto, y ahora,

00:48:12.150 --> 00:48:16.630
si lo mando a comprimir, para poderlo leer, tengo que decir que lo descomprima,

00:48:16.630 --> 00:48:24.850
por lo tanto, en el HDFS input, dígale que está comprimido, y asegure que el algoritmo

00:48:24.850 --> 00:48:29.490
de comprensión y descomprensión sea el mismo, en este caso sería GSI para los dos lados,

00:48:29.630 --> 00:48:34.270
dele aquí, guardar, y mandelo a ejecutar, por favor,

00:48:38.610 --> 00:48:42.730
ah, claro, no, sí, sí, claro, sí señor, así, perfecto,

00:48:42.730 --> 00:48:47.930
voy a cambiarle el nombre, si no, sale error, si tendría que colocar el mismo archivo acá,

00:48:48.110 --> 00:48:53.410
sí señor, así es, perfectamente, así es,

00:48:55.590 --> 00:49:03.950
voy a ejecutar entonces, ahora sí, comprimido, ejecutar, debería dar lo mismo, pero voy a

00:49:03.950 --> 00:49:08.070
comparar para ver la tasa de comprensión de cómo quedaría el archivo sin comprimir,

00:49:08.070 --> 00:49:13.410
y cuánto quedaría el archivo comprimido, bueno, ahí está, listo, está ejecutando,

00:49:13.670 --> 00:49:18.870
perfecto, ejecutó bien, y voy a mi sistema de ficheros, y voy a ver,

00:49:18.990 --> 00:49:31.630
debió agregarme un nuevo archivo, y ahí está, el comprimido pesa 1.47 y el no comprimido pesa

00:49:31.630 --> 00:49:43.110
3.8, hay una relación de diferencia, vamos a ver de cuánto, 1.48 entre 3.8,

00:49:45.310 --> 00:49:52.470
la tasa de comprensión fue del 40%, aproximadamente, entonces ahí podías

00:49:52.470 --> 00:49:59.710
reducir pues algún tamaño con respecto a lo que estás haciendo, listo, la tasa de comprensión

00:49:59.830 --> 00:50:05.990
fue del 40%, aproximadamente, bueno, ahí tú decides si deseas mandarlo a comprimir o no,

00:50:06.030 --> 00:50:11.690
lo que tienes que asegurar es que el mismo algoritmo de comprensión es el mismo algoritmo

00:50:11.690 --> 00:50:18.130
de descompresión, listo, paré de contar, seguimos entonces, vamos a hacer el siguiente

00:50:18.130 --> 00:50:22.450
ejercicio, este siguiente ejercicio me va a permitir incluir algunas cosas propias de

00:50:22.450 --> 00:50:26.870
la herramienta, que me facilitan algunas cosas, y este ejercicio lo voy a hacer de

00:50:27.050 --> 00:50:30.810
forma para poder incluir otro componente que no alcanzamos a ver, que es el T-Join,

00:50:31.730 --> 00:50:38.310
habíamos visto el componente T-Map, pero vamos al componente T-Join que no lo habíamos visto,

00:50:39.810 --> 00:50:43.050
vamos a lo siguiente ahora, por favor, vayamos nuevamente a la herramienta,

00:50:45.870 --> 00:50:51.050
y ahora vayamos a lo siguiente, clic derecho y vamos a crear un nuevo job,

00:50:51.810 --> 00:51:15.730
vamos a llamarlo job-calcular-producción-estado-temporada-underscore y anualidad,

00:51:15.750 --> 00:51:21.030
es decir, le voy a agregar un nuevo elemento al Group Byte, ya te digo para qué,

00:51:22.730 --> 00:51:27.730
el mismo nombre que tenía anteriormente, pero le agregué ahora y anualidad, el mismo nombre,

00:51:28.970 --> 00:51:33.650
y le agregué al final y anualidad, vamos aquí a darle Finish,

00:51:38.630 --> 00:51:47.570
listo, entonces, como es parecido, voy a ir al Calcular sin comprimir, para no estar

00:51:49.950 --> 00:52:12.970
chuleando ahí, y voy a copiar el T-Join, y voy a copiar este señor en el nuevo job,

00:52:12.970 --> 00:52:24.810
aquí, esto quedaría así, este es el nuevo job, pego esto aquí, listo, voy a cerrar este está acá,

00:52:31.990 --> 00:52:38.410
y quedaría así, copié el que no comprimí para no estar chuleando la compresión,

00:52:41.870 --> 00:52:47.290
por favor, quite este THS Opus para poner el contexto del problema que queremos resolver,

00:52:47.590 --> 00:52:54.670
coloca aquí un T-Lock Row para que me entienda el contexto de lo que quiero hacer,

00:52:54.770 --> 00:53:06.030
entonces, voy por acá, y conecto el T-Aggregator Row con el T-Lock Row, repito,

00:53:06.030 --> 00:53:10.370
voy a contextualizar el problema que quiero resolver, vayamos al T-Aggregator Row,

00:53:11.130 --> 00:53:18.190
por favor, vamos a editar esquema, y lo único que vamos a hacer es vamos a agregar

00:53:21.460 --> 00:53:28.820
CrocGear, lo pasamos de la entrada a la salida del T-Aggregator Row, CrocGear,

00:53:31.960 --> 00:53:45.520
CrocGear, quedamos aquí, ok, y agrega que vamos a hacer el agrupamiento por estado,

00:53:45.520 --> 00:53:54.000
por temporada, y ahora por año, CrocGear, qué pena, vamos a agregar aquí,

00:53:54.020 --> 00:53:57.340
porque es que después no me va a entender, vamos a agregar aquí un T-Short Row,

00:53:58.220 --> 00:54:05.120
T-Short Row, porque para ver el contexto del problema, pues no se ve tan bien,

00:54:06.680 --> 00:54:08.920
aquí me piden que instale, bajar e instalar,

00:54:10.950 --> 00:54:17.570
si, aquí, entonces, voy a hacer lo siguiente, conecto a este T-Short Row y el T-Short Row al

00:54:17.570 --> 00:54:25.730
T-Lock Row, por favor, instale lo que no es el caso, y también instálalo, por favor, perfecto,

00:54:27.250 --> 00:54:31.470
listo, y entonces vamos a hacer el agrupamiento, vamos a darle, agregamos columna,

00:54:31.470 --> 00:54:34.510
y la siguiente columna, asegúrese que esa columna es alfanumérico,

00:54:38.250 --> 00:54:43.490
la siguiente columna agrega que ordene por temporada,

00:54:46.390 --> 00:54:53.890
también que se es alfanumérico, y quiero lo siguiente, la tercera columna ordena por total

00:54:53.890 --> 00:54:59.850
temporada, ese total temporada sí es numérico y ordenarlo de manera descendente,

00:55:03.790 --> 00:55:04.150
enter,

00:55:09.690 --> 00:55:15.530
vayamos, ahora sí, y aquí no hay más nada, vamos a ejecutar para ver y le voy a mostrar

00:55:15.530 --> 00:55:23.130
qué es lo que quiero resolver, listo, voy a ejecutar aquí,

00:55:23.130 --> 00:55:36.250
vamos a que ejecute ahí, nos muestre, a ver, que no salga, que listo, a ver, vamos a ver,

00:55:38.650 --> 00:55:42.390
debería salir lo mismo, si tenemos la misma configuración del ordenamiento,

00:55:42.570 --> 00:55:46.330
pues debería salir lo mismo, y aquí está,

00:55:51.870 --> 00:55:57.270
aquí me faltó lo siguiente, por qué no mostró el año, aquí faltó el año,

00:55:57.330 --> 00:56:00.230
déjame ver que no me está mostrando el año, por qué no mostró el año,

00:56:00.830 --> 00:56:04.770
te agregué enter row un momento, te reviso para ver,

00:56:08.270 --> 00:56:12.530
bueno, el cross ya está aquí, o sea que no es el problema de él,

00:56:13.730 --> 00:56:17.650
debe ser en el te show row, voy a buscar la salida, editar salida,

00:56:19.850 --> 00:56:24.090
aquí está cross gear y el te low row, a ver qué pasa, editar esquema,

00:56:26.490 --> 00:56:28.170
porque yo no vi el año ahí, yo vi el año ahí,

00:56:34.350 --> 00:56:38.250
no sé, a usted le apareció el año ya, a mí no está apareciendo, voy a cambiar un

00:56:38.360 --> 00:56:42.280
poco la salida para que me lo muestre de tipo table, sé que estoy viendo mal,

00:56:44.720 --> 00:56:50.760
y a mí por qué no me apareció, vamos a ver,

00:56:51.580 --> 00:56:56.220
no sé si fue, porque se está, qué pena, se está ejecutando, qué,

00:56:58.440 --> 00:57:06.220
gracias, gracias, gracias, no he guardado aquí, excelente,

00:57:08.440 --> 00:57:13.260
lo revisé, y abrí el que no era, vamos a ver, ejecutemos aquí,

00:57:15.400 --> 00:57:19.820
ejecutemos aquí, es anualidad, este que está aquí,

00:57:23.900 --> 00:57:24.740
ahora sí ejecuto,

00:57:31.680 --> 00:57:34.160
bueno, vamos a lo siguiente, ahora sí, ejecutando,

00:57:38.480 --> 00:57:41.780
perfecto, listo, entonces aquí va así, gracias,

00:57:43.240 --> 00:57:44.620
bueno, mire lo que quiero resolver aquí,

00:57:48.420 --> 00:57:56.460
note lo siguiente, quiero sacar el año en que más tuve producción en la temporada,

00:57:57.280 --> 00:58:01.180
entonces mire lo siguiente, voy a tomar estos archivos que están aquí, este de aquí,

00:58:01.280 --> 00:58:05.720
por ejemplo estos de acá, y los voy a pegar para verlo mejor aquí,

00:58:08.740 --> 00:58:12.500
significa, aquí no, acá, en el notepad,

00:58:15.060 --> 00:58:19.180
significa lo siguiente entonces, no guardar, perfecto,

00:58:26.600 --> 00:58:34.780
veamos, para este estado, para esta temporada, el mayor es este, 2010,

00:58:34.780 --> 00:58:38.780
hay solo archivo, no hay mucho problema con esto, entonces me debería dar esto de aquí,

00:58:40.900 --> 00:58:49.020
cierto, para el segundo, para la temporada carif, mire lo siguiente, en la temporada carif,

00:58:51.020 --> 00:58:58.460
el mayor producción cuál fue, fue esta, la primera, en el 2000, esta de acá,

00:59:01.000 --> 00:59:09.660
si me equivoco me avisen entonces, si escogí la correcta, para rabis nada más hay una sola,

00:59:09.900 --> 00:59:19.340
o sea que quiero el año en que más produce, y en la temporada que llama año completo,

00:59:19.740 --> 00:59:27.980
la mayor, no, porque es que lo organizé, perdón, es que lo organizé de esta manera,

00:59:27.980 --> 00:59:30.980
el short el organizé, claro que estaba en la primera, estaba allá primero,

00:59:34.340 --> 00:59:38.740
pregunto, si entiende que es lo que quiero sacar, quiero sacar el año en que más tuve

00:59:38.740 --> 00:59:44.840
temporada, esto es muy común cuando tú vas a sacar en un supermercado cuáles son

00:59:44.840 --> 00:59:49.380
cinco productos más vendidos por cliente, entonces es una relación de ese cliente,

00:59:49.400 --> 00:59:54.480
le haces una campaña a ese cliente y lo convences a que compre esos productos que compra

00:59:54.480 --> 01:00:01.760
el más nuevo producto que tú tienes, entendemos el problema, verdad, entonces vamos a lo siguiente,

01:00:03.660 --> 01:00:11.120
yo he visto algunas soluciones que empiezan de esta forma, vamos a te agregué este,

01:00:19.460 --> 01:00:29.340
ahora quitan este crossgear de aquí, y este crossgear lo colocan acá, no, no lo hago usted

01:00:29.340 --> 01:00:35.200
ya para que me entienda, para que me entienda la idea, entonces mira lo que hace, aquí hay una

01:00:35.200 --> 01:00:48.520
función que se llama fers, que saca de la primera registro del grupo saca el primero,

01:00:50.600 --> 01:00:54.380
prácticamente parecido a lo que estoy buscando, verdad, quiero sacar el primero

01:00:54.380 --> 01:00:59.940
porque lo ordené, pero hay un pequeño problema aquí, que este elemento en este

01:00:59.940 --> 01:01:05.760
punto al decir primero no está ordenado, al no está ordenado esa solución no me funciona,

01:01:07.940 --> 01:01:18.360
entonces hay otros que hacen lo siguiente, viene aquí y saca el max, si sacas el max de ahí,

01:01:18.700 --> 01:01:23.720
hay un pequeño problema que no ha sumado todavía, entonces como no ha sumado está

01:01:23.720 --> 01:01:30.940
sacando el máximo de todos, porque de entrada ya te cambió el agrupamiento, entonces ¿qué voy

01:01:30.940 --> 01:01:35.060
a hacer? vamos a hacer este problema de dos formas, vamos a dejarlo como estaba, aquí tengo

01:01:35.060 --> 01:01:43.520
una suma, una suma que tengo aquí, voy a quitar este señor de acá y voy a agregarle

01:01:43.520 --> 01:01:51.480
como estaba originalmente que era crossgear así, mira como hago ahora, en este punto

01:01:52.660 --> 01:01:59.920
ya el elemento sale ordenado, ahora el elemento ordenado voy a hacer lo siguiente, ahora sí

01:01:59.920 --> 01:02:11.820
voy a hacer lo siguiente, voy a agregar otro T-aggregator row, para verificar que todo está

01:02:11.820 --> 01:02:18.260
bien voy a agregar un texor row nuevamente, ese texor es para verificar el texor antes,

01:02:18.260 --> 01:02:24.480
sin el texor antes no me sale la solución al problema, el último texor es para verificar

01:02:24.480 --> 01:02:30.500
que todo esté bien y voy a agregar el texor row para verificar que todo esté bien aquí, texor row

01:02:33.900 --> 01:02:37.140
y voy a unir los componentes entonces, de este señor va aquí,

01:02:39.840 --> 01:02:40.860
de este señor va aquí

01:02:44.100 --> 01:02:46.200
y este señor va acá

01:02:49.460 --> 01:02:56.560
listo, ahora recuerda que la salida en el T-aggregator row me entra esto de acá,

01:02:56.780 --> 01:03:03.300
voy a colocarlo aquí nuevamente en un nuevo archivo, bueno guardar este señor,

01:03:04.960 --> 01:03:07.780
voy a verlo aquí, pues no pate este para que sean dos aquí,

01:03:10.540 --> 01:03:17.220
voy a agregar eso, significa que esto está ordenado ya, entonces voy a decir lo siguiente ahora,

01:03:18.420 --> 01:03:23.180
en el segundo T-aggregator row voy a decirle ahora que me cambio el ordenamiento, ordename

01:03:23.180 --> 01:03:30.280
nada más por, voy aquí a editar esquema, voy a sacar toda la entrada a la salida,

01:03:30.460 --> 01:03:34.900
o sea le doy aquí en el más de acaba en las flechas la segunda fechita para que

01:03:34.900 --> 01:03:43.820
mande toda la entrada hacia salida, toda la entrada a la salida y le doy aquí ok,

01:03:48.260 --> 01:03:55.640
y ahora voy a esto de acá, lo siguiente, entonces voy a agrupar por state name,

01:03:56.320 --> 01:04:00.260
por si son nada más y ahora sí voy a hacer lo siguiente,

01:04:03.400 --> 01:04:09.560
voy a mostrar, voy a agregar aquí las dos columnas restante que es total y cross-gear

01:04:09.560 --> 01:04:16.500
y le voy a decir hazme el favor y saca el primer elemento del grupo, first,

01:04:22.980 --> 01:04:29.680
dile que ignore los nulos por si acaso, por si las dudas, que no creo porque está sacando

01:04:29.680 --> 01:04:31.980
el máximo, creo que hay carecía de sentido, bueno pero puede dar nulo,

01:04:34.640 --> 01:04:41.880
ahora entiende cuál es la idea, el archivo me llega así ya ordenado ¿verdad? entonces con

01:04:41.880 --> 01:04:46.740
el primer elemento no hay problema ¿por qué? porque solamente hay uno solo, pues es el

01:04:46.740 --> 01:04:50.380
primero y el último, pero veamos cómo funcionaría con este grupo de acá,

01:04:52.440 --> 01:04:58.560
mira cómo hace, aquí agrupa por este y por este, significa que todos estos registros están,

01:04:59.120 --> 01:05:04.460
pero como viene ordenado yo voy a decirle oye de este grupo sácame el primero de total

01:05:04.460 --> 01:05:09.480
temporada y sácame el primero de cross-gear, ya está ordenado, sacaría este de aquí,

01:05:10.520 --> 01:05:15.320
de este pasaría lo mismo, entonces aquí está el grupo y le voy a decir perdón,

01:05:15.320 --> 01:05:20.700
está el grupo y le voy a decir oye de ese grupo sácame el primer elemento que sería este y

01:05:20.700 --> 01:05:25.200
sácame el primer elemento que sería este, pregunto para decirme está entendiendo la idea,

01:05:25.940 --> 01:05:36.620
si yo cambio este primero a max, a max será que me da, me daría con el más, será usted que

01:05:36.620 --> 01:05:45.300
cree, será que me da, no no daría, claro me daría este valor de aquí pero me devolvería

01:05:45.920 --> 01:05:52.040
2010, ahora el max, como el primero es el máximo, ahí podía haber colocado al máximo

01:05:52.520 --> 01:05:57.260
y me hubiera dado, pero bueno vamos a ver, vamos a colocar aquí first a ver si esto da,

01:05:59.420 --> 01:06:02.400
enter, vamos a ejecutar ahora,

01:06:13.480 --> 01:06:25.620
ah para el techo otro, sígame, así, sí, sí, segundo techo va a estar en mi morde,

01:06:25.620 --> 01:06:38.900
stay name, el segunda columna va a ser de bien copiar y pegar, SISO, alfanumérico y el total

01:06:41.760 --> 01:06:42.280
temporada,

01:06:44.340 --> 01:06:49.020
no daría lo mismo, vamos a ordenar mejor por año porque nada más va a haber un solo archivo,

01:06:51.020 --> 01:06:57.620
cross gear, vamos a hacer ascendente, no porque un solo registro, creo que este está de más,

01:06:58.120 --> 01:07:03.220
esta columna estaría de más porque hay un solo registro por este grupo, nada más

01:07:03.220 --> 01:07:09.820
stay name y SISO, alfanumérico, ejecutemos aquí para ver si tengo razón, porque nada

01:07:09.820 --> 01:07:11.120
más hay un registro por grupo,

01:07:20.980 --> 01:07:29.880
vamos a ver que sale, vamos a ver entonces, voy a tomar este señor que es el que estaba

01:07:29.880 --> 01:07:42.720
haciendo las pruebas, control C, voy a pegarlo, en este creo que fue que hice la prueba, vamos a ver,

01:07:44.560 --> 01:07:53.100
ahí está, 2010 corresponde a este de aquí, 2000 corresponde a este que saqué acá, 2010 corresponde

01:07:53.100 --> 01:08:01.460
con el valor y el año entero 2003 y ahí está, el problema es que esa consulta tiene un pequeñito

01:08:01.460 --> 01:08:10.960
problema, así como está, pero si entiende la idea, ese first no está, ese first lo podías

01:08:10.960 --> 01:08:19.340
hacer en versión MySQL antes de la 8.0, después de la 8.0 de MySQL, MySQL decidió ajustarse

01:08:19.340 --> 01:08:25.560
netamente al estándar de SQL y en estándar de SQL no permite mostrar ese primero,

01:08:28.060 --> 01:08:33.200
aquí sería interesante hacer por ejemplo los cinco primeros o los dos primeros que es

01:08:33.500 --> 01:08:41.140
ahora lo hacemos para ver, miren cuál es el problema de la consulta, suponte el caso

01:08:43.260 --> 01:08:50.980
que existen dos registros, así este registro que está aquí y este sea 2010,

01:08:53.840 --> 01:09:00.580
aquí debería de volver dos, porque el máximo lo tiene dos, dos no ha estado,

01:09:00.580 --> 01:09:08.820
pero así como está la consulta devuelve el primero, entonces la consulta sería incompleta ahí,

01:09:11.080 --> 01:09:17.460
no me estaría dando resultado deseado, en caso de que existan dos que cumplan la condición como

01:09:17.460 --> 01:09:22.720
es el que estoy mostrando aquí, aquí qué pasaría, puede que este orden me lo da de esta

01:09:22.720 --> 01:09:27.540
manera, pero él va a sacar el primero y en realidad debería devolverme los dos,

01:09:29.800 --> 01:09:36.660
para esto vamos entonces a agregar otro componente entonces, vamos a hacer lo siguiente,

01:09:41.220 --> 01:09:47.500
vamos a tomar este señor clic derecho, vamos a duplicarlo, hacerlo de otra forma

01:09:47.500 --> 01:09:53.500
diferente y lo vamos a decir, le quito el copy y le agrego segunda forma,

01:10:00.600 --> 01:10:09.000
segunda forma, accedemos entonces a la segunda forma, voy a quitar este señor

01:10:09.000 --> 01:10:19.700
y acceder aquí a la segunda forma y listo, vamos a hacer lo siguiente, entonces borre desde

01:10:24.440 --> 01:10:31.700
claro que el no es necesario para que funcione esta segunda forma, pero es más eficiente si

01:10:31.700 --> 01:10:36.620
no está ordenado, segunda forma la agregué para solucionar el problema cuando son varios y

01:10:36.620 --> 01:10:42.480
segundo para agregar el componente que no lo habíamos visto, entonces vamos por aquí

01:10:42.480 --> 01:10:52.560
y ahora lo que vamos a hacer es lo siguiente, vamos aquí a un T, vamos a hacer aquí un T HDF

01:10:52.560 --> 01:11:04.080
output, une el T short con el T HDF output aquí en este punto y este señor lo que va a hacer

01:11:04.080 --> 01:11:10.720
es lo siguiente, entonces vamos a mandarlo, aquí lo configuramos, usar conexión existente,

01:11:10.720 --> 01:11:14.880
vea que tiene todo el sentido el THF connection porque nada más se conecta una sola vez

01:11:16.380 --> 01:11:22.880
y para mayor facilidad voy a hacer lo siguiente, voy aquí a

01:11:25.560 --> 01:11:28.560
especificar una ruta aquí, voy a escoger el archivo producción,

01:11:28.560 --> 01:11:41.440
voy a llamar a este archivo producción underscore estado, underscore anualidad y

01:11:41.440 --> 01:11:52.240
le voy a colocar el prefijo, el sufijo T de temporal, temporal. Le agregué el nombre,

01:11:52.360 --> 01:11:55.520
cuando tomé uno que ya sabía que era producción y le agregué estado anualidad

01:11:55.520 --> 01:12:02.480
cuando le corté para decir que es un temporal. Ahora tome este mismo suyop,

01:12:04.980 --> 01:12:15.360
tome este mismo suyop, control C, control V y lo coloca acá abajito.

01:12:21.820 --> 01:12:26.920
Dítele el T short row que ya no es necesario, aclaro que el T short de

01:12:26.920 --> 01:12:32.800
arriba es para, es más eficiente, ya te explico por qué y conecta el T agregate con

01:12:36.860 --> 01:12:38.120
el THDFs output.

01:12:40.740 --> 01:12:50.540
Y elimina entonces, vete al T agregate row del segundo componente y dile lo siguiente ahora,

01:12:50.920 --> 01:12:58.960
quítale para que no agrupe por crossgear, elimina crossgear de la salida por favor,

01:13:01.000 --> 01:13:05.260
porque si no te lo va a mandar para aquel lado, nada más va a mandar tres

01:13:05.260 --> 01:13:13.480
componentes y cámbiale este nombre de total temporada a máximo under score total temporada.

01:13:15.580 --> 01:13:20.940
Es decir, cambie el nombre de total temporada a máximo total temporada.

01:13:26.760 --> 01:13:30.520
Dese cuenta que al final en esta parte de vida estamos terminando EGTL,

01:13:30.560 --> 01:13:33.900
porque ya la herramienta automáticamente genera los scripts para ejecutarlo con

01:13:33.900 --> 01:13:39.220
reduce, estamos terminando en herramientas tipo EGTL prácticamente. Vamos a darle aquí OK

01:13:40.840 --> 01:13:46.720
y cambiamos el nombre, dale yes aquí, listo y el nombre de la columna ya lo cambió y mire

01:13:46.720 --> 01:13:58.840
lo que voy a hacer aquí, voy a sacar el máximo de, un momento que aquí,

01:14:01.000 --> 01:14:08.380
no perdón, perdón, aquí me caché, qué pena me caché aquí, me faltó un T agregadito

01:14:08.380 --> 01:14:16.080
row aquí, no me daría, espera un momento, parece que va a salir de esta forma, no me daría,

01:14:17.880 --> 01:14:31.720
espera un momento a ver, ah ya, perdón, sí sí, por favor haga lo siguiente, qué pena,

01:14:31.940 --> 01:14:39.420
el error fue en sí, está bien, ya me ubiqué, ya me ubiqué, ya me ubiqué, listo. Dese cuenta

01:14:39.420 --> 01:14:47.560
que en este archivo de salida me va a quedar toda la anualidad, es decir, me va a quedar este

01:14:47.560 --> 01:14:56.440
archivo de esta manera, da con la subatoria, entonces, qué voy a hacer aquí, lo que voy

01:14:56.440 --> 01:15:02.360
a hacer ahora es que esta entrada de aquí va a ser la del archivo este de acá, entonces

01:15:02.360 --> 01:15:09.240
voy a tomar este archivo de acá y lo voy a colocar aquí como entrada,

01:15:17.660 --> 01:15:19.680
voy a tomar el esquema de salida de este lado,

01:15:22.900 --> 01:15:30.300
editar esquema y lo voy a exportar, voy a exportarlo entonces, lo exporto y le digo

01:15:30.300 --> 01:15:47.400
esquema producción por estado, poranualidad.xml, guardar, ok, y ahora cambio el esquema de este

01:15:47.400 --> 01:15:55.080
señor, borro todo eso que está ahí, aunque yo creo que nada más si doy click,

01:15:55.080 --> 01:16:00.000
salía lo que estaba allá, aparence a mí y me quedaría así.

01:16:22.130 --> 01:16:28.690
En el output, sí señor, gracias, no lo ha cambiado, así, punto y coma, sí señor,

01:16:29.930 --> 01:16:33.810
punto y coma, perdón, cambiar punto y coma por coma e incluir el hider,

01:16:36.550 --> 01:16:39.690
y el override, gracias, este sería también para este,

01:16:40.270 --> 01:16:42.930
el otro, pero aquí todavía no lo configuro, todavía lo configuro para ver.

01:16:47.290 --> 01:16:52.210
Ya voy a explicar cuál es la idea que tengo, gráficamente le explico entonces.

01:16:58.690 --> 01:17:05.370
Si ya agregó el esquema, tuvo que haber cambiado el te agregaste robo, el segundo,

01:17:05.530 --> 01:17:12.410
el de abajo, doble click, y a este señor vamos a agruparlo por este máximo, listo,

01:17:12.530 --> 01:17:22.690
vamos aquí a editar esquema por favor, y pasa total temporada para este lado,

01:17:23.590 --> 01:17:27.850
borra el máximo que teníamos y pasa total temporada, le das ok,

01:17:31.510 --> 01:17:41.410
y vayamos aquí al output, a la salida, a este lo voy a llamar producción estado anualidad máxima

01:17:41.410 --> 01:17:48.530
on the record temporal, y aquí le cambio, así gracias, el cambio aquí del separador a coma,

01:17:49.150 --> 01:17:52.970
y le incluyo el hider, y le doy sobre escribir por si las dudas.

01:17:59.950 --> 01:18:03.310
Mientras va, te voy a ejemplificar que fue lo que hice aquí, lo que estoy haciendo,

01:18:42.870 --> 01:18:46.650
bueno creo que ya la mayoría configuró, preste atención lo que,

01:18:46.650 --> 01:18:55.430
qué es lo que, cuál es la idea, la idea del primer archivo es que me quede de esta forma

01:18:55.430 --> 01:19:01.250
organizado, me quedo organizado entonces por estado, temporada, año y cuál es el máximo

01:19:01.250 --> 01:19:07.430
valor, perfecto, no hay problema, ese fue lo que hicimos inicialmente, ahora este archivo

01:19:07.430 --> 01:19:14.210
que está haciendo lo siguiente, está diciendo agrúpame por estado y agrúpame por temporada

01:19:14.210 --> 01:19:19.290
y sácame el mayor, aquí hay uno solo, no hay problema, saco este señor de aquí, listo,

01:19:19.370 --> 01:19:24.590
me queda este registro de este lado, vamos con el siguiente, estoy diciendo agrúpame por este

01:19:24.590 --> 01:19:31.470
y por este, todos los grupos serían hasta aquí, este rabi no entra, voy a agrupar por este y

01:19:31.470 --> 01:19:37.690
por este, entonces ya de este grupo, sácame el máximo valor que tienes aquí, cuál es el

01:19:37.690 --> 01:19:43.330
máximo valor aquí, qué pena, aquí no guarda años, cuál es el máximo valor aquí, de

01:19:43.330 --> 01:19:50.010
este cuál sería, este de aquí verdad, o sea que guardaría este registro acá,

01:19:53.610 --> 01:19:58.390
de este que está aquí sácame el máximo, hay un solo elemento, me guardaría en este

01:19:58.390 --> 01:20:05.970
archivo, esta parte y de este que está aquí, qué haría, sácame el máximo de aquí,

01:20:05.970 --> 01:20:11.450
el grupo de estos dos, sácame el máximo y el máximo cuál es, este de aquí,

01:20:16.790 --> 01:20:22.210
ahora aquí tengo los máximos y acá tengo todos los elementos, ahora voy a hacer entonces un

01:20:23.010 --> 01:20:29.530
join, voy a agrupar este con este prácticamente para sacar el año, de esta forma es más lenta

01:20:30.590 --> 01:20:37.270
pero podía hacer una consulta en que si hay dos máximos, o sea hay un solo máximo y dos registros

01:20:37.270 --> 01:20:43.450
con ese máximo te devuelve los dos registros, vamos entonces, cómo sería ahora, vamos a lo

01:20:43.450 --> 01:20:49.170
siguiente ahora, ya tengo estos archivos que quedaron en temporal, quedaron allá y ahora

01:20:49.170 --> 01:21:01.570
vamos a hacer lo siguiente, voy a agregar un THDFS input, a THDFS input, este de aquí,

01:21:06.310 --> 01:21:08.330
agrego, bueno son dos que tengo que agregar,

01:21:11.450 --> 01:21:13.150
pego aquí,

01:21:21.130 --> 01:21:24.370
en el primer input voy a tomar el primer temporal,

01:21:29.050 --> 01:21:33.790
lo pego acá, bueno aquí le digo usar conexión existente, component list,

01:21:33.850 --> 01:21:42.830
hdfs, el primero, le digo que es coma, coma y que tiene un header,

01:21:45.150 --> 01:21:52.730
y el segundo input iría con el segundo, el archivo del segundo output, este de acá,

01:22:00.630 --> 01:22:01.870
y sería por coma

01:22:06.750 --> 01:22:09.790
y tendría un header aquí de uno,

01:22:13.450 --> 01:22:20.830
ahí sale, ah listo, me aparece que aquí component list, conexión list, ahora sí,

01:22:31.790 --> 01:22:37.510
voy a copiar el esquema de acá, este esquema de salida, no sé si lo tengo ya,

01:22:37.510 --> 01:22:40.910
ya lo había copiado, no recuerdo si este esquema lo había exportado,

01:22:42.830 --> 01:22:49.090
creo que sí, bueno por si las dudas voy a exportar este esquema, no recuerdo si lo

01:22:49.090 --> 01:22:56.250
había exportado, voy a darle aquí un export y le voy a dar, si creo que se llama esquema estado

01:22:56.250 --> 01:23:09.510
por anualidad, .xml, guardar, sí, y lo exporto aquí en el primero, importo perdón, en el input

01:23:17.230 --> 01:23:21.350
primero, perfecto, y el otro sería,

01:23:24.070 --> 01:23:27.130
y no sé si cambié el nombre de la variable,

01:23:30.110 --> 01:23:36.490
aquí me hizo esto mal porque el máximo de aquí debió ser total temporada,

01:23:38.250 --> 01:23:44.930
total temporada, hay problemas de variable,

01:23:48.470 --> 01:23:54.190
si te da tiempo por favor, cámbiate el nombre del tegregator row del segundo,

01:23:54.750 --> 01:23:58.410
cambia el nombre de la variable a máxima para que sea más sencillo de entender,

01:23:59.310 --> 01:24:03.570
en el tegregator row, en editar el esquema, cambia la variable a máximo,

01:24:05.470 --> 01:24:11.310
con el score total temporada, para que tenga más sentido digamos los nombres,

01:24:11.590 --> 01:24:19.370
ahí te dejo el tegregator row y espero un momento que me adelanté mucho, coloca un tejoin,

01:24:22.790 --> 01:24:28.590
tejoin, coloquemos un telok row para no subir y verificar que todo debía dar el mismo resultado,

01:24:31.310 --> 01:24:38.170
tejoin, son tejoin, tejoin y un telok row, y une ahora lo siguiente,

01:24:38.790 --> 01:24:42.510
hay algunos que todavía están, espero un momento para ver entonces,

01:24:43.470 --> 01:24:46.990
no espero alguno que todavía le hace falta,

01:24:50.830 --> 01:24:55.590
Martina voy a tomar tu pantalla para ver si hay alguno que le hace falta alguna configuración,

01:25:00.210 --> 01:25:05.450
perfecto listo, muéstrame tu tegregator row Martina, si ahí está mal, tegregator row el 2,

01:25:07.050 --> 01:25:15.150
el segundo, perfecto listo, ahora hiciste los inputs, los HDFS inputs, los que están abajo,

01:25:15.250 --> 01:25:23.790
ah están abajo, los de abajo, los que vamos a hacer join ahora, muéstrame el 3, muéstrame

01:25:23.790 --> 01:25:32.070
el esquema, debía haber cuatro columnas en ese esquema, falta, listo, entonces listo,

01:25:32.070 --> 01:25:42.410
a abrir, perfecto, ok, vete al siguiendo output ese que está ahí, dale editar el esquema,

01:25:42.570 --> 01:25:47.310
coge el mismo esquema que es prácticamente el mismo, tómalo ahí por favor, listo,

01:25:47.530 --> 01:25:52.030
y borra la última columna que es crossgear, porque ese esquema nada más tiene tres,

01:25:54.130 --> 01:25:59.150
doble clic, borra la última crossgear, la última columna la borras y cambia el nombre

01:25:59.150 --> 01:26:04.610
a la tercera columna, llámala Máximo también para saber cuando hagamos el join, Máximo total

01:26:06.710 --> 01:26:14.630
columna, ahí tiene el total de aviso, ok, perfecto, por ahí vamos, agrega ahora un T-Join y un T-Lockrow,

01:26:17.750 --> 01:26:23.150
listo, yo creo que el nombre yo no lo cambié acá, Máximo, ah, ahí se me olvidó agregar,

01:26:23.150 --> 01:26:30.630
que fue, se me olvidó agregar esta parte, abrí el, quito crossgear y cambio este señor a Máximo,

01:26:33.790 --> 01:26:34.590
ponder el export total,

01:26:39.770 --> 01:26:45.030
sí, vamos a ver esto, vamos que lo hice muy rápido en realidad, bueno, vuestra vez por

01:26:45.030 --> 01:26:50.630
favor, tu te agregue este row, el segundo, si está mal el segundo, perfecto, ahí hay un

01:26:50.630 --> 01:26:57.470
problema, el input de la columna en las operaciones, ahí tienes producción, vete a la

01:26:57.470 --> 01:27:05.530
configuración de la parte de abajo, ve dónde dice, ahí tiene que ser es, abre y ahí tiene

01:27:05.530 --> 01:27:15.610
que ser es, ah no, tienes un problema ahí, muéstrame tu THDFS input por favor, el segundo,

01:27:15.610 --> 01:27:21.750
muéstrame tu esquema, editar esquema, y ahí está el problema, ese no es, vamos a hacer lo

01:27:21.750 --> 01:27:27.870
siguiente, dale cancelar ahí, vete a tu THDFS output el primero, que es el archivo que va a tomar

01:27:27.870 --> 01:27:36.270
como base, dale doble clic ahí, dale editar esquema, editar esquema y haz lo siguiente,

01:27:36.590 --> 01:27:42.210
exporta este contexto por favor, esa que está ahí, esa que está ahí, exportar y escoge el

01:27:42.290 --> 01:27:47.330
último nombre que tienes ahí, que es ese que está ahí, por si acaso, dale guardar,

01:27:48.110 --> 01:27:55.410
por si acaso no es igual, dale guardar por favor, GGC, ok, ok, dale ok por favor,

01:27:55.770 --> 01:28:02.150
ahora en tu HDFS input 2, dale doble clic y vamos al esquema del 2, el HDFS input,

01:28:02.410 --> 01:28:08.130
editar esquema y escoge ahí el botón para replay, el otro, el de al lado,

01:28:08.130 --> 01:28:13.610
el de replay, ese que está ahí y busca el esquema que hiciste ahora que es el último,

01:28:15.250 --> 01:28:20.810
a abrir, ok, yes, vete ahora a tu T-aggregator row 2

01:28:23.710 --> 01:28:30.210
y ahora donde dice máximo temporada input column por favor, ve y cambia, debería ser total,

01:28:35.110 --> 01:28:41.570
temporada, perfecto, vete a tu input 3, listo, vete el esquema por favor, dale ahí,

01:28:41.590 --> 01:28:48.110
reemplazar y ese esquema va a ser el de anualidad, ese esquema producción, listo,

01:28:50.110 --> 01:29:00.050
ok, vete ahora a tu input 4, input 4 y la entrada tiene que ser la del input,

01:29:00.190 --> 01:29:09.310
dale ahí, usar, listo, ahí, listo, vete ahora a tu THDFS output 2, no, el output 2,

01:29:10.110 --> 01:29:14.910
ese que está ahí y copia, el nombre del archivo de salida pero ahí te faltó el nombre,

01:29:14.910 --> 01:29:25.510
cambia el nombre, anualidad under score máximo ten, anualidad, under score máximo under score ten,

01:29:27.990 --> 01:29:34.050
listo, copia ese nombre y lo pegas en el output 4, vete al esquema y darle el mismo esquema

01:29:34.050 --> 01:29:38.370
del que tomamos ahora que era el último que está ahí y quítale el crossgear que no tiene

01:29:40.050 --> 01:29:49.010
crossgear, eliminar y cambia el nombre real a máximo under score total, under score total, ok,

01:29:52.630 --> 01:29:58.770
enter ahí, ok, máximo total, under score, bueno eso está bien, ok, no hay problema con eso,

01:29:58.910 --> 01:30:05.330
el nombre es lo de menos, siempre cuando tenga el orden, listo, ahora sí, ojo con las entradas

01:30:05.430 --> 01:30:13.470
por favor los inputs, vete los outputs por favor, el 1 y revisemos la entrada, el output 1 muestra

01:30:13.470 --> 01:30:20.510
el double click, con coma incluye header, el output 2 por favor, para ver cómo tienes la salida,

01:30:22.090 --> 01:30:27.790
cambia la opción a over white, over white, perdón, opción de crear en over white,

01:30:28.250 --> 01:30:33.530
dale separador de campo coma y dale incluir header, vete al input 3 para ver,

01:30:33.530 --> 01:30:38.810
ahí es coma y perfecto y el input 4 muestra para confirmar, el input 4,

01:30:41.310 --> 01:30:48.430
y listo, bueno bien, sí, porque nada más salen tres del target, sí señor, así es,

01:30:49.130 --> 01:30:57.750
bueno, vamos entonces y hacemos el T-Join, aplica lo mismo que el T-MAT, la primera tabla

01:30:57.750 --> 01:31:03.290
subordina a las demás, entonces voy a conectar la primera tabla que está aquí que es el 3 y

01:31:03.290 --> 01:31:15.790
conecto acá y conecto el 4 al join como tal, ahí te aparece lo mismo que te aparecía en el T-MAT,

01:31:15.930 --> 01:31:24.930
tengo main y tengo lookup, conecta el join al telorow y configuremos el join,

01:31:26.750 --> 01:31:33.770
doble clic, ahí estoy, mira que te aparece una opción que dice incluir lookup columnas en output,

01:31:34.450 --> 01:31:38.790
en pocas palabras está diciendo, oye, las columnas que están en output 4, el lookup que

01:31:38.790 --> 01:31:45.330
es este de aquí, quieren que se vean en la salida, aquí carece el sentido porque las

01:31:45.330 --> 01:31:48.770
columnas que están aquí son las mismas de allá, es decir, aquí hay 3 y acá hay más,

01:31:48.990 --> 01:31:52.510
en el principal, o sea que eso carece sentido colocarlo ahí en este caso,

01:31:53.170 --> 01:32:00.010
vamos en el key definition y hagamos el join, el join sería fácil, agrega una nueva columna,

01:32:00.310 --> 01:32:11.310
el stand name del 1 va con el stand name del input 4, cambio aquí el season del input 3

01:32:12.340 --> 01:32:24.380
iría con el season del input 4 y ahora el total temporada iría con el máximo de temporada

01:32:27.200 --> 01:32:33.740
del input 4, si lo deja hasta ahí lo que se haría sería un left join del input 3 al input

01:32:33.740 --> 01:32:40.100
4, pero lo que me interesa es un inner join, es el chuleo inner join, todavía no lo ejecuté,

01:32:41.460 --> 01:32:45.740
carece de sentido que deje los temporales allá, coloque un tepos job

01:32:50.780 --> 01:32:59.860
y mande a eliminar los temporales con el thdfs, delete,

01:33:03.800 --> 01:33:10.820
usar conexión existente y vas a copiar aquí la ruta esta del temporal 1,

01:33:18.480 --> 01:33:31.060
si quieres copias de aquí, duplicar y lo haces entonces con, aquí se me olvidó la conexión,

01:33:34.340 --> 01:33:45.700
voy a copiar la salida el temporal 2 que se llama máxima y uno al tepos job los 2 delete,

01:33:52.060 --> 01:33:59.100
iterate aquí listo, aquí sería click derecho, disparador, on component ok,

01:34:02.180 --> 01:34:07.500
y aquí define el orden de ejecución por la buena práctica que deberíamos tener,

01:34:08.380 --> 01:34:11.680
a la pregunta que me hicieron de cuál inicia primero debíamos acostumbrarnos entonces a

01:34:11.680 --> 01:34:21.260
definir este orden aquí, con com on sub job ok, quedaría así,

01:34:24.240 --> 01:34:29.400
bueno voy a disminuir esto aquí, voy a subir esto acá,

01:34:36.240 --> 01:34:36.600
si dígame,

01:34:48.650 --> 01:34:52.070
pero vamos a lo siguiente, en el primer momento, la pregunta creo que me hizo es

01:34:52.070 --> 01:34:57.130
por qué uno este con este aquí, fue así verdad, esa fue la pregunta más que todo,

01:34:57.190 --> 01:35:01.550
bueno bien, lo que pasa es que este segundo recordará que va a tomar el archivo que saque

01:35:01.550 --> 01:35:08.350
de aquí, listo, entonces aquí se está ejecutado secuencia, significa terminado este,

01:35:08.610 --> 01:35:16.250
ejecuto este, o sea que estos dos no lo podría ejecutar en paralelo porque este de aquí

01:35:16.250 --> 01:35:23.630
depende de este de acá, me tocaría ejecutarlo secuencial y este sub job que está aquí depende

01:35:23.630 --> 01:35:30.190
de los dos sub jobs de arriba, entonces me tocaría ejecutarlo secuencial, o sea si quisiera

01:35:30.190 --> 01:35:34.670
colocar este multi trea, bueno pero tampoco funcionaría este extra acá, multi trea que

01:35:35.350 --> 01:35:41.330
secuencio, quitándole evidentemente las líneas, podía usarme un error de ejecución,

01:35:41.450 --> 01:35:47.970
porque terminaría uno sin haber terminado la dependencia del otro, no sé si esa fue su

01:35:47.970 --> 01:36:02.790
pregunta, ya entiendo, lo que pasa es, ya entendí su parte gráfica, disparador aquí,

01:36:03.190 --> 01:36:09.110
si se da cuenta lo que pasa es que para unir su job por orden tengo que coger el primer

01:36:09.110 --> 01:36:16.110
elemento, es una cuestión gráfica, es decir, este último no lo puedo conectar con un sub job

01:36:16.110 --> 01:36:24.630
porque la herramienta le pide que coloque el primer componente del sub job para conectarlo

01:36:24.630 --> 01:36:29.430
al primer sub job de acá, en pocas palabras, aquí no estoy diciendo, la herramienta aquí no

01:36:29.430 --> 01:36:33.690
está haciendo lo siguiente, no está ejecutando este primero y después ejecuta esto, no, aquí

01:36:33.690 --> 01:36:39.270
ejecuta este sub job completo y después ejecuta esto, lo que pasa es que gráficamente y la

01:36:39.270 --> 01:36:45.090
herramienta pide que debe conectarlo con el primer componente del sub job, entonces al final

01:36:45.090 --> 01:36:51.670
terminado esto no significa esto que él vaya conectado aquí sin haber ejecutado esto,

01:36:51.910 --> 01:36:56.730
conectar esto acá, no sé si me entienden la idea, ahora, pero fíjate algo, eso que tú me

01:36:56.730 --> 01:37:03.230
estabas preguntando, si yo llego a conectar este señor, no con un sub job ok, sino un componente

01:37:03.230 --> 01:37:07.970
ok, este señor qué va a pasar, me va a ejecutar este y todavía no ha terminado esta

01:37:07.970 --> 01:37:13.730
parte de aquí, porque ahora sí va a pasar en que dado que este componente se ejecutó bien,

01:37:13.730 --> 01:37:18.830
va a ejecutar esta línea de aquí sin haber ejecutado esto de acá, ahí sí va a tener un

01:37:18.830 --> 01:37:25.530
problema, entonces aquí si necesariamente es que gráficamente tiene que ser acá un

01:37:25.530 --> 01:37:32.350
on-con, un sub job ok, ahora, lo que tú me decías también es válido, ya te entendí la idea,

01:37:33.390 --> 01:37:38.630
pero sí te entendí la idea, sí te entendí la idea, yo podía haber hecho esto de esta

01:37:38.630 --> 01:37:48.930
manera, colocar un on-component ok aquí y ahora terminado esto, se ejecuta este señor y pude

01:37:48.930 --> 01:37:56.690
haber hecho esto de esta manera y daría exactamente lo mismo con la pequeña diferencia que al

01:37:56.690 --> 01:38:02.070
colocar on-component ok, estoy haciendo un solo sub job, esto que estoy haciendo sería

01:38:02.070 --> 01:38:07.990
lo mismo que haber hecho un sub job ok, vamos a probarlo enseguida para ver, debería funcionar,

01:38:10.170 --> 01:38:15.410
sí exactamente, porque terminado este me voy con este y terminado este me voy con este,

01:38:15.770 --> 01:38:21.130
lo mismo que si tuviese este unido el on-sub job ok, y este sabemos que terminado el

01:38:21.130 --> 01:38:25.970
sub job de ejecutar pues se ejecuta, entonces no hay problema, vamos a intentar a ver si no

01:38:25.970 --> 01:38:33.670
tenemos ningún error a ver, este sub job nos costó el tiempo bastante, vamos a ver,

01:38:33.850 --> 01:38:37.130
segunda forma voy a verificar si ejecutar aquí,

01:38:43.770 --> 01:39:03.830
si exactamente tu idea es válida perfectamente, no lo había cantado, también lo pude haber

01:39:07.770 --> 01:39:14.550
un momento aquí, editar esquema, qué pena no mande esto para allá, mande esto para acá,

01:39:18.710 --> 01:39:24.810
ok no me haya mandado salida aquí en el teyoy, tiene que estar aquí en editar esquema y mandar

01:39:24.810 --> 01:39:33.790
todo y ahora sí volvemos a ejecutar y debería exactamente ejecutar así como hubiese colocado un

01:39:33.790 --> 01:39:39.550
job ok también me hubiese funcionado también, gracias por la observación, también es válida la forma,

01:39:43.870 --> 01:39:51.230
ahí lo que cambia es la idea, tendría un solo sub job, aquí me salió desorganizado,

01:39:52.770 --> 01:39:58.970
pero bueno aquí tenemos, vamos a verificar si estos valores son los reales, debió dar

01:39:58.970 --> 01:40:07.970
exactamente lo mismo, dónde tenía ese archivo, bueno me dio esto, vamos a ver,

01:40:10.670 --> 01:40:18.770
el 2010 de autun es uno solo no hay problema, el 2000 fue para carif, está bien saqué el año 2000

01:40:21.030 --> 01:40:27.570
y el de rabi es uno solo, o sea que sí, si quiere dar usted shorter ahí por favor,

01:40:27.570 --> 01:40:34.050
pero es exactamente lo mismo, Martina tienes un error voy a verificar un momento tu pantalla,

01:40:35.270 --> 01:40:44.030
parece ser que, vamos a ver un momento, muéstrame por favor tu esquema y editar esquema un

01:40:44.030 --> 01:40:49.310
momento, editar esquema y ese esquema está mal porque ese es el de producción, dale

01:40:49.310 --> 01:40:56.670
replace un momento y ese esquema es el primero que sacamos que es, ah no eso lo hicimos

01:40:56.670 --> 01:41:00.510
de otra manera, dale cancelar ahí por favor, salte, dale cancelar ahí también, dale cancelar,

01:41:02.090 --> 01:41:08.890
vete a la parte de configuración del input, vete donde dice esquema, esquema y ahí está

01:41:08.890 --> 01:41:14.870
un combo vos, expande el combo vos por favor, no el combo vos del lado, el del ladito,

01:41:15.830 --> 01:41:26.650
donde dice build in, vete al repositorio, dale yes, vas a buscar el, espera que cargue un

01:41:26.650 --> 01:41:35.490
me viera mejor, entra a file delimited, entra a producción, entra metadata, escoge metadata,

01:41:35.870 --> 01:41:45.530
dale click en metadata, yes, revisemos, editar esquema por si acaso ve si sobre escribió o qué,

01:41:46.450 --> 01:41:51.590
es de al ladito, es de al ladito, ese de ahí, sí, te guste para ver,

01:41:54.510 --> 01:42:00.610
ok, te agregué este row uno, seguramente pasó algo aquí, vayas en el input column,

01:42:01.690 --> 01:42:08.490
en el input column de operaciones, vayas a operaciones y donde tiene la función suma,

01:42:08.590 --> 01:42:14.870
el input column tiene que ser total porque como cambió el esquema de entrada ya le cambia,

01:42:14.870 --> 01:42:24.430
es producción, perdón, producción, ejecute para ver, total temporada, no creo que no lo

01:42:25.330 --> 01:42:31.190
cambió, un momento, entra al te agregué este row, vayase al te agregué este row 2,

01:42:32.410 --> 01:42:39.970
vayase al HDFS input un momento, al 2 ese que está ahí, dele editar esquema un momento,

01:42:39.970 --> 01:42:48.790
editar esquema, ok, esta temporada está bien, está bien, ok, muestre nuevamente el

01:42:48.790 --> 01:42:54.250
run para ver dónde lo está marcando, el run, por favor, run ese que está ahí, dice,

01:42:57.030 --> 01:43:04.350
incompatible input con output, vamos a confirmar, vayase al te HDFS output un momento,

01:43:04.350 --> 01:43:20.410
el output 1, el esquema por favor, eso está bien, ok, vayase al input 1,

01:43:21.950 --> 01:43:34.330
revisamos para ver, ahí está bien, no le veo, dele editar esquema un momento ahí, editar

01:43:34.330 --> 01:43:42.170
tiene que estar ahí, cambio la flow por favor, pero claro, ese equivocó, fue la herramienta,

01:43:43.650 --> 01:43:48.850
porque la herramienta, no sé por qué, le clic ahí, le da flow y le da enter,

01:43:49.050 --> 01:43:53.550
ah perdón, dele cancelar, dele nuevamente editar, que cogimos la opción view nada más,

01:43:54.550 --> 01:44:04.310
chain, vamos ahí donde dice flow ok, yes, intenta ejecutar para ver, vayase al te join por

01:44:04.310 --> 01:44:14.070
favor, dele editar esquema al te join, editar esquema y falta algo, falta una definición ahí,

01:44:15.590 --> 01:44:20.810
vaya, agregue, dele cancelar ahí, cancel y agregue una nueva variable en el key de fiction,

01:44:21.090 --> 01:44:28.670
una nueva y listo y compare el total temporada con máximo temporada, dele click ahí,

01:44:28.890 --> 01:44:39.330
máximo temporada, entra ahí por si acaso, muéstrame el input 3 por favor, input 3 y muéstrame el input 4,

01:44:43.250 --> 01:44:49.170
muéstrame el output 2, para finalizar muéstrame el te join, en teoría,

01:44:49.310 --> 01:44:55.670
si, dele ejecutar nuevamente, en teoría no sé por qué, no le marco, bueno,

01:44:55.670 --> 01:45:00.110
aunque debió hacer, creo que va a hacerlo también,

01:45:03.590 --> 01:45:11.090
está marcando cero, significa que no hay, muéstrame ese, muéstrame ese, el input 2 por favor,

01:45:11.250 --> 01:45:24.130
el input 2 y muéstrame el esquema del input 2, eso está bien ok, muéstrame el target row,

01:45:24.130 --> 01:45:34.970
no, ahí no es suma, ahí es máximo, el max, enter y ejecute para ver,

01:45:35.310 --> 01:45:41.050
pero aún así, cuando no tenía esa variable, debió darle un registro, pero no sé por qué no le dio,

01:45:46.490 --> 01:45:51.770
dice solito como si estuviese, pobrecito, vamos a ver,

01:45:53.650 --> 01:45:58.110
no, hagamos algo, ahora lo reviso porque no sé por qué le está dando cero, es decir,

01:45:58.170 --> 01:46:03.830
ahí el inner join que tienes ahí, es decir, los registros de arriba no cuadran con los de

01:46:03.830 --> 01:46:09.530
abajo, no hay match, ahora revisamos para ver, ahora en el break yo me cuento su máquina y

01:46:09.730 --> 01:46:20.330
eso para ver qué pasó, es raro, bueno, listo, hagamos un pequeño break de 10 minuticos y

01:46:20.330 --> 01:46:28.110
volvemos en 10 entonces, listo, voy aquí a, volvemos en 10 entonces, volvemos a la única,

01:46:28.270 --> 01:46:37.450
bueno, 12 y 40 en cada sollo, ya venimos, bueno, continuamos, en cuanto a error Martina,

01:46:37.450 --> 01:46:47.090
por qué no te estaba dando resultado, no, quite el T-post job, póngalo entre el T-post job,

01:46:51.250 --> 01:46:57.930
si, ese T-post job es el que está, no, te da clic en el centro, clic derecho, desactivar post

01:46:57.930 --> 01:47:07.150
job, listo, que venga, le digo cuanto Z, perdón, cuanto Z, le da clic derecho, desactivar

01:47:07.150 --> 01:47:12.490
world to job, listo, ejecute para ver y vamos a los archivos que nos creó,

01:47:13.430 --> 01:47:20.750
a ver si ejecute para verla a ver, un momento por favor, perfecto, váyase ahora al browser,

01:47:23.330 --> 01:47:32.330
rf5, listo, ahora el que se llama, cuál sería, máximo 10 un momento y veamos el orden que está

01:47:32.330 --> 01:47:37.950
guardando ahí, dale descargar, ándale un momento a ver,

01:47:41.640 --> 01:47:55.880
ahí tiene, listo, el orden está así, está bien, ahora váyase a buscar el otro, el que no es el máximo,

01:47:56.180 --> 01:48:01.380
sino ese que está ahí, descarguenlo un momento a ver, es el primero, ese que está ahí,

01:48:13.840 --> 01:48:20.760
no veo el error todavía, váyase nuevamente al T-Join, al T-Join nuevamente para verificar

01:48:20.760 --> 01:48:28.200
la condición porque los archivos parecen estar bien, váyase al talent bit data un momento y

01:48:30.120 --> 01:48:42.640
le doble clic al T-Join, al T-Join nuevamente, al T-Join, row 7, stain name,

01:48:45.740 --> 01:48:53.960
qué cuestión tan rara, para revisar, déjeme ahora lo intento ver en más detalle a ver si,

01:48:54.260 --> 01:49:02.700
dale clic ahí nuevamente para ver, intento ver, listo, season, con season de acá,

01:49:05.940 --> 01:49:13.020
intento ejecutar para ver, activar current job, ahí está entrando bien, es decir está leyendo

01:49:13.020 --> 01:49:21.700
bien los registros pero el join lo está haciendo mal, lo que está dando 0, muestre el

01:49:21.700 --> 01:49:29.260
output del 2, el esquema, doble clic ahí un momento, voy a editar el esquema un momento,

01:49:31.980 --> 01:49:40.700
listo y el otro también, ya creo que sé cuál es el error, váyase al input 2,

01:49:41.740 --> 01:49:48.740
al editar el esquema, muéstame el esquema ese, ok listo ya, dale ok, váyase al

01:49:48.740 --> 01:49:56.860
aggregator row, voy a editar esquema, no ahí está bien, no está bien, está bien,

01:49:56.920 --> 01:50:00.940
decía que estaba mal, bueno sigamos y vemos para ver, a más tarde verifico para ver en

01:50:00.940 --> 01:50:06.380
detalle a ver qué pasa, bueno sigamos entonces, listo ahora revisamos bien,

01:50:08.220 --> 01:50:18.460
vamos a agregar aquí un componente en este mismo Jot, al final lo vamos a llamar T-STAT

01:50:18.460 --> 01:50:27.320
de Statistic Stack Catcher, ya vimos el T-Lock Catcher, este es T-Stack Catcher,

01:50:27.320 --> 01:50:32.700
este stack es de Statistic, enter, lo voy a colocar acá abajo,

01:50:36.740 --> 01:50:41.160
conecta este señor a un T-Map,

01:50:42.660 --> 01:50:47.880
agrega un T-Lock Row,

01:50:52.300 --> 01:50:58.140
esto lo que voy a hacer es verificar y me va a permitir analizar los tiempos de respuesta

01:50:58.140 --> 01:51:03.180
por componentes, digamos quieres verificar a ver cómo tú y yo y cuál es el tiempo de

01:51:03.180 --> 01:51:08.280
respuesta, de pronto en qué componentes hay cuello de botella, entonces este componente es

01:51:08.460 --> 01:51:13.260
muy bueno para esa parte, vamos a cruzar aquí a unir el T-Catcher con el T-Map,

01:51:15.500 --> 01:51:24.500
aquí con el T-Map y el T-Map lo unimos con el T-Lock Row, también pude haber hecho

01:51:24.500 --> 01:51:30.220
cambiarlo a un T-File delimited, pero en este caso lo voy a dejar en T-Lock Row,

01:51:31.000 --> 01:51:36.800
salida y lo voy a llamar salida estadísticas, estadísticas,

01:51:41.100 --> 01:51:46.180
va al T-Map y vamos a definir las siguientes columnas, estas son las columnas que tiene

01:51:46.180 --> 01:51:55.280
para analizar los tiempos de respuesta, agrega el PID que sería el identificador del proceso,

01:51:56.240 --> 01:52:02.600
entonces lo voy a mandar para este lado, agrega el moment, sería el tiempo en que inicia,

01:52:02.600 --> 01:52:17.160
agrega el mensaje, el mesas tie y el duración, ya digo cuáles son, PID, moment, mesas,

01:52:18.280 --> 01:52:24.120
mesas tie y duration, que sería esos cinco, bueno pude haber agregado más pero simplemente

01:52:24.120 --> 01:52:30.480
para ver, nada más esos cinco elementos, cinco componentes lo vamos a agregar, el PID,

01:52:31.440 --> 01:52:42.000
moment, mesas, mesas tie y duration, perfecto, le damos aquí ok,

01:52:45.940 --> 01:52:53.080
y ahora usted decide qué componentes desea analizar las estadísticas, entonces para cada

01:52:53.080 --> 01:52:58.440
componente en talent, por ejemplo voy a en el input uno, le voy a dar doble clic

01:53:00.760 --> 01:53:07.000
y todos los componentes de talent van a tener, normalmente están en advanced setting,

01:53:08.840 --> 01:53:16.680
una opción que dice te está cache estatística, si usted chulea ese señor significa que él va

01:53:16.680 --> 01:53:22.300
a analizar las estadísticas de ese componente, es cual los componentes que usted quiera,

01:53:22.300 --> 01:53:28.320
yo voy a coger este te agrega el primero, advanced setting y chuleo también,

01:53:29.080 --> 01:53:39.440
te está cache estatística, voy a coger el input dos y le doy te está cache, aquí todos los

01:53:39.440 --> 01:53:44.840
componentes van a tener esa característica en talent, entonces tú le de chuleas y escoge

01:53:44.840 --> 01:53:49.080
los componentes a los cuales tú deseas analizarle las estadísticas, perfecto,

01:53:49.080 --> 01:53:56.300
esto ya hiciste esta configuración ya, listo bien, ahora en el job tú vas a escoger qué

01:53:56.300 --> 01:54:00.800
componentes deseas analizar las estadísticas, vas entonces a cualquier componente, en este

01:54:00.800 --> 01:54:08.080
caso yo coge el input y en la sesión advanced setting todos van a tener un te está cache

01:54:08.080 --> 01:54:13.120
estatística, yo chuleo aquellos componentes a los cuales yo quiero analizar las estadísticas,

01:54:13.120 --> 01:54:19.780
en este caso yo escogí el input, escogí el te agrega este row, advanced setting,

01:54:19.920 --> 01:54:27.560
lo chuleo y el input dos, advanced setting, lo chuleo, significa que para esos tres componentes

01:54:27.560 --> 01:54:34.580
que he chuleado y que he elegido solamente van a usar las estadísticas para esos tres

01:54:36.900 --> 01:54:40.660
perfecto, si está mal, vamos a ejecutar nuevamente

01:54:47.140 --> 01:54:51.540
lo que usted quiera, yo cogí el input uno, el te agrega este row uno y el input dos,

01:54:59.200 --> 01:55:01.500
y listo, aquí le muestro las estadísticas,

01:55:03.700 --> 01:55:13.180
vamos a colocarla acá más o menos, ahí tengo todo eso que está ahí, está en milisegundos,

01:55:15.580 --> 01:55:25.920
cuánto demora, bueno, ahí debí colocar un momento y agrego porque no me alcanza a ver,

01:55:25.920 --> 01:55:30.680
un momento, porque no sé qué componente está hablando, me tocaría agregar

01:55:36.720 --> 01:55:45.160
mesa duración, un momento, creo que es context, un momento para ver porque no sé qué componente

01:55:45.160 --> 01:56:10.840
está hablando, listo, ejecutar, listo, agreguenle, sí señor, al tema le agrega origin,

01:56:11.860 --> 01:56:18.260
en el tema como salida agrega origin para saber quién es el componente que deseo,

01:56:18.280 --> 01:56:22.480
origin y ahí sí me va diciendo a qué componente se refiere,

01:56:26.520 --> 01:56:33.320
porque antes no lo tenía, antes me mostró de manera genérica y ahora debió aparecer acá,

01:56:33.320 --> 01:56:37.640
al principio, las estadísticas, aquí está,

01:56:40.540 --> 01:56:47.800
aquí está, ahí están los nombres de los componentes, entonces cuánto demoró, qué estaba haciendo,

01:56:50.360 --> 01:56:52.260
vamos a ver cómo me salió a mí,

01:56:55.480 --> 01:57:05.320
por ejemplo, el T aggregator row 1 demoró la ejecución en 7 mil 141, o sea, 7 milisegundos,

01:57:05.400 --> 01:57:10.120
7 segundos, perdón, y así sucesivamente le está mostrando ahí cuánto demoró cada uno,

01:57:10.120 --> 01:57:14.600
eso nada más que todo es para analizar cuellos de botella, cuando tienes un

01:57:14.600 --> 01:57:18.580
yo que de pronto tenga algunos tiempos de respuesta muy altos, te puede servir esas

01:57:18.580 --> 01:57:23.620
estadísticas para analizar cuál es el componente que más está demorando y ver para ver si cambia

01:57:23.620 --> 01:57:26.760
el componente o cambia la arquitectura que tengas de tu yo.

01:57:29.480 --> 01:57:34.580
Bueno, creo que aquí dejamos esta parte y seguimos con otro ejemplo entonces.

01:57:44.800 --> 01:57:55.180
Definamos otro job, vamos a llamarlo job, crear job, job,

01:57:59.280 --> 01:58:00.240
análisis,

01:58:00.960 --> 01:58:11.100
underscore, nba, análisis, underscore, nba, job, análisis, nba.

01:58:17.360 --> 01:58:23.940
Bien, veamos entonces lo que queremos hacer, en primer lugar, los archivos para este

01:58:24.220 --> 01:58:31.220
job se encuentran en S3, vamos a descargar primero los archivos, pero lo vamos a descargar

01:58:31.220 --> 01:58:38.240
siempre y cuando ya el archivo no esté, o sea, si el archivo ya está en Hadoop, no lo descargamos,

01:58:39.680 --> 01:58:45.740
si no está, en ese caso lo descargamos, esa es la idea que vamos a hacer entonces.

01:58:48.500 --> 01:58:59.660
Los archivos a descargar están metidos, ya les voy a decir, en un bucket, están metidos en

01:58:59.660 --> 01:59:06.380
el bucket llamado Noble Pro, dentro del bucket, en un bucket al final viene siendo la carpeta,

01:59:07.320 --> 01:59:12.020
hay una subcarpeta que se llama TIN y dentro de TIN hay tres archivos que se

01:59:12.210 --> 01:59:15.410
llaman exactamente igual de esta manera, un momento que no me copió,

01:59:18.850 --> 01:59:22.090
ah, es que estoy con un brose ahora, bueno, ya le digo los nombres, TIN,

01:59:23.430 --> 01:59:38.590
vamos a buscar un archivo que se llama nba2004shot.csv y aquí tengo entonces 2005 y 2006.

01:59:40.150 --> 01:59:47.690
Claro que con este archivo la nba registra, pero una cantidad de cosas de todos los jugadores,

01:59:48.790 --> 01:59:56.390
este listado tiene los tiros realizados por, bueno, evidentemente ahí es una muestra muy

01:59:56.390 --> 02:00:01.870
pequeña, pero la muestra real es que ellos guardan, por ejemplo, todos los tiros que

02:00:02.160 --> 02:00:07.080
ha llegado alguien en toda su historia. Entonces aquí va a aparecer, por ejemplo,

02:00:08.040 --> 02:00:13.240
Kobe Bryant, ese Kobe Bryant, más de todos los tiros de toda su vida y organizado por año,

02:00:13.520 --> 02:00:19.580
por mes, si falló o no falló, en qué distancia lo hizo, o sea, son unas estadísticas

02:00:19.580 --> 02:00:27.080
sumamente detalladas. Vamos a lo siguiente, ahora el problema que tengo es que los archivos

02:00:27.080 --> 02:00:33.560
no los tengo en Hadoop. Lo primero que voy a hacer es subir los Hadoop, pero con la condición

02:00:33.560 --> 02:00:38.000
de que solamente los voy a subir siempre y cuando el archivo no esté en Hadoop.

02:00:39.420 --> 02:00:43.400
Entonces para esto voy a analizar lo siguiente, vamos aquí a los ejemplos S3,

02:00:46.400 --> 02:00:50.640
S3, y el descargar archivo S3,

02:00:55.240 --> 02:01:02.640
S3, voy a copiar toda la conexión esta que tengo del subir archivo me sirve

02:01:05.040 --> 02:01:12.600
y la voy a pegar en mi nuevo job, en el S3, voy a pegar el que se llama yo descargar archivo

02:01:12.600 --> 02:01:17.540
S3 subido. Los componentes son los siguientes, primero quiero descargar siempre y cuando no esté,

02:01:17.540 --> 02:01:25.500
entonces aquí hay un componente que se llama THDFS, agréguelo por favor, THDFS exist.

02:01:36.560 --> 02:01:42.740
Bien, en este caso voy a hacer tres de este señor porque, bueno, primero hago uno y después

02:01:42.940 --> 02:01:48.200
completo uno, porque queda más fácil completarlo y después copiar y pegar.

02:01:50.460 --> 02:01:58.240
Voy a copiar, agregar un componente que se llama TS3 GET,

02:02:00.460 --> 02:02:07.620
voy a tener un THDFS PUT para colocar el archivo que descargué,

02:02:09.460 --> 02:02:13.940
y voy a tener acá y lo voy a cambiar de forma, aquí un TFILE DELETE,

02:02:15.200 --> 02:02:19.520
o sea que borre el archivo que descargué en la máquina porque ya lo tengo dejado,

02:02:19.780 --> 02:02:23.540
TFILE DELETE, ya los cinco componentes que necesitamos.

02:02:25.700 --> 02:02:34.420
Vamos a conectar el THDFS EXIST, clic derecho, con el disparador RUNIF,

02:02:38.380 --> 02:02:44.620
al S3, disparador, no me digas, el S3 lo conectamos entonces al HDFS PUT,

02:02:46.140 --> 02:02:52.100
con COMPONENT OK, y el PUT lo conectamos al TELI con COMPONENT OK.

02:03:03.090 --> 02:03:10.030
Configuremos las conexiones del S3 primero, vamos aquí al S3 y decimos que usar conexión

02:03:10.030 --> 02:03:15.930
existente, ya la tomamos por defecto. Vamos a las conexiones de los HDFS y le decimos

02:03:15.930 --> 02:03:21.470
usar conexión existente, y esta sí que hay que seleccionarla porque aunque haya una,

02:03:21.470 --> 02:03:29.650
hay que seleccionarla, y la del PUT también, la del PUT usar conexión existente,

02:03:30.790 --> 02:03:40.990
y este señor HDFS conecte. Perfecto, empecemos configuración, vamos con el HDFS EXIST,

02:03:43.750 --> 02:03:48.790
bueno vamos a escoger aquí una ruta para que sea más sencillo, después de cualquier archivo,

02:03:48.810 --> 02:03:50.930
después le cambio el nombre, después de la misma producción,

02:03:53.810 --> 02:03:57.510
ah no, aquí me toca colocar, carece de sentido,

02:04:01.050 --> 02:04:07.270
a primero el directorio, bueno el directorio, aquí perdón, aquí, ya, en el directorio por

02:04:07.270 --> 02:04:13.490
favor vamos a, ya tenemos la ruta, entonces la habíamos definido en un contexto el día de ayer,

02:04:13.490 --> 02:04:23.110
por favor váyase al job, a los contextos e importa por favor el contexto que está

02:04:23.110 --> 02:04:34.570
a nivel del proyecto, ok aquí, vamos ahora si nuevamente al THDFS EXIST y quito las comillas

02:04:34.570 --> 02:04:37.950
dobles que están en el directory porque va a ser referencia a una área de contexto,

02:04:38.450 --> 02:04:42.070
y si es de contexto nos toca definir entre comillas dobles, entonces voy a darle aquí

02:04:42.070 --> 02:04:45.190
control espacio y voy a correr ruta raíz,

02:04:57.770 --> 02:05:04.970
ahora la ruta vamos a buscar este archivo que se llama nba así todo la nba mayúscula

02:05:04.970 --> 02:05:13.670
underscore 2004, underscore shops, underscore .csv, exactamente así como está,

02:05:16.890 --> 02:05:23.090
y la pegamos en el relative.pub o el file name según la ruta relativa,

02:05:27.230 --> 02:05:30.150
vamos a ver cómo quedó esta parte,

02:05:37.930 --> 02:05:42.130
perfecto, listo, bueno, confiaremos la conexión entonces, vamos aquí,

02:05:42.390 --> 02:05:48.130
vamos a la línea que conecta el hdfs con el tsc3, doble clic a línea esa,

02:05:49.650 --> 02:05:53.930
doble clic a la línea, no le irá la línea,

02:05:59.630 --> 02:06:05.330
ahora cuando es condición tiene que ir a la perspectiva online y aquí esto antes del

02:06:05.330 --> 02:06:11.990
si está un hdfs exist, vayas en la perspectiva online y busque ese componente, aquí lo tengo,

02:06:13.050 --> 02:06:17.210
hdfs exist 1, expande por favor ese componente en la perspectiva de online,

02:06:18.230 --> 02:06:23.610
y aquí están varias variables para utilizar, está error mesas, está file exist,

02:06:24.350 --> 02:06:29.390
y está file name relative path, entonces tome ese file exist y lo suelta a este lado,

02:06:31.270 --> 02:06:35.830
la condición se debe cumplir o sea pregunto que debería entrar cuando existe o cuando no

02:06:35.830 --> 02:06:41.970
existe, cuando no existe es para descargarlo, entonces como esto es negativo, para negar en

02:06:41.970 --> 02:06:48.210
java leerás el símbolo que es admiración, dale admiración por favor para decir que va a

02:06:48.210 --> 02:06:53.250
ejecutar eso siempre y cuando sea negativo, o sea que el archivo no exista, perfecto,

02:06:55.350 --> 02:07:00.230
listo, te quedaría de esta forma por si acaso que alguno que están haciendo esta parte,

02:07:00.410 --> 02:07:09.650
no lo ha terminado, quedaría más o menos así, nada más le agregué este símbolo de aquí,

02:07:20.130 --> 02:07:23.610
y eso está así ya,

02:07:24.470 --> 02:07:31.150
vamos al ts3 get y le decimos el bucket donde va a descargar eso se llama noblepro,

02:07:34.010 --> 02:07:42.370
noblepro, de programación, y la key, vamos a copiar el nombre de archivo que lo tengo acá,

02:07:42.370 --> 02:07:49.490
que se llama nba, voy a copiar este archivo y lo voy a pegar aquí en la key y le agrego que

02:07:49.490 --> 02:07:56.330
ese señor está en la carpeta team, debe quedarte más o menos así, ya te lo muestro,

02:08:04.070 --> 02:08:05.030
así debe quedar,

02:08:08.130 --> 02:08:15.970
que lo busque en la carpeta team, bueno su carpeta más que todo, este archivo, bueno parece que ya,

02:08:18.610 --> 02:08:23.470
perfecto, aquí le voy a decir dónde lo va a descargar, entonces borro este señor,

02:08:24.030 --> 02:08:29.290
le doy context, ah todos lo teníamos verdad, se me había definido, sería,

02:08:29.290 --> 02:08:37.190
abro comillas dobles, c2 puntos, slash temporal, y lo voy a llamar exactamente igual como el

02:08:37.190 --> 02:08:43.410
original para no perderme, o sea que aquí la ruta puede variar, puede variar la ruta,

02:08:44.130 --> 02:08:48.350
en el caso mío temporal, o hagamos algo diferente, hagamos algo diferente,

02:08:48.410 --> 02:08:53.050
hagamos algo diferente, desen cuenta que estoy colocando una ruta absoluta,

02:08:54.110 --> 02:09:02.090
deje la ruta nada más sin el temporal, deje la ruta así, le quedaría así y él la va a agregar

02:09:02.090 --> 02:09:07.330
en el rupado que tiene el proyecto y me despreocupo de la ubicación, o sea que déjela así,

02:09:09.250 --> 02:09:13.630
ahí lo coloca ese de una ruta relativa y le va a colocar justamente donde el proyecto se vaya

02:09:13.630 --> 02:09:17.830
a ejecutar, perfecto 2004, ahí lo que va a hacer es eso,

02:09:21.230 --> 02:09:27.510
en el PUT, listo, le voy a decir directorio local,

02:09:30.510 --> 02:09:40.690
ahora me complico la vida, listo, NA 2004, CCV, nada más quedó así, listo,

02:09:40.690 --> 02:09:45.550
cuando que ahora me salga, listo, cuando que me salga error ahora, vamos a lo siguiente,

02:09:45.730 --> 02:09:49.970
vamos a ver si me sale error, voy al PUT, voy a copiar el nombre del archivo que estoy descargando,

02:09:52.890 --> 02:09:56.370
directorio local lo voy a dejar vacío porque va a tomar por referencia la ubicación en

02:09:56.370 --> 02:10:06.290
que esté el job, el directorio HFS, le borro las comillas, le doy context, context ruta raíz,

02:10:09.850 --> 02:10:15.110
este create lo voy a dejar ahí, porque create, porque la idea es que el archivo se descargue

02:10:15.110 --> 02:10:19.990
nada más una sola vez, por lo tanto si se carga una vez y me sale error por create es

02:10:19.990 --> 02:10:27.870
porque hay un error en el sí, algo hice malo, listo y ahora en el file max, la máscara,

02:10:28.830 --> 02:10:33.570
voy a buscar el archivo, voy a agregar aquí un elemento, no le agrego ruta nada más,

02:10:33.570 --> 02:10:37.890
vamos a ver si funciona así y el nuevo archivo se llama también así,

02:10:40.550 --> 02:10:47.690
nba under score 2004, listo y por último en el delete, vamos a pegar nada más el

02:10:47.690 --> 02:10:51.450
nombre del archivo porque supuestamente lo va a buscar en la ruta en que esté el proyecto,

02:10:51.570 --> 02:10:57.290
me preocupa nada más el PUT que el local va vacío, no sé si ese componente me causará

02:10:57.290 --> 02:11:02.870
error, bueno creo que ya nada más hay que ejecutarlo y ya listo, vamos a ejecutarlo

02:11:02.870 --> 02:11:13.270
para ver, estoy en análisis nba, ejecutar, primera vez que voy a ejecutar, debería subir

02:11:13.270 --> 02:11:19.390
el archivo, descargarlo, perdón, primero verificar si está, si no está lo descargo

02:11:19.420 --> 02:11:22.940
y lo pongo en hadut y después borro el archivo como tal,

02:11:32.720 --> 02:11:38.500
bueno está ejecutando, listo, bueno ahí no lo encontró, está descargando, ahí va el true,

02:11:39.540 --> 02:11:44.300
no le encontró el PUT, no lo encontró porque la ruta absoluta de este local

02:11:46.180 --> 02:11:48.060
debió, este no lo encontró aquí,

02:11:55.440 --> 02:11:56.900
no me salió el plan como quería,

02:12:00.480 --> 02:12:02.860
me tocaría colocar un directorio local,

02:12:05.720 --> 02:12:10.740
espere un momento e intento hacer algo aquí para no colocar la ruta absoluta,

02:12:13.740 --> 02:12:18.500
o sea confirmemos algo, este archivo tuvo que haber quedado en la ubicación donde

02:12:18.500 --> 02:12:24.140
ejecuta los jobs, espere un momento a ver, ese big data está metido aquí en archivos de programa,

02:12:25.100 --> 02:12:26.460
talent big data,

02:12:30.520 --> 02:12:39.060
workspace, local project, process, procesamiento,

02:12:42.820 --> 02:12:46.640
listo, no, ahí no, workspace, local project,

02:12:51.100 --> 02:12:51.680
qué raro,

02:12:54.140 --> 02:13:00.060
este archivo debería estar aquí, un momento, está interesante hablar, si no la colocamos,

02:13:03.080 --> 02:13:07.540
la colocamos absoluta y donde creo se descarga,

02:13:11.380 --> 02:13:19.980
bueno no me salió el tiro como lo quería pues, es que vean, es que seguramente lo que pasa es

02:13:19.980 --> 02:13:26.340
que ese TOS está en archivos de programa en Windows y no va a dejar escribir ahí,

02:13:27.820 --> 02:13:31.440
creo que ese es el problema que tiene, qué pena, me va a tocar colocar la ruta completa,

02:13:31.620 --> 02:13:33.140
sería C2 puntos,

02:13:36.960 --> 02:13:38.320
C2 puntos,

02:13:39.080 --> 02:13:46.100
Slash temporal, Slash temporal, Slash NBA,

02:13:49.980 --> 02:13:55.180
sí, aquí tuve un problema que seguramente es por el permiso de donde está la carpeta,

02:13:59.700 --> 02:14:00.780
permítanme y lo pruebo para ver,

02:14:04.420 --> 02:14:06.700
el local directorio lo voy a mandar a temporal,

02:14:10.700 --> 02:14:11.860
voy a ejecutar aquí para ver,

02:14:18.100 --> 02:14:21.940
detectó que no estaba, lo descargó y lo subió, voy a verificar para ver,

02:14:27.640 --> 02:14:32.880
ahí está, NBA 2004 shock y debió borrarlo de acá, es temporal,

02:14:36.360 --> 02:14:37.400
sí, listo,

02:14:37.400 --> 02:14:38.200
en setting,

02:14:40.920 --> 02:14:48.200
bien aclaro, no funcionó, la idea de la ubicación relativa es porque intentaba

02:14:48.780 --> 02:14:53.600
crear un archivo en archivo de programa y por seguridad que en Windows no lo dejó crear ahí,

02:14:54.360 --> 02:14:57.860
a ver, vamos a ver un par de errores, Bernardo veo que tiene errores, vamos a ver,

02:14:58.440 --> 02:15:03.100
bien, veamos por qué no existe, por qué sale ese error, porque intentó borrar un

02:15:03.100 --> 02:15:07.060
archivo que no existía, si no quieres que ese error salga, dale por favor doble clic en

02:15:07.060 --> 02:15:13.880
file deleted y ahí mira donde dice file on error, sí, viste donde dice file on error,

02:15:14.460 --> 02:15:19.900
como está chingado el que hace manda un error, pero por qué no lo borró,

02:15:20.200 --> 02:15:26.000
vete a tu get por favor, a tu TS3 get doble clic, a ver si la ruta ahora,

02:15:26.080 --> 02:15:31.120
cómprate la ruta ahora del ten, cómprate la ruta completa y la pegas en el file deleted,

02:15:31.120 --> 02:15:37.600
cómprate todo, cómprate todo un solo y lo pegas allá en el file deleted,

02:15:37.840 --> 02:15:40.540
todo completo porque sé que quiere borrar, listo, ahora haz lo siguiente,

02:15:40.700 --> 02:15:50.920
vete a tu Hadoop y borrate el archivo nba, borralo, ahí está, sí, ese que está ahí, delete,

02:15:55.240 --> 02:16:04.260
ejecuta, vamos a ver, como es la primera vez, vamos a ver, ok, ok, listo, vete a tu,

02:16:04.940 --> 02:16:13.160
por favor, vete a tu, sí, al Hadoop, dale F5 ahí y ahí está, ok, vamos a lo siguiente,

02:16:14.580 --> 02:16:19.460
ahí seguramente borró el temporal y ahí está, lo borró, vuelve a ejecutar tu job y no

02:16:19.460 --> 02:16:25.840
debería descargarlo, vale, ejecutar nuevamente run, esto ya empezó, date cuenta que ahí está

02:16:25.840 --> 02:16:31.260
false, te marcó false leaf, significa que no siguió el flujo normal hacia arriba porque ya

02:16:31.260 --> 02:16:38.940
lo encontró, bueno, quién más tiene errores, a ver, listo, Alejandro, vamos contigo,

02:16:41.800 --> 02:16:52.340
Alejandro, vamos a ver qué pasó, esto cargó, un momento que no cargó la imagen, ahora sí la

02:16:52.340 --> 02:17:01.980
cargó, veamos el error que tiene, no match file, listo, vete a tu ts3 get, por favor,

02:17:03.340 --> 02:17:09.300
ts3 get, doble clic, por favor, listo, listo, estamos dando temporal, vete a tu thdfs put,

02:17:09.760 --> 02:17:14.420
el put y ahí es donde dice local directory, apúntale a ten, dale clic ahí en el botón que

02:17:14.420 --> 02:17:19.300
está al final, el botón que está en la misma línea, ahí está, no, pero nada más la carpeta,

02:17:19.640 --> 02:17:23.220
la carpeta, nada más la carpeta, tengo, nada más vamos a colocar ahí la carpeta,

02:17:23.220 --> 02:17:36.300
déjalo borrar hasta el slash, ejecuta, bueno, ahí ya está preguntando si está en hadut,

02:17:37.360 --> 02:17:47.300
ahí no está, ok, listo, vete, debería estar ahí, listo, vuelvelo a ejecutar para ver,

02:17:47.300 --> 02:17:56.220
no debería descargarlo, ya voy, un momento, vuelvelo a ejecutar un momento y ya llego ya,

02:17:58.000 --> 02:18:01.620
está accediendo, ahorita ahí está false, no sigue la ejecución normal,

02:18:02.040 --> 02:18:05.700
¿Quién me habló por ahí? Héctor, vamos contigo Héctor, vamos a ver qué pasó,

02:18:09.060 --> 02:18:13.900
no false, que existiera, veamos la condición, vete la condición por favor,

02:18:15.300 --> 02:18:23.940
ah, porque ahí es negarlo, niégalo, es decir, para negarlo vete a la primera columna antes

02:18:23.940 --> 02:18:33.740
del paréntesis que inicia y colocas un signo de admiración, no, ¿eso es un pipe o

02:18:33.740 --> 02:18:43.480
admiración? ejecuta para ver, sí, te pareció ver, pareció un pipe, déjalo, si no,

02:18:43.480 --> 02:18:48.440
¿Qué error? Ejecuta para ver, porque a anteriormente estaba preguntando si existía y no existía,

02:18:48.460 --> 02:18:55.440
ahora si no existe, debería entrar en el if, vamos a ver, ahorita ahí está true,

02:18:56.300 --> 02:19:03.480
o sea no existe, ok, lo está descargando, lo está subiendo y listo, vete a, claro,

02:19:03.480 --> 02:19:09.340
tenía la condición invertida, ahí está, nada, porque lo ahorro exactamente, listo seguimos,

02:19:09.340 --> 02:19:13.100
ya es mi vamos a ver qué pasó

02:19:16.520 --> 02:19:22.860
ahora sí ya cargo ahí está diciendo porque tiene un doble comilla en el

02:19:22.860 --> 02:19:28.560
file max ese file más tiene doble comillas tiene dos comillas al inicio

02:19:28.560 --> 02:19:34.680
borre una de las comillas y tiene unas comillas al final doble comilla al

02:19:34.680 --> 02:19:40.740
final de ese mismo file max quito una comilla lo mismo lo tiene del otro lado

02:19:40.740 --> 02:19:46.180
tiene dos comillas que inician listo entra ahí

02:19:46.180 --> 02:19:53.060
ejecute para ver pues nos vamos para ver no listo no está ok y el delete

02:19:53.060 --> 02:19:59.080
vayase al file delete por favor file delete doble clic ahí ahí falla

02:19:59.080 --> 02:20:02.320
porque el archivo doble control vayase a su ts3 get

02:20:03.280 --> 02:20:08.780
y la ruta que va la ruta que va a borrar del es la de file temporal copia la

02:20:08.780 --> 02:20:13.740
ruta de toda la ruta que tiene ahí toda la copia

02:20:13.740 --> 02:20:19.820
y la pega en el file delete pégale ahí porque listo ahora haga lo siguiente

02:20:19.820 --> 02:20:28.860
vayase a su browser de hdud del f5 y borre el archivo nba

02:20:30.000 --> 02:20:34.260
para volver a ocultar para que nos borre todo listo listo delete

02:20:34.780 --> 02:20:39.920
y ejecute para ver perfecto ahora sí debe estar todo bien nos veamos lo

02:20:39.920 --> 02:20:45.320
siguiente ahora me tocaría hacer tres flujos significa que este señor lo

02:20:45.320 --> 02:20:47.100
voy a tomar

02:20:48.300 --> 02:20:51.980
este señor lo voy a copiar

02:20:51.980 --> 02:20:54.400
una vez sí

02:20:58.080 --> 02:21:05.340
ah no me copió con esto a colocar más sí dígame los tres al mismo tiempo no

02:21:05.340 --> 02:21:07.940
porque el componente borra de uno en uno

02:21:09.520 --> 02:21:14.440
es por la forma del componente voy a copiar nuevamente este señor

02:21:14.440 --> 02:21:21.440
que me lo copió también control c control v sí y ahora sí lo toma

02:21:22.040 --> 02:21:25.360
pero es que me está copiando los

02:21:26.760 --> 02:21:30.540
no me está jalando el yo así

02:21:39.020 --> 02:21:43.780
el primero pernesto vamos a ver el mes haya tenido verdad que sí no había

02:21:43.780 --> 02:21:44.300
visto bien

02:21:44.300 --> 02:21:48.620
vamos a ver

02:21:50.360 --> 02:21:55.800
a parece ser que no estás lo guiado al s3 de este momento a ver vete al al

02:21:55.800 --> 02:21:59.220
tse 3 al que es perdón tse 3 que está el doble clic

02:22:02.180 --> 02:22:07.700
al esto ahí en el bóquet en el que es tim porque también tiene la

02:22:07.700 --> 02:22:11.200
carpeta la subcarpeta tim equipo de inglés

02:22:11.200 --> 02:22:17.180
tim después de la comida doble es la exactamente intenta ahora para ver

02:22:17.180 --> 02:22:21.540
perfecto ahora sí bueno copiamos este señor y de

02:22:21.540 --> 02:22:24.940
rapidez vamos a copiar el archivo de entrada se va a llamar vamos a

02:22:24.940 --> 02:22:28.200
cambiar donde dice 2004 a 2005

02:22:30.580 --> 02:22:36.480
en el get vamos a cambiar nuevamente el 4 por el 5 en los dos lados

02:22:37.300 --> 02:22:41.900
aquí debía ser una verdadera contexto para que sea más sencillo pero ya

02:22:41.900 --> 02:22:45.660
en el puc cambio todo lo que tenga 2004 por 2005

02:22:49.100 --> 02:22:56.040
y en el file delete cambio todo lo que tenga 2004 por 2005

02:23:00.960 --> 02:23:04.660
nuevamente copia todos los componentes y va a copiar de 2004 a

02:23:04.660 --> 02:23:09.460
2006 es intento pegar este señor por acá

02:23:12.720 --> 02:23:20.280
que me devuelve bueno aquí

02:23:20.280 --> 02:23:26.080
aquí le dañé la presentación pero ya bueno aquí voy a coger y cambiar todo

02:23:26.080 --> 02:23:32.160
lo que tenga 2004 por 2006 todo lo que tenga

02:23:33.380 --> 02:23:35.360
2004 por 2006

02:23:38.860 --> 02:23:43.880
en el put lo que tenga 2004 por 2006

02:23:47.600 --> 02:23:51.740
y el delete todo lo que tenga 2004 por 2006

02:23:55.860 --> 02:24:00.540
aquí pude haber hecho un programita aquí un pequeño script que me leyera

02:24:00.540 --> 02:24:07.540
el archivo y mandaba por parámetro el s3 el valor del archivo que está

02:24:07.540 --> 02:24:12.120
en el s3 pero me quedaba como eran dos archivitos me quedaba creo que

02:24:12.120 --> 02:24:17.380
más fácil de esta forma que está escribiendo el script

02:24:29.020 --> 02:24:34.000
allá donde iba bueno bien en primer lugar para que usted quiera que se

02:24:34.000 --> 02:24:40.960
ejecute para le lo de mi muestro aquí por defecto se ejecutaría secuencial

02:24:40.960 --> 02:24:44.560
que fue la pregunta que me hizo ahí que se me escapó el nombre

02:24:45.400 --> 02:24:51.160
que aquí de la forma tradicional ejecutaría primero este primero después

02:24:51.160 --> 02:24:55.940
ejecutaría este y después ejecutaría este si quisiera que esto se ejecutara

02:24:55.940 --> 02:25:00.840
que es un buen caso para ejecutarlo de forma concurrente entonces yo voy por

02:25:00.840 --> 02:25:06.660
acá le digo esta le digo multiteat pero espera que hay un momento que

02:25:06.660 --> 02:25:09.820
para el caso en particular no me va a servir yo digo por qué

02:25:14.640 --> 02:25:17.200
me parece súper el caso que estamos analizando

02:25:19.380 --> 02:25:23.420
ya terminamos lo hizo imagínese lo siguiente ahora no lo agregué usted

02:25:23.420 --> 02:25:28.480
allá lo voy a hacer yo acá yo necesitaría ahora 3 hdfs no lo usted

02:25:28.480 --> 02:25:37.100
voy a hacerlo acá 3 a t hdfs input uno por cada archivo porque los voy a

02:25:37.100 --> 02:25:39.560
unir ahora es lo siguiente voy a tener este señor acá

02:25:43.620 --> 02:25:50.520
este señor aquí voy a tener entonces 1 2 y 3

02:25:53.200 --> 02:25:57.880
voy a ver no lo a usted acá porque así voy a unir esto con un te y unir que vivimos

02:25:57.880 --> 02:26:05.160
alguna vez y vamos a poner que vamos a dar aquí un telocrop voy a mandar aquí fila

02:26:11.740 --> 02:26:16.840
a usted y uní que espera para que me entienda la idea de por qué para este

02:26:16.840 --> 02:26:22.180
caso sería interesante analizar pero con esta con esta versión de esta

02:26:22.180 --> 02:26:27.900
revienta no me da para solucionar el caso y lo siguiente supongamos ahora

02:26:27.900 --> 02:26:32.560
que yo le diga a estos señores que se ejecuten de manera concurrente aclaro

02:26:34.560 --> 02:26:40.200
redefino no recuerdo la definición existe concepto de paralelismo significa

02:26:40.200 --> 02:26:45.960
que hay cuatro subyorks si cuando se aplica el concepto paralelismo cuando

02:26:45.960 --> 02:26:50.720
los cuatro subyorks se ejecutan exactamente al mismo tiempo eso

02:26:50.720 --> 02:26:55.440
depende directamente de que tan ocupado esté la máquina cuando hay

02:26:55.440 --> 02:27:00.840
concurrencia cuando de los cuatro se me ejecutan 2 3 no se ejecutan

02:27:00.840 --> 02:27:06.520
al tiempo eso es ese los conceptos pero veamos lo siguiente si si aquí

02:27:06.520 --> 02:27:11.320
aplicamos concurrencia vamos a suponer que él ejecuta primero este subyork

02:27:12.760 --> 02:27:17.000
este subyork que va a pasar que va él espera que estén descargados los

02:27:17.000 --> 02:27:23.940
archivos en hdud y no va a funcionar vamos a suponer que ejecuta este yo

02:27:23.940 --> 02:27:28.040
de aquí y después ejecuta este yo de acá listo va a encontrar este

02:27:28.760 --> 02:27:34.160
pero los demás no va a encontrar entonces que sería interesante

02:27:35.460 --> 02:27:40.120
primero no podría tampoco unir los tres subyorks cuando terminen por

02:27:40.120 --> 02:27:43.160
ejemplo yo nada más puedo hacer lo siguiente este es un subyork aquí

02:27:45.340 --> 02:27:46.920
este es un subyork acá

02:27:50.220 --> 02:27:55.480
ya no me deja porque yo nada más puedo conectar un subyork con un subyork no tres

02:27:55.480 --> 02:28:00.340
subyork al mismo no podría entonces aquí si hay una herramienta

02:28:00.340 --> 02:28:05.300
interesante una bueno no está aquí pero en el en el otro si está me

02:28:05.300 --> 02:28:09.580
recuerda cuando de pronto si lo alcanzamos la caso mostrar yo quisiera

02:28:09.580 --> 02:28:13.480
que estos tres se ejecutan al tiempo y después que se ejecuten los tres al

02:28:13.480 --> 02:28:18.900
tiempo mandar a ejecutar esto entonces aquí hay un componente

02:28:18.900 --> 02:28:21.420
hay un componente

02:28:22.420 --> 02:28:27.740
que se llama así se llama que es súper súper interesante se llama

02:28:29.740 --> 02:28:39.440
para le para le lisaís entonces este para el size conectaría los tres

02:28:39.440 --> 02:28:44.260
elementos esto de aquí y después del té para lisaís conecto este subyork

02:28:45.020 --> 02:28:49.800
o sea que estoy diciendo oye estos tres ejecutarlo en multitarea cuando

02:28:49.800 --> 02:28:55.500
los tres hayan terminado entonces si empieza acá entonces es interesante ese

02:28:55.500 --> 02:28:59.640
ese y me solucionaron el problema este de aquí no lo podía hacer porque este

02:28:59.640 --> 02:29:04.520
componente no está aquí si me toca secuencial ni modo

02:29:04.520 --> 02:29:11.240
secuencial porque este subyork depende de los tres de arriba entonces me

02:29:11.240 --> 02:29:15.060
toca secuencial porque ni modo no tengo herramientas entonces con esto

02:29:15.060 --> 02:29:21.380
este subyork con este de aquí este subyork con este de aquí

02:29:23.440 --> 02:29:33.460
con estos tres por favor y agregue tres input tres HDFS input por favor y les

02:29:33.460 --> 02:29:39.360
coloca la ruta bueno en primer lugar pues usa la conexión existente a

02:29:39.360 --> 02:29:40.140
todos

02:29:44.420 --> 02:29:49.700
y aquí agrega búscalo por favor cada uno de

02:29:51.780 --> 02:29:56.160
ellos perdón es que no están no los va a

02:29:56.160 --> 02:30:02.180
encontrar entonces voy a encontrar voy a buscar cualquier archivo y después lo

02:30:04.520 --> 02:30:08.660
ya había descargado uno entonces voy a tomar ese que descargué y le

02:30:08.660 --> 02:30:12.460
cambió los nombres en el dos lo cambió 2005

02:30:15.380 --> 02:30:19.860
tome el primero que descargaste es para el primero y después copia la ruta y

02:30:19.860 --> 02:30:24.140
le cambias 2004-2005

02:30:24.140 --> 02:30:31.380
si en el otro le cambia de 2005-2006

02:30:35.140 --> 02:30:37.140
bueno permítame y te confirmo

02:30:39.240 --> 02:30:44.080
vamos a descargarlo aquí mismo para ver desde aquí vamos a descargar este que

02:30:44.080 --> 02:30:46.940
no sé cómo está el formato una pregunta de todos modos

02:30:48.940 --> 02:30:50.500
voy a descargar y

02:30:56.630 --> 02:31:04.010
bien sería coma efectivamente y tienen encabezado efectivamente entonces me voy

02:31:04.010 --> 02:31:06.230
al nuevamente al píctata

02:31:08.850 --> 02:31:11.510
al píctata lo voy a hacer entonces

02:31:13.710 --> 02:31:24.010
y en el input le colocó que es separado por coma y tiene un híder de uno separado

02:31:24.010 --> 02:31:24.510
por coma

02:31:32.110 --> 02:31:33.390
híder de uno

02:31:37.470 --> 02:31:40.350
bueno me voy al input 2

02:31:45.770 --> 02:31:50.630
coma y híder de uno y al input 3

02:31:51.970 --> 02:31:57.750
me voy entonces hacia coma y híder de uno

02:32:02.550 --> 02:32:06.530
aquí este señor me está marcando algo raro

02:32:06.530 --> 02:32:11.710
no tiene esquema todavía le estoy llevando nos faltan los esquemas de entrada

02:32:13.450 --> 02:32:18.090
los esquemas de entrada no hacen falta entonces aplicamos el truco

02:32:19.490 --> 02:32:25.130
descargase por favor el archivo que ya subió a hadu del primero que ejecutamos que se llama

02:32:25.130 --> 02:32:34.370
nba 2004 shop para tomar la metadata del 2004 que es la misma para 2005 y 2006 es la misma

02:32:34.370 --> 02:32:42.130
la misma columna en pocas palabras descargase por favor entonces de hadu nba 2004 shop

02:32:43.470 --> 02:32:48.050
bueno y entonces ahora vamos al truco vamos aquí y definemos una metadata

02:32:52.190 --> 02:32:58.290
aquí en el delimited crear archivo delimitado vamos a llamarlo nba

02:32:59.950 --> 02:33:06.130
next y buscamos el archivo que tuvo que haber quedado en descarga seguramente descargas

02:33:06.810 --> 02:33:16.530
aquí está nba shop y el señor se encuentra separado por comas y tienen cabezados

02:33:21.310 --> 02:33:28.530
nba llamar al archivo y tienen cabezados y separado por coma

02:33:32.130 --> 02:33:34.130
perfecto listo damos aquí next

02:33:37.410 --> 02:33:42.270
creo que demoro más y exporto el metadata y después lo vuelvo a importar

02:33:42.270 --> 02:33:46.710
vamos a darle aquí finish mejor y lo hacemos de la segunda forma finish

02:33:49.770 --> 02:33:56.230
vayamos a la confesión del input 1 y donde dice esquema le damos click en el combo boss que

02:33:56.230 --> 02:34:06.910
está en build in finish repositorio y darle click ahí en el botoncito que está al

02:34:06.910 --> 02:34:14.030
del text file que genera y busque por favor el archivo delimitado nba y coge la

02:34:14.030 --> 02:34:20.470
metadata nba y automáticamente la agrega nba metadata ok y la agrega yes

02:34:22.770 --> 02:34:28.550
hace exactamente lo mismo con los tres elementos siguientes que sería 2 perdón input

02:34:32.710 --> 02:34:35.270
esquema vamos aquí repositorio

02:34:44.150 --> 02:34:45.550
listo

02:34:45.550 --> 02:34:46.470
file delimited

02:34:48.730 --> 02:34:52.350
nba metadata ok

02:34:56.170 --> 02:34:58.230
y me faltaría el h3

02:35:06.010 --> 02:35:07.770
esquema repositorio

02:35:10.970 --> 02:35:19.250
nba metadata ok aunque sale el error aliso que la conexión no lo he hecho aquí

02:35:25.230 --> 02:35:32.270
bueno aquí lo voy a guardar si ya la configuró intenté ejecutar para ver si no tenemos ningún error

02:35:32.530 --> 02:35:55.430
y ese archivo está el edad 20 grande si está si todo está bien no tiene error mándelo

02:35:55.430 --> 02:36:01.270
a un a un archivo nba porque si no demoramos más en mostrando esa salida y vamos a mandar

02:36:01.270 --> 02:36:13.030
hdfs output porque si no demora es muy grande el te y un hilo uno con el hdfs output separó por coma

02:36:15.470 --> 02:36:21.830
listo conexión existente con poner list separamos por coma

02:36:27.010 --> 02:36:33.010
y esta vez comprima los datos por favor e incluye un hider porque creo que ese archivo

02:36:33.010 --> 02:36:41.610
a pesar de que no tengo mucho espacio allá en ese y el nombre lo voy a llamar entonces nba underscore

02:36:49.350 --> 02:36:51.170
nba underscore unido

02:36:53.310 --> 02:36:54.490
a ver aquí

02:37:05.690 --> 02:37:16.830
sí para que no pesará tanto gracias bueno voy a darle si después se desconfunde uno

02:37:16.830 --> 02:37:22.370
sin extensión nba unido porque se condenó a pesar yo tengo mucho espacio voy a detenerlo

02:37:22.370 --> 02:37:24.510
un momento y lo voy a volver a ejecutar ya terminó

02:37:33.210 --> 02:37:37.430
bien con esto voy a agregar un nuevo componente que pueda ayudar a solucionar

02:37:37.430 --> 02:37:44.890
un par de problemas en pocas palabras voy a ver cuánto quedó este señor nba unido

02:37:47.230 --> 02:37:54.350
nba unido el original los cuya quisi cumplió bastante

02:37:55.550 --> 02:38:06.210
cumplió bastante porque cada uno pesaba 36 megas y el unido quedó en 9.86 megabytes por segundo

02:38:12.090 --> 02:38:18.030
bueno vamos entonces bueno dejamos hasta aquí un momento y vamos a almorzar y volvemos

02:38:18.030 --> 02:38:23.730
entonces en una horita ok para descansar un momento y volvemos en una hora para terminar

02:38:23.730 --> 02:38:29.850
este ejemplo y agregar un último componente aquí que tengo para el día de hoy entonces

02:38:29.850 --> 02:38:37.450
dejamos hasta aquí y regresamos en una hora listo bueno buen provecho