Установка
Системные требования
| ОС | Windows/Linux/MacOS | 
| RAM | 8ГБ | 
| HDD/SSD | 10ГБ | 
| CPU | 4 ядра x64 | 
Подготовка к установке
Скачайте и установите python версии 3.11 с официального сайта
Установка ПО
Рекомендуется сперва создать обособленное python-окружение для избежания риска конфликтов с ранее установленными python-библиотеками.
Для создания python-окружения выполните следующую команду в консоли
python -m venv your_env
your_env - наименование окружения
Для активации созданного окружения выполните команду
your_env\Scripts\activate
После в активированном окружении выполните в консоли следующую команду
pip install /path/to/datapulse/wheel/directory
/path/to/datapulse/wheel/directory - путь к переданному установочному файлу Datapulse (в формате .whl)
Будут автоматически скачаны и установлены все зависимости, а также создана папка .datapulse в корневой директории пользователя.
Настройка параметров Datapulse
В файле .datapulse/config.yaml укажите следующие параметры: 
Основные
| Параметр | Описание | Обязательно | Примечание | 
|---|---|---|---|
| dbt_project_path | Путь к папке с проектом dbt | ||
| dbt_project_name | Наименование проекта dbt | ||
| dbt_profiles_path | Путь к папке с файлом dbt profiles.yml | ||
| dpulse_meta_path | Путь к папке, где будут храниться метаданные Datapulse | Рекомендуется указать папку .datapulse | |
| disable_auth | Отключить аутентификацию | 
Модуль "Конструктор DataVault"
| Параметр | Описание | Обязательно | 
|---|---|---|
| stage_schema | Схема DWH для таблиц business layer | |
| hub_schema | Схема DWH для таблиц HUB | |
| sat_schema | Схема DWH для таблиц SAT | |
| link_schema | Схема DWH для таблиц LINK | 
Модуль "Экстрактор данных"
| Параметр | Описание | Обязательно | 
|---|---|---|
| data_source_table_schema | Список схем DWH, в которые можно загружать данные из источников | |
| dlt_path | Путь к папке dlt (обычно находится в корневой директории пользователя) | |
| pipeline_scripts_folder_path | Путь к папке, в которой будут храниться файлы ETL-pipeline | |
| dlt_staging_name | Префикс в наименовании для технических таблиц dlt | 
Модуль "Чат с DWH"
| Параметр | Описание | Обязательно | 
|---|---|---|
| ai_model | Используемая локальная модель ИИ | |
| schema_for_analyze | Список схем DWH, таблицы которых может читать ИИ | |
| chroma_path | Путь к папке с ChromaDB | 
Работа dbt
Создание проекта dbt
Чтобы создать проект dbt (если он еще не создан) выполните в консоли следующую команду
dbt init project_name
project_name - наименование проекта
После этого будет создана директория со всеми необходимыми файлами.
profiles.yml
Файл profiles.yml предназначен для хранения параметров подключения к DWH через dbt. Обычно располагается либо в корневой папке пользователя, либо в папке проекта dbt.
Файл должен содержать следующие параметры конфигурации.
project_name:
  outputs:
    dev:
      database: database_name
      host: host
      pass: your_password
      port: port_number (PostgreSQL default - 5432, Greenplum default - 6543)
      schema: public
      type: postgres/greenplum
      user: user_name
  target: dev
Важно
Для корректной работы Datapulse параметры подключения должны быть под тегом dev, не prod (временная мера).
dbt_project.yml
Файл dbt_project.yml предназначен для хранения общих настроек проекта dbt. 
Наименование схем
dbt автоматически создаем схему в DWH, если при запуске модели схемы, которая указана в настройках модели, нет.
Но при отсутствии макроса generate_schema_name.sql наименование схемы формируется как defaultschema_schema, где defaultschema - схема по дефолту, указанная в profiles.yml в параметре schema.
К примеру, в PostgreSQL, если дефолтная схема -
public, а в моделе dbt указана схемаdds, то dbt автоматически создаст схемуpublic_dds.
Исправить такое явно некорректное поведение можно с помощью вставки в папку /macros файл generate_schema_name.sql со следующим наполнением.
{% macro generate_schema_name(custom_schema_name, node) -%}
    {%- set default_schema = target.schema -%}
    {%- if custom_schema_name is none -%}
        {{ default_schema }}
    {%- else -%}
        {{ custom_schema_name | trim }}
    {%- endif -%}
{%- endmacro %}
Установка dbt_artifacts
Datapulse для мониторинга логов dbt использует пакет dbt_artifacts.
Для его установки требуется в файл packages.yml внести следующее.
packages:
  - package: brooklyn-data/dbt_artifacts
А после выполнить в консоли команду
dbt deps
dbt скачает и установит указанный пакет. 
Далее в файле dbt_project.yml укажите, в какой схеме DWH вы хотите создать таблицы для хранения логов dbt.
models:
  dbt_artifacts:
    +schema: your_schema
    +on_schema_change: <ignore|fail|append_new_columns|sync_all_columns> # поведение, при изменении структуры таблиц с типом incremental
    +compresstype: ZLIB (или другой тип компрессии) # требуется для СУБД - Greenplum, по умолчанию ZSTD
on-run-end: # запускает вставку логов в технические таблицы после окончания работы dbt модели
  - "{{ dbt_artifacts.upload_results(results) }}"
dbt run --select dbt_artifacts
Настройки аутентификации
Если требуется аутентификация и ролевой доступ, то в файле .datapulse/config.yaml должен быть указано следующее
disable_auth: false
..\путь к папке с datapulse\.streamlit\secrets.toml указан админ по умолчанию
[passwords]
dpulse='admin' #логин=пароль
В папке .datapulse/users.yaml для всех пользователей из файла ..\путь к папке с datapulse\.streamlit\secrets.toml должны быть указаны роли.
К примеру:
dpulse: admin #логин: роль