

Мы запустили Data Streams!
Мы рады сообщить, что в платформе SegmentStream теперь появилась возможность в реальном времени собирать любые типы событий в ваше собственное хранилище данных Google BigQuery.
Что такое Data Streams
Data Stream — это универсальный способ сбора любых данных напрямую в ваше хранилище Google BigQuery в реальном времени. Сюда входят события как на стороне клиента, так и на стороне сервера.
Несколько примеров использования:
- Автоматическое перехватывание и дублирование всех хитов Google Analytics в SegmentStream, что позволяет собирать сырые данные на уровне хита в ваш Google BigQuery без каких-либо ограничений и сэмплирования.
- Анализ AMP-страниц используя пиксели отслеживания без использования скриптов.
- Отслеживание и сбор информацию о показах медийной рекламы напрямую в Google BigQuery благодаря возможности вставки пикселя отслеживания SegmentStream в рекламное объявление.
- Использование вебхуков для сбора данных из CRM/ERP/ESP и любой другой сторонней системы.
- Отправка серверных событий в Google BigQuery в реальном времени.
Как работает функционал Data Streams
В двух словах, поток данных (Data Stream) — это уникальный адрес API, куда вы можете отправлять абсолютно любые данные. Все URL этого API имеют следующий формат:
https://track.segmentstream.com/ds/<DATA_STREAM_ID>
Где <DATA_STREAM_ID>
- это уникальный идентификатор вашего потока данных связанного с конкретной таблицей в Google BigQuery.
Вы можете отправлять данные в API SegmentStream в любом формате, используя:
-
Простой HTTP запрос:
curl -d "event=Lead&value=3500¤cy=USD" \ https://track.segmentstream.com/ds/<DATA_STREAM_ID>
-
HTTP запрос с JSON:
curl -H "Content-Type: application/json" -X \ POST -d '{"event":"Lead","value":3500,"currency":"USD"}' \ https://track.segmentstream.com/ds/<DATA_STREAM_ID>
-
Пиксель отслеживания (для AMP страниц или рекламного объявления):
<img height="1" width="1" style="display:none;" src="https://track.segmentstream.com/ds/<DATA_STREAM_ID>?event=ad_view&placement=DV360&type=banner" />
-
JavaScript-код:
jQuery.post("https://track.segmentstream.com/ds/<DATA_STREAM_ID>", { event: "Lead", value: 3500, currency: "USD" });
Независимо от выбранного вами метода отправки данных, SegmentStream гарантирует, что эти данные будут успешно записаны в реальном времени в таблицу Google BigQuery, указанную для этого потока данных.
Подключение нового Data Stream в SegmentStream
- В панели управления SegmentStream вы можете создать новый поток данных, который в свою очередь создаст уникальную адрес API, куда будут отправляться все ваши данные.
- В зависимости от типа потока данных вам будут предоставлены дополнительные инструкции о том, как правильно настроить код отслеживания, пиксель, или даже API запрос на стороне сервера.
- Используйте полученный код на своем веб-сайте, в мобильном приложении, или на сервере, в зависимости от требований.
Дополнительную информацию о настройке Data Streams можно найти в документации. Свяжитесь с нашей командой поддержки, если вам нужна помощь в настройке!
В чем основное преимущество Data Streams
Главное преимущество Data Streams — это возможность перейти от ETL подхода к сбору данных к современному ELT подходу. В чем разница?
- С ETL подходом (Extract-Transform-Load) вам необходимо определить схему финальных таблиц еще до старта сбора данных. Преобразование данных происходит «на лету» с заранее определенной логикой, и только потом они попадают в хранилище данных. Если данные отправляются в не том формате — весь ETL-процесс выйдет из строя, пока вы не почините сбор данных. Это делает подход ETL очень негибким методом сбора данных, а также затрудняет переход от одной схемы к другой.
- При использовании подхода ELT (Extract-Load-Transform) на сервере не происходит никакого преобразования данных. Все данные поступают прямо в хранилище в необработанном виде.
Пример необработанных сырых данных в базе:
hit_id | payload | datetime | ip |
---|---|---|---|
31a94989-87e0-44fe-873d-9537e9665715 | {event:"lead","value":3500,"currency":"USD"} |
2020-08-17 22:00:00UTC | 216.27.61.137 |
a12a64b0-70a2-450e-bb20-29dc2b841674 | { event:"pageview","url":"https://segmentstream.com/blog/article"} |
2020-08-17 22:01:00UTC | 203.21.61.100 |
a12a64b0-70a2-450e-bb20-29dc2b841674 | { event:"ad_impression",url:"https://publisher.com"} |
2020-08-17 21:13:00UTC | 216.27.61.137 |
После этого BI-специалисты и аналитики могут преобразовать эти данные в любую необходимую им схему, написав простые SQL запросы. Не нужно привлекать разработчиков и просить их изменить схему на сервере.
Вот пример того, как финальная таблица может выглядеть в вашем Google BigQuery:
hit_id | event | value | currency | url | datetime | ip |
---|---|---|---|---|---|---|
31a94989-87e0-44fe-873d-9537e9665715 | lead | 3500 | USD | https://segmentstream.com/blog/article | 2020-08-17 22:00:00UTC | 216.27.61.137 |
a12a64b0-70a2-450e-bb20-29dc2b841674 | pageview | NULL | NULL | NULL | 2020-08-17 22:01:00UTC | 203.21.61.100 |
a12a64b0-70a2-450e-bb20-29dc2b841674 | ad_impression | NULL | NULL | https://publisher.com | 2020-08-17 21:13:00UTC | 216.27.61.137 |
Это делает подход ELT гораздо более гибким и удобным, а также дает большую свободу, если вы решите сменить источник данных, инструмент или формат сбора данных.
Почему ETL до сих пор остается популярен
Конечно, в некоторых случаях выбор ETL может быть оправдан. Но в большинстве случаев его выбирают просто за неимением альтернатив, либо в связи с процессами, сложившимися в компании годами.
ETL был популярным решением из-за того, что стоимость хранения и обработки данных на локальных мощностях компании была крайне высокой. В связи с быстрым ростом облачных решений, таких как Google Cloud Platform, и удешевлением облачных вычислений, практически нет причин продолжать использовать ETL вместо ELT.
Мы видим, что все больше и больше компаний переходят от ETL к более современному ELT, и мы будем рады помочь вам в таком переходе.
В чем разница между Data Sources и Data Streams в SegmentStream
- Data Sources презназначены для загрузки больших объемов данных, которая обычно происходит один или несколько раз в день. Например, подключиться к Facebook API, импортировать данные о расходах на рекламу за весь предыдущий день и загрузить их в Google BigQuery.
- Data Streams предназначены для сбора данных в реальном времени. С помощью Data Streams вы сможете получить доступ ко всем событиям в вашем Google BigQuery сразу же после того, как эти события произошли.
Что ждет Data Streams дальше
Помимо добавления дополнительных типов потоков данных в платформу SegmentStream, мы хотим сделать так, чтобы данные можно было не только легко собирать, но и легко преобразовывать к финальному формату.
Для этого мы подготовим набор готовых трансформаций, которые помогут преобразовать собранные данные на уровне событий в различные популярные схемы данных.
Надеемся, вы оцените функционал Data Streams и его полезность для решения задач сбора данных и аналитики. Будем очень рады вашим вопросам и комментариям.
Команда SegmentStream.
Начните работу с SegmentStream
Оставьте заявку на персональную демонстрацию или попробуйте SegmentStream бесплатно!