В Embeddable вы определяете Модели данных и Компоненты в коде (который хранится в вашем собственном репозитории) и используете наш SDK, чтобы сделать их доступными вашей команде в мощном no-code-конструкторе Embeddable.
В результате вы получаете возможность предоставлять быструю интерактивную клиентскую аналитику прямо в своем продукте: спроектированную вашей продуктовой командой, реализованную инженерной командой и поддерживаемую командами, работающими с клиентами, и командами данных. Именно так, как и должно быть.
Встроенная безопасность на уровне строки означает, что каждый пользователь видит только те данные, которые ему разрешено видеть. А два уровня полностью настраиваемого кэширования позволяют предоставлять быструю аналитику в реальном времени в большом масштабе.
Соберите сведения о подключении
Чтобы подключиться к ClickHouse по HTTP(S), вам понадобится следующая информация:
| Параметр(ы) | Описание |
|---|---|
HOST and PORT |
Обычно используется порт 8443 при использовании TLS и 8123 без TLS. |
DATABASE NAME |
По умолчанию есть база данных default; используйте имя базы данных, к которой хотите подключиться. |
USERNAME and PASSWORD |
По умолчанию имя пользователя — default. Используйте имя пользователя, подходящее для вашего сценария использования. |
Сведения о подключении для вашего сервиса ClickHouse Cloud доступны в консоли ClickHouse Cloud. Выберите сервис и нажмите Connect:

Выберите HTTPS. Сведения о подключении будут показаны в примере команды curl.

Если вы используете самоуправляемый ClickHouse, сведения о подключении задаёт ваш администратор ClickHouse.
Создайте тип подключения к ClickHouse
Подключение к базе данных добавляется с помощью Embeddable API. Это подключение используется для подключения к вашему сервису ClickHouse. Добавить подключение можно следующим вызовом API:
// из соображений безопасности это *никогда* не должно вызываться на стороне клиента
fetch('https://api.embeddable.com/api/v1/connections', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json',
Authorization: `Bearer ${apiKey}` /* храните ваш API Key в безопасности */,
},
body: JSON.stringify({
name: 'my-clickhouse-db',
type: 'clickhouse',
credentials: {
host: 'my.clickhouse.host',
user: 'clickhouse_user',
port: 8443,
password: '*****',
},
}),
});Status 201 { errorMessage: null }Выше показано действие CREATE, но доступны все операции CRUD.
apiKey можно найти, нажав "Publish" на одной из панелей мониторинга Embeddable.
name — это уникальное имя для идентификации этого подключения.
- По умолчанию ваши модели данных будут искать подключение с именем "default", но вы можете указать в моделях другие имена
data_source, чтобы разные модели данных подключались к разным подключениям (просто укажите имя data_source в модели)
type сообщает Embeddable, какой драйвер использовать
- Здесь следует использовать
clickhouse, но к одному рабочему пространству Embeddable можно подключить несколько разных источников данных, поэтому вы также можете использовать другие, например:postgres,bigquery,mongodbи т. д.
credentials — это объект JavaScript, содержащий учетные данные, необходимые драйверу
- Они надежно зашифрованы и используются только для получения именно тех данных, которые вы описали в своих моделях данных. Embeddable настоятельно рекомендует создавать отдельного пользователя базы данных с правами только для чтения для каждого подключения (Embeddable будет только читать данные из вашей базы данных, а не записывать их).
Чтобы поддерживать подключение к разным базам данных для prod, qa, test и т. д. (или использовать разные базы данных для разных клиентов), вы можете назначить каждому подключению окружение (см. Environments API).