DataLensBIYandexRLSMLembedдашборды

DataLens продвинутый: RLS, ML-датасеты, embed-аналитика, custom CSS

2026-06-02 11 мин

DataLens — главный российский BI-инструмент 2026, лидер рейтинга российских BI-систем (по Computerra 339597). Но 90% аналитиков застревают на basic-уровне: подключил Excel, нарисовал график. Продвинутый DataLens — это RLS, embedded аналитика, ML-датасеты и кастомизация через CSS. Этот гайд — как выйти за пределы базы.

Если ты только начинаешь — сначала прочитай первый дашборд DataLens (basic).


RLS — Row-Level Security

Главная задача в Enterprise: один дашборд, разные пользователи видят разные строки. Например, региональный менеджер видит только свой регион. Не делать же 50 дашбордов!

Шаг 1: настройка RLS на датасете

В DataLens на datasets:

Когда юзер с custom_region='moscow' открывает дашборд — все queries автоматически добавляют WHERE region = 'moscow'. Прозрачно. На клиенте даже нельзя посмотреть данные других регионов.

# RLS-выражение
rls: |
  (region = userInfo:custom_region) OR
  (userInfo:role = 'admin')  # админ видит всё

Шаг 2: проверка RLS

Перед раскаткой — тестировать двумя разными аккаунтами. Часто баг: RLS на JOINed table не применился. Проверь через DevTools → Network → query payload.


ML-датасеты — predictive в дашборде

С 2026 DataLens умеет ML. Тренируешь модель прямо в датасете, делаешь предикт.

Сценарий: прогноз спроса на 7 дней

1. Открыть Dataset → «Создать вычисляемое поле»
2. Тип: «ML предикт»
3. Конфиг:
   - Target: SUM([revenue])
   - Features: date, weekday, promotion_active
   - Algorithm: AutoML (XGBoost / Prophet)
   - Horizon: 7 days
4. Получаешь поле [revenue_forecast_7d]
5. На графике: line chart revenue + revenue_forecast_7d с разной заливкой

ML под капотом — Yandex AutoML. Не нужно писать Python, тренируется в облаке. Стоимость — 50-200₽ за training run.

Когда ML-датасеты не подходят


Шаг 3: embedded аналитика — DataLens в продукте

Хочешь показать дашборд в своём приложении (например, личном кабинете клиента)? Embed — это iframe + signed URL.

import jwt
import time

DATALENS_SECRET = "your-embed-secret"  # из настроек dataset

def get_embed_url(dashboard_id, user_id, custom_attrs):
    payload = {
        "dashId": dashboard_id,
        "exp": int(time.time()) + 3600,  # 1 час
        "userId": str(user_id),
        "customAttrs": custom_attrs,  # для RLS
    }
    token = jwt.encode(payload, DATALENS_SECRET, algorithm="HS256")
    return f"https://datalens.yandex.cloud/embed/{dashboard_id}?token={token}"

# В Django/Flask
@app.route("/profile/dashboard")
def profile_dashboard():
    url = get_embed_url(
        "abc123",
        current_user.id,
        {"region": current_user.region}
    )
    return render(f'<iframe src="{url}" />')

Эффект: клиент видит свой дашборд в своём интерфейсе, без логина в DataLens. Yandex Лавка использует это для дашборда курьеров. Avito — для дашбордов продавцов.


Шаг 4: custom CSS — стилизация под бренд

Default стиль DataLens — серо-белый. Бренд хочет свои цвета? Use «Настройки темы» (с 2026 в beta):

/* В Dashboard → Settings → Custom CSS */
:root {
  --color-primary: #FF5A1F;     /* твой бренд */
  --color-background: #0E0D11;
  --color-text: #FFFFFF;
  --font-family: 'Inter', sans-serif;
}

.chart-tooltip {
  background: rgba(15, 13, 17, 0.95) !important;
  border: 1px solid #FF5A1F;
  border-radius: 8px;
}

