From 1c5b4d4659a9afcc9e33b87749d772af67a80553 Mon Sep 17 00:00:00 2001 From: Guillem Borrell Nogueras Date: Fri, 26 Aug 2022 13:57:46 +0200 Subject: [PATCH] Update 'Notas' --- Notas.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/Notas.md b/Notas.md index 1262c5e..7dfd6d6 100644 --- a/Notas.md +++ b/Notas.md @@ -8,10 +8,12 @@ ## Setup * No usaremos una Raspberry pi porque compilar todos los paquetes necesarios a esa arquitectura es un montón de tiempo +* Me tiré un buen rato ya sólo compilando libarrow a armv7l, para lo que tuve que pasar manualmente la arquitectura del procesador a cmake porque no era capaz de detectarla manualmente. Nadie asume que vas a intentar hacer big data con un embedded o una tablet. * Al final he comprado un PC de segunda mano que está literalmente en la mesa de mi despacho con el que he preparado la charla y ejectaré todo el código * Ha costado prácticamente lo mismo que una RPi de 8 GB, pero tiene un procesador decente y 16G de RAM. Eso sí, el disco es más malo que el agua del bacalao. * Haré la presentacin y programaré en una tablet vieja, con el teclado bluetooth más barato que encontré en la tienda donde compran los que creen que no son tontos. + ## Datos * Muchos están en el error que lo más importante del cálculo distribuido es el proceso en paralelo. En realidad es la gestión de los metadatos @@ -20,4 +22,18 @@ * Diferencias entre una base de datos para una aplicación y una base de datos para proceso masivo de datos * La primera está normalizada, la segunda muy probablemente no lo esté -* La operación más frecuente en una base de datos relacional (join) es muy cara si los datos están particionados \ No newline at end of file +* La operación más frecuente en una base de datos relacional (join) es muy cara si los datos están particionados + +* Dask es una herramienta muy práctica, pero seguramente por los motivos equivocados que creéis. Su capacidad para escalar algoritmos en paralelo es importante, pero también lo es que permita ejecutar tareas out-of-core de manera asíncrona. Si alguna vez habéis pensado "esto lo puedo procesar a cachitos, tardará más, pero no necesitaré una máquina tran grande..." dask es vuestra herramienta. + +* La principal diferencia en arquitectura entre Dask y Spark es que Dask rompe la paralelización en elementos más pequeños. Hace visible cada operación al scheduler, no cada bloque de operaciones como Spark. Eso permite al scheduler utilizar mejor los recursos. + +* Otra herramienta que es ya fundamental en muchos teck stacks es duckdb. Lo es gracias a Arrow. Si Arrow puede cargar algo en memoria, duckdb podrá ejecutar una consulta sobre ello. + +* También tenemos pyarrow. El obeto Table de pyarrow ahora tiene un montn de cosas interesantes en el módulo compute. + +## WEB + +El futuro será webassembly. + +* shell.duckdb.org \ No newline at end of file