Обновить

Комментарии 11

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

Задача - предоставить данные всем подразделениям компании "по потребностям", а именно с требуемой детализацией, актуальностью и в нужной степени нормализации. Классические подходы складывания всего и вся в DataLake уже не удовлетворяют потребностям бизнеса, поэтому рождаются разнообразные решения, о которых идёт речь в статье.

В части данных речь не идёт о регулярном взаимодействии система-система, централизованное хранилище предоставляет данные для анализа и использования в экосистемах доменов/продуктов в сценариях: различного рода прогнозы (товаров на полках, загруженности тех же касс и много другого), ML, BI-отчётность для многих задач от анализа вчерашнего дня/недели до оперативного воздействия при задержке выполнения какой-то задачи сотрудником (тут как раз нужна высокая актуальность данных) и любые другие сценарии использования данных.

НЛО прилетело и опубликовало эту надпись здесь

Ну, смотря что именно работает. Данные собираются и раздаются условно для всех 18 тысяч магазинов (на самом деле для проектов над ними в разных конфигурация по сетям, локации и пр.), в рамках этих проектов могут быть реализованы и вопрощены в жизнь разные модели. Ну думаю, что факт наличия данных в DWH как-то связан с оценкой единичной точкой сети, но уверен, что в рамках развития всей сети улучшение сервисов централизации корпоративных данных и улучшение качества, актуальности и пр. данных в будущем исключительно положительно скажется на пользовательского опыте. DWH - не готовая рыбка, а удочка, которую можно использовать в меру своих возможностей.

А что в данном контексте подразумевается под СИ? Средства интеграции, сервисная инфраструктура, совокупность инструментов, etc?

Второй абзац: "... сотен систем-источников (СИ)", т.е. Система-источник по отношению к DWH - места откуда грузим данных.

Заканчивался 2021 год, а люди продолжали ссылать на "тестирование in-memory" от 2016 года имени Димы Павлова :) :)

И дело даже не в сроках (хотя автор понимает что ситуация могла сильно измениться за такой срок). Дело в методике. Вы же не думаете что в реальной жизни в вашей системе будет работать 1 запрос? Системы тестируют под большой конкурентной нагрузкой в десятки с сотни запросов на входе.

"Тиньки" тестировали для узкой аналитической(!) задачи, а в вашем архитектурном подходе in-mem для других целей предполагается. И на самом деле он вам не нужен для задач online загрузки. Эту задачу решает time series хранилище. In-mem нужен тогда и только тогда когда нужен общий кэш с сервисами данных. Для всех остальных задача - это за уши притянутая история

Как внимательный читатель я конечно же не мог не заметить магическое число 3. Число это выбрано вами не потому что они магическое, а потому что изначальная платформа вокруг которой стали проектировать ландшафт не может решить все задачи "в одной коробке". Вот и приходится обрастать соседями. Это нормальная история когда есть легаси вокруг которого нужно строить.

Но когда вы проектируете с нуля и предлагаете гетерогенную архитектуру - это очень плохо! Каждая точка интеграции - потенциальная точка отказа. Каждая система - отдельное железо, отдельная команда и экспертиза, отдельная ролевая модель доступа и пляски с информационной безопасностью и тд. Минусов много больше чем плюсов.

Если бы была система, способная решать все задачи, вами обозначенные, вы бы пошли в историю с множеством систем?

  1. Характер использования: конечно не 1 запрос, и даже не тысячи и их характер сильно различается.

  2. Типы DWH: да, есть Time series и много других типов хранилищ, которые хорошо решают некий круг задач и плохо - другой. В извложенной выше концепции Streaming покрывает не только супер-актуальные данные продаж (которые нужны не только в онлайн-режиме), а также много другой информации, которая требуется например в режиме t-10m, какая-то для моментальной реакции, а какая-то для аналитики и пр. Что-то грузится в режиме Streaming только ввиду колоссального объёма данных и технической невозможности одноразово вытащить подобный объём в Batch-режиме.
    Приведённое сравнение in-memory действительно не самое удачное, но ничего более подходящего не нашёл. Отдельно отмечу, что на цветной архитектуре TO-BE с 3 уровнями платформ темпорально-ориентированные БД условно есть, точнее некоторые можно использовать подобным образом (ClickHouse например: https://clickhouse.com/docs/en/single/#can-i-use-clickhouse-as-a-time-series-database).

  3. Один за всех: К сожалению подобной платформы, удовлетворяющей всем потребностям, на горизонте не видится (особенно с учётом п.1). Насчёт проектирования "с нуля" не совсем согласен, т.к. есть понимание текущих процессов, потоков данных и запросов к ним, откуда вытекает ряд потребностей, не покрываемых (особенно в перспективе ближайших лет) "золотой рыбкой" где оперативные данные и архив, аналитические запросы и high-load, оптимальная стоимость по лицензиям, железу (и его доступности во времена кризиса микросхем), сопровождению, наличию специалистов на рынке и т.д.

Задачи потоковой аналитики - это задачи анализа данных во временном окне. Для удержания окна на глубину анализа in-memory не нужен. С этим справляется k-v. Под ногами той же kafka streams лежит банальный rocks который разруливает очень высокую нагрузку в онлайн оконной аналитике.

Такая платформа как ни странно существует. Имя ей Cloudera Data Platform. Попробуйте назвать задачу с которой она не справится. Спойлер - под high load нагрузкой система ведет себя лучше чем большинство традиционных mpp систем, включая упомянутые вами ранее.

Посмотрите на snowflake За ними будушее.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
x5.tech
Дата регистрации
Дата основания
2006
Численность
свыше 10 000 человек
Местоположение
Россия