Ответ 1
Bigtable - это изобретение Google, чтобы иметь дело с огромным количеством информации, которую компания регулярно занимается. Набор данных Bigtable может вырасти до огромного размера (много петабайт) с хранилищем, распределенным на большом количестве серверов. Системы, использующие Bigtable, включают такие проекты, как веб-индекс Google и Google Earth.
В соответствии с технический документ Google по теме:
A Bigtable - это редкая, распределенная, постоянная многомерная сортированная карта. Карта индексируется ключом строки, столбцом и меткой времени; каждое значение на карте представляет собой неинтерпретируемый массив байтов.
Внутренняя механика Bigtable по сравнению, скажем, с MySQL, настолько разнородна, что затрудняет сравнение, и намеченные цели также не слишком много перекрываются. Но вы можете думать о Bigtable немного как о базе данных из одной таблицы. Представьте, например, трудности, с которыми вы столкнулись, если бы попытались внедрить всю систему поиска Google в базе данных MySQL - Bigtable был создан для решения этих проблем.
Биллигатные наборы данных могут запрашиваться у таких сервисов, как AppEngine, с использованием языка GQL ( "gee-kwal" ), который основан на подмножестве SQL. Заметно отсутствует в GQL какая-либо команда JOIN
. Из-за распределенного характера базы данных Bigtable выполнение соединения между двумя таблицами было бы ужасно неэффективным. Вместо этого программист должен реализовать такую логику в своем приложении или разработать свое приложение, чтобы оно не нуждалось в нем.