- Дипанкар Саркар: Технолог и предприемач/
- Writings/
- Изграждане на мащабируем канал за данни за Momspresso: Овластяване на персонализацията на съдържанието/
Изграждане на мащабируем канал за данни за Momspresso: Овластяване на персонализацията на съдържанието
Съдържание
В постоянно развиващия се дигитален пейзаж, платформи за съдържание като Momspresso се нуждаят от надеждна инфраструктура за данни, за да предоставят персонализирани изживявания на своите потребители. Днес съм развълнуван да споделя прозрения за мащабируемия канал за данни, който изградихме за Momspresso, който захранва техните системи за анализ и препоръки.
Предизвикателството #
Momspresso се нуждаеше от система, която може да:
- Улавя потребителски събития в реално време
- Обработва и съхранява ефективно големи обеми от данни
- Позволява бърз анализ и визуализация на потребителското поведение
- Поддържа система за препоръки за персонализирано доставяне на съдържание
Нашето решение: Всеобхватен канал за данни #
Проектирахме многокомпонентен канал за данни, който отговаря на тези нужди:
1. Python Events SDK #
Разработихме прост Python клас, който може да бъде интегриран в целия код на Momspresso. Този SDK позволява на системата да изпраща събития без да пише основния код, улеснявайки разработчиците да проследяват потребителските взаимодействия.
2. Уеб услуга за събития #
Тази услуга получава събития от SDK и ги изпраща към Kafka след минимална валидация. Тя действа като входна точка за всички данни за потребителски взаимодействия.
3. Apache Kafka #
Избрахме Kafka като наша система за обмен на съобщения и публикуване-абониране поради високата й производителност и устойчив на грешки дизайн. В момента работи на една машина, готова за мащабиране с растежа на Momspresso.
4. Система за улавяне на данни #
Този компонент слуша всички събития от Kafka и ги вмъква в PostgreSQL база данни. Използвайки JSON възможностите на Postgres, създадохме гъвкав и подлежащ на заявки набор от данни.
5. PostgreSQL хранилище за събития #
Нашето основно хранилище за всички събития. Внедрихме система за месечно архивиране за ефективно управление на съхранението.
6. Grafana за анализ в реално време #
Свързана с нашето хранилище за събития, Grafana позволява на Momspresso да графира заявки в реално време, да проследява използването на функции, да наблюдава ефективността на конверсиите и да открива аномалии.
7. Система за преглед на данни #
Този компонент изпълнява поредица от евристики и модели за определяне на потребителски атрибути, актуализирайки отделна база данни за потребителски изгледи.
8. PostgreSQL база данни за преглед на данни #
Тази база данни съхранява обработените потребителски изгледи, позволявайки бърз достъп до извлечени потребителски данни.
9. Metabase за табла за управление #
Използвайки базата данни за преглед на данни, Metabase позволява на Momspresso да създава персонализирани табла за управление и отчети с помощта на SQL заявки.
10. Уеб услуга за уникален потребителски отпечатък #
Умна услуга с 1x1 пиксел, която присвоява уникален подпис в бисквитка за всеки потребител, позволявайки ни да проследяваме потребителите през различни сесии.
Силата на този канал #
Този канал за данни овластява Momspresso по няколко начина:
- Прозрения в реално време: Momspresso вече може да проследява потребителското поведение и ефективността на съдържанието в реално време.
- Персонализация: Структурираните потребителски данни позволяват сложни алгоритми за препоръчване на съдържание.
- Гъвкав анализ: С данни, съхранявани в формати, подлежащи на заявки, Momspresso може лесно да извършва ad-hoc анализи.
- Мащабируемост: Модулният дизайн позволява отделните компоненти да бъдат мащабирани или заменяни при необходимост.
Поглед напред #
С продължаващия растеж на Momspresso, този канал за данни ще играе решаваща роля в разбирането на потребителското поведение и предоставянето на персонализирани изживявания. Вълнуваме се да видим как Momspresso ще използва тази инфраструктура, за да подобри своята платформа и да ангажира по-ефективно своята общност.
Очаквайте следващата ни публикация, където ще се задълбочим в системата за препоръки, изградена върху този канал за данни!