Apache Kudu é um sistema de armazenamento em formato de colunas gratuito e de código aberto desenvolvido para o Apache Hadoop. É um mecanismo destinado a dados estruturados compatível com acesso aleatório de baixa latência em escala de milissegundos a linhas individuais, juntamente com ótimos padrões de acesso analítico. É um mecanismo de big data criado para estabelecer a conexão entre o Hadoop Distributed File System [HDFS] amplamente disseminado e o banco de dados HBase NoSQL.
O Apache Kudu combina as vantagens do HBase e do Parquet. É tão rápido quanto o HBase na ingestão de dados e quase tão rápido quanto o Parquet para queries analíticas. Ele oferece suporte a vários tipos de query, permitindo executar as seguintes operações:
O Apache Kudu usa o algoritmo de consenso RAFT e, como resultado, pode ser dimensionado horizontalmente para cima ou para baixo, conforme necessário. Além disso, ele vem com suporte para recurso de atualização no local.
O Apache Kudu vem otimizado para SSD e foi projetado para aproveitar a próxima memória persistente. Ele é capaz de escalar para 10s de núcleos por servidor e até se beneficiar de operações SIMD para computação paralela de dados.
Apresenta uma “dimensão de alteração lenta”, também conhecida como SCD. Esse recurso permite que o usuário acompanhe as alterações dentro de dados de referência dimensionais.
Você quer acessar dados via SQL? Então, ficará feliz em saber que o Apache Kudu tem uma forte integração com o Apache Impala e Spark. Como resultado, você poderá usar essas ferramentas para inserir, consultar, atualizar e excluir dados de tabelas do Kudu usando sua sintaxe SQL. Além disso, você pode usar JDBC ou ODBC para conectar aplicações existentes ou novas, independentemente da linguagem em que tenham sido escritas, frameworks e até ferramentas de business intelligence para seus dados do Kudu, usando o Impala como ferramenta.
