Это дизайн, так как я не делал ничего подобного в прошлом, и это хороший вызов. У меня есть сервер, который поддерживает Oracle, Sql Server и Mongodb. Вы можете выбрать, какой использовать при запуске. По сути, каждый сервер хранит XML-пакеты, которые разбиты на составляющие их элементы.
Мне нужно создать базу данных отчетов, которая предоставляет сводные и сводные данные для отчетов для панели инструментов, но проблема (возможность) - Mongodb. Я мог бы легко использовать службы отчетов SQL Server для создания базы данных reportdb, то же самое с Oracle, или я мог что-то вроде Crystal, который работает против обоих, или даже создать базу данных и установить набор триггеров для каждой таблицы с некоторой логикой pl / sql с Oracle или T-Sql с Sql для создания базы данных отчетности на лету. И это позаботится об отчете. Но их это mongodb. Мало или нет инфраструктуры отчетности, конечно, не за пределами BIRT или jaspersoft (Java). Я использую C #.
Я думал о серверном компоненте c #, который перехватывает входящие xml-пакеты, извлекает данные из соответствующих полей элемента и записывает их в базу данных отчетов, возможно, что-то вроде sqlite (которая может быть слишком маленькой). Если бы он работал на сервере SQL или Oracle, то я бы использовал этот экземпляр базы данных для поддержки базы данных отчетности.
В любой базе данных я действительно поддерживаю данные за 6 месяцев. Данные будут классифицированы как 24 часа, 1 неделя, 1 месяц, 3 месяца, 6 месяцев, с прогрессивным архивированием на сжатие и резервное копирование в БД.
Но вот тут-то и туманно. Например, используя sqlite в качестве базы данных отчетов, и mongodb в качестве базы данных xml. Принимая пример. Если пользователь хочет выполнить детализацию, нужно ли мне предоставлять какое-то динамическое обновление, которое будет извлекать дополнительную отчетную информацию из Mongodb, или все это можно сделать на этапе компонента сервера, когда оно записано в sqlite.
Или все f bol.cks
Любые идеи или мысли очень ценятся.
Боб.