.kpi-widget {
  background: linear-gradient(135deg, #FF5A1F 0%, #c44115 100%);
  color: white;
}

Подвох: custom CSS НЕ работает в embed-mode (по соображениям безопасности). Только в standalone DataLens-инстансе.


Шаг 5: параметры дашбордов

Параметры — переменные, которые юзер задаёт через UI, и они меняют все графики на дашборде.

# В Dashboard → Параметры
parameters:
  - id: param_region
    label: "Регион"
    type: select
    options: ["Москва", "СПб", "Казань", "Все"]
    default: "Все"

  - id: param_threshold
    label: "Порог выручки"
    type: number
    default: 1000000

Использование в фильтрах вычисляемых полей:

WHERE
  ([param_region] = "Все" OR region = [param_region])
  AND revenue > [param_threshold]

Юзер меняет dropdown → весь дашборд обновляется. Это powerful interactive dashboards без переключения вкладок.


Шаг 6: data quality monitoring через DataLens

Дашборд для мониторинга качества данных (data quality observability):

KPI блок:
- "Записей загружено сегодня" (vs вчера → ±%)
- "Дубликаты PRIMARY KEY" (alert если >0)
- "NULL в обязательных полях" (alert если >0.1%)
- "Latency last update" (alert если >30 min)

Время-series:
- Volume по дням (line)
- Quality score (composite of metrics)

Это бесплатный мониторинг качества без отдельных инструментов типа Monte Carlo / Soda. Подробнее — в dbt tests гайде.


Подводные камни DataLens

Грабли 1: RLS на JOIN-таблицах

RLS применяется на основной таблице. Если ты делаешь JOIN с другой таблицей где RLS НЕТ — данные leaked. Решение: применять RLS на всех релевантных таблицах.

Грабли 2: ML-датасет дорогой при больших volume

Обучение на 100M rows может стоить 2000-5000₽. Решение: сэмпл (10-20% репрезентативно).

Грабли 3: embed-token expired

JWT-токен живёт 1 час по умолчанию. Если юзер открыл дашборд на час и оставил — ломается. Решение: refresh-token JS на клиенте, либо exp 24 часа.

Грабли 4: custom CSS пропадает после рестайла Yandex

DataLens регулярно обновляет UI. Custom CSS на стандартных классах может сломаться. Решение: тестировать через скриншоты после каждого major update.


Частые вопросы

DataLens vs Tableau / Power BI?

DataLens — лучше для РФ-инфры (Yandex Cloud-нативно, локальный saas). Tableau — лучше для глобальных компаний. Power BI — лучше для Microsoft-стека. Подробнее в сравнении BI tools.

DataLens free или paid?

Free до 5 пользователей. Paid от ~3000₽/мес. Enterprise (embed, custom CSS, ML) — индивидуально.

Можно ли подключить PostgreSQL?

Да. Через Yandex Cloud Managed PG напрямую, либо через ClickHouse-mirror. Также: ClickHouse, Greenplum, MySQL, BigQuery, Snowflake, MS SQL, Trino — full federation.

DataLens на on-prem?

Yandex DataLens Server — on-prem-версия для Enterprise. Полный функционал, оплата лицензией.

Как делиться дашбордами?

Public URL (без RLS), Embed (с RLS), Email-рассылка (Snapshot), Telegram-bot интеграция.


Что дальше

Если хочешь практику — попробуй SQL-тренажёр с автопроверкой (5 задач бесплатно). В DataLens 50% работы — это SQL под капотом, тренируй основу.

Готов к собеседованиям BI-аналитика? AI-интервью задаёт реальные вопросы по дашбордам, метрикам, RLS. В Pro — безлимит мок-собесов + 491 SQL-задача + 612 тестовых + 50+ блог-постов по аналитике.

Смежные посты

Сравнить Free и Pro → (1999₽/мес, экономит часы рутины)

Источники

AI-интервью
Тренируйся к собесам BI-аналитика. AI задаёт вопросы про дашборды, метрики, RLS. 1 бесплатная сессия.
Открыть AI-интервью →