如何在没有数据库的情况下创建自定义 ADO 多维目录

发布于 2024-08-27 01:56:01 字数 405 浏览 10 评论 0原文

有谁知道如何使用数据库以外的一组数据动态定义和构建 ADO MD(ActiveX 数据对象多维)目录和多维数据集定义的示例?

背景:我们的应用程序中有大量数据,我们将其导出到数据库,然后使用常用的 SQL 连接、分组、求和等进行查询以生成报告。应用程序中的数据最初是对象和数组。问题是数据量太大,导出需要的时间> 2小时。因此,我试图找出一种查询内存中对象的好方法,可以通过自定义 OLAP 算法或库,也可以通过 ADO MD。但我还没有找到在没有数据库支持的情况下使用 ADO MD 的示例。

我们使用的是 Delphi 2010,所以会使用 ADO ActiveX,但我想 ADO.NET MD 是类似的。我意识到,如果应用程序数据已经存储在数据库中,问题就会自行解决。另外,如果 Delphi 具有 LINQ 功能,我就可以通过这种方式查询对象和数组。

Does anyone know of an example of how to dynamically define and build ADO MD (ActiveX Data Objects Multidimensional) catalogs and cube definitions with a set of data other than a database?

Background: we have a huge amount of data in our application that we export to a database and then query using the usual SQL joins, groups, sums etc to produce reports. The data in the application is originally in objects and arrays. The problem is the amount of data is so large the export can take > 2 hours. So I am trying to figure out a good way of querying the objects in memory, either by a custom OLAP algorithm or library, or ADO MD. But I haven't been able to find an example of using ADO MD without a database behind it.

We are using Delphi 2010 so would use ADO ActiveX but I imagine the ADO.NET MD is similar. I realize that if the application data was already stored in a database the problem would solve itself. Also if Delphi had LINQ capability I could query the objects and arrays that way.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

妞丶爷亲个 2024-09-03 01:56:01

导出需要2小时?有些公司的情况更糟!每晚一次!

我们过去常常安排在凌晨 3 点将数据传输到仓库,并在上午 6 点左右触发多维数据集处理作业......然后努力确保上午 9 点可用。

提高效率的一件事是确保只处理新数据,而不处理保持不变的旧值。例如,我们的仓库在过去 5 年中保存了餐厅销售信息,因此无需重新加载一个月以上的任何行,因为它们是相同的!

是否可以将整个应用程序的数据导出到 SQL 数据库一次,然后每天添加一点新数据,或者仅重新导出应用程序的一小部分?这将有助于加载时间。

The export takes 2 hours? Some companies have dealt with worse! On a nightly basis!

We used to schedule the transfer of data into the warehouse at 3am, and the trigger the cube processing jobs around 6am....then struggle to make 9am availability.

One thing that improved efficiency was making sure that only new data was dealt with, not old values that remained unchanged. For example, our warehouse held restaurant sales for the last 5 years, so there was no need to reload any rows over a month old as they would be the same!

Is it possible to export your entire application's data into a SQL database just once, and then each day after that just add a little bit of new data, or re-export just a subsection of the application? That will help load times.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文