Перейти к основному содержимому
Перейти к основному содержимому

Looker Studio

Looker Studio может подключаться к ClickHouse через интерфейс MySQL, используя официальный источник данных MySQL от Google.

Настройка ClickHouse в облаке


  1. После создания вашего ClickHouse Cloud Service, на экране Подключите ваше приложение, выберите MySQL из выпадающего списка.

Экран учетных данных - Запрос
  1. Переключите тумблер, чтобы включить интерфейс MySQL для этой конкретной службы. Это откроет порт 3306 для этой службы и предоставит вам экран подключения MySQL, который включает ваше уникальное имя пользователя MySQL.
Экран учетных данных - Включенный MySQL

В качестве альтернативы, чтобы включить интерфейс MySQL для существующей службы:

  1. Убедитесь, что ваша служба находится в состоянии Работает, затем нажмите на службу, для которой вы хотите включить интерфейс MySQL. Выберите "Подключить" в левом меню:

Экран подключения - Запрос MySQL

  1. Выберите MySQL из выпадающего списка Подключиться с помощью.

Экран подключения - Запрос MySQL
  1. Переключите тумблер, чтобы включить интерфейс MySQL для этой конкретной службы. Это откроет порт 3306 для этой службы и предоставит вам экран подключения MySQL, который включает ваше уникальное имя пользователя MySQL.
Экран подключения - MySQL Включен

Создание нескольких MySQL пользователей в ClickHouse Cloud

По умолчанию существует встроенный пользователь mysql4<subdomain>, который использует такой же пароль, как и default. Часть <subdomain> - это первый сегмент вашего имени хоста ClickHouse Cloud. Этот формат необходим для работы с инструментами, которые реализуют безопасное подключение, но не предоставляют информации SNI в своем TLS-рукопожатии, что делает невозможным внутреннюю маршрутизацию без дополнительной подсказки в имени пользователя (клиент консоли MySQL - один из таких инструментов).

Из-за этого мы настоятельно рекомендуем следовать формату mysql4<subdomain>_<username> при создании нового пользователя, который предназначен для использования с интерфейсом MySQL, где <subdomain> является подсказкой для идентификации вашей облачной службы, а <username> - произвольный суффикс по вашему выбору.

подсказка

Для имени хоста ClickHouse Cloud, такого как foobar.us-east1.aws.clickhouse.cloud, часть <subdomain> равна foobar, и пользователь MySQL может выглядеть как mysql4foobar_team1.

Вы можете создать дополнительных пользователей для использования с интерфейсом MySQL, например, если вам нужно применить дополнительные настройки.

  1. По желанию - создайте профиль настроек, который будет применен для вашего пользовательского пользователя. Например, my_custom_profile с дополнительной настройкой, которая будет применена по умолчанию, когда мы подключимся с пользователем, которого создадим позже:

    prefer_column_name_to_alias используется только в качестве примера, вы можете использовать другие настройки.

  2. Создайте пользователя с помощью следующего формата: mysql4<subdomain>_<username> (см. выше). Пароль должен быть в формате double SHA1. Например:

    или если вы хотите использовать пользовательский профиль для этого пользователя:

    где my_custom_profile - это имя профиля, который вы создали ранее.

  3. Предоставьте новому пользователю необходимые разрешения для взаимодействия с нужными таблицами или базами данных. Например, если вы хотите предоставить доступ только к system.query_log:

  4. Используйте созданного пользователя для подключения к вашей службе ClickHouse Cloud с интерфейсом MySQL.

Устранение проблем с несколькими MySQL пользователями в ClickHouse Cloud

Если вы создали нового пользователя MySQL и видите следующую ошибку при подключении через клиент MySQL CLI:

В этом случае, убедитесь, что имя пользователя соответствует формату mysql4<subdomain>_<username>, как описано (выше).

Настройка ClickHouse на месте

Пожалуйста, обратитесь к официальной документации о том, как настроить сервер ClickHouse с включенным интерфейсом MySQL.

Помимо добавления записи в config.xml сервера

также требуется использовать двойное шифрование паролей SHA1 для пользователя, который будет использовать интерфейс MySQL.

Генерация случайного пароля, зашифрованного двойным SHA1 из командной строки:

Вывод должен выглядеть следующим образом:

Первая строка — сгенерированный пароль, а вторая строка — хэш, который мы можем использовать для настройки ClickHouse.

Вот пример конфигурации для mysql_user, которая использует сгенерированный хэш:

/etc/clickhouse-server/users.d/mysql_user.xml

Замените запись password_double_sha1_hex на ваш собственный сгенерированный хэш двойного SHA1.

Кроме того, рекомендуется использовать use_mysql_types_in_show_columns, чтобы отображать нативные типы MySQL вместо типов ClickHouse в результатах запроса SHOW [FULL] COLUMNS, что позволяет BI инструментам правильно инкапсулировать схему базы данных при использовании MySQL соединителей.

Например:

/etc/clickhouse-server/users.d/mysql_user.xml

или назначить его другому профилю вместо профиля по умолчанию.

Если у вас есть доступ к бинарному файлу mysql, вы можете протестировать соединение из командной строки. Используя пример имени пользователя (mysql_user) и пароля (LZOQYnqQN4L/T6L0) выше, команда из командной строки будет:

Наконец, настройте сервер Clickhouse для прослушивания на желаемом IP-адресе(ах). Например, в config.xml раскомментируйте следующее для прослушивания на всех адресах:

Подключение Looker Studio к ClickHouse

Сначала войдите на https://lookerstudio.google.com с использованием своей учетной записи Google и создайте новый источник данных:

Создание нового источника данных

Ищите официальный соединитель MySQL, предоставленный Google (названный просто MySQL):

Поиск соединителя MySQL

Укажите свои данные для подключения. Обратите внимание, что порт интерфейса MySQL по умолчанию равен 9004, и он может отличаться в зависимости от конфигурации вашего сервера.

Указание деталей подключения

Теперь у вас есть два варианта, как получить данные из ClickHouse. Во-первых, вы можете использовать функцию Табличного Обозревателя:

Использование Табличного Обозревателя

В качестве альтернативы, вы можете указать собственный запрос для получения ваших данных:

Использование собственного запроса для получения данных

В конце концов, вы должны увидеть интроспектированную структуру таблицы и при необходимости скорректировать типы данных.

Просмотр интроспектированной структуры таблицы

Теперь вы можете приступить к исследованию своих данных или созданию нового отчета!

Использование Looker Studio с ClickHouse в облаке

При использовании ClickHouse в облаке вам сначала нужно включить интерфейс MySQL. Сделать это можно в диалоговом окне подключения на вкладке "MySQL".

Looker Studio требует первоначального включения MySQL

В интерфейсе Looker Studio выберите опцию "Включить SSL". SSL-сертификат ClickHouse в облаке подписан Let's Encrypt. Вы можете скачать этот корневой сертификат здесь.

Looker Studio с конфигурацией SSL ClickHouse в облаке

Остальные шаги такие же, как описано выше в предыдущем разделе.