Google BigQuery¶
Чтобы добавить подключение к базе данных, нажмите значок шестерёнки в правом верхнем углу и перейдите в Управление > Базы данных > Добавить базу данных.
Предусловия¶
Вам потребуется учётная запись Google Cloud Platform с проектом, который вы хотели бы использовать в Glarus BI. Обратитесь к документации Google Cloud Platform, чтобы узнать, как создать проект и управлять им. В этом проекте должен быть набор данных BigQuery для подключения к Glarus BI.
Google Cloud Platform: создание сервисного аккаунта и JSON-файла¶
Сначала вам понадобится JSON-файл сервисного аккаунта, который Glarus BI может использовать для доступа к вашему набору данных BigQuery. Сервисные аккаунты предназначены для технических целей (таких как приложения, например, Glarus BI), для аутентификации (кто я?) и авторизации (что я могу делать?) своих вызовов API.
Чтобы создать JSON-файл сервисного аккаунта, следуйте документации Google по настройке сервисного аккаунта для вашего набора данных BigQuery. Вот основные действия:
-
Создайте сервисный аккаунт. В консоли проекта Google Cloud Platform откройте главное боковое меню слева, перейдите в раздел IAM & Admin и выберите Service account. В консоли будут перечислены существующие сервисные аккаунты, если таковые имеются. В верхней части экрана нажмите + CREATE SERVICE ACCOUNT.
-
Заполните данные сервисного аккаунта. Назовите сервисный аккаунт и добавьте описание (идентификатор сервисного аккаунта будет заполнен после добавления имени). Затем нажмите кнопку Create.
-
Предоставьте сервисному аккаунту доступ к этому проекту. Вам нужно будет добавить роли к сервисному аккаунту, чтобы Glarus BI имел разрешение на просмотр и выполнение запросов к вашему набору данных. Убедитесь, что вы добавили следующие роли к сервисному аккаунту:
-
BigQuery Data Viewer
- BigQuery Metadata Viewer
- BigQuery Job User (отличается от BigQuery User)
Дополнительную информацию о ролях в BigQuery см. в документации Google Cloud Platform.
- Создайте ключ. Назначив роли сервисному аккаунту, нажмите кнопку Create Key и выберите JSON в качестве key type. Файл JSON будет загружен на ваш компьютер.
Предупреждение
Вы можете скачать ключ только один раз. Если вы удалите ключ, вам потребуется создать другой сервисный аккаунт с теми же ролями.
Настройки¶
Вы можете в любое время изменить эти настройки. Просто не забудьте сохранить ваши изменения.
Название¶
Название подключения, которое будет отображаться в интерфейсе Glarus BI.
ID проекта¶
Каждый набор данных BigQuery будет иметь Project ID. Вы можете найти этот идентификатор через Google Cloud Console. Если вы не знаете, где найти Project ID, см. документацию Google по получению информации о наборах данных.
Примечание
При вводе Project ID не вводите префикс идентификатора проекта. Например, если ваш идентификатор project_name:project_id
, введите только project_id
.
JSON-файл сервисного аккаунта¶
Файл JSON содержит учётные данные, которые потребуются вашему приложению Glarus BI для доступа к наборам данных BigQuery, как определено ролями, которые вы добавили к сервисному аккаунту. Если вам нужно добавить дополнительные роли, вы должны создать другой сервисный аккаунт, загрузить JSON-файл и загрузить файл в Glarus BI.
Наборы данных¶
Вы можете указать, какие наборы данных BigQuery вы хотите синхронизировать и сканировать. Варианты:
- Все
- Только эти...
- Все кроме...
Набор данных BigQuery похож на схему. Обязательно введите имена наборов данных (например,
marketing
), а не имена таблиц (marketing.campaigns
).
Допустим, у вас есть три набора данных: foo, bar и baz.
Чтобы синхронизировать все три набора данных, выберите Только эти... и введите:
Для синхронизации наборов данных на основе совпадения строк используйте подстановочный знак *
:
- Чтобы синхронизировать bar и baz, выберите Только эти... и введите строку
b*
. - Чтобы синхронизировать только foo, выберите Все кроме... и введите строку
b*
.
Обратите внимание, что поддерживается только подстановочный знак *
; вы не можете использовать другие специальные символы или регулярные выражения.
Использовать часовой пояс виртуальной машины Java (JVM)¶
Мы предлагаем вам оставить это отключенным, если вы не выполняете ручное преобразование часового пояса во многих или большинстве ваших запросов с этими данными.
Включить идентификатор пользователя и хэш запроса в запросы¶
Это может быть полезно для аудита и отладки, но предотвращает кэширование результатов BigQuery и может увеличить ваши расходы.
Перезапустить запрос для простых исследований¶
Выключите эту опцию (ВЫКЛ), если пользователи хотят нажимать Запустить (кнопку воспроизведения) перед применением любых выборов в меню Суммировать или условий фильтрации.
По умолчанию Glarus BI выполнит запрос, как только вы выберете вариант группировки из меню Суммировать или условие фильтра из контекстного меню. Если ваша база данных работает медленно, вы можете отключить автоматический повторный запуск, чтобы избежать загрузки данных при каждом клике.
Выберите, когда будет выполняться синхронизация и сканирование¶
Включите эту опцию (ВКЛ), чтобы управлять запросами, которые Glarus BI использует для поддержания актуальной информации о вашей базе данных. Для получения дополнительной информации см. Синхронизация и сканирование баз данных.
Синхронизация базы данных¶
Если вы выбрали Выберите, когда будет выполняться синхронизация и сканирование > ВКЛ, то сможете настроить:
- Частоту синхронизации: каждый день или каждый час.
- Время запуска синхронизации в часовом поясе сервера, на котором работает ваше приложение Glarus BI.
Сканирование значений фильтров¶
Glarus BI может сканировать значения, присутствующие в каждом поле этой базы данных, чтобы включить флажки фильтров на дашбордах и в запросах. Это может быть довольно ресурсоёмким процессом, особенно если у вас очень большая база данных.
Если вы переключили Выберите, когда будет выполняться синхронизация и сканирование > ВКЛ, то увидите следующие параметры в разделе Сканирование значений фильтров:
- Регулярно, по расписанию позволяет запускать запросы сканирования с частотой, соответствующей скорости изменения вашей базы данных. Время устанавливается в часовом поясе сервера, на котором работает ваше приложение Glarus BI. Это лучший вариант для небольшой базы данных или таблиц с уникальными значениями, которые часто обновляются.
- Только при добавлении виджета фильтра — отличный вариант, если вы хотите запускать запросы сканирования по запросу. Включение этой опции (ВКЛ) означает, что Glarus BI будет сканировать и кэшировать значения поля (полей), которые используются только при добавлении нового фильтра на дашборд или в SQL-запрос.
- Никогда, я сделаю это вручную, если потребуется — это опция для баз данных, которые либо слишком велики, либо в которые никогда не добавляются новые значения. Используйте кнопку Пересканировать значения полей, чтобы запустить сканирование вручную и обновить значения фильтров.
Периодический слепок таблиц¶
Предупреждение
Периодическое повторное снятие слепков таблиц увеличит нагрузку на вашу базу данных.
Включите эту опцию (ВКЛ), чтобы сканировать образец значений при каждом запуске синхронизации в Glarus BI.
Запрос на создание слепков исследует первые 10 000 строк из каждого столбца и использует эти данные для примерной оценки количества уникальных значений в каждом столбце, минимальных и максимальных значений для числовых столбцов и столбцов временных меток и т. д. Если вы оставите этот параметр ВЫКЛ, Glarus BI будет делать слепки столбцов только один раз во время настройки.
Подключение Glarus BI к источникам данных Google Диска¶
Вы можете подключить Glarus BI к источникам данных Google Диска через BigQuery. Это требует некоторой настройки, но в основном вы будете создавать набор данных в BigQuery и добавлять внешнюю таблицу в этот набор данных, которая указывает на Google Sheet. Это полезно для загрузки CSV в Google Sheets, а затем анализа и визуализации данных с помощью Glarus BI.
Чтобы подключиться к источнику данных, хранящемуся на Google Диске (например, Google Sheet), сначала убедитесь, что вы выполнили описанные выше шаги, включая:
- создание проекта в Google Cloud Platform,
- добавление набора данных BigQuery и
- создание сервисного аккаунта.
Поделитесь своим источником данных на Google Диске с сервисным аккаунтом¶
При просмотре файла на Диске (например, таблицы Google с загруженным CSV-файлом) нажмите кнопку Поделиться в правом верхнем углу. В текстовое поле с надписью Добавить людей или группы вставьте адрес электронной почты своего сервисного аккаунта, который можно найти на странице сервисных аккаунтов в Google Cloud Console.
Этот адрес электронной почты будет выглядеть примерно так: service-account-name@your-project-name.iam.gserviceaccount.com
, где вместо service-account-name и your-project-name будут подставлены соответствующие имена.
Выберите Просмотр в раскрывающемся списке, снимите флажок Уведомлять людей и нажмите Поделиться.
Создайте в BigQuery внешнюю таблицу, указывающую на ваш источник на Google Диске¶
Если у вас ещё нет набора данных BigQuery, создайте его.
Затем с помощью Google Cloud Console создайте внешнюю таблицу в вашем наборе данных BigQuery, которая указывает на вашу таблицу Google.
Обязательно укажите правильный Drive URI и формат файла.
Если вы ещё не подключили Glarus BI к BigQuery, сделайте это сейчас.
После выполнения этих шагов вы сможете строить запросы и создавать дашборды в Glarus BI, используя источник на Google Диске в качестве своих данных.
Использование устаревшего SQL¶
Начиная с версии 0.30.0, Glarus BI указывает BigQuery интерпретировать SQL-запросы как Standard SQL (GoogleSQL). Если вы предпочитаете использовать Legacy SQL, вы можете указать Glarus BI сделать это, включив директиву #legacySQL
в начале вашего запроса, например:
Поиск неисправностей¶
Если у вас возникли проблемы с подключением к BigQuery, вы можете ознакомиться с этим руководством по устранению неполадок, в котором рассматриваются проблемы с BigQuery, с этим для проблем с подключениями к хранилищу данных, либо посетите группу Glarus BI в Telegram, чтобы узнать, не столкнулся ли кто-нибудь с аналогичной проблемой и не решил ли её.