В чем разница между BigQuery и BigTable?
Есть ли причина, по которой кто-то будет использовать BigTable вместо BigQuery? Похоже, что оба поддерживают операции чтения и записи, причем последний предлагает также расширенные операции "запрос".
Мне нужно разработать партнерскую сеть (таким образом, мне нужно отслеживать клики и "продажи"), поэтому я весьма озадачен разницей, потому что bigQuery, похоже, просто bigTable с лучшим API.
3 ответа
Разница в основном в этом:
BigQuery - это механизм запросов для наборов данных, которые мало меняются или меняются при добавлении. Это отличный выбор, когда ваши запросы требуют "сканирования таблицы" или просмотра всей базы данных. Подумайте суммы, средние, подсчеты, группировки. BigQuery - это то, что вы используете, когда вы собрали большой объем данных, и вам нужно задавать вопросы по этому поводу.
BigTable - это база данных. Он разработан, чтобы стать основой для большого масштабируемого приложения. Используйте BigTable, когда вы создаете какое-либо приложение, которое должно читать и записывать данные, и масштабирование является потенциальной проблемой.
Это может немного помочь в выборе между различными хранилищами данных, которые предлагает облако Google (Disclaimer! Скопировано со страницы Google Cloud)
Если вам требуется живая база данных, вам нужна BigTable (хотя на самом деле это не OLTP- система) . Если это скорее цель аналитики, то BigQuery - это то, что вам нужно.
Подумайте о OLTP против OLAP; Или, если вы знакомы с Cassandra и Hadoop, BigTable примерно приравнивается к Cassandra, BigQuery примерно приравнивается к Hadoop (Согласен, не честное сравнение, но вы поняли идею)
https://cloud.google.com/images/storage-options/flowchart.svg
Заметка
Помните, что Bigtable не является реляционной базой данных и не поддерживает запросы SQL или JOIN
s, а также не поддерживает многострочные транзакции. Кроме того, это не очень хорошее решение для небольших объемов данных. Если вам нужна RDBMS OLTP, вам, возможно, придется взглянуть на cloudSQL (mysql/ postgres) или на гаечный ключ.
Стоимость Перспектива
/questions/9519955/google-bigtable-protiv-bigquery-dlya-hraneniya-bolshogo-kolichestva-sobyitij/9519958#9519958. Цитирование соответствующих частей здесь.
Общая стоимость сводится к тому, как часто вы будете "запрашивать" данные. Если это резервная копия, и вы не будете воспроизводить события слишком часто, это будет очень дешево. Однако, если вам нужно будет воспроизводить его один раз в день, вы начнете очень легко запускать отсканированные 5$/ ТБ. Мы также были удивлены, насколько дешевыми были вставки и хранилище, но это, конечно, потому что Google ожидает, что вы в какой-то момент будете выполнять на них дорогостоящие запросы. Вам придется придумать несколько вещей. Например, потоковые вставки AFAIK не гарантируют, что они будут записаны в таблицу, и вам приходится часто опрашивать в конце списка, чтобы убедиться, что он действительно записан. Хвост может быть эффективно выполнен с помощью декоратора таблицы временного диапазона (не оплачивая сканирование всего набора данных) .
Если вы не заботитесь о порядке, вы можете даже бесплатно перечислить столик. Нет необходимости запускать запрос.
Редактировать 1
Облачный гаечный ключ относительно молодой, но мощный и перспективный. По крайней мере, маркетинг Google утверждает, что его функции являются лучшими из обоих миров (традиционная RDBMS и noSQL)
Я знаю, что уже поздно отвечать, но если добавить его, это может помочь кому-то еще в будущем.
Большой стол
Google Big Table - это облачное хранилище Google для доступа к данным с малой задержкой. Первоначально он был разработан в 2004 году и был построен на файловой системе Google (GFS). Есть одна статья о Big Table: Bigtable: распределенная система хранения для структурированных данных. Сейчас он широко используется во многих основных службах Google, таких как Google Search, Google Maps и Gmail. Он разработан в архитектуре NoSQL, но все еще может использовать формат данных на основе строк. При чтении / записи данных менее 10 миллисекунд это хорошо для приложений, которые часто загружают данные. Он может масштабироваться до сотен петабайт и обрабатывать миллионы операций в секунду.
Big Table совместим с HBase 1.0 API через расширения. Любое движение от HBase будет проще. Big Table не имеет интерфейса SQL, и вы можете использовать только API go Put/Get/Delete отдельные строки или запустить операции сканирования. Big Table можно легко интегрировать с другими инструментами GCP, такими как Cloud Dataflow и Dataproc. Big Table также является основой Cloud Datastore.
В отличие от других облаков, вычисления и хранилище GCP разделены. Вы должны учитывать следующие три части при расчете стоимости. 1. Тип экземпляра Cloud и количество узлов в экземпляре. 2. Общий объем хранения ваших таблиц. 3. Количество используемой пропускной способности сети. Обратите внимание: некоторая часть сетевого трафика является бесплатной.
Это хорошо и плохо. Хорошая часть заключается в том, что вам не нужно платить за вычислительные расходы, если ваша система простаивает, а вы платите только за хранение. Плохая часть заключается в том, что прогнозировать использование вычислительных ресурсов нелегко, если у вас очень большой набор данных.
BigQuery
BigQuery - это облачное решение для хранения данных от Google. В отличие от Big Table, он нацелен на данные в целом и может за короткое время запросить огромный объем данных. Поскольку данные хранятся в формате столбчатых данных, при сканировании больших объемов данных это происходит намного быстрее, чем в Big Table. BigQuery позволяет масштабировать до петабайта и является отличным хранилищем корпоративных данных для аналитики. BigQuery без сервера. Бессерверные вычисления означают, что вычислительные ресурсы могут быть ускорены по требованию Это дает пользователям преимущество от нулевого использования сервера до полномасштабного использования без привлечения администраторов и управления инфраструктурой. По данным Google, BigQuery может сканировать терабайты данных в считанные секунды и петабайты данных в считанные минуты. Для приема данных BigQuery позволяет загружать данные из Google Cloud Storage или Google Cloud DataStore или передавать в хранилище BigQuery.
Однако BigQuery действительно предназначен для запросов типа OLAP и сканирует большое количество данных и не предназначен для запросов типа OLTP. Для небольших операций чтения / записи требуется около 2 секунд, в то время как Big Table занимает около 9 миллисекунд для того же объема данных. Big Table намного лучше для запросов типа OLTP. Хотя BigQuery поддерживает элементарные однострочные операции, в нем отсутствует поддержка транзакций между рядами.
Смотрите их для получения дополнительной информации Ссылка 1 Ссылка 2`` Ссылка 3
BigQuery и Cloud Bigtable - это не одно и то же. Bigtable - это база данных NoSQL на основе Hadoop, а BigQuery - хранилище данных на основе SQL. У них есть конкретные сценарии использования.
В очень короткие и простые сроки;
- Если вам не требуется поддержка транзакций ACID или если ваши данные недостаточно структурированы, рассмотрите Cloud Bigtable.
- Если вам нужны интерактивные запросы в системе онлайн-аналитической обработки (OLAP), рассмотрите BigQuery.