Od tej odpowiedzi do „Z jakiej bazy danych korzysta Google?” :
Bigtable nie jest relacyjną bazą danych. Nie obsługuje złączeń ani nie obsługuje bogatych zapytań podobnych do SQL.
Czy to oczywiste? Nie rozumiem dlaczego.
Od tej odpowiedzi do „Z jakiej bazy danych korzysta Google?” :
Bigtable nie jest relacyjną bazą danych. Nie obsługuje złączeń ani nie obsługuje bogatych zapytań podobnych do SQL.
Czy to oczywiste? Nie rozumiem dlaczego.
Odpowiedzi:
Bigtable nie używa SQL (języka zapytań), więc SQL nie może być użyty bezpośrednio do zapytania do bazy danych. A Bigtable nie ma „relacji” w taki sam sposób, jak relacyjnych baz danych, jest bardziej jak puste tabele.
Jeśli chcesz uzyskać dane z dwóch tabel, musisz wykonać dwa wyszukiwania i połączyć zestaw wyników w kodzie aplikacji. Innymi słowy, operacja „dołączenia” nie jest wbudowana w bazie danych, więc w razie potrzeby musisz wykonać tego rodzaju operacje w aplikacji.
Fakt, że Bigtable nie obsługuje operacji SQL i JOIN, nie ma nic wspólnego z tym, że jest to system rozproszonej bazy danych. Istnieją rozproszone bazy danych obsługujące SQL. Np. VoltDB i MySQL Cluster . Istnieje również wiele baz danych, które nie są dystrybuowane i nie używają SQL, np. Kyoto Cabinet .