4

我目前正在开发一个需要计算大量数据的数据管理系统:想想一个包含大约 1.5 亿个数据单元格的 Excel 表。

我们使用 sql server 数据库来存储数据,但由于多种原因,计算性能并不理想。在考虑替代方案时,我想尝试使用内存中的对象结构。

以下是基本要求:

  1. 我们需要一个支持多个用户在我的 excel 类比的同一个“工作表”上进行更新的结构。如果单个更新的性能足够高,则可以接受所有用户的序列化更新

  2. 我们绝对不能接受数据丢失

  3. 我们需要对象键上的索引,但也需要部分键上的索引,因此内存结构必须支持非唯一键,从而有效地搜索部分键返回匹配记录的集合

  4. 必须支持 .NET

鉴于这些条件,请有什么建议吗?

谢谢,

凯末尔

4

2 回答 2

1

与关系数据库相比,NoSQL 数据库怎么样?像 MongoDB 或 RavenDB 之类的东西?

Mongo是一个内存数据库,我相信Raven可以配置为在内存中运行。

也有各种风格的 NoSQL 数据库。有些适用于“读取繁重”的应用程序,有些适用于“写入繁重”的应用程序。

如果您希望从预先计算的常见搜索或计算中受益,您可能还想查看CQRS 。

不过,我希望“无数据丢失”要求是您最大的决定因素。

于 2011-12-23T17:57:51.937 回答
0

Raima Inc是另一个 No-SQL 数据库,它在内存、磁盘或两者的混合中运行。

关于数据丢失,有一些扩展可用于提供镜像和复制。

这是他们数据库的完整技术规格的链接:RDM Embedded 10.1 Architecture and Features

于 2012-01-12T23:05:44.837 回答