Sobre el proyecto
Miller es una herramienta de procesamiento de datos de línea de comandos para datos indexados por nombre con pares clave-valor. En lugar de contar campos posicionales como hacen las herramientas Unix clásicas, permite referirse a los campos por nombre, usando formatos como CSV, TSV, JSON, JSON Lines y entrada indexada posicionalmente.
Capacidades principales descritas en el README:
- Manejo de datos multipropósito: limpieza de datos, reducción de datos, informes estadísticos, devops y administración de sistemas, procesamiento de archivos de registro, conversión de formatos y posprocesamiento de consultas de bases de datos.
- Operaciones con campos nombrados: agregar nuevos campos calculados a partir de los existentes, eliminar campos, ordenar, agregar estadísticamente y formatear con sangría, todo sobre la marcha.
- Conocimiento del formato: por ejemplo, la ordenación y tac de CSV mantienen las líneas de encabezado al principio; se proporciona conversión entre los formatos admitidos.
- Diseño de streaming: la mayoría de las operaciones solo necesitan un registro en memoria a la vez, por lo que los archivos más grandes que la RAM disponible se pueden procesar cuando sea funcionalmente posible, y se puede usar en contextos de tail -f. Las operaciones que necesitan una retención más profunda (sort, tac, stats1) retienen solo tantos datos como sea necesario.
- Heterogeneidad de registros: los registros con esquemas diferentes (nombres de campos) se pueden intercalar, yendo más allá de las herramientas Unix clásicas.
- Compatible con tuberías: interoperan con el conjunto de herramientas de Unix.
- Complementa herramientas de análisis de datos como R y pandas para limpiar y preparar datos, y complementa bases de datos SQL para el corte, troceado y reformateo del lado del cliente.
- Escrito en Go portátil con cero dependencias en tiempo de ejecución; un único binario se puede copiar a otra máquina.
La instalación está disponible a través de muchos gestores de paquetes, incluidos apt/yum/snap en Linux, Homebrew y MacPorts en macOS, y Chocolatey, WinGet y Scoop en Windows. La compilación desde el código fuente es compatible con make (make, make check, make install) o directamente con comandos de Go. El proyecto está licenciado bajo BSD-2-Clause y proporciona documentación extensa, tutoriales y canales de discusión de la comunidad.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.