35 videos 📅 2024-05-28 09:00:00 America/Bahia_Banderas
9:39
2024-05-29 10:14:10
4:49
2024-05-29 10:29:56
5:42
2024-05-29 10:36:28
2:45
2024-05-29 10:43:46
1:00:16
2024-05-29 10:48:22
3:26
2024-05-29 12:18:04
5:22
2024-05-29 12:24:11
1:43
2024-05-29 12:33:10
55:30
2024-05-29 12:36:17
47:02
2024-05-29 14:57:58
2:18:28
2024-05-30 09:31:42
32:39
2024-05-30 13:09:57
24:21
2024-05-30 15:06:50
18:09
2024-05-30 15:44:33
3:56:30
2024-05-31 09:51:34
4:23:53
2024-06-05 09:12:19
28:23
2024-06-06 10:52:48
12:29
2024-06-06 11:32:59
3:47
2024-06-06 11:48:14
1:36
2024-06-06 12:03:40
54:36
2024-06-06 12:09:30
1:24:03
2024-06-06 13:32:03
13:43
2024-06-06 15:42:24
18:06
2024-06-07 09:07:48
9:43
2024-06-07 09:33:41
2:49:27
2024-06-07 09:49:42
3:47
2024-06-11 09:19:48
5:51
2024-06-11 09:25:13
1:53
2024-06-11 10:21:33
7:58
2024-06-11 10:26:29
2:48
2024-06-11 13:27:27
43:31
2024-06-11 13:50:56
2:46:00
2024-06-12 09:14:49
20:20
2024-06-12 13:22:18
29:54
2024-06-12 15:00:28

Visit the 1. Talend Open Studio para ESB, 2. Data Quality: Advanced Techniques, 3.Talend Big Data Integration course recordings page

                WEBVTT

00:00:30.700 --> 00:00:49.200
Descargar objeto haduto. Job, descargar objeto haduto. Job, descargar objeto haduto. Por favor,

00:00:49.300 --> 00:00:55.560
si deseas, copia las conexiones que te han funcionado. Yo voy a conectarme con este

00:00:56.550 --> 00:01:02.770
señor que está acá, voy a copiarlo y lo voy a pegar aquí, porque sé que esa conexión ya la

00:01:02.770 --> 00:01:06.750
tengo bien. Ahora el siguiente ejemplo, vamos a hacer un tipo de conexión diferente que es

00:01:06.750 --> 00:01:13.590
más estática, pero cualquiera de las dos es viable. Y aquí vamos a usar un componente que

00:01:13.650 --> 00:01:31.010
se llama THDFS, THDFS, HDFS, GET, exactamente el GET. Seguidamente pues ya empieza a ser de

00:01:31.010 --> 00:01:39.190
memoria, empieza a coger la conexión existente. Por defecto no escoge como el caso de S3 que

00:01:39.190 --> 00:01:48.950
por defecto una, hay que seleccionarla. Especifica el directorio en el cual deseas buscar el

00:01:48.950 --> 00:01:55.310
archivo que vas a descargar y acto seguido define el directorio donde se van a leer los

00:01:55.830 --> 00:02:01.550
soquetos, perdón, donde se van a descargar los soquetos. Entonces ya tenemos una ruta que se

00:02:01.550 --> 00:02:06.270
llama context, control espacio. Qué pena, aquí hay que descargar, siempre se me olvida,

00:02:06.270 --> 00:02:19.890
hay que importar el context. Importemos el contexto. Listo, entonces ahora sí voy

00:02:19.890 --> 00:02:31.010
aquí al HDFS GET y le digo context ruta. Debería estar apuntando hacia Cuba. Acto seguido,

00:02:31.010 --> 00:02:37.650
entonces hay algunos que no tienen, vamos a descargar el archivo sensus que tenemos allá,

00:02:42.070 --> 00:02:46.510
sensus.csv. Algunos me preguntaron ayer si es sensible a mayúsculo y minúsculo,

00:02:46.670 --> 00:02:52.610
depende de dónde estés. Si el archivo de entrada está en Windows no hay problema,

00:02:52.790 --> 00:02:56.370
pero si el archivo de entrada está en Linux, sí hay que colocarlo exactamente como esté.

00:02:56.370 --> 00:03:02.250
Y como tenemos ya un sensus, cambia el nombre de este lado y lo vas a llamar sensus

00:03:04.050 --> 00:03:14.590
underscore copia.csv. Perdón aquí. Mira los pasos, primero copié la conexión que tenía

00:03:14.590 --> 00:03:23.270
que funcionar de otro job. Segundo, importa el contexto. Tercero, agrega un componente tipo

00:03:23.270 --> 00:03:31.170
HDFS GET, configura la conexión existente y ahora configura las carpetas de entrada y de

00:03:31.170 --> 00:03:36.910
salida. Veo para ver cómo están acá ustedes porque de pronto nos hemos atrasado algunos,

00:03:38.050 --> 00:03:44.210
se voy a esperar. De todos modos, voy a ejecutar por si acaso tengo algún error

00:03:45.710 --> 00:03:52.450
y no sé si está ejecutando descargar objetos. Listo, por favor, claro como no,

00:03:53.590 --> 00:04:03.930
descargar. En primer lugar, copiate la conexión, ¿verdad? Y ahora la configuración de este

00:04:03.930 --> 00:04:22.430
señor es así. Listo, ya ejecutó. Te muestro un momento la configuración.

00:04:22.450 --> 00:04:29.510
Aquí la tengo. De todos modos, verifico con Horicio si es la que tienes. Vamos a ver si

00:04:29.510 --> 00:04:35.730
está bien sensus.csv. Y acá el mismo nombre pero agregas underscore copia.

00:04:38.990 --> 00:04:41.970
Debió quedar en la carpeta cua mía que está en temporal.

00:04:47.370 --> 00:04:50.190
Y efectivamente aquí tengo la descarga de la copia.

00:04:57.770 --> 00:05:06.750
No, está pixelado. Ok, de pronto, es que para acá está acelerando y hace cuando llueve

00:05:06.750 --> 00:05:13.170
como que le da miedo la conexión y se desestabiliza. Bueno, no sé si alguno tuvo

00:05:13.170 --> 00:05:18.370
un error para la descarga. Claro, como no, aquí la tienes. Primero configuras la carpeta

00:05:18.370 --> 00:05:23.970
que tenemos solamente una que es AXA. Después lo, después que importate el contexto lo mandas

00:05:23.970 --> 00:05:30.390
a contest.ruta y especificas primero el archivo que vas a cargar de Hadoop y segundo el nombre

00:05:30.390 --> 00:05:35.030
con que va a quedar en el destino que lo coloque sensus copia. No sé si alguno tuvo

00:05:35.030 --> 00:05:40.830
error. Horicio, te descargo que tengo como un algo rojo ahí para ver. Listo porque claro,

00:05:44.210 --> 00:05:50.550
lo que pasa es que mira lo siguiente. Ahí si tú quieres sobrescribes el nombre,

00:05:51.270 --> 00:05:57.050
si quieres sobrescribe, pero para comprobar mejor déjalo create, por favor déjalo create para

00:05:57.050 --> 00:06:01.470
comprobar y cambia el nombre destino sensus underscore copia. No, ese es el origen,

00:06:01.550 --> 00:06:06.230
el destino es este, ese es el destino. Ponle underscore copia ssv y vuelve a ejecutar. Listo,

00:06:06.230 --> 00:06:12.230
ejecuta nuevamente y deberías no tener problemas. Claro, y como estaba la opción create y no

00:06:12.230 --> 00:06:16.270
sobrescribir entonces iba a salir ese error. Se intentó crear, no sobrescribirlo y ya estaba

00:06:16.270 --> 00:06:24.010
listo. Listo, perfecto. Listo, bueno, entonces creo que todo nos funcionó. Sigamos entonces.

00:06:25.490 --> 00:06:32.310
Aquí ya viene un poco lo que es la magia de la herramienta. Ya aquí vamos a empezar a

00:06:32.470 --> 00:06:36.730
definir y a entender cómo va a procesar esta parte convictada. Es decir, esta parte de

00:06:36.730 --> 00:06:41.350
desarmacenamiento ahora viene la parte de procesamiento. Entonces vamos aquí a lo

00:06:41.350 --> 00:06:47.830
siguiente. Vamos a darle click derecho, create job y vamos a terminar con este job que se

00:06:47.830 --> 00:07:01.470
llama job, leer, datos, objeto. Leer, datos, objeto. Vamos a darle aquí finish y aquí sí vamos

00:07:01.470 --> 00:07:13.310
a ir un poco más lento. Por favor, copia la conexión. Copia la conexión de alguno que te

00:07:13.310 --> 00:07:17.550
funcione ya. O hagámoslo, perdón, hagámos esto diferente para matarlo. Hagámoslo

00:07:17.550 --> 00:07:23.630
diferente para matar enseguida esta parte de configuración. Estas configuraciones que

00:07:23.630 --> 00:07:29.950
hemos hecho son dinámicas. Vamos a hacer una configuración de metadata. A ver cuál le

00:07:29.950 --> 00:07:34.130
gusta más. El problema de metadata es que no puedo usar contextos. Entonces vamos a lo

00:07:34.130 --> 00:07:40.410
siguiente. Váyase a su metadata y busca una opción que dice Hadoop Cluster. Metadata,

00:07:40.570 --> 00:07:47.050
Hadoop Cluster. Dale click derecho y de la opción crear Hadoop Cluster. Entonces vamos a

00:07:47.050 --> 00:07:58.730
llamarlo Hadoop. Solamente Hadoop. No configuramos más nada. Le damos, dígame, sí. Listo,

00:07:58.730 --> 00:08:05.010
en su metadata, por favor, abra el árbol de metadata y busque la opción que dice Hadoop

00:08:05.010 --> 00:08:10.890
Cluster. Le da a crear conexión y la vamos a llamar Hadoop, por favor. Vamos a darle aquí next.

00:08:13.230 --> 00:08:18.390
Y aquí te pregunta sobre qué distribución te vas a conectar. En este caso no tenemos

00:08:18.390 --> 00:08:23.610
una específica. Es una, digamos, es una customizable que hacemos nosotros. Ya si te vas

00:08:23.610 --> 00:08:29.470
a conectar, por ejemplo, al cluster que tiene Amazon, pues usa Amazon MR. Aquí vamos a buscar la

00:08:29.470 --> 00:08:36.250
conexión que dice Universal. Y por favor, asegúrate que la versión, porque este es compatible

00:08:36.250 --> 00:08:44.770
con versión 3.0. Que mi cálculo no me falle. Dale por favor Finish 3.0x. Y aquí yo no sé

00:08:44.770 --> 00:08:48.910
por qué me apareció nuevamente. Bueno, acá me pareció Amazon. Asegúrate, no sé por qué,

00:08:48.910 --> 00:08:56.950
si apareció Universal, versión 3.0, por favor. Sin la distribución, si te apareció, porque escogía

00:08:56.950 --> 00:09:04.230
Amazon y me apareció algo diferente acá. Entonces, aquí viene un poco lo engorroso y lo poco

00:09:04.230 --> 00:09:09.770
flexible que puede haber. Donde dice localhost, vamos a cambiar por la dirección IP que tenemos

00:09:09.770 --> 00:09:14.110
de la máquina que tiene el Hadoop. Quiere decir entonces que el localhost lo voy a cambiar por,

00:09:14.190 --> 00:09:24.710
voy a quitar toda la parte del localhost y va a colocar 10.0.3.250. Esta misma dirección la

00:09:24.710 --> 00:09:34.810
repito y reemplazo donde está el localhost. Se cuenta que es menos flexible porque aquí no

00:09:35.030 --> 00:09:49.270
se puede usar contextos. Nuevamente, los puertos quedan, el puerto, por favor, qué pena. En el

00:09:49.270 --> 00:09:55.070
8020, el puerto que está escuchando esta versión es nueve mil, cambia el 8020 por nueve

00:09:55.070 --> 00:09:59.250
mil, qué pena. Los demás puertos quedan igual. Gracias.

00:10:02.530 --> 00:10:11.410
A muestro para ver quién me mencionó por ahí. Bueno, Julio, voy contigo un momento a ver. Estoy

00:10:11.410 --> 00:10:17.990
en tu máquina, a ver, vamos a lo siguiente. Sí, está bien ahí, está bien ahí, está bien ahí.

00:10:18.950 --> 00:10:27.350
El resource, agrégale dos puntos y sería 8030 en el que estás actualmente. Y en el de arriba

00:10:27.350 --> 00:10:35.610
es 8032. Donde dice Stringing Directory, por favor, cambia user a AXA, que es el directorio que

00:10:35.610 --> 00:10:42.370
tenemos. Y por último, donde dice username, más abajo, donde dice Authentication, por favor,

00:10:42.690 --> 00:10:50.710
dele hdud. H-dub. Acá abajito, donde dice Authentication, abajito de carveros, donde dice

00:10:50.710 --> 00:11:01.870
Authenticated Rocker Verus. Voy contigo, Julio, para ver si es. H-dub. Listo. Vamos a chequear

00:11:01.870 --> 00:11:08.630
los servicios, dere click ahí en chequear servicios. Le va a descargar unos componentes.

00:11:13.370 --> 00:11:18.270
Y debería aparecer en verde. Veamos para ver, diciendo que la conexión. El botoncito más

00:11:18.270 --> 00:11:26.710
abajo, donde locates el usuario. Baja, baja, baja, listo. Ah, listo, un momento ya veo para ver.

00:11:26.870 --> 00:11:31.530
Si lo tiene o lo tiene desactivado, está acá abajo. Si lo viste, lo tienes abajo. Sube,

00:11:31.650 --> 00:11:36.630
sube, sube para ver. Ahí que te faltó. Sube. La pregunta es por qué lo tiene desactivado.

00:11:37.170 --> 00:11:42.690
Se te debió. Bórrate la autenticación un momento. Un momento, un momento. Aquí dice

00:11:42.690 --> 00:11:50.870
que tienes un problema con tu resource manager. Un momentito, resource manager. Dice, ah, listo,

00:11:51.090 --> 00:11:57.430
porque qué pena. Esos resource managers no llevan HDFS, nada más lleva la IP. O sea, borra desde,

00:11:57.630 --> 00:12:02.510
deja nada más desde la IP y los slams los borra también. Bórrate ahí y borrate el otro.

00:12:02.650 --> 00:12:06.970
Al debajo, al debajo, al debajo. Qué pena, al debajo. El debajo. Listo, dale cheque service,

00:12:07.070 --> 00:12:10.250
ya está desactivado. Ahí lo tienes, el botón abajito, lo tienes. Cheque service,

00:12:10.250 --> 00:12:16.550
eso te activó. Acá abajo. Mira acá bajito. No, allá no, en la barra no. Baja acá. Ahí están los

00:12:16.550 --> 00:12:22.850
botones finish. Acá bajitos. No sé si alcanzas. Listo, cheque. Listo. Descarga, por favor.

00:12:22.930 --> 00:12:27.250
Vamos a ver. Listo. Close. Tienes rojo. Vamos a close un momento y voy a ver qué pasó.

00:12:28.330 --> 00:12:32.730
Vete a ver tu configuración nuevamente para ver. Sube, sube, sube para ver. Voy a mostrar

00:12:32.730 --> 00:12:37.210
aquí la de julio para ver. Y la comparo con la mía. No sé, esta es la de julio que salió

00:12:37.270 --> 00:12:47.290
por error. Bueno, tienes HDFS, dos puntos, diez puntos, tres puntos, dos puntos, ochenta,

00:12:47.350 --> 00:12:57.230
treinta y dos. AXA. Si tienes, no tienes algún punticón por ahí, no. No, vamos a ver entonces.

00:12:57.470 --> 00:13:01.990
Permítanme, yo, déjenme, permítanme, yo la controlo para ver la máquina y veo para ver.

00:13:04.200 --> 00:13:12.520
Julio, vamos por aquí. Aperto un momento que tengo que ser interactivo. Vamos a ver. Voy a repetir

00:13:12.520 --> 00:13:18.700
nuevamente para ver el log aquí que dice. Dice causado conexión refutada, no hay información.

00:13:20.080 --> 00:13:27.040
A ver si me equivoqué en los puertos. ¿Cuál? ¿Diez punto qué? ¿Punto veinte? No, está bien,

00:13:27.040 --> 00:13:34.280
ese está en cien. Diez punto tres punto cincuenta dice que no hay conexión. Ahora vamos a ver si

00:13:34.280 --> 00:13:43.400
aquí de pronto hay un, no lo alcanzamos a ver. No, esa conexión está bien. Diez punto cero

00:13:43.400 --> 00:13:57.020
punto tres cincuenta. Esta que está aquí. Vamos a ver. Y esta que está aquí que es la

00:13:57.020 --> 00:14:06.660
que está conectando. Sí, esto está bien. Tienes AXA, tienes HEDUT, a menos que tengas alguna

00:14:06.660 --> 00:14:14.880
configuración especial que no vi. No, esto no tiene nada que ver, pero vamos a ver un momento.

00:14:18.980 --> 00:14:22.540
Aunque no, porque no, este no, porque en un momento, aunque el usuario es HEDUT,

00:14:23.560 --> 00:14:29.420
yo habilité para que te pudiese conectar con cualquier usuario. Y tiene arriba los servicios,

00:14:29.520 --> 00:14:40.400
¿no? Porque que la otra sería si lo tienes arriba. No les sabría decir qué pasó aquí,

00:14:40.680 --> 00:14:45.760
por qué no lo conectas, por qué no se conecta. ¿Quién tuvo también otro error de pronto al

00:14:45.760 --> 00:14:49.800
ver con otra persona que tenga otro error, alguien mío que tampoco pudo conectarles al rojo.

00:14:51.540 --> 00:14:56.280
Vamos a un momento, anda un momento, para ver si de pronto viendo el tuyo puedo ver.

00:15:00.560 --> 00:15:09.080
Ah no, pero aquí listo. En realidad yo a ese usuario le quité esa parte para quitar la

00:15:09.080 --> 00:15:12.740
validación de usuario. Lo que hace es que si no coloco usuario no va a ser, no, no,

00:15:12.740 --> 00:15:20.400
solamente cambia de user a AXA, por favor, en el Staging. Ese es un área que es un área donde

00:15:20.400 --> 00:15:25.700
él va a hacer operaciones temporales. Recuerda que yo le dije que Max HEDUT lo que hace es

00:15:25.700 --> 00:15:29.540
que cuando procesa guarda datos en disco. Entonces esa carpeta que está ahí, la carpeta

00:15:29.540 --> 00:15:35.380
de Staging. Bueno, a ti se salió un momento y por qué a let close. Voy con otro,

00:15:35.540 --> 00:15:41.680
porque aquí este salió. Voy con otro, por favor, dale finish, por favor. ¿Quién otro

00:15:41.680 --> 00:15:48.880
no le funcionó, por favor? Sí, sale en verde. ¿Quién más? Eduardo, voy contigo. Un momento,

00:15:48.940 --> 00:15:55.980
hay para ver. Eduardo, voy contigo a ver un momento. Ya voy con ¿Quién más? Vamos a ver,

00:15:56.060 --> 00:16:11.660
Eduardo, si sale el mismo error. Bueno, aquí parece ser que... Sí, esa es una. Esa es

00:16:12.260 --> 00:16:20.760
la que te cambió ahora. ¿Cambia los localhosts por IP? Listo, cambia el localhosts por la IP 10.2,

00:16:20.760 --> 00:16:31.580
porque te cambia. Sí, debió, pero la herramienta tiene un pequeño bocado ahí. ¿Cambia el

00:16:31.580 --> 00:16:38.060
localhosts por la dirección? 10.10, creo que tienes el memoria, pégala ahí y cambia

00:16:38.060 --> 00:16:46.500
9.000. Ahora, si cambia todos los localhosts que tenga, cambia el sign-in a AXA, dale check

00:16:46.500 --> 00:16:56.280
service. Ya lo tienes listo ahí. Descarga, por favor. Listo, close. Finish. ¿Quién más no le

00:16:56.280 --> 00:17:04.020
funciona? ¿Qué le funcionó? Aparte de Julio, pues. Alguien me decía. Julio, voy contigo

00:17:04.020 --> 00:17:19.400
nuevamente a ver si capturamos. Yo tu pantalla en blanco. Listo, un momento. Ya que hay check

00:17:19.400 --> 00:17:25.280
service, a ver. Bueno, Julio, hagamos lo siguiente. Permítame, vamos a hacer una

00:17:25.280 --> 00:17:35.500
nueva. Vamos a empezar a hacerlo. Porque no sé qué pasó ahí. Listo, crea la conexión. Este señor le

00:17:35.500 --> 00:17:39.200
da lo mismo lo que escojo aquí porque al fin y al cabo me cambia la configuración. Le voy a

00:17:39.200 --> 00:17:49.920
dar finish aquí. Listo, voy a cambiar aquí a universal. Escojo 3.0 y voy a cambiar entonces

00:17:49.920 --> 00:18:03.760
toda esta parte por 10.0.3.250. Sería la dirección 2.9 mil, que es el puerto que está escuchando.

00:18:04.900 --> 00:18:17.020
Tomo esta IP y la voy a reemplazar por cada uno de los puntos. Este sería así y esta sería así.

00:18:17.600 --> 00:18:23.840
Listo, le digo que la zona de tagging para hacer operaciones es AXA. Y si no coloco nada aquí,

00:18:23.960 --> 00:18:30.560
no me habilito. Voy a colocar por defecto aquí H2. No sé si hay algún espacio en blanco ahí,

00:18:30.680 --> 00:18:38.700
Julio. No sé si de pronto había algo que impedía hacer eso. Voy nuevamente a mi máquina.

00:18:41.400 --> 00:18:46.280
Sí, sí. Lo que hace es que yo deshabilité la opción de seguridad de H2, si me entiendes.

00:18:46.280 --> 00:18:50.040
Estamos en un plano académico, no voy a habilitarme a complicarme la vida con eso.

00:18:51.880 --> 00:18:58.680
Listo, aquí voy a mostrar mi máquina. Le doy finish aquí. Expande aquí, le da click derecho,

00:19:00.100 --> 00:19:06.540
click derecho donde el Hadoop que le creó aquí, click derecho, y le vuelve a decir que va a

00:19:06.540 --> 00:19:18.600
dar un HDFS. HDFS. Llámelo entonces HDFS. Si te quieres llámelo HDFS AXA. Como usted

00:19:18.600 --> 00:19:26.700
quiera llamarlo. Next. No hace más nada aquí, le da finish. Y debería aparecer si expande el

00:19:26.700 --> 00:19:33.720
árbol esta parte, dígame, en el que creo. No, acá, la que hice. Váyase a su árbol del

00:19:33.720 --> 00:19:43.420
metadata, expanda el árbol, expanda el árbol ese de Hadoop, expandalo. Listo, a ese Hadoop que

00:19:43.420 --> 00:19:48.420
tiene ahí, que fue la conexión que hizo ahora, le da click derecho. Y dígale que sobre ese Hadoop va a

00:19:48.420 --> 00:19:55.820
crear un sistema de fichieros de conexión, ese que está ahí. HDFS. Listo. Llámelo,

00:19:56.140 --> 00:20:00.820
yo lo llamé HDFS, donde le colapsa, le le next y no hace más nada y le da finish ahí.

00:20:00.820 --> 00:20:07.460
Listo. Ahora, mire cómo cambia ahora. Son dos formas de conexión. Una conexión que dice netamente

00:20:07.460 --> 00:20:12.080
dinámica y esta conexión que está netamente estática. ¿Cuál es el inconveniente? Pues

00:20:12.080 --> 00:20:17.400
la dinámica. La dinámica es que cada vez que agregues, toca configurar el contexto,

00:20:17.900 --> 00:20:22.280
¿cierto? Pero tienes flexibilidad, puedes cambiar el contexto y la IP te cambia,

00:20:22.580 --> 00:20:26.940
pues cambias el contexto a la IP y listo, te funcionan todos si la IP cambia. En este

00:20:26.940 --> 00:20:30.460
caso, en particular, pues la ventaja que tengo con una metadata, que nada más la

00:20:30.460 --> 00:20:34.540
configura una vez, la desventaja es que si me cambia la configuración del Hadoop,

00:20:34.620 --> 00:20:39.520
me toca configurar, cambiar la configuración de metadata. Y entonces, ahora ¿cómo haces?

00:20:39.600 --> 00:20:56.640
Váyase ahora a HDFS Connection, por favor. Sí, estamos en, perdón, que pena, que pena,

00:20:56.640 --> 00:21:03.540
vamos a, estamos en leer datos, que pena, vamos a leer datos. Primero, el contexto,

00:21:03.840 --> 00:21:08.180
vamos a importar los contextos entonces, por si vamos a usar algo, en leer datos,

00:21:08.360 --> 00:21:21.620
que pena, gracias por la observación. Voy a cerrar los demás elementos. Pero mire,

00:21:21.660 --> 00:21:25.660
¿cómo voy a usar la conexión nueva que tengo? Voy a colocar aquí un Tepreyoc ya

00:21:25.660 --> 00:21:33.680
por costumbre, aquí Tepreyoc. Y de todos modos, voy a agregar un objeto de tipo T HDFS Connection,

00:21:33.680 --> 00:21:55.640
que lo necesito. Conecta, por favor, el Tepreyoc con el HDFS Connection. Conecte el

