繁体   English   中英

sqlite,berkeley db基准测试

[英]sqlite , berkeley db benchmarking

我想在c#中创建桌面应用程序,因为我想使用嵌入式数据库(sqlite,berkeley db),那么我该如何开始对这些数据库进行基准测试呢?

最近,Oracle在BDB的btree存储上添加了sqlite3接口,因此您应该能够针对sqlite3编写代码,然后插入BDB。 捕获是许可。 BDB强迫您支付或开源; sqlite让你做任何你想做的事。

在考虑基准测试之前,您需要比较数据库的功能。

SQLite和BDB在它们支持的功能上完全不同,如果数据很复杂,我建议SQLite更容易查询关系数据(如果这是你的数据的布局)

我同意Osama的观点,你应该首先比较你的功能。

但是,我不同意“复杂”的数据应该会自动驱动你走向sqlite。 虽然我没有看到任何基准(也没有写过任何基准),但我有一种直觉反应(不管有什么价值),说伯克利数据库几乎每次都会跑赢大盘。

那就是说。 我不认为这是我用来做出自己决定的。 它可以追溯到那些功能。 如果我想要的只是一个简单的数据存储,那么我可能会选择sqlite,因为它会变得更容易。 同样,如果我希望能够在任何字段上任意查询我的数据,或者可能有一天将其存储在“企业”SQL数据库中,我可能会使用sqlite,因为将来的迁移会更容易。 但是,如果我打算超越一个简单的数据存储,并且正在关注事务安全性,高并发性,高可用性,拥有许多读者编写者等, 并且我有一套相当明确的“查询”,那么我可能想要BDB。

请注意,我的数据的“复杂性”并没有真正进入这些方程式。 原因很简单。 BDB可以使用其本机序列化格式保存我的对象。 任何风格的Sql都带有着名的阻抗不匹配,IMO使我的应用程序复杂化。

如果你正在认真考虑BDB,我需要提醒你,你应该决定的存储您要使用预先为不同类型的商店是BDB报价不一定兼容的类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM