Vídeo: Energy doesn't FLOW the way you THINK! (Electrodynamics) 2024
Então, quando você deve considerar usar o HBase? Embora a resposta a esta questão não seja necessariamente direta para todos, para começar você deve claramente ter um grande requisito de dados e recursos de hardware suficientes.
-
Um grande requisito de dados: Terabytes para petabytes - caso contrário, você terá muitos servidores ociosos em seus racks.
-
Recursos de hardware suficientes: Cinco servidores é um bom ponto de partida.
Ao considerar a rota a seguir - HBase versus RDBMS - considere outros requisitos, tais como suporte de transações, tipos de dados ricos, índices e suporte a linguagem de consulta - embora esses fatores não sejam tão negros quanto brancos precedendo duas balas. Tipos de dados, índices e suporte de linguagem de consulta podem ser adicionados por meio de outras tecnologias, como a Hive ou produtos comerciais.
"E quanto às transações? " você pergunta.
Certos casos de uso para RDBMSs, como o processamento de transações on-line, dependem de transações compatíveis com ACID entre o cliente e o RDBMS para que o sistema funcione corretamente. (ACID - A tomicity, C onsistência, I solation e D urabilidade)
Quando comparado a um RDBMS, HBase não é considerado um banco de dados compatível com ACID a partir desta escrita. O HBase não suporta transações compatíveis com ACID em várias linhas ou em várias tabelas. No entanto, a HBase garante os seguintes aspectos:
-
Atômico: Todas as operações de nível de linha dentro de uma tabela são atômicas. Essa garantia é mantida mesmo quando há mais de uma família de colunas dentro de uma linha.
-
Consistência: As operações de varredura retornam uma visão consistente dos dados armazenados no HBase em algum momento do passado. A interação simultânea do cliente pode atualizar uma linha durante uma varredura de várias linhas, mas todas as linhas retornadas por uma operação de verificação sempre contêm dados válidos de algum ponto do passado.
-
Durabilidade: Todos os dados que podem ser recuperados da HBase também foram feitos duráveis para o disco (persistente para o HDFS, em outras palavras).
Um dos aspectos emocionantes do HBase e outros projetos Apache de código aberto é que alguém na comunidade está sempre inovando e tentando melhorar a tecnologia. O HBase suporta transações de várias filas se as linhas estiverem no mesmo RegionServer. Esse recurso, que requer uma codificação adicional, foi introduzido na versão 0.00 do HBase. (Se você tiver curiosidade, a codificação adicional focada na política de divisão do HBase.)
Quando as propriedades ACID são exigidas pelos clientes HBase, Esquema HBase de modo que não sejam necessárias operações de dados de linha cruzada ou cruzada.Manter dados dentro de uma linha fornece atomicidade.