00:21:55.640 --> 00:22:00.380
diferente, vamos a usar el metadata que creamos de Hadoop. Expanda, por favor,

00:22:00.440 --> 00:22:06.560
la configuración del HDFS Connection. Sí, en el de leer, estamos en el de leer datos,

00:22:07.220 --> 00:22:11.100
en el Joke leer datos, ok. Si es nuevo, importe los contextos por si acaso. Estando

00:22:11.100 --> 00:22:16.740
en la configuración del HDFS Connection, mire lo que va a hacer ahora. Donde dice

00:22:16.740 --> 00:22:21.720
property tight, no vamos a construir la conexión, sino vamos a usar una que

00:22:21.850 --> 00:22:27.050
tiene metadata. Para eso, dele click en el combo boss y escoja la opción repositorio.

00:22:30.150 --> 00:22:36.750
Repositorio. En el HDFS Connection, escoja camie de build a property y escoja la opción

00:22:37.770 --> 00:22:44.810
repositorio. Acto seguido, le va a expandir un text file con un botón, dele click en el

00:22:49.450 --> 00:22:58.050
botón. Está demorando para abrir, pero abre ahí. Y expanda Hadoop, le va a decir la conexión y

00:22:58.050 --> 00:23:04.910
la conexión al HDFS que tiene ahí. Por favor, expanda el HDFS y escoja el AXA,

00:23:05.130 --> 00:23:10.850
el HDFS AXA que usted tuvo, el que creamos al final. Y le da ok.

00:23:13.790 --> 00:23:19.950
Entonces, él toma la configuración de ese señor que está allá. Dese cuenta que

00:23:19.950 --> 00:23:24.410
automáticamente le agregó la dirección y el puerto por donde se va a conectar.

00:23:25.990 --> 00:23:31.530
Son dos formas de hacer lo mismo, cada uno con ventajas y desventajas. Ya usted

00:23:31.530 --> 00:23:35.050
anotará, dependiendo del contexto de su problema, cómo hace para conectarse.

00:23:36.050 --> 00:23:43.870
Ya lo demás, sí, dígame. Sí, señor, sí, señor. Pero lo que pasa es que después pierdo

00:23:43.870 --> 00:23:49.530
flexibilidad si me cambia la IP, cierto. Puedo tener un problema ahí. Listo, vamos entonces

00:23:49.530 --> 00:23:54.250
a lo siguiente. Ahora, este componente sí es sumamente importante porque este componente

00:23:54.250 --> 00:23:58.310
ahora sí me va a permitir hacer lo que creemos que es procesar. Ojo, lo siguiente,

00:23:58.730 --> 00:24:03.050
los ejemplos que hemos venido haciendo de Hadoop solamente hemos ocupado la parte

00:24:03.050 --> 00:24:07.770
de almacenamiento. Ahora vamos a hacer cómo hacemos para procesar. Entonces,

00:24:07.830 --> 00:24:11.910
para procesar vamos a hacer lo siguiente ahora. Primero vamos a buscar un componente

00:24:11.910 --> 00:24:32.930
que se llama HDFS, HDFS input. Listo. Entonces, ojo a lo siguiente. Esto es

00:24:32.930 --> 00:24:38.630
importante para que entienda lo siguiente. Entendemos las tecnologías ya de lo que es

00:24:38.630 --> 00:24:46.910
Big Data tradicional, cierto. El Big Data tenemos T-PIC, Matreviews y Spark. Son los señores que

00:24:46.910 --> 00:24:53.150
están en el mercado. Hoy en día quien reina es Spark. Entonces, a este componente no tiene,

00:24:53.350 --> 00:24:56.930
esta versión no tiene un componente que se llama T-Spark, pero el que tienes tú

00:24:56.930 --> 00:25:02.450
haya instalado en tu empresa sí lo tiene. Ojo a lo siguiente. Si aquí tengo un componente

00:25:02.450 --> 00:25:09.530
HDFS input y estoy conectado a un clúster de Hadoop, significa que todo lo que conecte yo

00:25:09.530 --> 00:25:16.910
de a partir de esto que está aquí se va a procesar con Big Data. Más específicamente

00:25:17.970 --> 00:25:25.350
Matreviews. Entonces, ¿qué sería? Espérate, te busco aquí un momento algo. Matreviews.

00:25:25.550 --> 00:25:31.710
Un momento para que me entiendan la idea que esto es primordial. Espera un momento,

00:25:31.710 --> 00:25:46.150
un momentito. Google, que lo tenía por aquí. Matreviews. Entonces, un momento y

00:25:46.150 --> 00:25:52.730
encuentro uno más interesante. Yo le había comentado que Matreviews ¿qué es? Es un

00:25:52.730 --> 00:26:00.390
framework para utilizar el clúster que tienes de Hadoop. Entonces, por aquí se me perdió.

00:26:00.390 --> 00:26:08.530
Este que está aquí, esto que está aquí. Al final tú lo que haces con Matreviews es codificar.

00:26:09.370 --> 00:26:15.270
Lo que haces con Spark es codificar. Entonces, mire lo siguiente cómo trabaja la herramienta.

00:26:15.990 --> 00:26:20.610
Esto que está aquí que es un script para cualquier job que puede ser para agrupar,

00:26:20.750 --> 00:26:25.010
sumar o sacar promedio lo que tú quieras. Cuando tú estás en la herramienta,

00:26:25.010 --> 00:26:29.890
esta herramienta trabaja de la siguiente forma. Después de este que se me perdió,

00:26:31.530 --> 00:26:38.530
me perdió, después que yo conecte cualquier componente de aquí para adelante es lo que

00:26:38.530 --> 00:26:44.010
va a hacer es generar un script en Macreviews y lo va a ejecutar contra el clúster de Hadoop

00:26:44.010 --> 00:26:49.710
que tenga. Y ahí es donde está usando el progresamiento a nivel de Big Data. Después

00:26:49.710 --> 00:26:53.910
de ese componente para adelante. Ahora, si yo tengo un componente que es tipo T Spark,

00:26:54.610 --> 00:27:00.310
todos los componentes que conecte yo de ahí hacia adelante van a generar un script en Spark,

00:27:00.470 --> 00:27:07.670
más específicamente en Java y van a ejecutar eso contra el clúster de Spark. Entonces,

00:27:08.190 --> 00:27:12.990
ahora sí vamos entonces a entender la parte de cómo se procesa. Bueno, entenderla a nivel ya

00:27:13.790 --> 00:27:18.030
como caja blanca, caja negra, perdón, como caja negra que lo que está allá abajo es una

00:27:18.030 --> 00:27:22.130
codificación que él genera. Pero al final, cuando yo tengo el T input de ahí para

00:27:22.130 --> 00:27:26.970
adelante, él genera un script en Macreviews para este caso y ahí es que aplica progresamiento

00:27:26.970 --> 00:27:32.570
de Big Data para que entienda esa parte. Pero bueno, vamos entonces a lo siguiente ahora.

00:27:33.890 --> 00:27:39.170
Vamos ahora a revisar por favor y porque es que hay algunos que de pronto no tienen

00:27:39.170 --> 00:27:48.190
algunos archivos, revise por favor su carpeta de de AXA que tenemos en Hadoop y confírmeme

00:27:48.190 --> 00:27:59.670
si tiene demográfico.csv. Si no, lo hacemos con Censo el ejemplito. En el caso tuyo en

00:27:59.670 --> 00:28:08.310
alguien tiene que ir a Browse, acá en Utilidades y vas a Browse the file y ahí te aparecen para

00:28:08.310 --> 00:28:14.470
ver. Creo que todos tenemos Censo, ¿verdad? Si no lo hacemos con Censo. ¿Todos tenemos

00:28:17.370 --> 00:28:21.890
AXA? Creo que no tenemos alguno de demográfico. Entonces voy a hacer el ejemplo con Censo.

00:28:23.890 --> 00:28:28.090
Entonces mira el primer ejemplo que vamos a hacer de procesamiento de Big Data. Listo?

00:28:28.530 --> 00:28:37.250
Si te das cuenta, este job que está aquí va a usar las dos cosas a nivel de tecnologías

00:28:37.250 --> 00:28:42.910
de Hadoop. Va a tomar lo que está almacenado en Hadoop y lo va a procesar entonces con Big

00:28:42.910 --> 00:28:50.370
Data. El ejemplo que quiero hacer es sencillo. Voy a mostrar cómo está configurada esa Censo.

00:28:52.070 --> 00:28:58.730
Listo, voy aquí a editar para que me entienda el ejercicio. Y aquí lo que tiene es un código,

00:28:58.970 --> 00:29:04.550
esto se censó en un país que no recuerdo cuál es, pero entonces aquí lo que me interesa

00:29:04.550 --> 00:29:11.070
para el ejercicio que está el Censo, la cantidad de población de noche. No recuerdo

00:29:11.070 --> 00:29:18.490
bien qué es. Entonces lo que quiero hacer es lo siguiente. Quiero sacar el promedio de

00:29:18.490 --> 00:29:24.150
personas que fueron censadas de noche. Eso es lo que quiero sacar. Te vas a dar cuenta que

00:29:24.150 --> 00:29:28.010
los ejercicios que estamos haciendo son los típicos ejercicios que tú haces normalmente

00:29:28.010 --> 00:29:35.010
a nivel de baseato. Agrupa, suma, sacas promedio porque eso es Big Data. Eso es Big Data.

00:29:35.130 --> 00:29:39.110
Big Data lo que te ayuda es en lo que tú hacías tradicionalmente, Big Data lo colocas

00:29:39.110 --> 00:29:43.990
y te va a mejorar teniendo en cuenta la cantidad de volumen que vas a tener, pues te mejora

00:29:43.990 --> 00:29:47.950
mucha velocidad por la parte del clóster que vamos a tener montado. Pero lo primero

00:29:47.950 --> 00:29:53.610
que vamos a hacer es lo siguiente. Vamos a sacar el promedio de ese campo que se

00:29:53.610 --> 00:30:01.250
llama Census Night Population. Eso es lo que queremos hacer. Listo. Ahora, eso

00:30:01.250 --> 00:30:07.350
de aquí para adelante, o sea, esto que vamos a hacer te funciona con Data Integration.

00:30:07.350 --> 00:30:14.430
La única diferencia que tienes con agregar a esta herramienta el H Input es que de aquí

00:30:14.430 --> 00:30:18.770
para adelante lo vas a ejecutar con clóster a nivel de Big Data. Pero esto que vamos a hacer

00:30:18.770 --> 00:30:23.270
exactamente lo voy a hacer con Data Integration sin Big Data. O sea, con tecnología abro

00:30:23.270 --> 00:30:28.730
comillas doble lo que llaman tradicional. Listo. Entonces, vamos a lo siguiente. Vamos

00:30:28.730 --> 00:30:33.510
al TF Input, por favor, y configuremos la conexión. Entonces decimos igual a los demás,

00:30:33.510 --> 00:30:36.070
le vamos a decir que vamos a hacer una conexión existente.

00:30:40.750 --> 00:30:46.190
Primero, configuremos donde está la opción File Name el archivo de entrada. La ruta del

00:30:46.190 --> 00:30:54.530
archivo sería ¿Cuál? Sería Slash, AXA, ojo que hay alguno que tiene el AXA en

00:30:54.530 --> 00:30:59.390
mayúscula y el Hado está en Linux, lo tonto le hace error. Entonces, ojo con los nombres

00:30:59.390 --> 00:31:05.870
porque aquí es sensible a mayúscula y minúscula porque vamos a hablarlo de Hadoot. Entonces,

00:31:06.470 --> 00:31:11.510
Hadoot está en Linux. Porque si tuviese Hadoot en Windows no hubiese problema. Vamos entonces

00:31:11.510 --> 00:31:16.130
aquí AXA Slash y le digo búscame dentro la carpeta AXA un archivo que se llama

00:31:16.130 --> 00:31:21.570
AXA.com. Census punto C S V, ojo que coincida al nombre.

00:31:28.370 --> 00:31:33.530
Recuerda, sí, usa Hadoot, claro, que acostumbre. Señor, muchas gracias.

00:31:34.610 --> 00:31:38.210
Sí, hay que, porque este por defecto no escoge la conexión, sí señor, así es, muchas gracias.

00:31:43.010 --> 00:31:44.610
Esto sí, perdón, perdón.

00:31:46.290 --> 00:31:51.330
Muestre para ver. Usó ya, usó la conexión existente. Le dió clic aquí en conexión.

00:31:52.770 --> 00:31:57.190
Y por favor aquí, gracias al que ven. Y aquí por favor recuerde coger, porque por

00:31:57.190 --> 00:32:01.770
defecto no escoge aunque haya uno. Normalmente lo que tú tienes a nivel de big data de

00:32:04.290 --> 00:32:11.870
datos para procesar lo tienes en archivos, la mayoría en formato C S V. No significa que no

00:32:11.870 --> 00:32:16.690
puedas guardar en otro formato. Lo que hace es que la herramienta te está limitando un poco porque

00:32:16.690 --> 00:32:23.070
ese texto, es decir, aquí tienes dos tipos de archivos. Un sequence file normalmente es para

00:32:23.070 --> 00:32:30.730
leer los bytes y eso ¿para qué sería? Guardate una imagen en el HDFS y quieres

00:32:30.730 --> 00:32:35.850
procesar esa imagen para convertirla, no sé, los datos en texto usando big data.

00:32:36.010 --> 00:32:40.530
Entonces usa sequence files. Acá text file asume que la entrada que viene de allá es un

00:32:40.530 --> 00:32:46.530
S V que tienes en el HADU. No significa que en el HFS no puedas guardar lo que tú quieras,

00:32:46.550 --> 00:32:51.630
pero la realidad está limitando en esa parte. Entonces hay que comprobar que el archivo que

00:32:51.630 --> 00:32:55.650
está allá en el HADU está separado por punto y coma. Te compruebo. Vamos a ver, está separado

00:32:55.650 --> 00:33:02.690
por. Voy a ver aquí para ver en mi máquina en el Censo. Está separado por coma. Por ende,

00:33:02.870 --> 00:33:09.070
voy a definir que el separador es coma y ese señor tiene un encabezado. Le coloco aquí uno.

00:33:09.710 --> 00:33:11.190
En la versión del.

00:33:14.190 --> 00:33:22.650
Del entre place y demás opciones. Acá tienes pocas. Y aquí puedes escoger el encoding y aquí

00:33:22.650 --> 00:33:30.990
deberías usar UTF-8. Eso es lo que podríamos configurar ahí. Tener en cuenta el separador,

00:33:31.050 --> 00:33:36.650
el carácter y verificar si tenemos un encabezado. Y acto seguido por costumbre

00:33:36.650 --> 00:33:39.810
que estamos manejando y va por nuestro idioma, pues nos acostumbramos a UTF-8.

00:33:41.370 --> 00:33:46.670
Esos datos no hay problema con UTF-8 porque están en inglés, entonces ahí el ISO que tiene por

00:33:47.910 --> 00:33:52.770
defecto. No hay problema con esos datos que vamos a ver ahí. Te la voy a quedar

00:33:52.770 --> 00:33:55.990
viendo. Te la responde la siguiente clase porque en realidad nunca le he probado esa

00:33:55.990 --> 00:34:00.530
opción. Te la voy a quedar viendo y te la responde el martes entonces. Sigo entonces.

00:34:01.610 --> 00:34:08.810
Ya lo que viene es el típico herramienta de TL de aquí para adelante. Ya lo que viene son los

00:34:08.810 --> 00:34:12.630
mismos componentes que viste en el integration. Vamos a agregar unos nuevos que no alcanzamos

00:34:12.630 --> 00:34:20.950
a ver por tiempo ya. Al final, ¿qué me toca hacer a mí? Como quiero sacar el promedio de

00:34:20.950 --> 00:34:25.510
esto, si hacemos esto, que no es SQL, pero yo creo que la mayoría de otra forma está

00:34:25.510 --> 00:34:31.170
muy ligado con SQL. Mira lo siguiente. Al final, me tocaría más o menos, si fuese SQL,

00:34:31.270 --> 00:34:43.110
sería más o menos un SELECT FROM tabla, vamos a sumar el census, GROUP BY esta columna y acá

00:34:43.110 --> 00:34:50.350
puedo decirle, mire, mire acá, muéstrame, entonces, sácame el promedio AVG de este

00:34:50.350 --> 00:34:58.170
señor que está acá. Eso sería a nivel de SQL. En este caso, es más, perdón, este GROUP BY no

00:34:58.170 --> 00:35:04.230
es necesario, qué pena, porque quiero sacar el promedio completo. O sea, en este caso el GROUP

00:35:04.230 --> 00:35:08.750
BY es implícito, toda la tabla. Esto es lo que tengo que hacer a nivel de SQL. Es decir,

00:35:08.770 --> 00:35:12.890
me toca agrupar como tab, ¿cierto? Para hacer una operación de GROUP. Entonces,

00:35:12.990 --> 00:35:17.030
en el caso particular de la herramienta que toda la gente tiene, la herramienta tiene

00:35:17.030 --> 00:35:24.890
lo siguiente. Busque un componente que se llama T-Aggregated Row, agregated,

00:35:25.190 --> 00:35:31.270
agregated, que significa como agrupar en inglés, ¿cierto? E inicialmente voy a mandar esto a un

00:35:31.270 --> 00:35:41.110
T-Lock. Simplemente voy a empezar con un T-Lock aquí, T-Lock, T-Lock Row, para ver el dato que

00:35:41.320 --> 00:35:49.220
nada más. Nuevamente repito, todo lo que conecte del T-HDF input hacia allá, va a generar un

00:35:49.220 --> 00:35:55.720
strict y lo va a progresar convictado. Simplemente eso. Eso es, digamos que ahí está, erradica

00:35:55.720 --> 00:36:01.680
el, digamos que la ventaja de la herramienta. Eso es. Lo demás es la típica herramienta de

00:36:01.680 --> 00:36:08.760
T-Lock que ya usted conoce. Entonces, conecto este HDF input con este T-Aggregated Main,

00:36:08.760 --> 00:36:14.620
pero aquí hay un pequeño inconveniente que me toca solucionar, que es que no tengo el modelo

00:36:14.620 --> 00:36:19.360
de entrada del archivo. Mira lo siguiente acá.

00:36:23.880 --> 00:36:30.400
El esquema del modelo de datos no lo tengo. Tiene dos opciones. Una opción es que te desgaste

00:36:30.400 --> 00:36:35.520
haciéndole de forma manual, con los nombres que tú quieras, los tipos que tú quieras,

00:36:35.580 --> 00:36:40.620
o la otra forma que me parece la más sencilla, la siguiente. Es la que te recomendaría.

00:36:42.160 --> 00:36:50.620
¿Qué haces? Lo siguiente. Este archivo en la vida real, el archivo de entrada en la

00:36:50.620 --> 00:36:55.880
vida real puede ser mucho más grande. Un momento que no alcanzó a ver.

00:37:01.600 --> 00:37:07.680
Este archivo que se llama Census en la vida real va a ser más grande. Entonces,

00:37:07.700 --> 00:37:12.080
¿Qué te recomendaría que hiciera? Mira, bueno, lo que he hecho yo en algunos casos. Le doy,

00:37:13.220 --> 00:37:18.380
edito la fuente del archivo y como el archivo es muy grande y si es muy grande puede que

00:37:18.380 --> 00:37:26.760
mucho tiempo nada más copio las dos líneas. Las dos líneas o tres líneas, no sé,

00:37:27.280 --> 00:37:33.260
pocas líneas copio. En este caso cogí tres líneas. Control C y creo aquí,

00:37:33.420 --> 00:37:44.180
bueno, en cualquier ubicación creo un nuevo archivo con esas tres líneas. ¿Por qué? Porque

00:37:44.180 --> 00:37:49.140
la idea es que no me lea la cantidad de datos que pueda tener ese archivo y se puede demorar

00:37:49.140 --> 00:37:53.120
mucho tiempo para hacer lo que quiero. Entonces, nada más copio porque al fin y al cabo lo que

00:37:53.120 --> 00:37:58.120
me interesa es la metadata. O sea, metadata técnico de los nombres de la columna y quizás

00:37:58.120 --> 00:38:07.580
que me puede identificar los tipos. Guardo a este señor. Safe. Bueno, aquí lo guardo.

00:38:08.780 --> 00:38:11.740
Bueno, aquí me lo guardo con el mismo nombre. Voy a cambiar aquí el nombre.

00:38:12.820 --> 00:38:19.820
Clip derecho, rename y le voy a llamar census metadata, under score metadata.

00:38:22.360 --> 00:38:28.280
Y tengo por defecto, bueno, la herramienta, este es un archivo CSV, pero la herramienta por

00:38:28.280 --> 00:38:32.860
defecto busca CSV, pero tú puedes leer independiente de la extensión porque lo que

00:38:32.860 --> 00:38:36.900
importa es el contenido. Si quieres cambiarle la extensión porque por defecto lo coloca

00:38:38.080 --> 00:38:43.700
.txt Creo que la mejor opción es la siguiente. Simplemente te vas acá y abres una shell en esta

00:38:43.700 --> 00:38:51.240
ubicación. Te subes acá en la barra de elecciones y escribes CMD para que te haga una shell CMD en

00:38:51.240 --> 00:39:00.380
esa ubicación. Y le das el comando Ren. Le das C que empieza a tap y busca el census

00:39:01.520 --> 00:39:08.800
copia. Ah, no, pero me lo generó .csvb. Ah, no, perdón, es que se llama census metadata.

00:39:11.360 --> 00:39:18.380
Un momento que se me perdió aquí algo y fue el archivo donde me lo creó. Yo no había

00:39:18.380 --> 00:39:24.260
guardado este archivo aquí. Perdón, qué pena. El archivo que había creado con las

00:39:24.260 --> 00:39:34.020
líneas, no me lo agrego aquí. Vamos a ver, clic derecho, new file de tipo text. Sí, sí. ¿Y dónde me lo guardo?

00:39:35.080 --> 00:39:42.240
Census metadata. Ahí está. Qué pena, ahí está. Ya estoy mal de la vista hoy. Bueno, voy a abrir

00:39:42.240 --> 00:39:53.600
aquí entonces. Vas aquí y le dices buscas lo que empiece por C. Perdón, census. Aquí lo

00:39:53.600 --> 00:40:01.020
tengo metadata. Esto viene, se copió Microsoft de Linux y le das el nombre nuevamente como tú

00:40:01.020 --> 00:40:07.260
quieras. Si tú quieres, busca census metadata nuevamente para que cambiar, tener que no

00:40:07.260 --> 00:40:17.040
copiar todo el nombre completo y le colocas aquí CSV. Y él te lo. Ah, pero que si a

00:40:17.040 --> 00:40:21.240
veces este Windows tiene una característica. Tienes que configurarlo para eso. Mira lo

00:40:21.240 --> 00:40:26.940
siguiente. Vamos a, vamos a mostrarte, hazlo tú, es más, hazlo tú un momento y yo te digo que

00:40:26.940 --> 00:40:31.820
de pronto va a decirle sale. Porque este Windows a veces depende de cómo lo configures. ¿Quién me

00:40:31.820 --> 00:40:38.860
habló? Julio, ¿Verdad? Momento, Julio, y me conecto entonces. Veo para ver tú, tu pantalla.

00:40:43.920 --> 00:40:48.860
Listo, haz lo siguiente. Ahí la, vete, vete un momento. Abre una shell, por favor, ahí.

00:40:50.020 --> 00:40:57.120
En esa ubicación, abre una shell. No te preocupes. Abre una shell. Quieres darle

00:40:57.120 --> 00:41:06.160
CMD ahí, CMD. Escribe CMD, escribe CMD, CMD. Se fue. Escribe, bueno, no, pero ahí mismo,

00:41:06.360 --> 00:41:11.420
para que te abriera esa ubicación. Mira, mira, vete a Prodativo nuevamente,

00:41:11.460 --> 00:41:15.220
vete a Prodativo. Se selecciona toda la ruta. Sí, selecciona toda la ruta, selecciona toda la

00:41:15.440 --> 00:41:26.080
ruta. Escribe CMD ahí, CMD. C, enter. Y te abre una shell en esa ruta. Ahí está la ruta.

00:41:26.380 --> 00:41:36.740
Ahora dale dir. Dale dir ahí. Enter. Mira que el archivo lo tiene. .cswe.txt. Dale Ren ahí, Ren.

00:41:37.560 --> 00:41:46.440
Sen, busca, escribe C. Bueno, ahí lo es. Si tú quieres, bueno, copió. Si quiere, da tap para que

00:41:46.440 --> 00:41:51.860
te busque todo lo que empiecen por C y dale tap hasta que encuentren el que buscas. Ahí lo está.

00:41:52.080 --> 00:41:56.260
Espacio ahora, dale espacio. Busca nuevamente lo que empiecen por C y busca metadata nuevamente

00:41:56.260 --> 00:42:03.180
y le quitas el txt. Dale tap, tap. Quítale el txt ahí y dale enter. Dale dir ahora.

00:42:03.200 --> 00:42:11.720
Ahí está. Lo que pasa es que ese es el problema de Windows, que normalmente me toca configurarlo

00:42:11.720 --> 00:42:20.060
para que me pueda cambiar la extensión justamente cuando tenga ahí. Sí. Esas,

00:42:20.220 --> 00:42:25.200
esa es otra, sí. Porque por defecto me guarda con txt ese señor. Esa es otra.

00:42:25.460 --> 00:42:30.660
Comilla doble todos los, esa también es otra. Otra forma. Muchas gracias por el aporte,

00:42:30.660 --> 00:42:35.420
se me ha escapado también esa. Bueno, vamos entonces, ¿qué hacemos ahora?

00:42:35.500 --> 00:42:40.700
Ese es el truco nada más para no tener que copiar todo ese esquema de metadata como tal.

00:42:41.200 --> 00:42:47.840
Vamos nuevamente entonces a la ventana, listo, que tengo acá del señor Talen,

00:42:47.940 --> 00:42:56.560
tengo aquí. Y voy a crear una metadata con ese archivo que cree nuevo. Entonces,

00:42:56.560 --> 00:43:08.120
voy aquí a delimited, estoy en derecho, crear delimited. Lo voy a llamar census, next. Busco

00:43:08.120 --> 00:43:14.780
el archivo nuevo que genere. Estamos simulando que el archivo original es demasiado grande,

00:43:14.780 --> 00:43:26.740
es claro. Vamos aquí a temporal. QA y escojo census metadata, aquí la tengo. Open. Next.

00:43:28.280 --> 00:43:34.260
El archivo está separado por coma. Voy a decir que es UTF-8, aunque esto no me,

00:43:34.600 --> 00:43:39.180
no tiene nada que ver porque no va a leer desde aquí. Y voy a colocarles que tienen

00:43:40.940 --> 00:43:44.500
cabezado. Saben, por la práctica que hicimos a nivel de un archivo real,

00:43:44.660 --> 00:43:48.520
lo más recomendable es que uses CSV encerrado entre comillas dobles por si acaso tienes

00:43:48.520 --> 00:43:52.700
comillas dobles. En este caso el archivo no lo tienes. Entonces, no nos preocupemos la

00:43:52.700 --> 00:43:58.780
vida por eso. Está, ¿qué pasó aquí? No lo leyó. Vamos a ver qué pasó. Está leyendo,

00:43:58.840 --> 00:44:06.760
vamos a ver. Aquí está, listo, perfecto. Next. Dale atrás y vuelve nuevamente para

00:44:06.760 --> 00:44:12.020
ver qué pasó. Dale atrás, tecla atrás y siguiente para ver. No sé por qué se quedó

00:44:13.040 --> 00:44:20.280
ahí. Me avisa si no. Dale, dale atrás un momento a ver. Ah, no tiene datos. Sí,

00:44:20.360 --> 00:44:29.440
no leí de guardar. Leí de guardar, ¿qué fue? Vamos a darle finish aquí. Sí,

00:44:29.440 --> 00:44:33.440
lo dejamos así porque este archivo no tiene comillas dobles. Ya en la vida práctica

00:44:33.440 --> 00:44:37.960
hay que hacer un digamos que como el caso del ataque de tiburones que eso venía en un

00:44:37.960 --> 00:44:44.860
formato pues muy complicado, ahí lo más recomendable si es de levantar por comillas

00:44:44.860 --> 00:44:54.280
dobles. No sé si alguno tuvo un problema ahí. Bueno, entonces, aquí lo que hacemos,

00:44:56.580 --> 00:45:02.860
vamos por acá, un momento. Listo, bien. Ya después que hice eso, por favor,

00:45:03.440 --> 00:45:08.940
no que. Vamos a ver. Muestra para ver el preview, para ver. Muestra el preview. Dale atrás un

00:45:08.940 --> 00:45:13.760
momento. Dale atrás, dale atrás un momento. Dale next para ver nuevamente.

00:45:19.220 --> 00:45:26.640
Este error sale en algunos casos y es un bug que puede tener esta versión de esta herramienta

00:45:29.160 --> 00:45:33.580
gratuita. Salte de ahí un momento, dale cancelar. Vuelve a hacer, intenta hacer nuevamente la

00:45:33.580 --> 00:45:39.160
cancelada, intenta nuevamente hacer el procedimiento. Y ahí fue. Dale un momento. Dale, dale

00:45:39.160 --> 00:45:46.780
census nuevamente para ver. Census ahí. Dale next, por favor. Dale, bueno, escoge el archivo.

00:45:47.840 --> 00:45:52.120
Perfecto. Dale next. Vamos a lo siguiente. Acá metele en código a UTF-8 un momento a ver.

00:45:52.720 --> 00:45:59.980
A UTF-8. Por coma. Un momento para ver. Déjame coger un momento tu máquina. Un momento para

00:45:59.980 --> 00:46:04.800
ver. Refresh. Eso es un error ya. Vamos a hacer lo siguiente. Vamos a cambiar de archivo.

00:46:06.160 --> 00:46:11.160
Si no sé si fue que el forma. Vamos a coger el archivo census, que es el original,

00:46:11.320 --> 00:46:17.760
que tampoco tiene muchos datos. Next. Hagámoslo al ingeniero. Vamos a restaurar la herramienta

00:46:17.760 --> 00:46:22.400
un momento. Voy a salvar a este yoco un momento y voy a restaurar la herramienta. Los demás,

00:46:22.580 --> 00:46:30.860
por favor, váyanse al archivo delimitado en Metadata. Expande census, que fue el archivo

00:46:30.860 --> 00:46:37.280
que creamos, y dele clic derecho en Metadata y dele editar esquema. Dele aparecer en esta

00:46:38.260 --> 00:46:47.700
ventana. Un momento Alberto, a ver qué pasó. En esta opción hay para exportar, que es el

00:46:47.700 --> 00:46:55.180
modelo. Y entonces vamos a colocarle aquí census y no se lo olvide el punto xml. Census.xml.

00:46:56.720 --> 00:47:05.540
Y le da save para guardar el metadata. Esto lo hicimos en la última clase. Data integration.

00:47:06.680 --> 00:47:17.680
Ese metadata ahora importelo en el THDS input mientras solucionamos con Alberto acá. A ver

00:47:17.680 --> 00:47:27.320
voy a entrar aquí. Voy por acá a ver qué pasa. Vamos entonces Metadata, listo, clic derecho.

00:47:29.900 --> 00:47:34.120
En el esquema del HDFS input.

00:47:39.440 --> 00:47:43.960
Census. Listo, vamos aquí en browse.

00:47:57.980 --> 00:48:05.760
Un momento, vamos a obtener el metadata del archivo que hicimos ahora. Un momento,

00:48:05.800 --> 00:48:11.140
ya lo voy a hacer nuevamente porque también Alberto se quedó. Alberto, no sé si me preguntas

00:48:11.140 --> 00:48:19.040
qué pasó ahí, no sé Alberto. Listo, Alberto vas conmigo entonces. Los que ya lo hicieron,

00:48:19.040 --> 00:48:22.060
perfecto. Los que todavía no han hecho esta parte la hacemos nuevamente porque Alberto se

00:48:22.060 --> 00:48:27.460
me quedó. Vamos primero al archivo del limitado que creamos en Metadata que se llama census.

00:48:27.740 --> 00:48:33.100
Expandes census y te aparece Metadata. Dale clic derecho a Metadata y le das editar esquema.

00:48:36.100 --> 00:48:45.020
Clic derecho, editar esquema. El penúltimo botón. El penúltimo botón permite exportar.

00:48:46.580 --> 00:48:52.020
Le das clic derecho al penúltimo botón y vas a colocarle un nombre. Vamos a llamarlo

00:48:52.020 --> 00:49:01.420
census y no se te olvide la extensión .xml. .xml. Census.xml. Safe. Oh, lo estoy guardando en

00:49:01.420 --> 00:49:06.500
el botón. Recuerde la ubicación donde lo colocaste. Le das safe. Bueno, yo lo tenía

00:49:06.500 --> 00:49:13.260
listo y le das finish a la Metadata que tenías abierta. Vamos ahora a importar

00:49:13.260 --> 00:49:20.700
esa Metadata al thdfinput. Que estoy leyendo ese archivo. Dale doble clic al thdfinput.

00:49:24.740 --> 00:49:30.940
Dale clic en editar esquema y aparece el penúltimo botón activado.

00:49:32.460 --> 00:49:38.420
Dale clic a ese botón por favor y busque el archivo census que creó ahora.

00:49:39.940 --> 00:49:43.520
Y eso lo que le va a hacer es que le haga importar el esquema del archivo. Evidentemente

00:49:43.520 --> 00:49:49.080
estos son cuatro columnas. Quizás hubiese sido más rápido copiar los nombres que yo

00:49:49.080 --> 00:49:55.000
quería. Pero estamos hablando ya de un, digamos, algo de producción que tenga ya

00:49:55.000 --> 00:49:58.400
en el empresarial que seguramente va a ser mucha más columna y no voy a desgastarme

00:49:58.400 --> 00:50:02.540
colocando los nombres de columna y los tipos de datos. Es un desgaste ahí pues

00:50:02.540 --> 00:50:12.880
bastante fuerte. Le damos aquí ok. Yes. Y listo. Vamos a configurar el

00:50:12.880 --> 00:50:18.060
de este agregated road. Si desea, vamos a hacer aquí un pequeño break de

00:50:18.060 --> 00:50:21.700
James Montico para tomar algo de. Buscar un poquito de agua y volvemos en

00:50:21.700 --> 00:50:25.380
diez minutos para hacer esa configuración, ¿OK? Listo, gracias a

00:50:25.380 --> 00:50:31.760
ustedes. Bueno, continuamos. Un momento, un momento, por favor, que venga.

00:50:37.180 --> 00:50:41.900
Bien, ahora sí, que venga, continuamos. Listo. ¿Por qué le hice la

00:50:41.900 --> 00:50:47.740
similitud del ejercicio con una group by o con una consulta SQL? Porque

00:50:47.740 --> 00:50:51.200
normalmente cuando tú asocias lo que vas a buscar con SQL es muy fácil

00:50:51.200 --> 00:50:55.440
entender cómo funciona este componente que vamos a hacer ahora.

00:50:56.320 --> 00:50:58.460
Vamos entonces al T-agregated road.

00:51:01.380 --> 00:51:03.880
Por favor y vamos a configurarlo.

00:51:07.540 --> 00:51:14.700
La configuración es sumamente sencilla. En primer lugar, vas a colocar los

00:51:14.700 --> 00:51:17.260
elementos por los cuales tú vas a hacer el agrupamiento.

00:51:18.780 --> 00:51:23.200
Si se da cuenta con la analogía, yo quiero sacar el promedio total de los

00:51:23.200 --> 00:51:26.900
elementos que están en el archivo, por lo tanto no estoy haciendo ningún

00:51:26.900 --> 00:51:34.060
tipo de group by, ¿OK? Por lo tanto, ese elemento acá arriba, si hacemos la

00:51:34.060 --> 00:51:37.940
similitud de ese cuenta, cómo sacamos el promedio de todos los elementos de la

00:51:37.940 --> 00:51:42.340
tabla, bueno, en este caso el archivo, o simulando que sea una tabla, lo

00:51:42.340 --> 00:51:48.660
hacemos de esta forma. Por lo tanto, aquí este group by no iría nada,

00:51:48.820 --> 00:51:54.020
porque no tengo que agrupar por nada. Vamos ahora con las operaciones.

00:51:54.020 --> 00:52:00.760
Con las operaciones, yo tengo que sacar de salida el promedio.

00:52:01.340 --> 00:52:06.260
Entonces, ahora tengo que analizar cuál va a ser la entrada y cuál va a ser la

00:52:06.260 --> 00:52:11.280
salida mía, ¿OK? La salida mía solamente va a ser un dato que va a

00:52:11.280 --> 00:52:14.120
traer el promedio de ese valor que está ahí.

00:52:14.900 --> 00:52:19.080
Entonces, cuando tú identificas la salida, vamos a especificar entonces el

00:52:19.080 --> 00:52:23.140
esquema de salida. Dale clic derecho aquí donde dice editar esquema, por

00:52:23.140 --> 00:52:28.060
favor. Y note que por defecto tenemos todas las

00:52:28.060 --> 00:52:33.520
columnas de entrada. Tú tienes que configurar qué columnas deseas sacar

00:52:33.520 --> 00:52:37.880
nada más. Ahora, yo quiero sacar lo siguiente ahora. Voy a agregar aquí

00:52:37.880 --> 00:52:42.440
una columna nueva donde voy a tener el cálculo del promedio. Dale clic

00:52:42.440 --> 00:52:51.740
aquí. Y ahora voy a definir aquí el nombre de columna total, perdón, sí,

00:52:51.740 --> 00:52:56.140
total promedio. Total underscore promedio.

00:52:59.920 --> 00:53:03.860
Y especificas el tipo de datos según la salida que tú requieras. En este

00:53:03.860 --> 00:53:13.700
caso, la salida que requiero es type de tipo doble. Escoja la de tipo doble la

00:53:13.940 --> 00:53:14.260
salida.

00:53:17.360 --> 00:53:23.220
Note que aquí aparece un nullable. Significa que puede dar, o sea, si tú

00:53:23.220 --> 00:53:26.740
crees que la salida puede dar un nulo, tienes que especificar nullable.

00:53:28.440 --> 00:53:34.300
Si no especificas nullable, Java entiende que tú vas a sacar por lo

00:53:34.300 --> 00:53:39.580
menos un valor numérico. Si sacas un nulo, te manda error. Entonces, eso

00:53:39.580 --> 00:53:44.480
depende mucho de cómo tengas tus datos. Aquí lo dejo nullable por si acaso,

00:53:44.560 --> 00:53:46.900
pero al fin y al cabo yo sé que eso me va a dar un número. No hay ningún

00:53:46.900 --> 00:53:53.300
problema. Entonces, le damos aquí OK. Ya después que confié la salida,

00:53:53.660 --> 00:53:57.220
entonces especificas las operaciones que van a llenar esa salida. Dale

00:53:57.220 --> 00:54:04.560
clic aquí en el más para Operation. Y te debe aparecer por defecto la

00:54:04.560 --> 00:54:09.100
única salida que tienes que es total promedio. Acto seguido,

00:54:10.100 --> 00:54:14.340
aquí en funciones van a aparecer las mismas funciones que tú conoces de

00:54:14.980 --> 00:54:20.540
funciones de agrupamiento que estás acostumbrado a en SQL. Pero aquí el

00:54:20.540 --> 00:54:25.240
señor te agrega un par de funciones que vamos a ver cómo son, cómo tal. Pero

00:54:25.240 --> 00:54:29.380
en este caso en particular me interesa la función que se llama AVG,

00:54:29.540 --> 00:54:32.640
que es promedio de inglés. Es como la función AVG.

00:54:33.980 --> 00:54:38.400
Te recomiendo algo, por favor. Esto es un table en Java y el table en Java

00:54:38.400 --> 00:54:42.740
se nos actualiza cada vez que hagas un cambio. Acostúmbrate siempre. Cada vez

00:54:42.740 --> 00:54:47.080
que haga un cambio le das enter para que lo tome. Porque a veces no le das enter

00:54:47.080 --> 00:54:52.440
y no le toma el cambio. Seguidamente vas a escoger la columna de entrada

00:54:52.440 --> 00:54:55.140
sobre la cual va a ser la operación. En este caso una operación de

00:54:55.140 --> 00:54:58.480
promedio. Por lo tanto, la columna de entrada tiene que ser numérica. Vete

00:54:58.480 --> 00:55:03.760
donde dice input y escoge la columna que en este cabo sería senso,

00:55:03.760 --> 00:55:10.540
conteo de personas de censo de noche. Y aquí algo muy importante y más

00:55:10.540 --> 00:55:16.440
específicamente con el promedio es si vas a ignorar los nulos. Por defecto en el

00:55:16.440 --> 00:55:26.280
caso particular de motores como Oracle, el MySQL, en postres no recuerdo ahora.

00:55:27.080 --> 00:55:30.800
Esto que sería más o menos. La idea cuál es.

00:55:31.440 --> 00:55:38.040
Tú tienes por ejemplo siguientes datos. Tienes la columna entonces. Tienes por

00:55:38.040 --> 00:55:44.760
ejemplo id y voy a colocar aquí senso. Tienes 1, por ejemplo aquí tienes 4,

00:55:45.340 --> 00:55:52.820
aquí tienes 2, aquí tienes este valor null, aquí tiene 3 y aquí es 5.

00:55:54.380 --> 00:56:00.080
Entonces cuando yo hago un AVG, típicamente en Oracle, yo tiro aquí un

00:56:01.080 --> 00:56:08.940
AVG sobre la columna senso. La tabla que se llame senso, no sé, cualquier

00:56:08.940 --> 00:56:15.340
locura. Y esto que está aquí me devuelve en Oracle, me devuelve en Oracle

00:56:15.340 --> 00:56:20.580
le vuelve 4.5 porque el nulo no lo cuenta. Entonces aquí me toca hacer una

00:56:20.580 --> 00:56:28.500
función que se llama, se llama Oracle. La de nulo, se me acaba. Bueno, todos los

00:56:28.500 --> 00:56:34.840
motores tienen una función de nulos. Entonces ahora, si yo ignoro los nulos, en el caso de la

00:56:34.840 --> 00:56:38.980
herramienta significa que aquí ahora sí me va a dar 3.

00:56:40.120 --> 00:56:45.820
Perdón, si los ignoro me da 4.5. Si no los ignoro, perdón, me da 9.

00:56:46.620 --> 00:56:53.120
Perdón, perdón. 9. Perdón. 3. 3, 3, 3.

00:56:55.300 --> 00:57:00.760
Al final depende de lo que quieras hacer entonces y lo que toques. Entonces le voy a

00:57:00.760 --> 00:57:04.400
decir que no los ignore porque me puede dañar a mí el promedio.

00:57:04.620 --> 00:57:08.920
De pronto es que es nulo, faltó 0, pero no está contando esa fila. Eso

00:57:08.920 --> 00:57:12.460
depende al final de tu calidad de datos. ¿Qué significa para ti el nulo?

00:57:13.480 --> 00:57:16.560
Y verás a ver si lo incluyes o no lo incluyes.

00:57:17.260 --> 00:57:20.420
Volvemos entonces a la herramienta nuevamente aquí.

00:57:21.180 --> 00:57:26.560
Listo y aquí no hay que hacer más nada. Y ahora lo que voy a hacer entonces es

00:57:28.340 --> 00:57:34.680
conectar la salida del T-AggregatorRow con el TeloRow.

00:57:36.900 --> 00:57:39.300
Aquí voy a hacer una pequeña confusión más de gusto mía. Voy a

00:57:39.300 --> 00:57:43.340
decir que lo muestre en forma de tabla. Es una cuestión más de gusto mía.

00:57:43.340 --> 00:57:51.520
Y mire lo que va a hacer. Va a ser un simple promedio. Le das doble click y le

00:57:51.520 --> 00:57:54.520
digo que me muestre por favor en formato stable. Analice lo siguiente

00:57:55.680 --> 00:58:01.660
nuevamente. Como esto viene de un THDF input significa lo siguiente ahora.

00:58:01.920 --> 00:58:05.360
Vamos a suponer que ese archivo tuviese 5 millones de registros.

00:58:06.120 --> 00:58:10.880
¿Qué es lo que haría? Vas a tener por ejemplo 5 nodos. Dividiría

00:58:10.880 --> 00:58:16.820
ese promedio en los 5 nodos y eso te hace que sea más veloz el tiempo de

00:58:16.820 --> 00:58:20.800
respuesta con ese volumen de registro. Estamos hablando que ese registro nada

00:58:20.800 --> 00:58:25.460
más tiene como 5.000. No sé cuántas son pocos. Esto simplemente a nivel

00:58:25.460 --> 00:58:29.040
académico pero ya en un ambiente real que tengas un clóster bien montado

00:58:29.040 --> 00:58:32.940
pues eso se clostriza. Además que en el caso particular de la arquitectura

00:58:32.940 --> 00:58:36.680
nosotros nada más tenemos un nodo. O sea, ahí ni modo. Ahí lo hace

00:58:36.680 --> 00:58:42.300
solamente con un solo nodo. Ahí ni modo. Pero él automáticamente distribuye con

00:58:42.300 --> 00:58:46.760
las cantidades de nodos que tú tengas. Por favor, ahora sí vamos a ejecutar

00:58:46.760 --> 00:58:50.520
aquí entonces. Vamos a ejecutar.

00:58:54.360 --> 00:58:56.980
Y lo que vas a hacer es simplemente la salida del promedio. No es nada del otro

00:58:56.980 --> 00:59:01.880
mundo. Recuerde que esto que hago yo con Big Data no es nada de

00:59:02.000 --> 00:59:06.720
el procesamiento que no hacías anteriormente. Lo que pasa es que te

00:59:06.720 --> 00:59:10.540
cambia la forma. Pero en el fondo el procedimiento es igual.

00:59:12.340 --> 00:59:15.920
Listo. Ahí está leyendo el archivo del hadut.

00:59:16.600 --> 00:59:21.100
Y lo que hace el final es que saca. Evidentemente aquí no vamos a medir el

00:59:21.100 --> 00:59:23.820
tiempo de respuesta porque estamos hablando de que estamos muy

00:59:24.540 --> 00:59:28.080
limitados a nivel de memoria. Y segundo que nada más tenemos un

00:59:28.080 --> 00:59:32.440
nodo configurado en el hadut. Evidentemente ya un clóster vas a tener

00:59:32.440 --> 00:59:38.280
5, 10, 20 nodos y se distribuyen los 20 nodos. Y aquí estás aplicando

00:59:38.280 --> 00:59:41.900
procesamiento con Big Data. Es decir, aplicas almacenamiento y

00:59:41.900 --> 00:59:46.100
procesamiento. Porque en algunos casos nada más hace el procesamiento. El caso

00:59:46.100 --> 00:59:50.680
de Spark. Spark normalmente pues lee pero no hace almacenamiento como tal

00:59:50.680 --> 00:59:56.000
como hace el caso de hadut. Claro, claro, cómo no, mira. En primer lugar

00:59:56.000 --> 01:00:01.720
revisa lo siguiente. Revisa el esquema de salida. El esquema de salida agregué con este

01:00:01.720 --> 01:00:06.920
más una nueva columna llamada total promedio. Y la definí de tipo doble.

01:00:07.440 --> 01:00:11.740
Primer cambio que hice. Los de salida para acá. Claro, porque entonces

01:00:11.740 --> 01:00:15.040
esperarías una salida para cada uno de ellos. Nada más en este caso

01:00:15.040 --> 01:00:19.020
quiero una salida. Total promedio.

01:00:19.780 --> 01:00:23.100
Sí, de tipo doble.

01:00:23.820 --> 01:00:29.800
Listo. Vas entonces al te agregué. En el te agreguéte. Perdón, te lo muestro de acá abajo.

01:00:30.760 --> 01:00:35.900
Mira lo que va a hacer ahora entonces. En Operation agrega una nueva columna. Te

01:00:35.900 --> 01:00:38.900
debe aparecer por defecto total promedio porque es la única columna que tienes.

01:00:40.400 --> 01:00:48.140
La función es AVG y el input es la columna sensus 9.

01:00:50.580 --> 01:00:57.800
Vamos a decir el siguiente ejercicio sobre tu pregunta. Sí señor. Vamos a decir tú el

01:00:57.800 --> 01:01:04.940
siguiente. En este caso no, bueno, no, en este caso después que muestra esto se

01:01:04.940 --> 01:01:09.500
pierde completamente. Lo que vamos a hacer ahora lo siguiente es la salida

01:01:09.500 --> 01:01:18.120
la vamos a llevar nuevamente a hadut. Y la tenemos allá y sí a un archivo de

01:01:18.120 --> 01:01:23.720
este no. Este hizo el cálculo con big data y sacó el resultado. Ya no puedo

01:01:23.720 --> 01:01:29.520
hacer más nada ya. No puedo. Ah no, bueno, listo. Bueno, aquí hay varias cosas.

01:01:30.920 --> 01:01:35.760
Una es que yo siga progresando aquí y todavía decir, no sé, colocar aquí un

01:01:35.760 --> 01:01:40.900
tema por ejemplo. Después sigo agrupando y el resultado está en

01:01:40.900 --> 01:01:46.300
memoria. Si yo integro aquí. La otra opción es la siguiente que me

01:01:46.300 --> 01:01:50.520
interesa de tu pregunta. Supongamos que yo quiero usar ese resultado más

01:01:50.520 --> 01:01:55.300
adelante. Entonces hay una opción que se llama, hay un componente que se llama

01:01:56.560 --> 01:02:00.900
debuffer input y entonces tú mandas esto y te lo guardas en memoria principal.

01:02:00.900 --> 01:02:06.400
O sea, conectas a este señor aquí y después recuperas el dato del buffer.

01:02:06.500 --> 01:02:10.920
Lo tienes en memoria principal. Debuffer input.

01:02:12.920 --> 01:02:16.880
Parece que hacemos de pronto un ejercicio con este debuffer.

01:02:17.980 --> 01:02:20.880
Pero muy interesante la pregunta. Muchas gracias.

01:02:23.020 --> 01:02:28.440
Listo, lo dejo como estaba. Y vamos al siguiente. Dígame. A ver qué pasó si es el

01:02:28.440 --> 01:02:34.240
mismo archivo. Es el mismo archivo. No puede ser. Vamos a ver. Alberto. Vamos a

01:02:34.240 --> 01:02:42.200
ver. Alberto, ya te vi. Muéstrame por favor el T-aggregator row, por favor.

01:02:46.080 --> 01:02:50.820
Muéstrame tu esquema, editar esquema. Vete a tu esquema y editar esquema.

01:02:51.080 --> 01:02:56.520
Muéstrame tu HDFS input, por favor. El HDFS input. Muéstrame acá en tu

01:02:56.520 --> 01:03:04.440
browser, ese census.csv. Gracias. Sí, porque el archivo de entrada venía

01:03:04.440 --> 01:03:08.480
con separado por coma. Qué pena. Muchas gracias.

01:03:09.640 --> 01:03:14.720
Quita el punto y coma y pónle coma y ejecuta, por favor.

01:03:16.500 --> 01:03:20.320
Efectivamente, estaba leyendo otra cosa. La posición. Recuerda que es la

01:03:20.320 --> 01:03:24.660
posición de... Ahí está. Ahora sí. Sí, señor. Así como usted dice. Estaba leyendo otra cosa.

01:03:26.980 --> 01:03:35.360
Listo, vamos a hacer entonces el siguiente ejercicio. Váyase a su QA, por favor. A su

01:03:35.360 --> 01:03:41.440
carpeta QA. Perdón, estoy en tu máquina, Alberto. Qué pena. Vamos aquí a su

01:03:41.440 --> 01:03:51.060
carpeta QA. Se me perdió. Acá la tengo yo. Listo. Carpeta QA. Listo. Bueno, entonces,

01:03:51.060 --> 01:03:55.480
vamos a agregar a esa carpeta QA del archivo que descargamos en la última

01:03:55.480 --> 01:04:01.300
clase, donde la carpeta se llama TBD. Busquemos un archivo que se llama

01:04:01.300 --> 01:04:12.480
producción. Yo la descargué. Está aquí en download. TBD, CSV. Y me interesa

01:04:12.480 --> 01:04:18.160
este archivo que se llama producción. Por favor, colóquelo en su QA,

01:04:18.160 --> 01:04:22.980
que es la carpeta que estamos tomando y referenciamos con el contexto. Pégalo aquí,

01:04:23.160 --> 01:04:31.520
por favor. De producción. No está en producción. Estaba en la carpeta que descargamos de lo que

01:04:31.520 --> 01:04:37.360
compartí. Recuerda que recargamos una carpeta que se llama TBD. En TBD estaba

01:04:37.360 --> 01:04:44.280
su carpeta que se llama CSV y aquí está producción. Producción.csv. Ese

01:04:44.280 --> 01:04:52.820
producción.csv, por favor, colóquelo en la carpeta que se llama, bueno,

01:04:52.960 --> 01:04:58.040
en el caso mío, la carpeta QA que tenemos referenciada desde el contexto para que sea

01:04:58.040 --> 01:05:05.320
mucho más sencillo buscarla. Voy a agregar un nuevo componente aquí que no lo hemos

01:05:05.320 --> 01:05:13.180
visto. Entonces, para esto, por favor, vamos a hacer lo siguiente. En la carpeta de job,

01:05:13.840 --> 01:05:22.340
dentro de AXA, vamos a agregar aquí un nuevo folder que lo vamos a llamar integración

01:05:26.660 --> 01:05:34.660
jobs. Integración jobs. Voy a agregar un nuevo componente. Continúo entonces. Ojo a lo

01:05:34.660 --> 01:05:40.820
siguiente. Yo podía hacer el mismo ejercicio sin big data, claro. Por ejemplo,

01:05:40.820 --> 01:05:45.960
qué quiero hacer ahora. Voy a leer los datos de producción y yo voy a hacer una metadata.

01:05:47.440 --> 01:05:50.960
Listo. Y le agrego estos componentes de t-arrogate para que agrupe,

01:05:51.160 --> 01:05:55.520
sube, calcule. Y me va a funcionar. ¿Qué diferencia hay con esto? Con el

01:05:55.520 --> 01:06:00.440
THS input que HD input usando big data. En cambio, que si lo hago con la metadata

01:06:00.440 --> 01:06:05.620
directamente, no me sale. No me sale con big data, pues. Me sale el ejercicio,

01:06:05.620 --> 01:06:11.880
pero de forma traicionada que llaman algunos. Entonces, voy a crear dos jobs para crear un

01:06:11.880 --> 01:06:16.580
nuevo componente, ¿OK? Va a haber un job que va a coger el archivo de producción y lo va a

01:06:16.580 --> 01:06:22.700
llevar a Hadoop. Entonces, ¿qué te recomiendo? Búscate en los ejemplos que hicimos de Hadoop.

01:06:24.160 --> 01:06:28.940
El que subía un objeto Hadoop. Este que está aquí, subir objeto Hadoop. Este fue el que

01:06:29.100 --> 01:06:37.660
hicimos, que es prácticamente igual. Sí, exactamente. Entonces, voy a coger este,

01:06:37.840 --> 01:06:40.840
pero vamos a hacerlo por parte de un momento. Voy a coger todos los componentes que están

01:06:40.840 --> 01:06:48.600
aquí y los voy a pegar acá en el nuevo job. Que lo voy a llamar, entonces,

01:06:49.340 --> 01:06:58.620
aquí en integration job, voy a crear un nuevo job. Que lo voy a llamar job, subir, archivo,

01:07:01.860 --> 01:07:09.200
production, underscore, Hadoop. Job, subir, archivo, production, Hadoop. Y voy a pegar los

01:07:09.200 --> 01:07:16.000
componentes que tengo del job anterior que subía un archivo a Hadoop. Para que me sea

01:07:16.000 --> 01:07:23.820
más sencillo. No sé, pego estos componentes aquí. Y listo, ya tengo prácticamente la

01:07:23.820 --> 01:07:29.080
configuración de este job. No lo ejecute, por favor, porque lo vamos a ejecutar en un

01:07:29.080 --> 01:07:33.000
job y después lo ejecutamos. Para que me entienda la idea. Repito nuevamente,

01:07:33.220 --> 01:07:39.460
copia todos los componentes del ejemplo que hicimos, subir, objeto Hadoop. Después crea

01:07:39.460 --> 01:07:44.420
un nuevo job dentro de la carpeta de integración job, que lo voy a llamar job, subir, archivo,

01:07:44.640 --> 01:07:53.080
production, Hadoop. Y pega los componentes copiados. Listo, perfecto. Para cambiar un

01:07:53.300 --> 01:07:58.300
job, para cambiar el job, pero tiene que estar yo cerrado. Si no, no lo deja cambiar.

01:07:58.720 --> 01:08:06.120
Tiene que cerrar el job y después le da a editar y ahí sí le deja cambiar. Sí,

01:08:06.120 --> 01:08:10.940
sí está cerrado. Lo único que puedo hacer en esta versión es cambiarle el nombre.

01:08:12.140 --> 01:08:19.300
No dejo, no dejo. O sí. Sí. Ah, production es production. Bueno, está en inglés,

01:08:19.300 --> 01:08:29.720
production, el archivo era production.csv. Listo, ahí está. Perfecto. Listo. Listo,

01:08:29.840 --> 01:08:33.440
entonces, como esto está prácticamente configurado, lo único que voy a hacer es

01:08:33.440 --> 01:08:44.920
en el HDFSputs, por favor. Quite los archivos demográficos, lo elimino y el

01:08:45.520 --> 01:08:55.800
voy a cambiar por production, csv. Production, csv, ¿qué se llama? Y lo pego acá con el

01:08:55.800 --> 01:09:00.080
mismo nombre para que me lo cree en Hadoop con ese nombre que especificue que es el

01:09:00.080 --> 01:09:03.520
mismo de entrada. Configure nada más, no lo ejecute, por favor, porque queremos hacerlo

01:09:03.520 --> 01:09:07.480
de forma diferente. Tenga en cuenta, por favor, la siguiente configuración. Cuando

01:09:07.480 --> 01:09:12.640
subimos un archivo a Hadoop, te ofrece la opción de crearlo o sobreescribirlo.

01:09:13.500 --> 01:09:18.160
Ok, en esta opción, pues el archivo no está creado, puede funcionar MeCreate,

01:09:19.220 --> 01:09:22.860
pero hay algunos que dicen, no, yo lo coloco sobreescribir, pero no siempre,

01:09:23.120 --> 01:09:27.380
porque de pronto vas a dañar algo que tienes. Entonces, a veces, ese sobreescribir

01:09:27.380 --> 01:09:32.580
puede ser peligroso. Sobreescribe algo que de pronto tenga y que necesite más adelante.

01:09:35.740 --> 01:09:41.800
Sí, señor, lo crea si no existe. Sí, en el Pug, exactamente. En el Pug nada más le

01:09:41.920 --> 01:09:51.440
va a quedar esa línea con el nombre del archivo productio y con la salida que sería acá el nom.

01:09:52.860 --> 01:09:58.400
Vamos a ver. Ah, nada, vamos a ver. En el nuevo Yop, es un nuevo Yop. No,

01:09:58.540 --> 01:10:05.640
en primer lugar porque copió, tiene que buscar, son los objetos. Vóquese el de

01:10:05.640 --> 01:10:09.980
subir objetos en Hadoop. Ahí lo tiene. Yop, subir objetos Hadoop. Ahí lo tiene.

01:10:09.980 --> 01:10:16.100
Es el que está ahí. Nada más copie el HDF input porque lo demás lo tiene. Cópielo.

01:10:16.280 --> 01:10:23.520
Bueno, listo. Váyase al nuevo Yop y elimine ese HDF input que es su paralelo y los demás

01:10:23.520 --> 01:10:28.520
componentes los borran. La aggregate y el telo robo. Le hizo. Dele doble click a

01:10:28.520 --> 01:10:39.900
ese HDF input. Borre en la fila de demográficos. Click ahí, dele click en la fila esa. Abajito

01:10:39.900 --> 01:10:44.940
la línea con las comidas doble y lo pega el new name para que le quede el mismo nom visto.

01:10:46.460 --> 01:10:48.740
Eso no lo hacemos, no lo vamos a ejecutar porque lo vamos a ejecutar un poquito

01:10:48.740 --> 01:10:53.180
de forma diferente. Listo, ese es el primer Yop que tenemos. Vamos con el segundo Yop.

01:10:55.520 --> 01:11:00.340
Listo, entonces el segundo Yop, voy a buscarle el sitio aquí. Ya que no tengo

01:11:00.340 --> 01:11:04.680
apuntado el sitio que vamos a hacer. Un momento, por favor. Aquí no es. Listo,

01:11:04.680 --> 01:11:12.660
lo que voy a hacer es que voy a mostrar. Un momento y confirmo acá. Voy a mostrar el total

01:11:12.660 --> 01:11:17.820
cultivado por distrito. Entonces voy a mostrar aquí el archivo como está configurado. Un momento,

01:11:18.060 --> 01:11:25.660
producción. Aquí está. Editar. Aquí en editar tengo muchos campos. Uno tengo el distrito donde

01:11:25.660 --> 01:11:32.940
se cultivó y tengo el área cultivada. Quiero hacer lo siguiente que me muestre cuál es el

01:11:32.940 --> 01:11:41.320
área cultivada por distrito. Si tú analizas esta parte y haces la relación como si fuera

01:11:41.320 --> 01:11:52.120
una consulta SQL, te va a quedar más o menos así. Te va a quedar así. Este de acá. Listo.

01:11:52.480 --> 01:11:58.040
Te va a quedar un select from, vamos a suponer que se llame producto.

01:11:58.700 --> 01:12:03.060
Estoy haciendo aquí la analogía porque así es más fácil hacerlo. Group by y dice,

01:12:03.180 --> 01:12:13.040
oye, agrúpame por distrito. Por distrito. Muéstrame los grupos que formas por distrito

01:12:13.040 --> 01:12:22.360
y por favor súmame el área entre cada uno de ellos. Esto sería más o menos como te

01:12:22.360 --> 01:12:27.140
quedaría con una consulta SQL. Cierto? Entonces cuando tú haces la analogía te

01:12:27.140 --> 01:12:32.000
queda más fácil hacerle Group by allá en el integrated. Esto es lo que quiero hacer,

01:12:32.560 --> 01:12:38.340
¿OK? Entonces viene lo siguiente. Vamos a agregar aquí un nuevo job aquí en integration,

01:12:38.780 --> 01:12:56.520
por favor. Crear job. Lo vamos a llamar entonces shop. Job obtener producción por distrito.

01:13:00.640 --> 01:13:11.260
Obtener producción por distrito. Le da Finish por favor. Listo. Entonces para esto voy a

01:13:11.260 --> 01:13:18.120
copiar la conexión al hadut. Si tú quieres coloca la estática o la dinámica. Ya no

01:13:18.120 --> 01:13:24.040
digo cuenta que cualquiera don no funcionó. Tú eliges cuál es la mejor entendiendo tu

01:13:24.040 --> 01:13:29.480
contexto. Yo voy a coger cualquiera de ésta. Este preyok lo voy a coger aquí y lo voy a pegar

01:13:30.500 --> 01:13:44.340
acá. Necesitamos lo siguiente. Un HDFS input para leer y es el que me va a hacer el bitdata

01:13:44.340 --> 01:13:50.920
ahí para adelante. Si lo leo con un componente diferente, o sea que no sea o un HDFS input

01:13:50.920 --> 01:13:58.320
o un TSPAR, no estoy haciendo procedimiento con bitdata. Voy a usar ahora un T-aggregated

01:13:59.080 --> 01:14:09.840
para agrupar y voy a usar ahora un THF output para la salida, mandarla nuevamente a hadut.

01:14:09.960 --> 01:14:20.280
O sea, HDFS output de salida. Perfecto. Vaya adelantando algo lo que ya hicieron

01:14:20.280 --> 01:14:25.680
los componentes. Configure las conexiones en el input y en el output. O sea usar conexión

01:14:26.500 --> 01:14:37.600
existente. Que sería nada más darle aquí usar y escoger la conexión. Para aquí

01:14:40.040 --> 01:14:41.360
usar la conexión.

01:14:46.280 --> 01:14:51.220
Listo. No, copia el otro yo para evitar si no nos deponemos más tiempo. Copia el otro yo,

01:14:51.320 --> 01:14:54.240
el que tú quieras, el que hicimos estático o el dinámico, cualquiera de los dos que te

01:14:54.240 --> 01:15:00.620
haya funcionado, cópialo ahí por favor. Seguimos. Por favor conecta los diferentes

01:15:01.100 --> 01:15:08.420
componentes, el input con el T-aggregated y el T-aggregated con el output por favor.

01:15:17.060 --> 01:15:19.600
Y hacemos la configuración.

01:15:24.940 --> 01:15:31.000
Vayamos al input y definamos dónde es la entrada, qué archivo vamos a leer.

01:15:32.100 --> 01:15:36.780
Entonces vamos a lo siguiente. El archivo que vamos a leer todavía no está en hadut,

01:15:36.780 --> 01:15:45.580
quien lo va a subir es el joque anterior. Entonces voy a colocar, vamos a suponer que ese

01:15:45.580 --> 01:15:50.540
joque ya se ejecutó y voy a colocar que va a buscar un archivo en la carpeta AXA,

01:15:53.840 --> 01:16:02.640
slash, lo llamé como en la salida, production, ¿verdad? Production.csv. Confirme que ese fue

01:16:02.640 --> 01:16:11.560
el que hizo en el joque anterior. En el joque anterior configuró la salida, en el put colocaste

01:16:11.560 --> 01:16:21.020
el nombre de salida, production, creo que lo coloqué sin la T, está bien, production.

01:16:23.180 --> 01:16:29.580
Este archivo particularmente está separado por coma, entonces dele aquí coma y dígale que

01:16:29.580 --> 01:16:35.820
tiene un header. El custom, esto ya es por costumbre nosotros, por los idiomas otros,

01:16:35.960 --> 01:16:41.880
pues UTF-8. Si su dato está en inglés, pues ese hizo le funciona perfectamente con el inglés,

01:16:41.980 --> 01:16:50.740
no hay ningún problema. Voy contigo. Ah, listo, es en el, no, porque aquí no es un put,

01:16:50.980 --> 01:16:57.420
sino un HDFS input. Elimina ese put, por favor. Ah, ok, dale doble click ahí. No,

01:16:57.420 --> 01:17:04.700
en el de leer, en el de leer. Ese es el que lo sube a, lo sube a HS, a Hadoop,

01:17:04.760 --> 01:17:09.860
ese no hay problema. Búcate en el de obtener el promedio, listo. Listo, ahí, ahí. Cambia

01:17:09.860 --> 01:17:17.960
ese put por un input, o sea HDFS input, porque vamos a leer. En el caso particular,

01:17:17.980 --> 01:17:24.100
cuando yo subo un archivo, la herramienta no me permite formatear, formatear los

01:17:24.100 --> 01:17:33.920
separadores. Va puro como está el archivo. HDFS, HDFS, HDFS input, ese que está ahí. Ahora,

01:17:34.560 --> 01:17:41.460
configura la conexión existente, listo, production, perfecto, punto CSV, y agrégale

01:17:41.460 --> 01:17:48.680
que el separador es coma y tiene un header. Hay ya uno. Por costumbre, para esto es todo

01:17:48.680 --> 01:17:52.500
necesario, pero dale custom encoding, dale custom encoding, que no es necesario,

01:17:52.500 --> 01:17:57.520
simplemente por costumbre, dale click ahí, y usamos UTF-8. Pero esto no funciona perfectamente

01:17:57.520 --> 01:18:03.560
con ISO, porque está todo en inglés. Listo, por favor conecta ahora el input con el Tegregate,

01:18:03.640 --> 01:18:06.120
y el Tegregate con el output. Y vamos a hacer eso, lo que vamos a trabajar. Listo,

01:18:06.180 --> 01:18:10.580
vamos a hacer este esquema ahora, vamos a hacerlo manual, para que tenga los dos ejemplos,

01:18:11.360 --> 01:18:16.360
listo. Ya usted verá cuál es mejor. Quizás, si hay poquitos datos, creo que demora más,

01:18:16.420 --> 01:18:22.180
menos, agregando el esquema, aquí manual. Si son muchos, creo que la opción que le di,

01:18:22.180 --> 01:18:27.780
pues es mucho mejor. Vete al esquema del input, por favor. Al esquema del input.

01:18:29.920 --> 01:18:38.600
Y te voy a mostrar cómo está la producción. Entonces, producción, cómo está. Aquí en Cuba.

01:18:41.000 --> 01:18:42.680
Yo no había agregado esto acá en Cuba.

01:18:42.680 --> 01:18:47.640
Estoy perdiendo la emoción, entonces. Un momento ya, te voy a mostrar cómo está.

01:18:49.200 --> 01:18:58.260
CSV, Production, click derecho, editar. Y está compuesto por los siguientes campos,

01:18:58.500 --> 01:19:05.800
estado, distrito, crop, year, season, crop, área y producción. Entonces, voy a hacer un

01:19:05.800 --> 01:19:10.940
esquema, que por lo menos los nombres, no es necesario que coincida. Lo que debe coincidir

01:19:10.940 --> 01:19:18.520
contigo es la posición y el tipo de datos. Entonces, vayamos acá y agreguemos una nueva

01:19:18.520 --> 01:19:26.200
columna aquí y la vamos a colocar en español, estado, de tipo string, por favor. Agregas otra

01:19:26.200 --> 01:19:35.920
de tipo, la vas a llamar distrito, de tipo string. Por el problema de la ñ nosotros,

01:19:35.920 --> 01:19:41.700
que por cierto, si quieres una clave súper segura, agrégale una ñ. Porque con la

01:19:41.700 --> 01:19:45.580
técnica diccionario datos, normalmente los diccionarios lo buscan en español, en inglés.

01:19:47.240 --> 01:19:53.680
Listo. Cambiemos entonces, aquí, ésta la vamos a llamar anualidad y va a ser de tipo entero.

01:19:56.780 --> 01:20:05.820
Va a ser de tipo integer. Listo. Agrega, dale enter aquí. Enter. Sí.

01:20:05.920 --> 01:20:12.120
No, en este caso estoy haciendo un ejemplo diferente. Lo voy a crear manual para que

01:20:12.120 --> 01:20:17.280
tenga los dos ejemplos. Uno fue el de importar y uno de crear lo manual. Tendrías que irte

01:20:17.280 --> 01:20:22.840
entonces, nuevamente. Lo hacemos nuevamente. Vas por acá en el input y le das editar el

01:20:22.840 --> 01:20:29.600
esquema. Y le vas dando más. Los campos que he agregado son estado string, distrito string y

01:20:29.680 --> 01:20:37.800
anualidad integer. Son 7. Entonces, aquí voy a colocar temporada en español, de tipo string.

01:20:39.280 --> 01:20:50.100
Voy a colocar, el otro es temporada. Este viene siendo, este crop es tipo de cultivo,

01:20:50.100 --> 01:21:03.500
optimal. Tipo cultivo, de tipo string. Y terminamos con dos más que son aria, de tipo,

01:21:04.820 --> 01:21:12.460
este señor es doble. Y terminamos con el tipo que es producción, que también es doble.

01:21:14.460 --> 01:21:19.660
Producción en español, sin la tilde, de tipo doble.

01:21:27.500 --> 01:21:34.900
Confirmo, estado es tipo string, distrito tipo string, anualidad tipo numérico,

01:21:36.760 --> 01:21:44.060
temporada, crop es tipo de cultivo, o sea, si cultivó arroz, bueno, cualquier cosa. Y

01:21:44.060 --> 01:21:49.140
aria es doble y producción es doble. Al final tú decides, si el esquema es muy pequeño,

01:21:49.280 --> 01:21:53.640
creo que sale más fácil, o sea, más rápido, perdón, más fácil no, más rápido hacerlo manual.

01:21:55.380 --> 01:22:00.620
Si ya son muchos campos, pues mejor tómate una pequeña muestra del archivo,

01:22:01.280 --> 01:22:06.340
haces una metadata y después le copias y exportas esa metadata, le importas a donde

01:22:06.340 --> 01:22:10.880
necesites. Perdón, tipo cultivo, venga, no escuché bien. Tipo cultivo, es tipo string.

01:22:11.040 --> 01:22:13.300
No sé si fue esa pregunta que me hizo, que se me perdió la comunicación.

01:22:20.020 --> 01:22:25.200
Buen ojo, buen ojo. Eso que de buen ojo son buenísimos para analizar de datos.

01:22:31.800 --> 01:22:39.560
Bueno, en primer lugar, cuando tengo string significa que estoy manejándolo con java.

01:22:41.360 --> 01:22:46.480
Entonces, ahí lo que define el tamaño máximo es java, o sea, que ahí no me preocupo por

01:22:48.800 --> 01:22:55.180
el tamaño que tenga el string. Ese problema no pasó, fue cuando intentamos crear un

01:22:56.300 --> 01:23:00.600
tabla, porque para crear una tabla yo tengo que tener un tamaño fijo, un barchar, un tamaño

01:23:00.600 --> 01:23:06.200
máximo, perdón, un tamaño máximo. Entonces, ¿qué pasaba? En que había un string que superaba

01:23:06.200 --> 01:23:10.340
ese tamaño máximo porque normalmente hacía el estudio con los 50 millones de registros.

01:23:11.520 --> 01:23:14.800
Específicamente para este caso no es necesario cuando voy a leerlo con java,

01:23:15.340 --> 01:23:19.220
pero cuando voy a mandarlo para una tabla sí es importante ese tamaño máximo,

01:23:19.220 --> 01:23:23.280
que fue el problema que tuvimos. Gracias a ti por la pregunta.

01:23:24.200 --> 01:23:31.480
Bueno, aquí le damos aquí ok, listo, le damos yes, y ahí tiene los dos ejemplos,

01:23:31.580 --> 01:23:37.400
los dos ambientes manual y bueno, semiautomático con la exportación.

01:23:38.100 --> 01:23:42.720
Ahora sí, configuremos el tegregate, por eso que te digo que con tener la

01:23:42.720 --> 01:23:48.400
consulta presente, ¿cómo sería con ese QL? Muy fácil. ¿Qué me toca agrupar por distrito?

01:23:48.400 --> 01:23:55.880
Entonces, en la parte de Group By, por favor, un momento, un momento que se me...

01:23:55.880 --> 01:24:04.840
En la parte de Group By, dale click aquí, perdón, que pena, que pena,

01:24:05.120 --> 01:24:10.740
vaya primero a editar esquema, que pena, editar esquema y ese cuenta lo que quiero

01:24:10.740 --> 01:24:16.900
mostrar. Quiero mostrar el distrito y la sumatoria de áreas. El distrito viene de

01:24:16.900 --> 01:24:19.980
la tabla, entonces voy a coger distrito y lo voy a pasar para acá.

01:24:23.800 --> 01:24:27.160
El segundo, de ese cuenta que no viene de la tabla, sino viene calculado,

01:24:27.340 --> 01:24:34.240
significa que toca agregar a usted la variable. Agregue aquí la variable y

01:24:34.240 --> 01:24:42.420
esto va a ser total cultivado y cambie el tipo a doble.

01:24:46.030 --> 01:24:48.670
Aquí lo coloque Day y es doble.

01:24:51.350 --> 01:24:57.630
Con la analogía, el SQL es mucho más sencillo. Partimos del hecho de que el archivo no está

01:24:57.630 --> 01:25:03.510
en una base de datos, pero normalmente este Group By y operaciones funciona muy parecido

01:25:03.510 --> 01:25:09.470
como si hubiese hecho un Group By a nivel de SQL. Nada más distrito que viene de la tabla y

01:25:09.510 --> 01:25:18.790
total cultivado que lo tengo que calcular. Le damos aquí OK y ahora sí. ¿Por qué columna

01:25:18.790 --> 01:25:22.730
voy a agrupar? Si me fijo entonces por la consulta que coloqué acá por distrito,

01:25:22.950 --> 01:25:30.410
entonces doy aquí click, doy aquí click y perdí nuevamente, doble click aquí,

01:25:30.470 --> 01:25:34.590
le doy click aquí y aquí por defecto una persona distrito, no hay problema,

01:25:34.590 --> 01:25:42.550
esa es la que voy a escoger. Y en operaciones dele click y aparece la nueva columna que agregué.

01:25:43.730 --> 01:25:47.270
En este caso, ¿qué voy a hacer? La función va a ser suma

01:25:51.210 --> 01:26:02.030
y el input column va a ser area. El ignore nulo aquí carece relevancia,

01:26:02.030 --> 01:26:07.130
porque normalmente si tú le agregas los nulos, el por defecto le colocará el módulo la suma,

01:26:07.150 --> 01:26:12.950
que sería cero. Entonces ese ignore nulo es muy bueno, es cuando va a sacar un promedio,

01:26:15.130 --> 01:26:18.610
porque para si tengo en cuenta los nulos o no los tengo en cuenta nulos para sacar promedio,

01:26:18.670 --> 01:26:22.230
es simplemente eso. Entonces da lo mismo si lo agregas o no lo agregas ahí.

01:26:25.890 --> 01:26:31.550
Acto seguido, vamos aquí a donde dice el output, vamos a decirle hacia dónde lo va a

01:26:31.550 --> 01:26:41.790
llevar entonces. Voy aquí a HDFS output y ahora cuando voy a agregar, no cuando voy a subir,

01:26:41.950 --> 01:26:46.210
sino cuando voy a crear un nuevo archivo, si me permite formatearlo como yo quiera.

01:26:46.730 --> 01:26:54.150
En primer lugar por favor coloque la ruta donde lo va a colocar. Sería AXA y dele el nombre,

01:26:54.150 --> 01:27:04.830
lo voy a llamar producción underscore por underscore distrito. .csv, si dígame,

01:27:05.670 --> 01:27:11.190
sería diagonal AXA, diagonal nombre del archivo que uno lo quiero crear. Si deseas,

01:27:13.610 --> 01:27:16.750
no, al final no, porque él asumiría que está buscando una carpeta.

01:27:21.810 --> 01:27:25.630
A menos que por defecto le entienda, pero no creo que puede tener un problema porque

01:27:25.630 --> 01:27:33.190
creería que puede ser una carpeta. Cuando lo agregamos será en el contexto,

01:27:33.730 --> 01:27:37.810
porque íbamos a concatenarlo con el nombre del archivo. Es decir, en el contexto usted

01:27:37.810 --> 01:27:43.510
normalmente lo hacía de esta forma, esa llegaba hasta aquí, como así AXA. Llegaba

01:27:43.510 --> 01:27:48.650
hasta aquí y después técnicamente lo que hacía era, oye, súmale eso que tienes ahí,

01:27:49.170 --> 01:27:56.890
el nombre de producción. Y al final le quedaba, si yo sumo las dos, me quedaba esto

01:27:56.890 --> 01:28:03.550
como si fuese esto así. Me quedaba, concatenaba esto y me quedaba como si fuese,

01:28:03.550 --> 01:28:17.030
mira, creerlo en el archivo este. Por eso es. Bueno, listo. Ya parece que aquí no

01:28:17.030 --> 01:28:26.310
vamos a hacer más nada. Verifique que tenga la conexión existente. Dígame. Bueno, listo.

01:28:27.650 --> 01:28:31.530
Por defecto, bueno, aquí porque está leyendo, aquí como va a crear uno nuevo,

01:28:31.530 --> 01:28:35.590
no lo voy a subir, se va a crear uno nuevo. Aquí me pide, oye, quieres que todo separe por

01:28:35.590 --> 01:28:41.010
punto y coma por defecto? Quieres que está acá abajo, ve. Si deseas, dejémonos con coma para

01:28:41.010 --> 01:28:45.730
no evitar de pronto como estamos trabajando con coma. Y aquí, pues, el custo aquí no me afecta

01:28:45.730 --> 01:28:52.870
nada, pero porque si quiere cambia la UTF8 que no lo cambié. Ya por estándar de la empresa,

01:28:52.970 --> 01:28:58.350
que de pronto está en español, acostúmate siempre a usar UTF8. Ah, bien, encabezados.

01:28:58.350 --> 01:29:00.350
No, entonces lo estoy incluyendo.

01:29:03.370 --> 01:29:07.070
Se ha dado, perdón, gracias. Aquí está. Muchas gracias. Incluís. Ahí está, en la parte

01:29:07.070 --> 01:29:10.990
abajo, por favor, se incluyalo. Sí, porque después perdemos la referencia de los que ven ahí.

01:29:12.210 --> 01:29:14.350
Incluye el híder. Sí, sí, muchas gracias por la observación.

01:29:18.670 --> 01:29:23.270
Señor. Sí, señor. Exactamente. Muy bien. Exactamente. Bueno, esto no es nuevo. Ya

01:29:23.270 --> 01:29:27.810
habíamos hecho. Vamos a agregar un componente nuevo. Ok. Miro siguiente. Para que esto me

01:29:27.810 --> 01:29:32.830
pueda funcionar, yo debería, primero, ejecutar este job, que es el que sube el archivo de

01:29:32.830 --> 01:29:38.830
producción, y después ejecuto el job, que es el que va a leerlo con Big Data, saca

01:29:38.830 --> 01:29:43.130
los cálculos y me genera un nuevo archivo. Entonces, cuando tú tienes varios jobs y deseas

01:29:43.130 --> 01:29:47.070
ejecutarlo entre sí, hay un componente que te hace eso. Entonces, para esto,

01:29:47.130 --> 01:29:49.890
por favor, vamos a agregar un nuevo job, que es el último, antes de ejecutarlo.

01:29:51.970 --> 01:29:59.290
Lo voy a llamar Job Integrador. Sí, Job Integrador lo voy a llamar. Job Integrador.

01:29:59.370 --> 01:30:05.470
¿Me das filles, por favor, aquí? Claro. ¿Cómo no? Claro. No, claro. ¿Cómo no? No me preocupes.

01:30:05.770 --> 01:30:10.370
Aquí. Vamos aquí al te agregué este y mira lo que tengo, nada más. Primero,

01:30:10.590 --> 01:30:16.050
confirma tu esquema de salida. Debes tener distrito, que los jalas de aquí para acá,

01:30:16.050 --> 01:30:20.610
y creas una nueva variable llamada Total Cultivo de tipo doble. Primero que tienes que

01:30:20.610 --> 01:30:24.210
confirmar. Listo. Segundo, veamos la configuración. A nivel de Group By,

01:30:25.330 --> 01:30:30.570
dale a Quién más y vas a escoger Distrito. Creo que sale por defecto esa, porque es la

01:30:30.570 --> 01:30:35.330
primera que encuentras. Ahora, en Operation, dale click para agregar un nuevo Operation aquí,

01:30:35.450 --> 01:30:41.190
más, te va a aparecer Total Cultivado, que es el nuevo columna que agregaste. En la función

01:30:41.190 --> 01:30:47.090
va a ser Suma y el input column va a ser Área. Ignorar nulos o agregarlo es dar lo mismo,

01:30:47.330 --> 01:30:51.010
porque por defecto si hay un nulo, le colocas el cero, que sería el módulo de la Suma,

01:30:51.410 --> 01:30:56.810
y no te va a afectar. Eso afecta más que todo cuando es promedio. Ahora,

01:30:57.030 --> 01:31:05.110
no sé si ya creaste, por favor, créate un nuevo Job llamado Job Integrador. Job Integrador.

01:31:09.050 --> 01:31:13.330
Y en este Job Integrador vamos a hacer lo siguiente. Busca un componente que se llama

01:31:16.050 --> 01:31:27.830
TroomJob. TroomJob. Y agregue 2, por favor. TroomJob. Y los une entre sí. Con un Main aquí,

01:31:27.830 --> 01:31:37.330
los une. Ah, también salen. Sí, sí, claro. Hay otra forma. Lo tiras aquí y te sale,

01:31:37.590 --> 01:31:44.010
¿verdad? Sí, ahí te aparece exactamente. Las dos formas son directamente válidas. Sí,

01:31:44.050 --> 01:31:47.990
evidentemente. Ojalas los Job, pero ten presente lo siguiente. Entonces,

01:31:48.150 --> 01:31:55.530
el primer Job que vamos a ejecutar, en este caso voy a buscarlo. De esta forma,

01:31:55.530 --> 01:32:04.170
voy a buscar el Job, que sería el Job que sube el archivo. Entonces, voy a buscar aquí. El que

01:32:04.170 --> 01:32:20.650
sube es Job Subir Archivo. Perfecto. Y el otro archivo que tenemos, el siguiente sería el otro,

01:32:20.650 --> 01:32:41.810
que es el que saca obtener producción por distrito. El otro que sería de calcular la

01:32:41.810 --> 01:32:48.290
producción por distrito. O sea, los que están en la carpeta de integración Job.

01:32:56.390 --> 01:33:01.390
Bueno, vamos a ver, vamos a ver qué pasa. Seguramente puede haber muchos errores. Vamos

01:33:01.390 --> 01:33:09.290
a ejecutar entonces el Job de integración. Ese, no, a mí también salió. Es un warning.

01:33:11.610 --> 01:33:21.970
Dice que no hay un esquema de entrada. No hay esquema porque estoy tomando el Job por defecto.

01:33:22.710 --> 01:33:28.490
Estoy ejecutando el Job y el esquema tiene el Job. No sé por qué ese warning hay. Ejecutar

01:33:28.490 --> 01:33:34.570
vamos para ver qué pasa. Primero ejecutaría el primer Job, que es el que sube, y después

01:33:34.570 --> 01:33:41.830
ejecutaría el segundo Job. Vamos a ver si no hay ningún error de configuración. Listo,

01:33:41.970 --> 01:33:48.850
aquí hay un pequeño error. Me salió a mí. Error de compilación. Me salió a mí. Creo

01:33:48.850 --> 01:34:02.950
que está en el primer Job. Voy a revisar para ver. Los contextos. Se nos está olvidando

01:34:02.950 --> 01:34:11.650
importar los contextos. Aquí está el error seguramente del contexto. Efectivamente. El

01:34:11.650 --> 01:34:19.050
contexto tengo que subirlo en los dos archivos. En el de subir que no importe el contexto.

01:34:21.670 --> 01:34:27.390
Se me olvidó. Y en el otro que es el de obtener la producción.

01:34:44.730 --> 01:34:49.110
Bueno, de las dos formas, como tú dices. O yo puedo hacerlo uno muy particular para cada Job,

01:34:49.810 --> 01:34:53.130
o hago uno muy general para que herede los demás, que es lo que estamos haciendo.

01:34:53.850 --> 01:34:59.190
Normalmente el de heredar es para lo que lo vas a reutilizar en EBS. Vamos a guardar

01:34:59.190 --> 01:35:06.130
Listo. Fíjate que yo puedo agregar lo que yo quiera. Ya sería muy particular ese Job.

01:35:06.270 --> 01:35:16.230
Voy a confirmar para ver si se me quito la parte de los errores. Voy aquí al Code.

01:35:18.850 --> 01:35:29.170
Sí, listo. Entonces voy a ejecutar nuevamente el de integrador. Voy a darle clip a ver si

01:35:29.910 --> 01:35:35.590
verifique que esté ejecutando el Job correcto. Vamos a ver si no hay ningún tipo de error.

01:35:37.810 --> 01:35:40.990
Para el Guarding no hay problema. Mientras no sea Guarding vamos a formater su equipo.

01:35:43.610 --> 01:35:48.250
Un momento, a ver. Ya llego ya un momento para ver si de pronto no tengo ningún tipo de

01:35:48.250 --> 01:35:52.830
error. Bueno, está haciendo la labor de subir el archivo y tengo un error en la salida.

01:35:58.530 --> 01:36:03.930
Dice, vamos a ver un momento. Un momento, por favor. Creo que me equivoqué en el

01:36:03.930 --> 01:36:08.930
nombre. Primero voy a verificar. Me dice que hay un pequeño error. Voy a verificar

01:36:08.930 --> 01:36:20.870
en el browser. Voy a confirmar si subió el archivo. Vamos a darle F5.

01:36:22.890 --> 01:36:31.830
No me subió el archivo. Vamos a ver qué pasó. Ah, en el caso mío el problema es que este

01:36:31.830 --> 01:36:36.050
señor no lo tengo en QA. No sé, lo dije que lo iba a colocar y no lo tengo en QA.

01:36:37.350 --> 01:36:41.830
Voy a agregarlo aquí en QA porque este archivo no está en QA. Y ese fue el error

01:36:41.830 --> 01:36:49.450
que me salió. Voy a ejecutar nuevamente a ver. A ver si sube.

01:36:53.450 --> 01:36:59.110
Verifico para ver. Ya voy a cada uno y reviso.

01:36:59.750 --> 01:37:05.350
Listo, entonces primer job lo está ejecutando.

01:37:06.210 --> 01:37:10.290
Debería subir el archivo. Ya lo subió.

01:37:11.150 --> 01:37:15.730
Listo, y ejecutó el segundo job y debería aparecer otro archivo. Aquí está

01:37:15.730 --> 01:37:20.170
producción por distrito. Aquí lo puedo descargar si mis cálculos no me

01:37:20.990 --> 01:37:25.450
fallan. Y debería aparecerme si mis cálculos no me fallan. Aquí está si lo

01:37:25.450 --> 01:37:30.270
de a descargar. Debió darme por distrito la producción.

01:37:30.990 --> 01:37:36.750
Ahí está. Bueno, puro tarán. Bueno, Singapur. No sé dónde será eso, pero

01:37:36.750 --> 01:37:42.770
bueno. Listo, a ver quién no le funcionó y le reviso para ver. Bueno,

01:37:42.890 --> 01:37:45.890
voy con Ana un momentito y ya voy con Julio un momentito, por favor.

01:37:45.890 --> 01:37:52.190
Bueno, Ana, voy contigo un momento y tienes... Primero, revisemos para ver si

01:37:52.190 --> 01:37:55.770
importamos los contextos en los jobs. Dale OK, por favor. Vete a los jobs,

01:37:55.950 --> 01:38:00.630
hijos. O sea, al job de subir archivo, por favor, de subir archivo. Ahí no lo

01:38:00.630 --> 01:38:03.590
tenemos importado. Dale importar, por favor.

01:38:05.730 --> 01:38:11.130
Importar context. OK, y nuevamente importamos acá. Le das por favor

01:38:11.690 --> 01:38:12.130
guardar.

01:38:15.170 --> 01:38:21.010
Listo, vamos al otro que es el de obtener producción y miramos los contextos y ese

01:38:21.010 --> 01:38:26.770
parece que sí lo tiene. Sí, lo tiene. No, no lo tiene. No, no lo tiene. Dale ahí,

01:38:28.050 --> 01:38:30.710
importa, listo. Recuerde que si lo ejecutamos dos veces va a haber un

01:38:30.710 --> 01:38:32.990
error porque va a intentar crear un archivo que ya está creado. Si te

01:38:32.990 --> 01:38:37.930
funciona la primera vez. Vamos a ejecutar entonces job integrador, por favor. En

01:38:37.930 --> 01:38:41.170
el room, vete al room. No, porque los conceptos están en los jobs. Este

01:38:41.170 --> 01:38:45.510
es el de ejecutar esos jobs, nada más. O sea, él no está usando en

01:38:45.510 --> 01:38:49.470
ninguna manera el contexto de este job. Los demás sí. Esperamos para ver qué

01:38:49.470 --> 01:38:58.090
pasa. Exactamente. Vamos a ver qué pasa. Ya llegó donde los demás, un

01:38:58.090 --> 01:39:03.550
momento. Listo, subió el archivo. Me parece que subió el archivo. Sube para

01:39:03.550 --> 01:39:09.550
ver, sube para ver. Ah, no, no. Listo, vete a tu, creo que no subió el

01:39:09.550 --> 01:39:17.450
archivo. Vete a tu, el de subir archivo. Vete a subir archivo. Vete a tu, el, el,

01:39:17.450 --> 01:39:21.030
ese puto. Dale doble clic, por favor. Ahí te faltó el nombre del archivo ahí

01:39:21.030 --> 01:39:25.730
que vas a subir. Ah, no, perdona, ahí está. Producción. Previsa si en tu ruta de

01:39:25.730 --> 01:39:34.110
Cuba está esa producción, por favor. Está en Cuba. No está ahí. Pégalo ahí,

01:39:34.170 --> 01:39:37.670
por favor. Lo pegaste en producción. Lo pegaste en el ambiente de

01:39:37.670 --> 01:39:40.790
producción. Lo que hace que este de producción es de producción de, da la

01:39:40.790 --> 01:39:44.610
casualidad que se llama producción porque producen, producen alimentos.

01:39:44.750 --> 01:39:49.130
Entonces, cópia ese producto, por favor, y lo pegas acá en Cuba y vuelves

01:39:49.130 --> 01:39:52.350
a ejecutar nuevamente el joque integrador para ver si lo subes.

01:39:52.570 --> 01:39:57.450
Entonces, dale, dale, dale. Vete a run, acá en el run. Dale, yo, dale,

01:39:57.670 --> 01:40:00.890
dale clic en el joque de allá arriba, joque integrador. Listo. Ahora, si

01:40:00.890 --> 01:40:05.670
ejecuta desde acá abajo, dale clic ahí en ese run, vuelve a ejecutar.

01:40:07.270 --> 01:40:14.030
Dígame. Es decir, el de arriba murió, pero siguió ejecutando el segundo.

01:40:14.270 --> 01:40:16.130
¿Usted quiere que el segundo no se ejecute?

01:40:17.890 --> 01:40:21.850
O sea, él ejecutó primero. Lo que pasa es que el primero tuvo un error.

01:40:23.470 --> 01:40:26.770
Lo que hace que el primero de Ana tuvo un error. Sube para ver, Ana.

01:40:28.010 --> 01:40:33.790
Dice lo siguiente. Caráter decimal big number. Hijo, muestra y aparece y te subió

01:40:33.880 --> 01:40:38.460
chido para ver. Muestra a ver si te subió. Vete a browser, por favor, si

01:40:38.460 --> 01:40:43.180
están amables. Dale F5 ahí. Bueno, creo que, por si las dudas,

01:40:43.520 --> 01:40:49.840
dele clic en esa producción ahí un momento. No, ya sé, váyase a su input, al

01:40:49.840 --> 01:40:55.680
segundo, al segundo job, que es el de calcular el, de obtener el segundo

01:40:55.680 --> 01:41:00.620
job, el de obtener el distrito, el T. Váyase al input, por favor.

01:41:01.840 --> 01:41:05.540
Al input. Y ahí el separador no es punto y coma, sino coma.

01:41:07.400 --> 01:41:11.400
Porque el archivo viene por coma. Dale guardar. Ahora, creo que le va a salir un

01:41:11.400 --> 01:41:15.920
error porque el archivo está creado ya. Váyase al job, por favor, al

01:41:15.920 --> 01:41:18.620
primer job, que es el de subir archivo, y dígale que lo quiere

01:41:18.620 --> 01:41:22.820
sobrescribir. Váyase al HDFS puts, por favor.

01:41:24.540 --> 01:41:28.340
Y dígale ahí que en vez de create, sobrescriba, porque ya el archivo estaba.

01:41:28.340 --> 01:41:30.740
Para no que no salga error. Dale ejecutar, por favor.

01:41:32.020 --> 01:41:35.180
En el integrador. Ahora, vuelvo a la pregunta, Lilián, un momento, porque

01:41:35.180 --> 01:41:38.680
sería interesante, hay un par de cosas de configuración. Por favor, váyase a

01:41:38.680 --> 01:41:43.100
su archivo, a su browser, y debería tener un archivo nuevo allá. Dale F5 y

01:41:43.100 --> 01:41:47.740
no está. Muestrele para ver su output, su output, para ver el de

01:41:48.420 --> 01:41:52.080
el otro job, el job de producción, de obtener producción por distrito.

01:41:52.080 --> 01:41:58.200
Muéstreme su output, allá, su salida. Dale allá el HDFS output, por favor.

01:41:58.940 --> 01:42:02.900
HDF, esto, a ese limpo el output. El output es doble clic.

01:42:04.700 --> 01:42:07.780
No lo vi. Dale nuevamente, por favor. No, no. Muéstreme el output ese.

01:42:07.880 --> 01:42:12.360
Muéstreme la configuración que tiene. Dale click. Ahí le debió crear eso.

01:42:12.900 --> 01:42:17.880
Intente ejecutar ese job para ver. Porque ahí debió crearle porque ya el

01:42:17.880 --> 01:42:19.820
archivo de producción está listo. No sé por qué no le creo.

01:42:20.260 --> 01:42:25.920
No, no. Ese es un warning ahí. Listo. Muéstreme nuevamente su salida en el

01:42:25.920 --> 01:42:31.260
browser y le da F5, por favor. Váyase a su, no, váyase a su job integrador,

01:42:31.540 --> 01:42:34.360
porque cuando vayas a su job integrador, ¿no será que usted está ejecutando dos veces

01:42:34.360 --> 01:42:38.560
mismo? Váyase a job integrador. Váyase a terroon job segundo,

01:42:38.660 --> 01:42:44.260
el terroon job dos, dale doble clic. Al terroon job dos. Bueno, no sé por qué,

01:42:44.400 --> 01:42:47.940
no sé si fue que no le calcamos, pero si usted quiere lo intenta

01:42:47.940 --> 01:42:52.860
ejecutar nuevamente, debería darle, no sé. Ah, pues intenta ejecutar,

01:42:52.940 --> 01:42:55.400
le va a intentar sobre escribir el otro, tiene que sobre escribir la salida

01:42:55.400 --> 01:42:59.040
porque ya está creado. Bueno, ¿quién más me decía? Julio, ¿verdad? Julio,

01:42:59.080 --> 01:43:02.720
te salió ya. Listo, perfecto, aquí no le gustó. Creo que a todos.

01:43:05.420 --> 01:43:17.740
Entonces, ¿quién me habló? Gerardo, vamos a ver qué tipo de

01:43:18.460 --> 01:43:22.880
que sí. Sí señor, pero ya me gustaste, ¿qué? Integer, son integer, son integer,

01:43:23.320 --> 01:43:25.920
sí señor, son integer, pero esperad un momento, lo que pasa, espérame, espérame, espérame,

01:43:26.420 --> 01:43:31.320
eso es lo que mete dónde, el de área, el total área sí es doble. Un momento,

01:43:31.520 --> 01:43:34.180
espérame, espérame. Sí, sí, está bien, está bien, pero espérame un momento,

01:43:34.300 --> 01:43:39.980
mire lo que va a pasar. Vete a tu HDFS input, muéstrame el esquema,

01:43:41.220 --> 01:43:44.680
editar el esquema, está bien, sí, sí, yo lo que meto acá también, dale OK y ejecuta

01:43:44.680 --> 01:43:51.220
para ver. OK, perfecto, lo hizo. Vamos a ver si sale. Bueno, el que viene, vamos a

01:43:51.220 --> 01:43:55.420
mandar la salida a un correo, porque seguramente va a tener que usar correos

01:43:55.420 --> 01:43:59.280
para mandar algún dato con la herramienta, entonces vamos, sube para

01:43:59.280 --> 01:44:04.400
ver, dice, ah, ya está listo, sí, lo que hace es que intentó montarlo,

01:44:04.520 --> 01:44:08.580
vete a tu subir, vete a subir, por favor, vete a subir, archivo, producción,

01:44:08.580 --> 01:44:15.460
por favor, dale doble clic ahí, me lo muestras, y entra a la confiración del

01:44:17.460 --> 01:44:20.820
del PUT, por favor, si le está llamando, dale doble clic,

01:44:21.920 --> 01:44:24.780
y cambia a sobre escribir, porque va a intentar crear un mismo

01:44:24.780 --> 01:44:30.400
archivo, y entonces va a salir sobre escribir. Ahora sí, ejecuta, guarda y

01:44:30.400 --> 01:44:34.400
ejecuta el tuyoke integrador, por favor. Sí, en el otro no, exactamente,

01:44:34.580 --> 01:44:38.560
porque va a intentar crear y manda, mira, ya se está creado, no lo puedo volver a

01:44:38.560 --> 01:44:43.000
ver las veces, en cambio que sobre escribir sin el problema. Bueno, como decía, vamos a hacer el

01:44:43.000 --> 01:44:46.960
ejemplo ahora, vamos a mandar la salida a un correo,

01:44:47.380 --> 01:44:53.180
seguramente lo va a tener que usar para de pronto enviar datos, estadísticas,

01:44:53.980 --> 01:44:57.060
o quizá que le confirme si un jocule funcionó correctamente, entonces

01:44:57.060 --> 01:45:02.140
vamos a hacer el de correo ahora. Bueno, creo que ya subió, y ahora está

01:45:02.140 --> 01:45:05.420
haciendo el cálculo, y hay un error, sube para ver,

01:45:07.140 --> 01:45:11.840
input string, bueno, ya el error es diferente, creo que tienes un error,

01:45:12.020 --> 01:45:17.780
vete a tu obtener, producción, por favor, el obtener,

01:45:18.240 --> 01:45:22.100
y mira el carácter de escape que tienes ahí, porque está leyendo una

01:45:22.100 --> 01:45:29.980
columna mal, esperemos que abra, listo, y busca el thdfs input, por favor, el

01:45:30.240 --> 01:45:35.360
input ese, no, ahí tienes bien,

01:45:38.560 --> 01:45:42.580
y muéstrame el esquema ese que tienes ahí nuevamente para ver,

01:45:43.140 --> 01:45:49.520
tienes estado, distrito, anualidad, tiene siete campos, anualidad,

01:45:50.400 --> 01:45:57.980
temporada, tipo cultivo, área y producción, dale ok nuevamente,

01:45:57.980 --> 01:46:02.080
sí, pero no, pero es que el dato de entrada viene entero, creo que el problema es en

01:46:02.080 --> 01:46:07.500
la salida, vete al segregated, está leyendo un dato mal,

01:46:09.320 --> 01:46:13.180
hay un dato que está leyendo mal, es decir, nuevamente, mira la salida un

01:46:13.180 --> 01:46:18.380
momento, el run job, dale click en run job, o sea, e intenta convertir,

01:46:19.720 --> 01:46:22.660
ejecuta ese jocule, por favor, que es el que tenemos problemas, ejecuta ese

01:46:22.660 --> 01:46:27.540
específicamente, para volver a ver, él intenta convertir un, sí, está

01:46:27.540 --> 01:46:29.460
pasando el interior, pero no hay problema,

01:46:33.980 --> 01:46:35.960
si no hay problema ahí,

01:46:38.240 --> 01:46:43.560
pero qué raro que tengas eso ahí, ahí está subiendo al hud,

01:46:45.400 --> 01:46:52.820
sube para ver, pero es que ese 1254, bueno, en teoría, él intenta

01:46:52.820 --> 01:46:58.080
convertir ese string a numérico y el problema es el separador, como tú dices,

01:46:58.180 --> 01:47:03.640
pero no sé de dónde está tomando ese 1254, no sé si el orden que lo tienen,

01:47:03.700 --> 01:47:09.100
deja revisar el orden, no, en el input, muéstrame el esquema del input,

01:47:09.320 --> 01:47:13.700
por favor, lo comparo con el mío que tengo acá,

01:47:16.860 --> 01:47:17.660
un momento,

01:47:21.800 --> 01:47:26.300
no, yo creo que está igual, y el separador lo tiene en coma, cierto,

01:47:27.260 --> 01:47:31.800
producción, tienes un hit, un momento, a ver,

01:47:32.560 --> 01:47:34.440
un momento, revisa para ver,

01:47:37.800 --> 01:47:47.620
cambia la doble un momento, para ver, yo creo que tenía doble al final, cambia ese

01:47:48.980 --> 01:47:53.500
doble, sí, sí, por el, no, y el otro, también no, los dos, los dos, los dos,

01:47:54.100 --> 01:47:57.020
sí, sí, es doble, es doble, porque es que hay unos datos que trato de lo que pena,

01:47:58.300 --> 01:48:02.900
pensé que lo tenía entero, cámbiate a doble ese señor, sí, es doble,

01:48:04.680 --> 01:48:10.040
y vuelve a ejecutar, por favor, ahora sí, el jocuno está perfecto, dale yes, sí, dale yes,

01:48:10.240 --> 01:48:16.200
por favor, no, ya tuvo que agregar, dale doble clic ahí, tuvo que cambiar automáticamente,

01:48:16.200 --> 01:48:20.800
si no está mala herramienta, tuvo que haber cambiado doble, listo, cambia doble, dale ok,

01:48:20.980 --> 01:48:28.320
y ejecuta, cualquiera de los dos, dale entonces, bueno, ejecutamos el interior,

01:48:28.420 --> 01:48:32.220
dale para ver, bien, este lo que va a incluir, pues, son nuevos ejercicios,

01:48:32.340 --> 01:48:38.460
pero vamos a agregar un nuevo componente, que es tcmail, para enviar un email con los

01:48:38.460 --> 01:48:42.060
datos que usted quiera, en el formato que usted quiera, no hay ningún problema con esa

01:48:42.060 --> 01:48:48.660
parte, vamos y agotamos un poquito, vamos a crear una carpeta en axa llamada ejemplo

01:48:48.660 --> 01:48:57.680
correo, ahí subió, vamos a ver, sí, efectivamente era que era doble sí, vete a tu browser,

01:48:57.940 --> 01:49:03.280
por favor, y deberías tener, ahí lo tienes, ahí tienes, producción por distrito,

01:49:03.440 --> 01:49:11.640
lo tienes ahí, listo, perfecto, entonces sigamos, sigamos entonces, vamos a agregar

01:49:11.640 --> 01:49:23.900
aquí una nueva carpetica, ejemplo correo, perdón, fue un job, para que le quede esto

01:49:23.900 --> 01:49:35.800
organizado para si necesita, ejemplo correo, ejemplo correo, y cree aquí un nuevo job,

01:49:35.800 --> 01:49:48.380
que se llame lo siguiente, job, producción por distrito y anualidad, o sea, vamos a

01:49:48.380 --> 01:49:54.260
hacer ahora que nos muestre cuál es la producción por distrito y por año, y

01:49:54.260 --> 01:50:00.860
agregamos nuevos componentes, darle aquí finish, si deseas para hacer esto más

01:50:00.860 --> 01:50:07.520
rápido, cópiate los componentes del último que hicimos que es obtener producción por distrito,

01:50:07.740 --> 01:50:12.620
por favor, esos componentes no sirven de mucho y ahorramos trabajo ahí,

01:50:15.280 --> 01:50:30.840
copiamos los componentes de el último que hicimos que fue obtener y los pegamos en el

01:50:30.840 --> 01:50:39.960
por favor, deja nada más esos tres componentes, del último job, que fue obtener distrito

01:50:42.100 --> 01:50:47.260
producción, obtener producción por distrito, perdón, cópiate y nada más, después que lo

01:50:47.260 --> 01:50:53.400
copies, no, se llamaba obtener producción por distrito, el último que hicimos que

01:50:53.400 --> 01:50:56.880
llamamos obtener producción por distrito, bueno, el último fue el integrador, pero antes

01:50:56.880 --> 01:51:03.000
fue de eso, fue el penúltimo, job o obtener producción por distrito, lo pegas y nada más

01:51:03.000 --> 01:51:12.420
dejas el template job, el connection y el input, para repetir nuevamente la parte de cómo se hace

01:51:12.420 --> 01:51:23.260
para la agrupación y hacer cálculos, el aggregator, borre lo mítico para hacer lo nuevo para allá, deja nada más los tres, eso nada más,

01:51:23.260 --> 01:51:33.260
vamos a agregar un nuevo, nada más de esos tres, ya todo va por aquí, regálenme cinco minutos y busco un poquito de agua que se me acabó, ya vengo,

01:51:35.580 --> 01:51:49.080
bueno volví ya, seguimos, la diferencia que digo, sígame, este no, no lo, cuando me la confesión del anterior no he hecho más nada, no sé si, ah listo, perfecto, voy contigo,

01:51:50.580 --> 01:52:07.180
quemarlo, voy contigo Mauricio, un momento, me espera un momento, listo, esperate, aquí tengo el de Gerardo, Mauricio, está bien ahí, está bien, vamos a ver si no funciona, ah ok, elimina eso que está ahí por favor,

01:52:07.180 --> 01:52:17.180
elimina todo lo que está ahí o no sé si cambiamos el nombre, listo, agrega uno nuevo, te digo cuál es el esquema, agrega, no, dale más allá abajo, el más de abajo,

01:52:17.320 --> 01:52:37.280
primer se llama estado, enter, otro, distrito, otro, anualidad, colocalo, el tipo entero este, anualidad, tipo entero, temporada entera, temporada, temporada es string, es nada más anualidad, temporada,

01:52:37.280 --> 01:52:49.200
tipo de cultivo, ese también es string. Otro, área de tipo doble y producción es de tipo doble

01:52:49.200 --> 01:53:01.360
también. Y producción es de tipo doble. Listo, ese es el esquema. Bueno, por ahí vamos, oíste?

01:53:03.740 --> 01:53:09.080
Dale enter ahí. Acostuma a darle enter porque después no te lo coges adentro. Listo. Cierro aquí,

01:53:09.440 --> 01:53:16.360
entonces vuelvo acá. Vuelvo a mi máquina que sería esta de aquí. Listo. Ok, vamos a ver.

01:53:16.640 --> 01:53:21.440
Vamos a agregar los siguientes componentes ahora. Vamos a agregar un componente de tipo

01:53:23.020 --> 01:53:29.740
aggregated. Vamos a agregar uno que se llama tshorted, tshortrow.

01:53:32.700 --> 01:53:40.280
El tshortrow parece que no está instalado. Instálelo por favor. Unload.

01:53:43.540 --> 01:53:50.520
Agregue un componente de tipo tfile. Output delimited para que el archivo me lo cree,

01:53:50.520 --> 01:53:57.600
ya le digo para qué me lo va a crear acá en tfile. Output delimited.

01:54:02.720 --> 01:54:10.640
Delimited. Y agregue un componente que no lo hemos visto que es tsenmail. Tsen de enviar

01:54:10.640 --> 01:54:17.480
en inglés, mail. Tres componentes. Instale los componentes que hagan falta. En este caso

01:54:17.480 --> 01:54:26.640
el tsenmail no está instalado por defecto. En la parte verde no sé quién. ¿Me hablo,

01:54:26.640 --> 01:54:34.180
Mauricio? Sí. Gerardo, vamos contigo, Gerardo. Dale doble clic ahí, Gerardo, ahí. Y dale

01:54:34.180 --> 01:54:39.160
clic en el instalar ahí, listo. Y descarga los drivers necesarios para que pueda funcionar.

01:54:40.900 --> 01:54:50.800
Listo. Perfecto, listo. Entonces, si deseas, pues agrega. Vamos a ir configurando componentes

01:54:50.800 --> 01:54:55.280
por componentes entonces. En primer lugar, mire lo que me piden ahora. Es como si fuera

01:54:55.280 --> 01:54:59.820
un group by. Me piden ahora que muestre lo mismo pero ahora por distrito y por año.

01:54:59.960 --> 01:55:07.440
¿Significa esto como si fuese aquí año? Agrupo por año y acá subo año. Me quedaría así.

01:55:07.440 --> 01:55:12.660
Y por distrito y por año. Sería lo que estoy decidando. Entonces ya sabemos. Listo,

01:55:12.780 --> 01:55:17.440
vamos entonces. Vamos a conectar el THDF input con el T-aggregator, por favor.

01:55:21.560 --> 01:55:28.300
Y configuremos el T-aggregator row. En el group by, según la analogía que hice,

01:55:28.520 --> 01:55:34.240
debería ir distrito y anualidad. O sea, año. Entonces, en el output voy a agregar dos

01:55:34.240 --> 01:55:38.300
columnas. Primera columna. El orden es importante porque si le cambia el orden,

01:55:38.320 --> 01:55:43.340
no te da igual. Voy a agregar aquí entonces. Primero, perdón, columna de salida que no

01:55:43.340 --> 01:55:48.640
le he agregado. De columna de salida necesito el distrito, mire lo siguiente, distrito,

01:55:51.640 --> 01:56:03.020
anualidad y total producción. Total, underscore, producción. Y esto lo voy a colocar de tipo

01:56:05.580 --> 01:56:12.600
doble. Y tienes cómo lo llamas tú? Cómo lo llamaste? Después tiene un nombre diferente.

01:56:12.660 --> 01:56:21.280
Muestra para ver. Voy para ti. ¿Quién me habló? Julio. Sí. ¿Quién me habló? Alito.

01:56:21.600 --> 01:56:26.900
Julio, voy para ti, Julio. Muéstrame tu esquema, por favor, de entrada. Ah no,

01:56:26.900 --> 01:56:32.980
entonces club gear. Porque tú usas el club gear, es club gear. Es el que está tirado por este lado.

01:56:33.680 --> 01:56:37.200
Y listo, créate ahora la nueva variable que es total. Sí, lo que tú tienes, tú lo tomaste

01:56:37.200 --> 01:56:50.080
directamente de allá de la fuente, del esquema original. Oye, entonces, por aquí. Alito.

01:56:50.360 --> 01:56:55.180
Ah, una propuesta, me fijo en tu input. ¿Quién me habló? Gerardo. Sí, vamos para ver.

01:56:55.180 --> 01:56:59.680
No, está bien, Gerardo. No le dales. Lo tienes ahí, mira, lo tienes entero. Está bien.

01:57:00.760 --> 01:57:04.420
Dale ok, dale ok, por favor. Vete a tu, te agregué interrupt, por favor, si está mal.

01:57:06.040 --> 01:57:10.560
Dale ok ahí, dale te agregué interrupt. Ah, pero primero acuérdalo. Acuérdalo,

01:57:10.680 --> 01:57:16.780
porque si no, no, después no sabe la entrada. Listo, men. Perfecto. Ahora,

01:57:16.900 --> 01:57:21.680
espera un momento. Ahora dale en editar esquema, por favor. Y tu salida a la siguiente.

01:57:21.680 --> 01:57:30.720
Tira para la salida distrito. Y tira anulidad para el lado derecho. Agrega una nueva columna

01:57:30.720 --> 01:57:38.260
que se llama total producción y la va a definir de tipo doble. Dale enter ahí,

01:57:38.380 --> 01:57:50.780
por favor, es que enter, enter. Ok. Ahora, en tu output column, vamos por ahí apenas. Listo.

01:57:50.780 --> 01:57:58.020
Voy por aquí. En el output column, el orden importante. Primero entonces agrupado por distrito

01:57:58.020 --> 01:58:05.960
y después por anualidad. O sea, agregue dos campos. Distrito y anualidad. O el orden

01:58:05.960 --> 01:58:11.460
importante. Si inviertes el orden, no te da igual. Y ahora, como columna de salida,

01:58:11.560 --> 01:58:17.760
dale click acá abajo. Y es lo mismo que el anterior. Siendo que ahora va a ser, bueno,

01:58:17.760 --> 01:58:29.880
aquí coloco suma. Y voy a sumar el área. Y ese componente quedó listo. Alto seguido,

01:58:31.360 --> 01:58:42.780
va a conectar el T-aggregated con el T-shortrow. Esto es lo que va a hacer el que hace T-shortrow.

01:58:42.780 --> 01:58:54.180
Te ordena la entrada de un conjunto de datos. No, porque para el suma es independiente si

01:58:54.180 --> 01:58:58.920
chulea o no chulea. Esto es más importante cuando saca un promedio. Si tiene en cuenta

01:58:58.920 --> 01:59:12.760
o no tiene en cuenta los números para dividir entre el número de elementos. Entonces ahí no

01:59:13.280 --> 01:59:23.020
distrito es tipo string. Dígale que ese distrito es de tipo alfanumérico. Y ya usted decide si se

01:59:23.020 --> 01:59:27.920
lo muestra ascendente o ascendentemente. Ahí por defecto dice ascendentemente. Ah,

01:59:27.920 --> 01:59:33.900
porque este campo hay que especificar que tipo es. Es alfanumérico. Entonces tiene que colocar,

01:59:34.220 --> 01:59:42.280
si fuera numérico o D, pues coloco dependiendo del tipo. Ese viene de alfanumérico. Y ahí

01:59:42.280 --> 01:59:46.300
si es si lo deseas ascendente o ascendente. Pues ahí puedes agrupar. De igual que un

01:59:46.300 --> 01:59:50.360
other by yo puedo hacer por varias colunas. Si yo quiero, pues puedo agrupar de hoy.

01:59:50.460 --> 01:59:56.900
Clic aquí y digo que voy a agrupar también después por anualidad. Y anualidad es numérico,

01:59:56.940 --> 02:00:02.920
no lo cambio. Lo dejo ahí. Ya tú decides en los tipos de ordenamiento. Primero se ordena

02:00:02.920 --> 02:00:06.740
por distrito y después si tengo distrito igual se ordena por anualidad. Es como

02:00:07.940 --> 02:00:17.380
Continuamos entonces. Vamos a comentar ahora el test show row con el test file output del

02:00:17.380 --> 02:00:25.420
limite. ¿Por qué voy a agregar esto? Porque voy a juntar en el correo que quiero enviar el

02:00:25.420 --> 02:00:34.700
resultado. Ok, por eso es que lo voy a hacer así. Entonces, dele doble clic aquí al test

02:00:34.700 --> 02:00:40.060
show row. Ah no, dale clic entonces aquí. Sale distrito, se que sale distrito efectivamente,

02:00:40.580 --> 02:00:46.520
pero dale clic aquí y nuevamente en el sale distrito y te va a aparecer un combo vos. Me avisa

02:00:46.520 --> 02:00:51.160
si no sale. Sí o no? Sí. Dale enter, dale enter porque a veces se queda ahí. Es un problema

02:00:51.160 --> 02:00:54.900
del table de llave. Vamos ahora, conectamos el test show row con el test file output.

02:00:55.340 --> 02:01:00.100
¿Por qué? Ya expliqué. Es decir, quiero mandarle como adjunto el resultado. Entonces voy

02:01:00.100 --> 02:01:05.140
a crear un archivo a nivel local y lo voy a mandar. ¿Listo? Entonces mira lo que voy a hacer

02:01:05.140 --> 02:01:11.760
aquí. Voy a hacer aquí un test file output. Voy aquí el test file output y voy a quitar todo

02:01:11.760 --> 02:01:17.360
este señor que está aquí y voy a colocarle. Qué pena, siempre se me olvida. Voy a importar

02:01:17.360 --> 02:01:25.860
los contextos porque ahí tengo la ruta. Importo el contexto antes. Importo el contexto aquí.

02:01:28.490 --> 02:01:36.010
Aporte por favor los contextos. Voy a hacer lo siguiente aquí entonces. Voy, listo. En aquí

02:01:36.010 --> 02:01:47.150
en el file name, ya aburré la ruta, voy a colocarle context ruta más y voy a colocarle

02:01:50.030 --> 02:01:58.130
distrito, perdón, producción, lo voy a llamar producción, underscore por distrito, underscore

02:01:58.130 --> 02:02:08.410
por underscore anualidad, punto CSV. Si desea conservar el separador de coma, lo deja o si

02:02:08.410 --> 02:02:17.130
no lo cambia, yo voy a cambiarlo para que esté todo estandarizado con coma. Cambio el

02:02:18.430 --> 02:02:26.830
hígado que incluye el hígado. Por favor, ahora si terminó la configuración, conecte el test

02:02:26.830 --> 02:02:36.770
file output con el test send mail. Por favor. Y ahora vamos a configurar el test send mail.

02:02:36.890 --> 02:02:43.250
Dale doble sídicame. No, no, normalmente no. Si no es cuestión ya de gustos. Es cuestión

02:02:43.250 --> 02:02:51.430
de gustos, sí. Dese cuenta que he hecho de varias formas. Una forma, colocamos todos los componentes,

02:02:51.530 --> 02:02:55.790
lo unimos y después lo configuramos. Esta vez estamos uniendo y uniendo y después configurando.

02:02:55.870 --> 02:03:01.510
Al final es gusto de cada quien, cómo le sale mejor. Vamos con el test send mail que es lo

02:03:01.510 --> 02:03:08.130
último que nos falta por configurar. Listo, vamos aquí. Voy a plantir este señor y me pide

02:03:08.130 --> 02:03:12.350
por favor a quién le vas a enviar el correo. Pues envía solo una cuenta tuya personal. Yo

02:03:12.350 --> 02:03:17.830
enviarle a mi cuenta personal. Aquí voy a colocar mi cuenta personal. Coloca la tuya.

02:03:19.390 --> 02:03:33.330
Este hacia dónde va? Jaime Mendes alandete arroba gmail.com. Ese es mi correo personal.

02:03:37.170 --> 02:03:41.270
Sigo entonces. Ojo, que debe ir entre comillas dobles porque va a ser un stream en java.

02:03:42.970 --> 02:03:50.910
Acto seguido le pide el nombre del correo que va a enviar a esa cuenta. Para esto,

02:03:51.110 --> 02:03:56.030
por favor, váyase a la carpeta que tuvo que haber descargado. Yo la tengo aquí en Don Loas.

02:03:59.770 --> 02:04:04.930
Sí, no, el suyo. Al quien le va a querer que le llegue. Ese es el remitente. A quién le va a

02:04:04.930 --> 02:04:10.070
llegar el correo. Por favor, el suyo. Espera un momento mientras coloca su correo.

02:04:12.470 --> 02:04:19.010
Váyase a su carpeta que descargó y hay una subcarpeta que se llama credenciales

02:04:19.010 --> 02:04:24.710
correo. Entonces vamos aquí. Y dentro de credenciales va a encontrar un archivo llamado

02:04:24.710 --> 02:04:30.350
también credenciales y le aparece el nombre de la cuenta. Entonces, copie esa cuenta por

02:04:30.350 --> 02:04:35.830
favor y la reemplaza por la que está ahí por defecto. Ojo, debe ir entre comillas dobles.

02:04:41.290 --> 02:04:48.290
Aquí me queda entre comillas dobles la cuenta. Listo, lo que viene ya es formalismo. Si es con

02:04:48.290 --> 02:04:52.390
copia a alguien con copia oculta, eso lo vamos a quitar de ahí. Por favor,

02:04:52.690 --> 02:04:58.450
quítese con copia y quítelo de con copia oculta. ¿Por qué no vamos a hacer eso?

02:04:58.450 --> 02:05:11.070
Dele el subjet del correo. Dice entonces testing. Voy a colocarle aquí testing job curso.

02:05:12.650 --> 02:05:28.430
Lo que usted quiera. Testing job curso AXA. Voy a colocarlo así. Configura el mensaje que

02:05:28.430 --> 02:05:33.170
viene una palabra que parece que la gente lo tendría al revés. Por favor, no respondas.

02:05:33.290 --> 02:05:47.450
Parece que le llena. Por favor, respondes. Por favor. Sí, pero sí, pero si le das aquí enter,

02:05:47.990 --> 02:05:52.390
da entre las comillas dobles, puedes seguir aquí. Ah, bueno, perdón. Era un enter,

02:05:52.430 --> 02:05:55.510
perdón. Si quieres un enter, tienes que darle aquí entre las comillas dobles,

02:05:55.510 --> 02:06:01.370
como es Java, y sigues escribiendo. Si quieres en la misma línea o en una línea diferente,

02:06:01.570 --> 02:06:07.670
porque al fin y al cabo con el slash n se da cuenta que hay un salto de línea. Slash

02:06:07.670 --> 02:06:14.990
n, oíste. Aquí voy a colocar aquí probar salto de línea. Debería darme un salto de línea y

02:06:15.150 --> 02:06:26.290
probar salto de línea. Slash n para que me salte. Ahora, para formateo, negrilla,

02:06:26.550 --> 02:06:32.650
creo que le agregas las etiquetas para HTML. Me encierra si él te la coge. No, no lo he

02:06:32.650 --> 02:06:40.270
hecho. Bueno, pero le decía quiero agregar un archivo, ¿OK? Entonces, en el attachment,

02:06:40.270 --> 02:06:47.550
por favor, dale click. Y para evitar cualquier cosa, bueno, aquí guarda antes. Vete a la

02:06:47.550 --> 02:06:53.970
configuración de tu file output y cópiate la ruta del te file output, por favor. La

02:06:53.970 --> 02:07:01.590
ruta que hiciste aquí, cópiala y la vas a pegar justamente en tu attachment. Es decir,

02:07:02.450 --> 02:07:08.410
donde dice new line, voy a pegar exactamente como copié ahí, voy a pegar acá. Enter.

02:07:11.970 --> 02:07:17.550
Aquí te pide el encoding. Por defecto, ¿Cuál le aparece aquí? Bueno, déjelo default.

02:07:19.370 --> 02:07:25.850
Va de 74 si lo que hago es... Recuerda que va de 74 lo que hace el formato que yo convierto

02:07:26.690 --> 02:07:33.510
el archivo en un string. Eso es lo que hace que te pesa más el acunto.

02:07:37.190 --> 02:07:44.910
Bueno, configuremos, por favor, los parámetros del servidor de correo. El servidor de correo

02:07:44.910 --> 02:07:50.590
que tiene esa cuenta es Gmail. Por defecto, la mayoría se llama exactamente igual. Por ejemplo,

02:07:52.070 --> 02:07:59.890
el de Gmail se debe llamar smtpgmail.com. Entonces, el smtp de Gmail cambia la palabra

02:07:59.890 --> 02:08:08.790
provider por Gmail. Perdón, en minúsculo. Y me regala un momento y busco el servidor de

02:08:08.790 --> 02:08:12.950
correo de Gmail. ¿Cuál es el puerto que escucha por defecto? Un momento que se me escapó.

02:08:13.130 --> 02:08:29.670
Un momento, por favor. Servidor de correo Gmail puerto 485 para SCL. No, no lo vamos a

02:08:30.930 --> 02:08:40.570
escuchar por SCL. Y otro por TLS. Entonces, dele, por favor, cambia el 25 por 587. Me

02:08:40.570 --> 02:08:59.650
espera un momento aquí. Reviso aquí algo. Como esto es TLS, por favor, chulé. Aquí

02:08:59.650 --> 02:09:07.810
me tocaría activar el SCL. No sé si con los dos me funciona. Voy a ir para ver. Recuerde,

