Как создать пользовательский многомерный каталог ADO без базы данных - PullRequest
1 голос
/ 29 марта 2010

Кто-нибудь знает пример того, как динамически определять и создавать каталоги ADO MD (многомерные объекты данных ActiveX) и определения кубов с набором данных, отличным от базы данных?

Справочная информация: в нашем приложении содержится огромное количество данных, которые мы экспортируем в базу данных, а затем запрашиваем, используя обычные объединения SQL, группы, суммы и т. Д. Для создания отчетов. Данные в приложении изначально находятся в объектах и ​​массивах. Проблема в том, что объем данных настолько велик, что экспорт может занять более 2 часов. Поэтому я пытаюсь найти хороший способ запроса объектов в памяти, либо с помощью специального алгоритма OLAP или библиотеки, либо ADO MD. Но я не смог найти пример использования ADO MD без базы данных.

Мы используем Delphi 2010, поэтому будем использовать ADO ActiveX, но я думаю, что ADO.NET MD похож. Я понимаю, что если данные приложения уже хранятся в базе данных, проблема решится сама собой. Также, если бы у Delphi была возможность LINQ, я мог бы запросить объекты и массивы таким образом.

1 Ответ

1 голос
/ 30 марта 2010

Экспорт занимает 2 часа? Некоторые компании имели дело с худшим! По ночам!

Раньше мы планировали передачу данных в хранилище на 3 часа ночи и запускали задания обработки куба около 6 часов утра ... затем изо всех сил пытались сделать доступными 9 часов утра.

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

Можно ли экспортировать данные всего вашего приложения в базу данных SQL только один раз, а затем каждый день после этого просто добавлять немного новых данных или реэкспортировать только подраздел приложения? Это поможет время загрузки.

...