我需要使用时间索引存储 10 年的每分钟统计数据(并进行计算)。我不想要 sql 数据库,但要 NoSQL。什么对 .NET 最好?
最好的意思是:
1°)性能(用于快速读取以便在 2)中进行计算 2°)易于计算,例如自时间起源以来的平均值 3°)对于 .NET
我需要使用时间索引存储 10 年的每分钟统计数据(并进行计算)。我不想要 sql 数据库,但要 NoSQL。什么对 .NET 最好?
最好的意思是:
1°)性能(用于快速读取以便在 2)中进行计算 2°)易于计算,例如自时间起源以来的平均值 3°)对于 .NET
'.NET' 的最佳选择是主观的。使用 .NET 构建的唯一一个是RavenDB,但CouchDB和MongoDB等其他人也有“驱动程序”,可让您使用一组 .NET 库查询它们,因此所有这些都可以在 .NET 应用程序中使用。
尽管它们都可以在 Windows 上运行,但我想这与您计划在哪个平台上运行它们更相关。在这里查看他们开发的语言,在我看来,安装和维护用 Erlang 开发的东西可能更难。
另一点需要注意的是您创建索引的方式。在 RavenDB 中,您可以使用 Linq 在 .NET 中创建索引和 map/reduce 函数。在 CoucbDB 中,您使用 Javascript。
如何使用应用程序缓存?
本身并不是真正的数据库,但它会带来性能,并且它以 NoSQL 键/值方式工作。缺点是存储空间,但您可以构建系统以在数据库中保存永久存储,并在缓存中保存临时存储以进行计算。如果您使用多台服务器,其他缺点是:您需要担心多台机器上的缓存可用性。一些缺点,但巨大的性能使 IMO 受益。