02:09:07.930 --> 02:09:13.290
mire, para que no tenga. Primero, configuré el smtp de juegos, que debió quedar ahí,

02:09:13.370 --> 02:09:26.070
smtp.gmail.com. Perdón, ok. ¿Por dónde vas? Dime. .gmail.com. Eso tiene ya. Gmail.com.

02:09:26.070 --> 02:09:29.990
Deja, miro tu pantalla y de pronto algunos que se quedó listo, lo ve con tu

02:09:29.990 --> 02:09:37.610
Gmail. Cambia ese provider por Gmail, exactamente. Gmail. Y ahora el puerto que

02:09:37.610 --> 02:09:48.590
escucha es SCL 587, 587. Claro. Efectivamente. Por ejemplo, por favor, ¿qué pena contigo,

02:09:48.590 --> 02:09:56.370
Julio? Activa donde dice Star TLS Support. Aquí al lado de el Star es TLS. Esa que tienes

02:09:56.370 --> 02:10:02.390
ahí. Activa esta que tienes aquí. Eso, por favor. Un momento, por ejemplo, el de ¿Cómo

02:10:02.390 --> 02:10:06.590
que se llama el servicio de correo Microsoft? OneDrive. No, se llama OneDrive. ¿Cómo que se

02:10:06.590 --> 02:10:13.370
llama el servicio de correo Microsoft? Se me escapó el nombre ahora. Bueno, no,

02:10:13.370 --> 02:10:20.930
Outlook. No, es Outlook. Outlook OneDrive es el empecemento en la nube. Sería el drive de

02:10:20.930 --> 02:10:30.330
Google, por ejemplo. Hace una analogía. ¿Cuál sería? Bueno, puerto. Outlook. Smtp. Voy a

02:10:30.330 --> 02:10:39.730
colocarlo aquí para decir si es el mismo. Smtp. Smtp. Sí, efectivamente. Aclaro, la

02:10:39.730 --> 02:10:45.190
pregunta que me hizo creo que fue Liliana. No da la casualidad que lo tiene en los mismos

02:10:45.190 --> 02:10:49.270
puertos. Eso es para el correo de entrada. O sea, el correo que va a enviar. Para el

02:10:49.270 --> 02:10:53.830
correo de salida, lo mismo. Donde esté. Problema del correo de entrada. Bueno,

02:10:53.990 --> 02:10:57.250
terminemos la configuración, por favor. Aquí en la cuenta vuelve a colocar la

02:10:57.250 --> 02:11:07.610
cuenta que colocan credenciales entre las comillas dobles. Por favor. Y por

02:11:07.610 --> 02:11:12.650
último, recuerde lo siguiente. Yo creo que la mayoría se estandarizó de esa forma. No te puedo

02:11:12.650 --> 02:11:17.630
decir que todos sean así. Pero si hablamos de los más conocidos, Gmail, Aulo o cualquier

02:11:17.630 --> 02:11:22.910
correo que tú veas por ahí. Normalmente para que una aplicación de un tercero pueda enviar

02:11:22.910 --> 02:11:30.110
un correo desde la cuenta, tiene que generar un key para esa aplicación. Porque no es el

02:11:30.110 --> 02:11:35.170
correo tuyo, no es la clave de tu correo. Por ejemplo, si noto aquí yo tengo la clave,

02:11:35.870 --> 02:11:42.430
váyase nuevamente a credenciales, por favor. Esta clave no es la clave del correo. Es la clave

02:11:42.430 --> 02:11:46.570
que generé para que una aplicación, en este caso Talent, se pueda conectar con esa cuenta

02:11:46.570 --> 02:11:49.930
y pueda enviar correo. Entonces tiene que estar pendiente que cuando vaya a usar alguna

02:11:49.930 --> 02:11:56.270
cuenta, verificar si la aplicación es de tercero, se van a loguear con un password

02:11:56.270 --> 02:12:01.930
diferente. Si es así, tiene que generar entonces un password específicamente para esa

02:12:01.930 --> 02:12:08.610
aplicación. Doy aquí control C y pega, por favor, entre las comillas dobles que te quede ahí,

02:12:08.730 --> 02:12:16.250
entre comillas dobles, pega ese password que está ahí. Ok, todavía no ejecute, por favor.

02:12:18.710 --> 02:12:22.590
Sí, cuando diste aquí, te aparecieron unas comillas dobles, si te das cuenta.

02:12:23.550 --> 02:12:28.190
Mételo ahí entonces en todo el centro, por favor.

02:12:32.010 --> 02:12:35.190
Y listo. Entonces, aquí todavía no ejecute, por favor.

02:12:38.070 --> 02:12:42.950
Para este job, por favor, voy a que guardar por si acaso, agreguemos un T-Pos job.

02:12:48.890 --> 02:12:53.150
Y este T-Pos job, lo que va a hacer es que va a borrar este archivo que creamos en este punto.

02:12:53.870 --> 02:12:57.070
Entonces, vete aquí y busca una opción que se llama T-File Delete.

02:13:00.870 --> 02:13:08.150
Conecta tu T-Pos job con el T-File Delete y busca la ruta donde se creó,

02:13:08.300 --> 02:13:16.760
donde se va a crear este archivo. Copio completamente, control C, y la voy a pegar en el T-File Delete.

02:13:21.120 --> 02:13:27.180
Te voy a aquí guardar. Voy a cerrar los demás jobs que tengo por ahí que me están haciendo ruido.

02:13:32.980 --> 02:13:39.960
Un T-Pos job primero. Seguidamente le agregas un T-File Delete.

02:13:42.020 --> 02:13:48.660
Y en el T-File Delete, listo, vete entonces a tu T-File Output delimited y copia la ruta.

02:13:50.440 --> 02:13:54.220
Listo, un momento, un momento. ¿Quién me habló para guiarte mejor? Mauricio,

02:13:54.220 --> 02:13:59.760
me cuento tu máquina para guiarte mejor porque después de pronto te hago perder más. Listo,

02:13:59.940 --> 02:14:06.920
un momentito que se me perdió aquí. Se me perdió el... Un momento, ya, un momento que se me...

02:14:06.920 --> 02:14:13.220
Está ahí en el room, ahora sí, pues que voy a cerrar esta ventana. Mauricio, voy por aquí, listo.

02:14:18.790 --> 02:14:22.990
Listo, vete ahora a tu T-File Output delimited ahora. Tu T-File Output delimited,

02:14:23.870 --> 02:14:30.950
T-File Output delimited, ese que está ahí, por favor. Cópiate la ruta esa completa y ahora

02:14:30.950 --> 02:14:36.330
entra la confesión del T-File Delete y sobrescribe esa ruta con la que copiaste, ¿sí?

02:14:37.210 --> 02:14:42.990
Bueno, vamos a ver qué pasa. Listo, creo que ya listo, no hay más nada. Voy a ejecutar el

02:14:42.990 --> 02:14:47.690
suyo, ejecute el suyo, para ver cuántos errores nos salen ahora. Cuando salen un par de errores,

02:14:47.890 --> 02:14:54.990
vamos a ver. Verifico para ver, dase cuenta que aquí no tengo el que quiero. Yo producí...

02:14:55.510 --> 02:15:12.970
Ah, no, sí, este que quiero ejecutar. Voy a ejecutar entonces. Listo, perfecto. ¿Quién

02:15:12.970 --> 02:15:23.230
está ahí? Entonces, voy aquí a tu máquina, anda, aquí está, listo. Vamos a ver. Entra

02:15:23.230 --> 02:15:27.630
a tu File Output delimited que está en la parte de arriba, tu File Output, el que

02:15:27.630 --> 02:15:31.870
está arriba, en el S que está ahí, por favor, S, doble clic. Cópia si está

02:15:31.870 --> 02:15:37.570
mal la ruta esa porque es donde va a quedar el archivo y vete a tu T-File Delete

02:15:38.670 --> 02:15:45.610
y sobrescribe esa ruta que tienes ahí por la que copiaste. Procede a ejecutar, por favor,

02:15:46.770 --> 02:15:55.370
y vemos a ver qué pasa. El caso mío, listo, va por... Qué raro que tiene. Espera un momento,

02:15:55.530 --> 02:15:59.390
que no sé si me están viendo en correos ahí porque está siendo raro. Sí, sí, un momento,

02:15:59.630 --> 02:16:04.790
un momento, un momento, un momento. Cáceles, cáceles yo, que me están viendo. Cáceles,

02:16:04.790 --> 02:16:10.190
cáceles yo, por favor. Porque ahí lo uní al T-File Output y me va a enviar como cincuenta

02:16:11.150 --> 02:16:16.450
mil. Acá me acasó a enviar diez, déle cácelar, por favor. La locación es que

02:16:16.450 --> 02:16:20.870
cada fila me va a enviar un correo, mía colegio. Tuvo que tener como... Bueno,

02:16:20.950 --> 02:16:26.330
me acasó a enviar trece acá a correo. Qué pena, desconecte este señor de acá,

02:16:27.730 --> 02:16:32.990
porque si no cada fila que está entrando ahí, quite este señor acá y quiero

02:16:32.990 --> 02:16:39.590
enviar lo siguiente. Qué pena. ¿Cuántos correos? No sé si lo ejecutó, pero a mí me mandó trece correos.

02:16:39.910 --> 02:16:44.270
No, claro, ahí está mal. ¿Cómo haría? A ver si recuerda. Quiero que terminado este

02:16:44.270 --> 02:16:48.870
subyong me ejecute el tcmail. ¿Qué hago? ¿Cómo hago? Mira, mira el problema que tenía,

02:16:48.970 --> 02:16:52.470
el problema que se formó. Bueno, está bien que se haya formado en tiempo real. Lo

02:16:52.470 --> 02:16:57.590
tenía sibe. Entonces, cada fila que va agregando aquí, me la estaba mandando como

02:16:57.590 --> 02:17:02.070
un correo, ¿cierto? Entonces no quiero eso, quiero que envíe nada más un correo. Suelto

02:17:02.070 --> 02:17:08.790
aquí este señor y voy aquí a agregar esto. Quiero que terminado este subyong me ejecute

02:17:08.790 --> 02:17:16.330
este tcmail. ¿Cómo cree que debería ser ahí? Tengo que unir. Quiero manejar este como si fuera

02:17:16.330 --> 02:17:21.550
un yong, un subyong, perdón, y un subyong diferente. ¿Cómo hace? Va al primer elemento

02:17:21.550 --> 02:17:29.590
que une al subyong inicial, y esto lo habíamos hecho, y escoge donde dice trigger un subyong

02:17:30.030 --> 02:17:36.590
ok. Entonces, ¿qué va a pasar aquí? Que cuando termine este subyong es que va a ejecutar el

02:17:36.590 --> 02:17:40.010
siguiente subyong, que en este caso sería enviar el email, porque si no nos envió,

02:17:40.050 --> 02:17:44.190
a mí me envió tres archivos. Voy a borrarlos aquí porque si no una locura me formó aquí.

02:17:45.350 --> 02:17:46.230
Voy a eliminar esto.

02:17:50.230 --> 02:17:50.630
Listo.

02:17:55.090 --> 02:17:57.850
Bueno, ahora sí voy a ejecutar, a ver qué pasa.

02:18:01.750 --> 02:18:07.590
Ve con esta la cazalarta, ¿oíste la cazalarta? ¿Oíste? Me mostraré quién. ¿Quién es?

02:18:08.110 --> 02:18:14.770
Mauricio, ¿no? Yo estaba ejecutado hace entonces. Te tuvo que haber mandado 42,

02:18:14.950 --> 02:18:21.270
me parece a mí. Ah, no, pero espérate un momento. No, pero espera. No, pero espérate,

02:18:21.450 --> 02:18:25.250
espérate un momento, antes que siga. Primero, porque ahí tienes un problema ahí. Une

02:18:25.250 --> 02:18:30.850
primero el subyong de arriba, el subyong de arriba, únelo. ¿Cómo lo unes?

02:18:31.790 --> 02:18:41.530
Ubícate en el HDFS input, le das clic derecho y le dices que se ejecute trigger

02:18:41.530 --> 02:18:46.150
on subyong okay y ejecutas y lo unes con test email. Espera un momento,

02:18:46.250 --> 02:18:54.650
antes que sigas. Voy a probar el mío para ver un momento. No te dejes no ejecutes. Voy

02:18:54.650 --> 02:18:59.810
a enviarme un correo. Ah, este archivo ya existe, perdón, qué pena. Aquí lo que pasa

02:18:59.810 --> 02:19:04.730
es que ya lo había creado. Voy a quitarle la restricción esa, aquí el trofe y voy a

02:19:04.730 --> 02:19:10.030
volverlo a ejecutar. Un momento, yo lo ejecuto para ver. Ante, porque de pronto

02:19:10.030 --> 02:19:17.210
la configuración novedad le va a llegar esa cantidad de correo. Ahí no, no preví eso.

02:19:17.750 --> 02:19:28.510
Vamos a ver. Bueno, ahí empezó. Es ya el de yo del HDFS. Listo. Voy a ver, tuvo que

02:19:28.510 --> 02:19:34.410
haberme llegado uno un momento. F5, aquí está. Me llegó un correo y me llegó aquí

02:19:34.410 --> 02:19:39.090
el CSVS correo. Ahí me está mostrando la novedad por cada uno de, por año, vea.

02:19:40.210 --> 02:19:42.910
Perdón, vamos ahora sí Mauricio, vamos a ver contigo, vamos a ver. Vete a tu,

02:19:43.910 --> 02:19:49.090
morra los correos que ya te creó, por favor, por si acaso, y vamos a probar tuyo. Listo,

02:19:49.210 --> 02:19:52.450
perfecto. Voy a tu máquina por si acaso alguno tiene más o menos la misma confesión.

02:19:52.670 --> 02:19:58.250
Déjame revisar antes, por favor, antes que lo ejecute. Yo lo veo bien. Ejecuta,

02:19:58.370 --> 02:20:02.190
por favor. Ah, listo. Sí, sí. Vete a Tefal output porque si no te hace el error.

02:20:02.570 --> 02:20:08.570
Tefal output delimited y en el advanced setting, por favor, advanced setting,

02:20:08.570 --> 02:20:14.570
dale click en que throw. Quítate el throw. Ese que está marcado ahí, listo. Ejecuta

02:20:14.570 --> 02:20:21.670
ahora. Listo, está listo, listo, listo. Verifica para ver tu correo. Allá lo tienes

02:20:21.670 --> 02:20:26.170
ya conectado, imagina, y me confirma si te llegó. Listo, perfecto, eso funcionó

02:20:26.170 --> 02:20:33.810
perfectamente. Listo, verifique por favor si ya llegó para allá. Verifique para ver si

02:20:33.810 --> 02:20:37.870
le borró el archivo. Quiere decir que en la carpeta QA no puede estar ese archivo que

02:20:37.870 --> 02:20:43.810
se llamaba eh producción distrito por año. Confirme por favor, yo voy a confirmar, ya

02:20:43.810 --> 02:20:48.890
llego por allá en un momento. No debe estar en QA, no debe estar porque yo lo mandé

02:20:48.890 --> 02:20:58.230
a borrar. Ten, QA, y efectivamente no está. Bueno, voy con Ana entonces. Ana, voy contigo.

02:20:58.690 --> 02:21:03.690
Bueno, vamos a ver. Ah, listo, Ana, lo que pasa es que por defecto él, si

02:21:03.690 --> 02:21:06.590
ya está creado, manda una sesión. Entonces, vete a tu Tefal output delimited,

02:21:06.590 --> 02:21:14.050
si ya está amable, Tefal output delimited, y en el advanced setting de ese, de ese componente,

02:21:14.310 --> 02:21:19.450
advanced setting, destruea la opción throws, y ahí se nos olvidó colocar UTF8, pero bueno,

02:21:19.510 --> 02:21:24.470
ya listo. Ejecute por favor. No, no, no, no cambia porque eso está en inglés.

02:21:26.050 --> 02:21:31.550
Ese hizo es perfecto para inglés. Ejecute por favor y verifiquemos a ver si le llega

02:21:31.550 --> 02:21:38.450
el correo. Listo, ya empezó, está leyendo, está progresando. Teces mail, muestra que error

02:21:38.450 --> 02:21:47.110
tiene. Sube para ver, va a hacer favor, suba, suba. Dice, causado porque no encontró el archivo.

02:21:49.050 --> 02:21:53.390
Ah, muestreme su Tefal output un momento, copie ese, esa ruta por si acaso no la tiene

02:21:53.390 --> 02:21:59.290
ya, copiela. Váyase a su, teces mail, váyase a su send mail, por favor, send mail. No,

02:21:59.310 --> 02:22:06.050
él la tiene. Eh, si está amable, váyase a su cua, a su carpeta de cua. Eh, el archivo no lo

02:22:06.930 --> 02:22:15.590
creó. No está creado. Muestre nuevamente, muestre nuevamente a el Tefal output, por favor.

02:22:17.530 --> 02:22:24.030
Tefal output, por qué no le he creado el archivo. Context más ruta, en el avance,

02:22:24.030 --> 02:22:30.050
en el avance, por favor, va a llegar el avance. No, un momento. Ponga, desactive el

02:22:30.050 --> 02:22:38.550
teprayop y el teprayop. No, en el centro, en el centro, en el centro. Desactivar. Dígale

02:22:38.550 --> 02:22:43.190
su yo completo, así. Dígale su yo completo, su yo completo. Ese que está ahí. Wall,

02:22:43.190 --> 02:22:51.770
el otro wall. Wall su yo. Ah, sí, sí, ese, ese, sí, su yo. Creo que los dos debes funcionar,

02:22:52.770 --> 02:23:00.730
listo. Haga lo siguiente, vuelve a ejecutar nuevamente para ver algo. Ah, sí, lo que

02:23:00.730 --> 02:23:07.710
hace es que, dele, dele control z un momento, control z, control z. Vaya nuevamente al, al

02:23:07.710 --> 02:23:12.410
teprayop. Dile click derecho y escoge la opción mejor wall, que es entero. Wall, wall

02:23:12.410 --> 02:23:21.330
su yo. Click derecho. Wall su yo, por favor. Ese que está ahí. Entonces desactiva todo

02:23:21.330 --> 02:23:26.510
el, lo que haya de ahí para adelante. Vaya que desactivo. Ejecute nuevamente un momento,

02:23:26.570 --> 02:23:30.490
a ver, porque él dice que el archivo que iba a enviar de acunto no lo encontró. Eso fue el

02:23:30.490 --> 02:23:34.950
error que salió, a menos que haya otro problema de configuración que no vi. Bueno,

02:23:34.950 --> 02:23:40.110
listo, empezó la ejecución, va a leer de H2 y empieza a progresar con Big Data. Evidentemente

02:23:40.110 --> 02:23:45.710
es lento por memoria, nada más es un nodo. Listo, váyase a la carpeta cua un momento y

02:23:45.710 --> 02:23:52.810
ahí tiene el archivo. Listo, váyase entonces nuevamente a su T, a su T, same mail,

02:23:52.930 --> 02:23:58.970
same mail, same mail. Carajo, son hasta igual, no. Por si las dudas, copia nuevamente la ruta

02:23:58.970 --> 02:24:04.350
en el tefal output, la ruta. Váyase tefal output, bueno, no, váyase usted tefal output. Ah, bueno,

02:24:04.350 --> 02:24:10.970
ya lo vi. Listo, ejecute nuevamente, a ver, no veo cuál es el error ahí. Ah, no, pero espera,

02:24:10.990 --> 02:24:16.790
un momento antes. Creo que no cogió la configuración. Nuevamente, pegue, es que

02:24:16.790 --> 02:24:21.010
a veces tiene que ir a la inter, porque si no coge la configuración. Váyase nuevamente,

02:24:21.510 --> 02:24:25.910
e, pegue la ruta que tenía ya en memoria. No, pero, eh, listo, es así. Es la misma,

02:24:25.910 --> 02:24:30.590
¿No? No es del ejecutar por a él. No, entonces entonces le perdió. Está él, cuando se pierde,

02:24:30.690 --> 02:24:35.730
está el lado derecho, el lado derecho, allá en lo último, está un como un, un, acá, acá,

02:24:35.850 --> 02:24:43.990
por acá, la punta esta. Hay un. A ver, eso. Acabo de cerrar la ventana. Si va el X de la

02:24:43.990 --> 02:24:47.950
ventana, baja por el X de la ventana, y tiene aquí un play. No sé si alcanza a ver acá mi

02:24:49.090 --> 02:24:55.590
pantalla. Acá en este play. Sí, la suya. Entra en dos novedales. Entonces, sí, de la esquina

02:24:55.590 --> 02:25:00.370
superior. Vamos a ver. Dale para ver. Sí, sí, sí. Dile para ver. Qué raro que ahí si no, no sé

02:25:00.370 --> 02:25:03.750
por qué no le está encontrando, si el archivo está ahí. Bueno, a quién más no le funcionó,

02:25:03.830 --> 02:25:11.170
a ver. O no le llevo el correo, pues. No te llevo el correo. Eh, listo, ya voy. Revisé su

02:25:11.170 --> 02:25:15.390
bandeja de correo si está amable Ana, porque no salió error. Ahí como que había algún

02:25:15.390 --> 02:25:20.730
carácter raro, extrañamente raro ahí, no sé. Y me confirma si le llegó. Sí llegó, con el

02:25:20.730 --> 02:25:27.290
adjunto, pero con el adjunto. Listo. ¿Qué me dijo que tuvo un pequeño error? Eh, Eduardo.

02:25:28.490 --> 02:25:34.430
Está ahí contigo, Eduardo. Vamos a ver, Eduardo, ¿Qué pasó? Dice. Décimal point.

02:25:37.290 --> 02:25:43.490
Muéstrame tu HDFS, imposible, estás amable. Muéstrame tu esquema, editar esquema, por

02:25:43.490 --> 02:25:48.970
favor. Tienes estado, anualidad, temporada, tipo de cultivo. Está bien, no veo ningún

02:25:48.970 --> 02:25:56.630
error en ese. Dale OK, por favor. Vete a tu T-agregated row para editar esquema. Tienes

02:25:56.630 --> 02:26:03.550
estado, anualidad, tipo, área, doble. Listo, OK. Dale OK ahí. Vete a tu T-short

02:26:03.550 --> 02:26:08.990
row. T-short, un momento. Ah, eh, cámbiate ese production por área que fue que cogimos

02:26:08.990 --> 02:26:16.390
ahí. Cámbialo por área. Listo, vete a tu T-short row, por favor. Listo, ejecuta nuevamente

02:26:16.390 --> 02:26:20.850
ahí que, que si no sale mismo error, el later runo. No, ya está desactivado. No, déjalo

02:26:20.850 --> 02:26:25.070
así, déjalo así. Ejecutalo, no tomo. Déjalo así, ejecutalo para ver si, porque

02:26:25.070 --> 02:26:30.390
error lo tenemos ese en el subyord de saber qué sale. Como que producción había

02:26:30.390 --> 02:26:34.650
un problema. Revisa tu bandeja de correo si eres tan amable. Hemos hecho presiones

02:26:34.650 --> 02:26:37.570
con área, ¿No? Hemos hecho con producción, con que producción tiene algún dato extraño

02:26:37.570 --> 02:26:42.730
ahí. No sé de qué tipo. Me confirma Eduardo si te, si te llegó el correo. ¿A qué

02:26:42.730 --> 02:26:47.370
cuenta lo mandaste? Mira la cuenta. Ah, perfecto, listo. Ahora sí, listo, perfecto, perfecto.

02:26:48.050 --> 02:26:51.550
¿A quién más? Bueno, hacemos un pequeño break de 10 minutos y seguimos ahora con

02:26:51.550 --> 02:26:56.370
otros ejemplos. Entonces, agrega más componentes. Sí, dígame. Sí, dígame.

02:27:00.130 --> 02:27:05.230
¿Estás bien? Sí, señor. Sí, señor. También es así. Sí, voy a hacerlo caro.

02:27:05.230 --> 02:27:09.810
El problema, bueno, veámoslo el inconveniente original. Si lo colocaba de este lado, me

02:27:09.810 --> 02:27:14.370
enviaba en correos. Y entonces, de la forma que tú estás diciendo, te enviaría un correo.

02:27:14.610 --> 02:27:20.570
Exactamente. Sí, señor. Daría lo mismo. Daría lo mismo al final. Bueno, dejamos

02:27:20.570 --> 02:27:35.210
hasta aquí y seguimos en 10 minutitos entonces, ¿OK? Tome algo y volvemos en

02:27:54.250 --> 02:27:59.050
Bueno, continuamos, pues. Estamos conectados, ya estamos casi en la hora del almuerzo. Seguimos

02:27:59.570 --> 02:28:04.530
entonces. Bueno, pertenece a lo siguiente. Voy a, voy a hacer este ejercicio simplemente

02:28:04.530 --> 02:28:07.650
para que entienda el componente. Este ejercicio que tenemos aquí. Por favor,

02:28:07.710 --> 02:28:14.090
sácale una copia. El de ejemplo, correo, por favor, clic derecho, por favor, copie y

02:28:14.090 --> 02:28:29.730
pégalo en la misma carpeta, por favor. Cambia el nombre a versión 2. Editar. Versión 2.

02:28:32.930 --> 02:28:39.070
Versión 2. Listo, por favor, edite. Abre este archivo, por favor.

