Відправка даних з 1С-Бітрікс в Яндекс DataLens — налаштування під KPI

Власник магазину на Бітрікс стикається з розрізненими даними: замовлення в `b_sale_order`, трафік в Яндекс.Метриці, ціни в окремому прайсі. Зводити їх в Excel — години роботи та помилки. Ми підключаємо [Яндекс DataLens](https://yandex.ru/datalens) напряму до PostgreSQL, але без правильних індексів т
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Відправка даних з 1С-Бітрікс в Яндекс DataLens — налаштування під KPI
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1460
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    761
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    882
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    809
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1163

Власник магазину на Бітрікс стикається з розрізненими даними: замовлення в b_sale_order, трафік в Яндекс.Метриці, ціни в окремому прайсі. Зводити їх в Excel — години роботи та помилки. Ми підключаємо Яндекс DataLens напряму до PostgreSQL, але без правильних індексів та вітрин дашборди гальмують. Нещодавно клієнт з каталогом у 500 000 товарів та 1 млн замовлень скаржився на 30-секундні запити. Після створення вітрини та індексів час виконання впав до 0,2 секунди. У 70% випадків пряме підключення без індексів дає час відгуку більше 10 секунд. Після оптимізації час запитів скорочується в середньому на 85%.

Проблеми, які вирішуємо

  • Пряме підключення — простий доступ до таблиць b_sale_order, b_catalog_price, b_iblock_element. Але при кожному відкритті дашборду виконується запит до бази. Якщо таблиця містить більше 500 000 рядків, швидкість падає. Вирішуємо створенням індексів та обмеженням вибірки.
  • Вітрина даних — агреговані таблиці, що оновлюються за розкладом. Запити виконуються за долі секунди, навіть на 1 млн замовлень. Але затримка оновлення до 60 хвилин прийнятна не для всіх.
  • ClickHouse — потокова обробка подій: замовлення, перегляди, кошики. Свіжість даних — реальний час, але потрібна додаткова інфраструктура.
Варіант Швидкість запитів Навантаження на базу Свіжість даних Складність
Пряме підключення Залежить від розміру таблиць Висока при кожному запиті Реальний час Мінімальна
Вітрина даних Миттєво Низька Відставання на 1-60 хвилин Середня
ClickHouse + події Висока Низька Реальний час + буферизація Висока

Пряме підключення в 3 рази швидше за свіжістю, ніж вітрина, але вітрина в 10 разів швидша за швидкістю запитів. Вибір залежить від пріоритетів. Якщо не впевнені, який варіант підходить, отримайте консультацію інженера.

Яку схему даних обрати?

Для магазину з числом замовлень менше 100 000 на місяць пряме підключення підходить, якщо база має індекси. При обсягах понад 500 000 записів вітрина знижує навантаження на базу в 8–10 разів. ClickHouse виправданий для real-time аналітики з десятками подій на секунду. Ми допомагаємо підібрати схему після аудиту вашої бази.

Як підготувати базу Бітрікс для DataLens?

Найчистіший варіант — прямий PostgreSQL-конектор. Потрібна доступність бази з хмари Яндексу (білий IP або VPN). Створюємо read-only користувача:

CREATE USER datalens_ro WITH PASSWORD 'strong_password'; GRANT CONNECT ON DATABASE bitrix TO datalens_ro; GRANT USAGE ON SCHEMA public TO datalens_ro; GRANT SELECT ON b_sale_order, b_sale_order_item, b_iblock_element, b_catalog_price, b_user TO datalens_ro; 

Детальніше в офіційній документації 1С-Бітрікс з оптимізації бази.

Якщо база велика (мільйони замовлень), краще використовувати вітрину даних. Ось приклад вітрини щоденних продажів:

CREATE TABLE datalens_orders_daily AS SELECT DATE_TRUNC('day', DATE_INSERT)::DATE AS order_date, CURRENCY AS currency, COUNT(*) AS orders_count, SUM(PRICE) AS revenue, SUM(PRICE_DELIVERY) AS delivery_total, AVG(PRICE) AS avg_order_value FROM b_sale_order WHERE CANCELED = 'N' GROUP BY 1, 2; CREATE INDEX idx_datalens_od_date ON datalens_orders_daily(order_date); 
Розгорнутий приклад вітрини з оновленням через агент
function UpdateDataLensOrdersVitrine() { global $DB; $DB->Query(" INSERT INTO datalens_orders_daily SELECT DATE_TRUNC('day', DATE_INSERT)::DATE, CURRENCY, COUNT(*), SUM(PRICE), SUM(PRICE_DELIVERY), AVG(PRICE) FROM b_sale_order WHERE CANCELED = 'N' AND DATE_INSERT >= NOW() - INTERVAL '2 days' GROUP BY 1, 2 ON CONFLICT (order_date, currency) DO UPDATE SET orders_count = EXCLUDED.orders_count, revenue = EXCLUDED.revenue ", false, 'FILE', __LINE__); return \CAgent::DEFAULT_PERIOD; } 

Що входить у налаштування?

  • Аудит поточної бази та продуктивності.
  • Вибір способу підключення (прямий, вітрина, ClickHouse).
  • Створення read-only користувача та індексів.
  • Написання агентів оновлення вітрин.
  • Налаштування підключення до DataLens та створення датасетів.
  • Розробка дашбордів під ваші KPI: воронка продажів, когортний аналіз, ABC-аналіз товарів.
  • Документація по схемі та оновленню.
  • Навчання співробітників роботі з дашбордами.
  • Гарантійна підтримка 3 місяці.

Як підключити Яндекс.Метрику як друге джерело?

DataLens підключається до Метрики напряму — достатньо номера лічильника та OAuth-токена. Після створення двох підключень (PostgreSQL + Метрика) можна зробити датасет з JOIN по даті: виручка та трафік на одному графіку. Так видно, які рекламні кампанії приносять реальні гроші, а не просто кліки.

Типові помилки при інтеграції DataLens з Бітріксом

Помилка Рішення
Немає індексів Створити індекси на DATE_INSERT, CANCELED, PRICE
Немає read-only користувача Створити окремого користувача з правами SELECT
Не налаштований агент Налаштувати агент з періодом 3600 секунд
Забагато джерел Об'єднати через вітрину, а не через прямі запити

Процес роботи

  1. Аналітика — вивчаємо структуру вашого Бітрікса, склад таблиць та необхідні звіти.
  2. Проектування — обираємо спосіб підключення (прямий, вітрина або ClickHouse), проектуємо схему.
  3. Реалізація — налаштовуємо підключення, створюємо вітрини або агенти.
  4. Тестування — перевіряємо коректність даних та швидкість дашбордів.
  5. Деплой — переносимо в продуктив, документуємо.
  6. Навчання — показуємо співробітникам, як працювати з дашбордами.

Строки реалізації

Орієнтовні строки — від 5 до 15 робочих днів, залежно від складності (обсяг даних, кількість джерел, вимоги по свіжості). Точний строк визначаємо після аудиту вашої бази. Наш досвід — 15+ успішних проектів з інтеграції DataLens з Бітріксом. Середня економія часу менеджера — 40%. Гарантійна підтримка — 3 місяці. Зв'яжіться з нами для розрахунку вартості та строків.