Какие инструменты для создания сервиса сравнения больших объемов данных лучше использовать?
День добрый дорогие разработчики. В очередной раз стоит великая задача создания шустрого и рабочего ИТ сервиса. Перейдем сразу к возникшей проблеме:
Имеются два хранилища данных: некая БД Биллинговой системы (система X) и БД системы осуществления лицензионного доступа к платному контенту типа Verimatrix (система Y).
При осуществлении клиентом покупки платного сервиса (например, покупка контента с мобильного приложения, интерактивной приставки или сайта), информация о покупке регистрируется в системе X и из системы X отправляется команда в систему Y на открытие доступа к соответствующей единице контента. Между системами X и У существуют промежуточные звенья (преобразователи команд, очереди и т.д.), которые могут привести к нарушению консистентности данных в рассматриваемых системах. Стоит задача: один раз в день выгружать из систем X и Y файлы одинаковой структуры (идентификатор клиента, список доступных сервисов) и производить сравнение данных файлов. По сути стоит задача создания сервиса Z, обладающего следующими характиристиками:
1. сервис Z должен быть вынесен из систем X и Y;
2. сервис Z должен принимать на вход файлы большого размера от каждой из систем X и Y, производить сравнение файлов и выводить результат расхождения;
3. сервис Z должен уметь отправлять команды в очередь команд;
4. сервис Z должен сигнализировать другие сервисы, если показатели расхождений выходят за рамки допустимых значений.
Может быть кто-то сталкивался с подобного рода задачами и поделится опытом и информацией по используемым инструментам? Буду рад получить консультации и немного порассуждать или получить ссылки на готовые инструменты, чтобы не изобретать велосипед.
Файл максимум 12 GB, это общий со всех БД городов, можно организовать, что бы каждая БД отдельно посылала файлы (всего 36 БД), тогда файлы будут размером примерно 350 МБ.