Назначение Microsoft SQL Server
Renta доставляет данные источников в базу Microsoft SQL Server: на собственный сервер, в Azure SQL Database или в управляемый сервис вроде Amazon RDS for SQL Server.
Каждый пайплайн управляет одной таблицей. Renta создаёт её на первом запуске с колонками из выбранных полей и обновляет содержимое на каждом следующем запуске.
Требования
Подготовьте сервер до создания подключения.
- Сетевой доступ.
Renta подключается к порту базы данных (по умолчанию1433) с IP-адресов Renta. Разрешите их на файрволе. Исходящий доступ серверу не нужен: Renta передаёт строки через то же подключение к базе. - Существующая база данных.
Renta пишет только в базу, указанную в подключении, и не создаёт базы данных. Таблицы попадают в схему по умолчанию пользователя подключения, то есть вdbo, если вы её не меняли. - Права выделенного пользователя.
Учётной записи нужно создавать, наполнять, очищать и удалять таблицы в этой базе. Точные команды собраны на странице ниже.
Подключить SQL Server как назначение
Подключение хранит адрес одной базы SQL Server и учётные данные, под которыми Renta входит на сервер.
- В консоли Renta откройте Connections > Catalog в левом меню.
- Раскройте категорию Data warehouse и нажмите карточку Microsoft SQL Server.

Укажите параметры базы данных:
- Server hostname.
Имя хоста или IP-адрес сервера без префикса протокола. Для Azure SQL Database это значение видаmyserver.database.windows.net. - Database name.
Существующая база, в которую попадут таблицы. - Port.
Порт базы данных. По умолчанию в SQL Server это1433.

- User.
Учётная запись SQL Server, созданная для Renta. - Password.
Пароль этой учётной записи.
Включите Trusted connection, если подключаетесь к серверу по SSL.

Укажите Destination name (название используется только в консоли Renta) и нажмите Save.
При сохранении Renta входит в базу и вып олняет тестовый запрос. Неверный пароль, закрытый порт или несуществующая база вернутся ошибкой сразу, ещё до запусков пайплайна.

Подключение появится в списке Destinations со статусом Active и готово к использованию в пайплайнах.

Создать пайплайн в SQL Server
В шагах ниже источником выступает Display & Video 360, тот же порядок действий работает для любого источника.
Нажмите New pipeline в левом меню. Оставьте активной вкладку ETL, выберите источник в секции Already connected и нажмите Next step.

Выберите подключение источника, из которого выгружать данные, и нажмите Next step.

На шаге Destination выберите Microsoft SQL Server в списке Already connected и нажмите Next step.

Выберите подключение SQL Server, которое примет данные, и нажмите Next step. На карточке видны имя базы и хост, это помогает, когда в воркспейсе несколько серверов.

Настройка пайплайна
Последний шаг мастера собирает все настройки пайплайна на одной странице. Сначала идут настройки источника, затем блоки, одинаковые для всех источников.
Настройки источника
Первые блоки определяют, что выгружать, поэтому их состав зависит от источника. Для Display & Video 360 это партнёр, рекламодатель и тип отчёта.

Parameters
Отметьте поля источника, которые нужно загрузить. Каждое отмеченное поле становится колонкой таблицы SQL Server, имя колонки подписано под полем.

Чтобы взять сразу все доступные поля, нажмите Select All. Всё отмеченное собрано на вкладке Selected.
Integration and table name
Следующий блок называет пайплайн и его таблицу.

- Integration name.
Отображаемое имя пайплайна в консоли Renta. - Table name.
Таблица, которую Renta создаст в подключённой базе. Оставьте сгенерированное имя или введите своё. Давайте каждому пайплайну уникальное имя, потому что пайплайн перезаписывает свою таблицу на каждом запуске.
Date range
Диапазон дат ограничивает историю, которая загружается на первом запуске и при ручном Full refresh.

- Date start.
Первый день окна выгрузки. - Date end.
Последний день окна: фиксированная дата или движущаяся граница вроде Today.
Overwrite period
Период перезаписи задаёт, сколько последних дней перезагружается на каждом запуске по расписанию. Он применяется к типам отчётов с колонкой даты, которые дают партиционированные таблицы.

Renta удаляет строки этого окна и вставляет их заново со свежими значениями. При Without overwrite data прошлые строки не трогаются, добавляются только новые данные.
Schedule
Расписание управляет запусками пайплайна. Всё время указывается в UTC.

| Тип расписания | Описание |
|---|---|
| Manual | Пайплайн запускается только вручную из консоли Renta или через API. |
| Daily | Пайплайн запускается раз в день в указанное время. |
| Interval | Пайплайн запускается через заданные интервалы времени. |
| Cron Expression | Пайплайн запускается по расписанию из cron-выражения. |
Для расписания Daily выберите Update time и нажмите Create pipeline.

Пайплайны также запускаются через API и из оркестраторов вр оде Apache Airflow, Dagster и Prefect. Подробности в документации по расписаниям.
Новый пайплайн появится на странице Pipelines на вкладке ETL с именем таблицы, статусом запуска и количеством выгруженных строк.

Таблица назначения
Renta управляет таблицей назначения сама: создаёт её на первом запуске и перестраивает при изменении списка полей пайплайна.
Имена и типы колонок
Имена колонок повторяют имена полей из настроек пайплайна. Символы . и : в имени Renta заменяет на подчёркивание, поэтому поле fee.amount становится колонкой fee_amount.
| Значение источника | Тип SQL Server |
|---|---|
| Целые числа | INT, для больших диапазонов BIGINT |
| Дробные числа | FLOAT |
| Суммы с фиксированной точностью | DECIMAL(18, 2) |
| Текст, JSON и идентификаторы | NVARCHAR(MAX) |
| Логические флаги | BIT |
| Даты | DATE |
| Метки времени | DATETIME2 |
| Списки значений | NVARCHAR(MAX), значения соединяются через запятую |
| Вложенные записи | NVARCHAR(MAX) |
Отсутствующее в источнике значение приходит как NULL, а не как ноль или пустая строка.
Изменения схемы
Добавление или удаление поля меняет список колонок, поэтому таблицу приходится перестраивать.
После сохранения изменённого списка полей следующий запуск удалит таблицу, создаст её с новыми колонками и перезагрузит весь период из Date Range. Данные за пределами этого периода пропадут. Если старая история нужна, расширьте Date start до сохранения.
Стратегия синхронизации
Способ обновления таблицы зависит от типа отчёта источника.
| Стратегия | Когда Renta её использует | Описание |
|---|---|---|
| Полная перезагрузка | Типы отчётов без колонки даты и любые пайплайны с непартиционированной таблицей | Renta удаляет все строки и вставляет набор данных заново, поэтому таблица повторяет состояние источника на момент запуска. |
| Инкрементальное обновление | Типы отчётов с колонкой даты и партиционированной таблицей | Renta удаляет строки, чьи даты попадают в окно перезаписи, и вставляет свежие значения за эти дни. Строки старше окна не меняются. |
Merge-режим на SQL Server недоступен. Он работает только на Google BigQuery и ClickHouse, поэтому источник с поддержкой merge-синхронизации переключается на полную перезагрузку, когда пишет в SQL Server.
Диагностика
Известные ответы SQL Server Renta приводит к сообщениям из таблицы ниже. Оба могут появиться и при сохранении подключения, и во время запуска.
| Сообщение | Причина | Что делать |
|---|---|---|
| SQL Server server is unavailable or does not exist. | Renta не смогла подключиться к серверу. Указано неверное имя хоста, порт закрыт или подключение блокирует файрвол. | Проверьте Server hostname и Port и разрешите IP-адреса Renta на файрволе. |
| Server connection failed. Please check your server access credentials, including your username and password. | Сервер отклонил вход. | Заново введите User и Password и убедитесь, что под этой учётной записью указанная база открывается напрямую, без Renta. |
Если запуск падает с сообщением, которого нет в таблице, посмотрите логи запуска на странице пайплайна и напишите в поддержку Renta.
Ready to get started?
Build your data pipeline today or get a personalized demo. Start free!
Need help?
Get expert support to ensure your project succeeds. We're here to help!
Feature requests?
Help shape our product! Share your ideas for new features and integrations.