BigQuery

BigQuery
Посиланняcloud.google.com/products/bigquery/
ТипІнфраструктура як послуга
РеєстраціяПотрібна
МовиАнглійська
ВласникGoogle
Започатковано19 травня 2010 (2010-05-19)
СтанАктивний

BigQuery — це безсерверне сховище даних, що належить Google[1], для інтерактивного широкомасштабного аналізу великих наборів даних. Може використовуватись через веб інтерфейс, інтерфейс командного рядка та API. Оплата здійснюється за кількість терабайт даних опрацьованих при виконанні запитів.[1]

Історія

Після обмеженого періоду тестування в 2010 році BigQuery став доступним широкому загалу у листопаді 2011 року на конференції Google Atmosphere.[2] У 2014 році MapR представив проект Apache Drill для вирішення подібних проблем.[3] У квітні 2016 року європейські користувачі зазнали 12-годинного збою у роботі служби.[4] У травні 2016 року була оголошена підтримка для Google Sheets.[5]

Будова

BigQuery використовує ряд технологій Google, таких як рушій виконання запитів Dremel[6][7], систему керування кластером Google Borg, файлову систему Colossus, формат даних Capacitor та мережу Jupiter. Архітектура відокремлює зберігання даних від їх обробки, що дозволяє окремо маштабувати зберігання і запити[1].

Зберігання

BigQuery підтримує як пакетний або потоковий режим запису вхідних даних. Для зберігання даних використовується колонковий формат Capacitor. Кожна колонка зберігається в окремому файлі, що дозволяє ефективніше їх стискати і читати. Після кодування дані записуються в Colossus, яка є наступницею Google File System, і дозволяє читати зі швидкістю до терабайта за секунду.[1]

Зовнішні джерела даних

Таблиці які зберігає BigQuery називають внутрішніми. BigQuery також підтримує запити до зовнішніх таблиць, які можуть зберігатись у Bigtable, GCS, чи Google Drive[1]. Запити до зовнішніх даних повільніші.

Виконання запитів

Для виконання запитів система керування кластером Google Borg запускає тисячі паралельних робіт (англ. jobs) Dremel, кожна з яких може читати дані своєї частини таблиці, фільтрувати та агрегувати їх і передавати іншим роботам. Передача даних між ними здійснюється за допомогою мережі Jupiter, яка може передавати зі швидкістю до 1 петабіта на секунду.[1]

Особливості

  • Управління даними — створення та видалення таблиць на основі JSON-схеми, імпорт даних у форматі CSV або JSON з Google Cloud Storage.
  • Запити — для запитів використовується стандарт SQL:2011[8], а результат повертається у форматі JSON з максимальним розміром відповіді приблизно 128 MB або необмеженого розміру, коли обрано опцію великих запитів.[9]
  • Інтеграція — BigQuery можна використовувати з Google Apps Script[10] (наприклад, як скрипт для Google Docs) або будь-якою мовою, яка працює з REST API або клієнтськими бібліотеками[11].
  • Контроль доступу — це можливість надавати доступ до даних довільним особам, групам або будь-кому.

Користувацькі функції

BigQuery підтримує функції задані користувачем мовою JavaScript.[12]

Див. також

Примітки

  1. ↑ а б в г д е A Deep Dive Into Google BigQuery Architecture. Архів оригіналу за 7 лютого 2019. Процитовано 6 лютого 2019.
  2. ↑ Iain Thomson (14 листопада 2011). Google opens BigQuery for cloud analytics: Dangles free trial to lure doubters. Архів оригіналу за 15 вересня 2016. Процитовано 26 серпня 2016.
  3. ↑ Neil McAllister (16 вересня 2014). Is your data boring? MapR wants you to bore it back with Apache Drill: New release adds support for Google-y SQL-on-Hadoop tech. Архів оригіналу за 15 вересня 2016. Процитовано 26 серпня 2016.
  4. ↑ Simon Sharwood (7 квітня 2016). Google Euro-cloud glitch. Архів оригіналу за 15 вересня 2016. Процитовано 26 серпня 2016.
  5. ↑ Jordan Novet (6 травня 2016). Google BigQuery now lets you analyze data from Google Sheets. Архів оригіналу за 8 вересня 2016. Процитовано 26 серпня 2016.
  6. ↑ Sergey Melnik; Andrey Gubarev; Jing Jing Long; Geoffrey Romer; Shiva Shivakumar; Matt Tolton; Theo Vassilakis (2010). Dremel: Interactive Analysis of Web-Scale Datasets. Proc. of the 36th International Conference on Very Large Data Bases (VLDB). Архів оригіналу за 28 жовтня 2010. Процитовано 10 липня 2018.
  7. ↑ Kazunori Sato (2012). An Inside Look at Google BigQuery (PDF). Google. Архів оригіналу (PDF) за 3 вересня 2016. Процитовано 26 серпня 2016.
  8. ↑ SQL Reference. Архів оригіналу за 7 квітня 2017. Процитовано 26 червня 2017.
  9. ↑ Quota Policy. Архів оригіналу за 15 липня 2017. Процитовано 26 червня 2017.
  10. ↑ BigQuery Service | Apps Script | Google Developers. 15 березня 2018. Архів оригіналу за 3 квітня 2019. Процитовано 23 квітня 2018.
  11. ↑ BigQuery Client Libraries. Архів оригіналу за 11 лютого 2017. Процитовано 26 червня 2017.
  12. ↑ Standard SQL User-Defined Functions | BigQuery. Google Cloud. Архів оригіналу за 15 березня 2019. Процитовано 14 лютого 2019.

Посилання