Por que não podemos realizar junções em um banco de dados distribuído como o Bigtable?

Respostas:

12

O Bigtable não usa SQL (uma linguagem de consulta), portanto, o SQL não pode ser usado diretamente para consultar o banco de dados. E o Bigtable não tem "relações" da mesma maneira que os bancos de dados relacionais, é mais como tabelas simples.

Se você deseja obter dados de duas tabelas, é necessário fazer duas pesquisas e combinar o conjunto de resultados no código do aplicativo. Em outras palavras, a operação "ingressar" não está embutida no banco de dados, portanto, você deve executar esse tipo de operação no aplicativo, se necessário.

O fato de o Bigtable não suportar operações SQL e JOIN não tem nada a ver com isso, é um sistema de banco de dados distribuído. Existem bancos de dados distribuídos com suporte para SQL. Por exemplo, VoltDB e MySQL Cluster . Também existem muitos bancos de dados que não são distribuídos e não usam SQL, por exemplo, o Kyoto Cabinet .

Jonas
fonte