02:28:46.950 --> 02:28:56.350
Y por favor, entonces, no sé si ya está en esta ventana. Cambie, borre estos dos

02:28:56.350 --> 02:29:04.010
componentes, el T aggregated y el T short row, por favor, cámbielo. Por un T

02:29:05.930 --> 02:29:17.510
aggregated shorter, o se llama T aggregated, se me escapó. Este T aggregated shorter row,

02:29:17.730 --> 02:29:24.510
por favor. O sea, une los dos. Este componente une la parte de agrupar y ordenar al mismo

02:29:24.510 --> 02:29:29.890
tiempo, pero tiene una pequeña diferencia. Entonces, una por favor aquí.

02:29:34.250 --> 02:29:44.870
Y una, por favor, acá el T5 delimited. Y explico, entonces, lo siguiente. Por favor,

02:29:45.190 --> 02:29:49.730
¿qué es lo que hace este componente? Este componente, pues, une la parte de

02:29:49.730 --> 02:29:55.970
agrupamiento y ordenamiento en uno solo. Pero este componente es para eficiencia.

02:29:56.330 --> 02:30:01.470
El otro componente, el T short row, me da más flexibilidad, que ya le digo por qué. Por

02:30:01.470 --> 02:30:10.510
este componente. Y ese componente, ya se cuenta que este componente es muy parecido al otro.

02:30:12.810 --> 02:30:19.150
Configuremos lo que ya sabíamos. Aquí vamos a ordenar por distrito y por, perdón,

02:30:19.190 --> 02:30:25.070
no sé qué coloque de entrada, perdón, qué pena. Ya estaba configurado ya. Distrito y anualidad.

02:30:25.070 --> 02:30:34.810
Vamos con esto que está aquí, que me salga la entrada, que consigue la entrada con la,

02:30:35.150 --> 02:30:38.030
que no sé por qué me desordenó esto aquí. No sé si fue porque copié y pegué.

02:30:39.850 --> 02:30:44.710
Ve lo siguiente. Aquí la columna salida distrito con columna entrada distrito,

02:30:44.830 --> 02:30:49.530
anualidad con columna entrada anualidad. Y la columna salida aquí, por favor. Entonces,

02:30:49.550 --> 02:30:53.350
sería total, creo que quedó con la confesión anterior, me parece a mí,

02:30:53.350 --> 02:31:07.290
total producción. Y aquí estaba Zoom. Y aquí estaba Aria. Por favor. Perdón.

02:31:08.530 --> 02:31:12.470
Sí, yo creo que vendría. Muéstrame para ver, de pronto es que yo no sé por qué me tomó esa

02:31:12.470 --> 02:31:16.170
confesión, no debió tomarla, pero vamos a ver para ver. ¿Quién me habló? Mauricio.

02:31:17.010 --> 02:31:22.010
Gerardo, vamos Gerardo, para el tuyo, para ver de pronto a ti te. Sí, sí, no, también,

02:31:22.010 --> 02:31:25.370
también, también, también, también, también. Listo, pero si está bien, está bien,

02:31:25.510 --> 02:31:31.250
no hay problema. Vamos a lo último entonces y vamos a la diferencia que hay. Listo,

02:31:31.450 --> 02:31:39.250
el problema del terror del vai no es tan fácil de solucionar. O sea,

02:31:39.450 --> 02:31:43.450
me lo explico de esta manera. Voy a hacer aquí un diagrama, aquí hago un diagramita aquí.

02:31:48.210 --> 02:31:55.690
Debié hacerlo de este lado. ¿Qué peor? Debié hacerlo de este lado, acá. Un momento. Listo.

02:31:56.550 --> 02:32:02.130
El problema es que, digamos, que usted quiere hacer lo siguiente. Esto no es tan fácil ni

02:32:02.130 --> 02:32:06.650
siquiera a nivel de base de datos. Bueno, fácil no. Lo que pasa es que lo complicado es

02:32:06.650 --> 02:32:13.490
el rendimiento. Veamos lo siguiente que aquí veo que no me cargó los componentes.

02:32:13.510 --> 02:32:19.910
Un momento. Sí, supongamos que tú tienes lo siguiente. Select.

02:32:21.030 --> 02:32:28.570
Aterrico from empleados. Order by nombre. Ahora te coloco esto más grande. Nombres.

02:32:28.770 --> 02:32:32.790
Sí, vamos a suponer. Entonces, recordarás lo que te dije yo. Normalmente esto está en un

02:32:32.790 --> 02:32:38.650
data files. Esos data files no necesariamente están decentes. O sea, juntos pueden estar

02:32:38.650 --> 02:32:43.190
separados en diferentes partes. Y el problema es que para hacer el ordenamiento él tiene

02:32:43.190 --> 02:32:50.070
que ser, dependiendo de la de la de la columna como tal, tendría que subir todos estos registros

02:32:50.070 --> 02:32:54.830
a memoria principal y hacer el ordenamiento. Por lo tanto, si la tarla es muy grande,

02:32:55.170 --> 02:32:58.730
un order by te puede costar mucho el nivel de tiempo de respuesta. Hay que saberlo

02:32:58.730 --> 02:33:04.450
cómo hacerlo. O colocar algunos elementos que te puedan ayudar a mejorar ese order by. Listo.

02:33:04.530 --> 02:33:11.410
Entonces, este señor viene con esa idea. Notarás que aquí, cuando vengo a la

02:33:11.410 --> 02:33:16.330
configuración, esta configuración que tengo acá, se me perdió la pantalla. Esta de aquí.

02:33:17.410 --> 02:33:25.270
Espera que se me perdió mi pantalla. Dejame que la cerré. Listo, aquí. Aquí te pide un

02:33:25.270 --> 02:33:30.850
import road common. Ese que está ahí. El cantidad de filas de entrada. ¿Qué es lo que

02:33:30.850 --> 02:33:37.130
hace él ahí? Lo que te pide es que le des un parámetro. Por lo menos que le des el

02:33:37.210 --> 02:33:44.230
número máximo o el número que tiene la de registro que tiene lo que ordenar y con él

02:33:44.230 --> 02:33:50.250
hace un organismo de tal forma en saber qué tanto va a subir a memoria principal y cómo lo

02:33:50.250 --> 02:33:56.250
sube. Simplemente esto es para eficiencia en order by. Yo puedo colocar aquí cualquier número.

02:33:56.990 --> 02:34:01.250
500. Entonces, a partir de ese 500 él empieza entonces a generar un algoritmo. Normalmente

02:34:01.250 --> 02:34:06.310
lo que deberías colocar ahí es el número. El número que tiene la cantidad del archivo de

02:34:06.310 --> 02:34:10.090
entrada. Ahí vas a colocar el máximo de la cantidad de registro que tiene. Y con eso él genera

02:34:10.090 --> 02:34:15.390
un algoritmo para hacerlo más eficiente en order by. Eso es. Ahora, esto es para eficiencia,

02:34:15.450 --> 02:34:21.130
pero pierdo flexibilidad. Porque ahora lo que hace es... Dete cuenta que aquí no hay una

02:34:21.130 --> 02:34:25.510
especificación para decir qué columna quiere ordenar. Entonces lo que hace él es que ahora,

02:34:25.670 --> 02:34:29.390
por la primera columna que está aquí en el group by, ordena. Y sigue ordenando por las

02:34:29.390 --> 02:34:33.310
siguientes columnas que tiene en el group by. En este caso ordenaría de forma ascendente.

02:34:33.310 --> 02:34:37.650
Ya no puedo configurar que sea ascendente. Ni tampoco puedo ordenar por una columna diferente

02:34:37.650 --> 02:34:44.030
a la que estén ahí. Ya ahí pierde flexibilidad, pero gana eficiencia. Eso es lo que hace nada más

02:34:44.030 --> 02:34:48.330
esta parte. Si quiere lo ejecutamos, pero le va a llegar un correo nuevamente. Si quiere,

02:34:48.590 --> 02:34:53.970
se activa esta parte del correo. O si quiere, pues hace la prueba y ejecuta este señor,

02:34:53.970 --> 02:35:07.590
versión dos. Voy a ejecutarlo para ver. Me debería llegar otro correo. Debería

02:35:07.590 --> 02:35:12.510
funcionar exactamente igual. No creo que haya una diferencia, menos que me haya equivocado en

02:35:12.510 --> 02:35:19.850
la configuración. Está un poquito lento. Creo que ejecuté algo que no era. No sé,

02:35:19.850 --> 02:35:26.690
porque me dio... Así es, ejecuto este. Ah, no, ejecuté el anterior, qué pena. Está

02:35:26.690 --> 02:35:32.990
ejecutando el anterior. Este en versión dos. Un momentito, un momento, un momento.

02:35:33.510 --> 02:35:39.030
O hasta más lento. Debería dar lo mismo. Ahora si tengo versión dos, voy a ejecutar entonces.

02:35:49.850 --> 02:35:54.950
No creo que le hizo... Sí, ahí está la misma cantidad de... Es lo mismo. La única diferencia

02:35:54.950 --> 02:36:02.830
que va a haber... Perdón, vamos a ver. No vi el chap, voy a ver el chap. Sí, claro. Ahí recuerda

02:36:02.830 --> 02:36:09.530
que hice por distrito y por año. Ahí tienes distrito Nicobars en el 2000, la producción en

02:36:09.530 --> 02:36:14.410
el 2001, 2002. Exactamente. Listo, sigo con ese para matar este ejemplo aquí,

02:36:14.410 --> 02:36:25.450
ya que aprovecho, vamos a lo siguiente. Aprovechando la imagen que me mandó aquí Mauricio, voy a tomar

02:36:25.450 --> 02:36:34.330
esta imagen que está aquí. Mira lo que quiero hacer. Quiero sacar el máximo de producción por

02:36:34.330 --> 02:36:41.330
año. Es decir, que el máximo de producción por año, o sea el año que más produce en Nicobars,

02:36:41.330 --> 02:36:48.810
¿qué año fue? ¿Me ayuda ahí por favor? Fue el año 2004, si mis cálculos no me fallan,

02:36:48.810 --> 02:36:54.910
¿sí o no? La idea es esta. Vamos a colocarle para que... Algo que le pueda ayudar mucho la

02:36:55.350 --> 02:37:00.310
herramienta en SQL es un poco más complejo que hacer. Voy a lo siguiente. Supongamos que

02:37:00.310 --> 02:37:09.490
tenga los siguientes datos. Tengo distrito, tengo año y tengo producción. Significa que

02:37:09.490 --> 02:37:18.710
en el distrito A, en el año 2000, voy a suponer que tuvo una producción de 10. El mismo distrito

02:37:18.710 --> 02:37:25.410
en el 2001, que es el reporte que tenemos actualmente, me lo da en 15. El A aquí en el 2002,

02:37:28.410 --> 02:37:38.030
supongamos que sea 10 nuevamente. Distrito B, supongamos que tenga en el año 2000 una

02:37:38.030 --> 02:37:49.270
producción de 15 y en el año 2002 una producción de 40. Quiero que me muestre entonces por

02:37:49.270 --> 02:37:53.230
distrito cuál fue el año en que más produce. Quiere decir entonces que el resultado me debería

02:37:53.230 --> 02:38:00.470
dar lo siguiente. Distrito, año, producción. En el caso del distrito A, como es el máximo,

02:38:00.470 --> 02:38:07.750
debe pasar una vez. A, el año en que más produce aquí fue el año 2000, 2001 perdón,

02:38:08.790 --> 02:38:16.050
con 15. Y el B, el año en que más tuvo producción fue, aquí me equivoqué en el año, 2001,

02:38:19.010 --> 02:38:26.510
2001 con 40. Si me entiende cuál es la idea que queremos hacer. Esto con SQL no es tan sencillo

02:38:26.510 --> 02:38:33.910
de hacer. Hay que hacer pequeños subqueries para poder lograr esta parte. Entonces esta herramienta

02:38:33.910 --> 02:38:38.850
me lo permite muy fácilmente. No sé si entiende la idea de lo que vamos a hacer. ¿Sí? ¿Tiene

02:38:38.850 --> 02:38:43.530
claro? Bueno, entonces para hacer este tipo de ejercicio, por favor, hagamos lo siguiente.

02:38:43.670 --> 02:38:55.770
Vamos a copiar, vamos a copiar. Voy a mostrarle acá. Voy a copiar acá. Se me

02:38:55.770 --> 02:39:02.230
va a poner ese acá, perdón, es este de aquí. Listo, entonces, voy a copiar el de anualidad

02:39:02.230 --> 02:39:10.290
versión uno, control C, copiar, que me sirve copiar, y lo voy a pegar acá. Y le voy a

02:39:10.290 --> 02:39:14.630
cambiar el nombre, editar, es de la versión uno, que es la versión dos, que fue la última

02:39:14.630 --> 02:39:20.770
que hizo con él. Te agregué este short row. Producción por distrito de A. Voy a colocar

02:39:20.770 --> 02:39:29.110
aquí. Job máxima. Producción por distrito y anualidad. Y voy a quitarle el copy. Sí,

02:39:29.230 --> 02:39:35.130
el último. No, perdón, el de versión uno. El anterior. En el último agregamos un te

02:39:35.130 --> 02:39:40.930
agregé este short row. En este no, es el de versión uno. El que tiene un te agregé

02:39:40.930 --> 02:39:48.130
este y después un te short. Listo, vamos a darle aquí finish, por favor. Y abre el que

02:39:48.340 --> 02:39:54.900
se copió. Voy a cerrar este señor y voy a abrir el de máxima producción. Listo.

02:39:55.540 --> 02:39:59.620
Voy a copiar esto para que sea mejor, para que todos lo vean acá mejor. Directamente

02:39:59.620 --> 02:40:14.000
la máquina virtual. Bien. Voy a borrar esto de aquí. Este job, lo que me traje es

02:40:14.000 --> 02:40:21.000
esto de esta aquí. Pero yo quiero el máximo de producción por año. Entonces lo que voy

02:40:21.000 --> 02:40:27.340
a hacer es lo siguiente. Voy a quitar esta unión de este te agregue y te coge este

02:40:27.340 --> 02:40:35.260
te short row. Y voy a agregar otro te agregue y te row. Perdón, no ese short, sino

02:40:35.260 --> 02:40:50.960
te agregue y te row. Y uno el te agregue y te coge el nuevo. Y uno el te agregue

02:40:50.960 --> 02:41:03.400
y te nuevo con el te short row. Sí. Voy a tener un te agregue y te nuevo. Listo.

02:41:03.400 --> 02:41:12.080
Bueno, el te agregue y te row uno saca los datos en este formato, este de aquí. O sea,

02:41:12.240 --> 02:41:19.180
por cada año, por cada distrito y año va a sacar un valor. Te voy a decir que en el año 2000

02:41:19.180 --> 02:41:26.720
producimos 10, año 2001 producimos 15, año 2002 produje 10. Y lo que deseo es que sacar

02:41:26.840 --> 02:41:35.420
desde cada distrito el máximo año que vendí. No sé si ahí me entendí o ya. ¿Cuál es la idea?

02:41:35.840 --> 02:41:46.220
Aclaro, aclaro, aclaro, aclaro. O hacemos así. El mundo me da la producción por año de cada

02:41:46.220 --> 02:41:52.360
distrito. Y ahora quiero por cada distrito cuál fue el máximo producción que tuve. No creo que

02:41:53.610 --> 02:41:59.670
salga. Ah, pero que no puedes garantizar ni lo siguiente. Mira, me parece interesante. Si le

02:41:59.670 --> 02:42:03.950
colocas al año max, te saca el año 2002, pero no fue el año que vas vendí. Porque el año que

02:42:03.950 --> 02:42:12.250
vas vendí fue el 2001. A sacarle más del año. Sí, vamos a ver. Si yo hago lo siguiente,

02:42:12.370 --> 02:42:20.170
me parece interesante. Si yo hago, ya me entendí. Si yo hago un select, me parece

02:42:20.170 --> 02:42:26.830
interesante la observación. Bueno, aquí dé cualquier cosa. Entiendo que lo que haríamos

02:42:26.830 --> 02:42:43.510
con este cuelgo sería un group by de distrito coma año. Distrito, aclaro, aclaro, distrito

02:42:43.510 --> 02:42:51.130
grupo by. No, que estoy pensando para ver si sale grupo by distrito año. Y te entiendo,

02:42:51.410 --> 02:42:59.870
acá le doy entonces y saco el máximo aquí. El max del total, ¿Verdad?

02:43:04.290 --> 02:43:09.470
Yo creo que sí sale así. Vamos a probarlo un momento para ver. Que venga, me pareció

02:43:09.470 --> 02:43:15.650
interesante. Vamos a probarlo aquí. Vamos a probar esta. Vamos a quitar el te agreguéste,

02:43:15.770 --> 02:43:25.150
que pena. Vamos a dejarlo como estaba anteriormente, control z, control z, control z, control z,

02:43:25.330 --> 02:43:46.730
control z hasta que llegue. Aquí. Pero es que si le doy aquí a max año, mira lo que

02:43:46.730 --> 02:43:53.050
me da. Si le coloco aquí max año, mira lo que me está dando. Me va a dar distrito,

02:43:54.990 --> 02:44:02.330
¿Verdad? Exactamente, me daría dos mil dos y me daría, me daría quince acá. No

02:44:02.330 --> 02:44:06.670
cuadraría en los datos. Pero lo que me parece interesante es que si yo coloco este

02:44:06.670 --> 02:44:13.110
max, él va a sacar solamente un solo elemento. Pero no sé si el elemento que va a sacar

02:44:13.110 --> 02:44:17.470
es el primer, el primer registro. No sé, vamos a hacer la prueba un momento porque

02:44:17.470 --> 02:44:27.110
ahora quedé con la duda. Es más, si me va a dar. Sí, sí, va a pitar lo mismo, sí.

02:44:27.670 --> 02:44:31.410
Exactamente. Sí, porque él va a agrupar por estos dos y va a sacar el máximo como

02:44:31.410 --> 02:44:36.350
es solo elemento, va a darle el mismo. Sí, señor. No, pero, no, pero que recuerda

02:44:36.350 --> 02:44:42.450
que no puedes colocar una función de grupo word, lo máximo un having. Bueno,

02:44:42.470 --> 02:44:45.590
vamos a la idea, pero gracias, no, pero la sensación estuvo interesante porque

02:44:45.590 --> 02:44:48.990
ahí analizamos un par de cosas. Dejemos, qué pena, qué pena que lo había puesto

02:44:48.990 --> 02:44:53.110
usted en esto, pero vamos a ver. Dejemos aquí, aquí te quedaste, no, pero fue

02:44:53.110 --> 02:44:56.530
interesante porque aún analiza ahí varias cosas. Primero, mira, la idea

02:44:56.530 --> 02:45:07.410
cuál sería ahora. Tengo los datos así, ¿Cierto? Ahora, después que lo tengo aquí

02:45:07.410 --> 02:45:15.270
de cada distrito, voy a agrupar por cada distrito y voy a sacar el de

02:45:17.810 --> 02:45:19.310
inicialmente a quince.

02:45:21.670 --> 02:45:24.950
Si tiene la idea. OK, vamos a ver que estoy empezando a ver si lo podemos hacer

02:45:24.950 --> 02:45:28.970
diferente, pero vamos a ver, listo, vamos a acá, voy por aquí, vamos aquí al

02:45:28.970 --> 02:45:29.830
te agregue y te robo.

02:45:33.670 --> 02:45:37.890
Y le vamos a decir, oye, agrúpame por distrito.

02:45:39.470 --> 02:45:40.990
En el dos, estoy en el dos, un momentito.

02:45:43.170 --> 02:45:48.370
Saca toda la salida, por favor, todo lo que entra, sácalo.

02:45:49.970 --> 02:45:57.270
Y en el opus le voy a decir lo siguiente, mira, al total de producción.

02:45:59.210 --> 02:46:03.530
Sácamele el max. De total producción aquí.

02:46:07.550 --> 02:46:10.390
Ahí me falta todavía agregar el año. Qué pena, qué pena, bueno, esto.

02:46:10.390 --> 02:46:14.030
Dejemos lo siguiente. Al final ha quedado como originalmente.

02:46:14.090 --> 02:46:17.150
Agregue dos te agregaditos robo, el que teníamos originalmente y agregue uno

02:46:17.150 --> 02:46:20.190
nuevo. Vuelva a lo unir nuevamente, pero lo que hace es que te entre.

02:46:21.710 --> 02:46:26.270
El dos. El uno, déjalo quieto, no, el uno no lo vamos a mover nada.

02:46:26.330 --> 02:46:27.990
Vamos con el dos. No sé si lo hacemos.

02:46:28.670 --> 02:46:31.830
Usted entiende un momento o si quiere lo hago gráficamente cuál es la

02:46:31.830 --> 02:46:34.950
idea que queremos, no sé, pero voy a hacer lo siguiente aquí.

02:46:35.570 --> 02:46:36.550
Si no me entiende.

02:46:39.270 --> 02:46:41.850
Yo creo que si vamos a ver, mira lo siguiente, que tiene una función

02:46:41.850 --> 02:46:46.810
interesante. Aquí saco, aquí en este momento saco aquí, mira lo que estoy

02:46:46.810 --> 02:46:49.590
sacando aquí, saco a y saco 15, verdad?

02:46:50.290 --> 02:46:52.810
Me falta sacar este año que tenía que ser 2001.

02:46:53.910 --> 02:46:57.730
Leto. Yo voy acá a lo siguiente y le voy a decir aquí, oye, me van

02:46:57.730 --> 02:46:59.510
por anualidad.

02:47:00.810 --> 02:47:03.350
Sácame el primer registro del grupo que sacaste.

02:47:04.230 --> 02:47:06.470
Como el primero es el máximo, va a sacar el primero.

02:47:06.990 --> 02:47:10.030
Aquí más yo lo hacemos gráficamente, si no nos da para ver.

02:47:11.890 --> 02:47:14.750
Al esto bien, vamos, si quiero más, vamos, hay que hacerlo gráficamente.

02:47:16.410 --> 02:47:19.410
Recordarás que esto lo hace a nivel de registro el verdad?

02:47:19.810 --> 02:47:21.150
Espera un momentico de ser aquí.

02:47:24.230 --> 02:47:24.910
No, no, que te interesa.

02:47:28.570 --> 02:47:33.310
Si yo digo que agrupe el por por distrito,

02:47:33.310 --> 02:47:37.270
que está haciendo él, está metiendo en una misma bolsa estos tres registros,

02:47:38.410 --> 02:47:39.390
verdad? Estamos de acuerdo hasta aquí.

02:47:40.550 --> 02:47:43.470
Si estamos de acuerdo ahí, listo, bien, perfecto.

02:47:44.510 --> 02:47:49.730
Cuando yo le digo ahora que saque el máximo del grupo, de este grupo que

02:47:49.730 --> 02:47:52.890
sacamos, saca el máximo, el registro que saca es este, verdad?

02:47:54.990 --> 02:47:58.270
Estamos de acuerdo ahí. Ahora le estoy diciendo porque saca el registro.

02:47:59.510 --> 02:48:02.270
No creo que se pierda porque es que.

02:48:03.310 --> 02:48:06.850
Bueno, sí, sí, dependiendo de la función, estamos de acuerdo en ese,

02:48:06.950 --> 02:48:11.390
pero acá acá no lo pierda, acá lo manejamos si fuera un registro.

02:48:12.770 --> 02:48:15.890
Sabes por qué digo, porque tengo la duda, porque me hiciste con la inversión

02:48:15.890 --> 02:48:20.410
7, inversión 5, él permitía colocar lo que voy a hacer aquí,

02:48:21.070 --> 02:48:24.110
el primer elemento. Entonces, mira, digamos lo siguiente, veámoslo de esta

02:48:24.110 --> 02:48:27.650
forma. Yo saqué ahora el máximo en el que yo este registro y estoy

02:48:27.650 --> 02:48:31.450
diciendo ahora me da un favor de la anualidad, saca el primero que

02:48:31.450 --> 02:48:33.110
encontraste y el primero que encontré fue este nada más.

02:48:33.310 --> 02:48:37.470
Un solo registro, nada más sería la idea. Ahora no.

02:48:38.850 --> 02:48:41.310
Ahora ahora recapitulamos un poquito como el ciclo de pronto nos reunimos

02:48:41.310 --> 02:48:43.630
un día y me parece la discusión interesante.

02:48:45.230 --> 02:48:47.910
Sería la configuración así, vamos a ver si nos da entonces.

02:48:49.210 --> 02:48:51.430
Y revisamos para ver después el.

02:48:55.370 --> 02:48:58.650
Listo, vamos a ver, bueno, vamos a lo siguiente, agreguemos entonces

02:48:58.650 --> 02:49:00.890
el te agregué este robo que es lo que vamos a configurar.

02:49:00.890 --> 02:49:02.370
Ok, nada más es eso.

02:49:03.510 --> 02:49:04.650
Entonces, en este te agradezco.

02:49:08.270 --> 02:49:11.090
Perdón. Bueno, hagámos lo siguiente.

02:49:11.750 --> 02:49:14.410
Si desean, vamos a almuerzo y regresamos nuevamente con el ciclo,

02:49:14.430 --> 02:49:17.710
lo volvemos a hacer nuevamente y probamos para ver esto, pues seguimos

02:49:17.710 --> 02:49:19.470
entonces en una hora. Les agradezco.

02:49:20.830 --> 02:49:21.970
Listo, pues bueno, listo.