Apache Kudu es un sistema de almacenamiento en columnas gratuito y de código abierto desarrollado para Apache Hadoop. Es un motor destinado a datos estructurados que admite acceso aleatorio de baja latencia a escala de milisegundos a filas individuales junto con excelentes patrones de acceso analítico. Es un motor de big data creado para establecer la conexión entre el ampliamente extendido sistema de archivos distribuido de Hadoop [HDFS] y la base de datos NoSQL HBase.
Apache Kudu combina los beneficios de HBase y Parquet. Es tan rápido como HBase en la ingesta de datos y casi tan rápido como Parquet cuando se trata de consultas de analítica. Admite varios tipos de consultas, lo que le permite realizar las siguientes operaciones:
Apache Kudu emplea el algoritmo de consenso RAFT, por lo que puede escalarse horizontalmente según sea necesario. Además, viene con soporte para la función de actualización en el lugar.
Apache Kudu viene optimizado para SSD y está diseñado para aprovechar la próxima memoria persistente. Es capaz de escalar a decenas de núcleos por servidor e incluso beneficiarse de las operaciones SIMD para el cálculo paralelo de datos.
Incluye una “dimensión que cambia lentamente”, también conocida como SCD. Esta capacidad permite al usuario realizar un seguimiento de los cambios dentro de los datos de referencia dimensional.
¿Deseas acceder a los datos a través de SQL? Entonces, te alegrará saber que Apache Kudu tiene una estrecha integración con Apache Impala y Spark. Como consecuencia, podrás emplear estas herramientas para insertar, consultar, actualizar y eliminar datos de las tabletas Kudu al usar su sintaxis SQL. Además, puedes usar JDBC u ODBC para conectar aplicaciones nuevas o existentes sin importar el lenguaje en el que se escribieron, marcos e incluso herramientas de inteligencia empresarial a tus datos de Kudu, al usar Impala como herramienta para hacer esto.
