BigQuery — це безсерверне сховище даних, що належить Google, для інтерактивного широкомасштабного аналізу великих наборів даних. Може використовуватись через веб інтерфейс, інтерфейс командного рядка та API. Оплата здійснюється за кількість терабайт даних опрацьованих при виконанні запитів.
Історія Після обмеженого періоду тестування в 2010 році BigQuery став доступним широкому загалу у листопаді 2011 року на конференції Google Atmosphere. У 2014 році представив проект Apache Drill для вирішення подібних проблем. У квітні 2016 року європейські користувачі зазнали 12-годинного збою у роботі служби. У травні 2016 року була оголошена підтримка для Google Sheets.
Будова BigQuery використовує ряд технологій Google, таких як рушій виконання запитів Dremel, систему керування кластером Google Borg, файлову систему Colossus, формат даних Capacitor та мережу Jupiter. Архітектура відокремлює зберігання даних від їх обробки, що дозволяє окремо маштабувати зберігання і запити.
Зберігання BigQuery підтримує як пакетний або потоковий режим запису вхідних даних. Для зберігання даних використовується Capacitor. Кожна колонка зберігається в окремому файлі, що дозволяє ефективніше їх стискати і читати. Після кодування дані записуються в Colossus, яка є наступницею Google File System, і дозволяє читати зі швидкістю до терабайта за секунду.
Зовнішні джерела даних Таблиці які зберігає BigQuery називають внутрішніми. BigQuery також підтримує запити до зовнішніх таблиць, які можуть зберігатись у Bigtable, GCS, чи Google Drive. Запити до зовнішніх даних повільніші.
Виконання запитів Для виконання запитів система керування кластером Google Borg запускає тисячі паралельних робіт () Dremel, кожна з яких може читати дані своєї частини таблиці, фільтрувати та агрегувати їх і передавати іншим роботам. Передача даних між ними здійснюється за допомогою мережі Jupiter, яка може передавати зі швидкістю до 1 петабіта на секунду.
Особливості Управління даними — створення та видалення таблиць на основі JSON-схеми, імпорт даних у форматі CSV або JSON з Google Cloud Storage. Запити — для запитів використовується стандарт SQL:2011, а результат повертається у форматі JSON з максимальним розміром відповіді приблизно 128 MB або необмеженого розміру, коли обрано опцію великих запитів. Інтеграція — BigQuery можна використовувати з Google Apps Script (наприклад, як скрипт для Google Docs) або будь-якою мовою, яка працює з REST API або клієнтськими бібліотеками. Контроль доступу — це можливість надавати доступ до даних довільним особам, групам або будь-кому.
Користувацькі функції BigQuery підтримує мовою JavaScript.
Див. також Amazon Athena Apache Drill Amazon Redshift
Примітки
Посилання Офіційний сайт Google BigQuery introduction by Jordan Tigani