Конфигурации MindsDB
Аутентификация
Для успешного подключения dbt к MindsDB вам необходимо предоставить следующую конфигурацию из экземпляра MindsDB.
Ключ | Обязательный | Описание | Самостоятельный хостинг | MindsDB Cloud |
---|---|---|---|---|
type | ✔️ | Конкретный адаптер для использования | mindsdb | mindsdb |
host | ✔️ | MindsDB (имя хоста) для подключения | По умолчанию 172.0.0.1 | По умолчанию cloud.mindsdb.com |
port | ✔️ | Порт для использования | По умолчанию 47335 | По умолчанию 3306 |
schema | ✔️ | Укажите схему (базу данных) для построения моделей | Имя интеграции MindsDB integration name | Имя интеграции MindsDB integration name |
username | ✔️ | Имя пользователя для подключения к серверу | По умолчанию mindsdb | Ваше имя пользователя в mindsdb cloud |
password | ✔️ | Пароль для аутентификации на сервере | Пароль по умолчанию отсутствует | Ваш пароль в mindsdb cloud |
Использование
Создайте проект dbt, выберите mindsdb в качестве базы данных и настройте подключение. Убедитесь, что ваше подключение работает, с помощью dbt debug
.
dbt init <project_name>
Чтобы создать предсказатель, создайте модель dbt с материализацией "predictor". Имя модели будет именем предсказателя.
Параметры:
integration
- имя используемой интеграции для получения данных и сохранения результата. Должна быть создана в mindsdb заранее с использ ованием синтаксисаCREATE DATABASE
.predict
- поле для предсказанияpredict_alias
[необязательно] - псевдоним для предсказанного поляusing
[необязательно] - параметры для настройки обученной модели
-- my_first_model.sql
{{
config(
materialized='predictor',
integration='photorep',
predict='name',
predict_alias='name',
using={
'encoders.location.module': 'CategoricalAutoEncoder',
'encoders.rental_price.module': 'NumericEncoder'
}
)
}}
select * from stores
Чтобы применить предсказатель, добавьте модель dbt с материализацией "table". Она создаёт или заменяет таблицу в выбранной интеграции с результатами предсказателя. Имя модели используется как имя таблицы для хранения результатов предсказания. Если вам нужно указать схему, вы можете сделать это с помощью разделителя точка: schema_name.table_name.sql