c#聊聊文件数据库kv
现在有很多KV嵌入式存储,或者已经增加的。leveldb,RaptorDB等,都是相对比较好的存储。基本存储,一般配置。大概在6w/s左右。当然还有缓存等设置问题。这些基本是字符串和int的存储,对于我们需要KV的数据,也差不多了。当然字符串最多。具有一定的随机访问性。
另外再说一款KV数据库stsddb,我就不帮它打广告了。官方吹的不亦乐乎,但是性能其实没有那么高,为什么测试很不错,因为内存啊,它的内存使用也较高。内部有2级缓存。我都不多说了,自己喜欢就了解吧,除去这部分,在存储方面它的确也是不错的。20w/s左右还是有的,所以它还是不错的。但是它的弊端是不能多线程。按照官网测试查询,是一个线程中,直接添加顺序测试,然后再读取。这说明什么?说明不能使用多线程,不能多线程读取,不能随机访问。
每个nosql都有自己的场景,stssb可惜很狭窄。很高的存储,很高的顺序读取。除此以外都不可以,并且是单线程,里面有很多锁。最近我想了多种办法解决多线程读写,可惜失败了。
主要思路是多文件,数据采用负载均衡的类似处理。修改代码创建只读等待,都还是无法实现很高的读取,可能还是数据结构的问题。因此该数据库就我自己遇到的,只适合复盘。将数据存储,不会再程序中同时查询。当需要的时候,只会顺序读取(很高),这样的环境适合,效率很高。我简单了解了下程序,里面的锁太多,读取文件,写文件混合的,没有向level一样通过参数创建只读。
c#聊聊文件数据库kv的更多相关文章
- 小型文件数据库 (a file database for small apps) SharpFileDB
小型文件数据库 (a file database for small apps) SharpFileDB For english version of this article, please cli ...
- .NET平台开源项目速览(3)小巧轻量级NoSQL文件数据库LiteDB
今天给大家介绍一个不错的小巧轻量级的NoSQL文件数据库LiteDB.本博客在2013年也介绍过2款.NET平台的开源数据库: 1.[原创]开源.NET下的XML数据库介绍及入门 2.[原创]C#开源 ...
- C#实现XML文件数据库存储
C#实现文件数据库 http://www.cnblogs.com/gaochundong/archive/2013/04/24/csharp_file_database.html#3100076 应用 ...
- C#实现文件数据库
本文转载:http://www.cnblogs.com/gaochundong/archive/2013/04/24/csharp_file_database.html#commentform 本文为 ...
- Linux在什么样的从脚本文件数据库sh格式改变sql格式
在软件开发过程中,经常参与Linux从下一个脚本文件数据库sh格式改变sql格式问题.在本文中,一个实际的脚本文件,例如.描述格式转换过程. 1. sh文件内容 本文中的文件名称为exa ...
- sqlite内存数据库和文件数据库的同步[转]
由于sqlite对多进程操作支持效果不太理想,在项目中,为了避免频繁读写 文件数据库带来的性能损耗,我们可以采用操作sqlite内存数据库,并将内存数据库定时同步到文件数据库中的方法. 实现思路如下: ...
- 07 部署fastDFS文件数据库
安装fastDFS前必须准备好两个版本匹配的文件: libfastcommon_V1.0.7.tar.gz:基础库文件 FastDFS_V5.05.tar.gz:文件数据库文件 注:这两个文件版本要匹 ...
- JAVA 操作 DBF 文件数据库
1.依赖夹包 javadbf-[].4.1.jar jconn3.jar 2.添加属性文件 jdbc.properties jdbc.driverClassName=com.sybase.jdbc3. ...
- java POI导出Excel文件数据库的数据
在web开发中,有一个经典的功能,就是数据的导入导出.特别是数据的导出,在生产管理或者财务系统中用的非常普遍,因为这些系统经常要做一些报表打印的工作.这里我简单实现导出Excel文件. POI jar ...
随机推荐
- 车厢调度(train.cpp)
车厢调度(train.cpp) [问题描述] 有一个火车站,铁路如图所示,每辆火车从A驶入,再从B方向驶出,同时它的车厢可以重新组合.假设从A方向驶来的火车有n节(n<=1000) ...
- 十、一行多个:使用float布局的经典方法 ---接(一)
1.使用float必须要清除float:即在使用float元素的父级元素上清除float. 清除float的方法有三种,在父元素上加:1.width: 100% 或者固定宽度 +overflow:hi ...
- configure配置安装详解
使用 ./configure --help 就可以查看到所有的配置选项. 1.--host=HOST指定软件运行的系统平台.如果没有指定,将会运行`config.guess'来检测.--host 指定 ...
- js if语句只写一个参数是什么意思?
如 var a=0:if(!a){...}; avascript中以下值会被转换为false false undefined null 0 -0 NaN ""
- C# 程序启动最小化至任务栏及闪烁
主要功能: C#让窗体最小化至任务栏,同时在系统托盘区的图标点击左键能显示窗体,并使窗体闪烁. 首先: 创建窗体应用程序,并添加控件NotifyIcon及ContextMenuStrip控件 Noti ...
- Linux ->> scp命令复制对端机器上的文件/文件夹
scp是secure copy的简写,用于在Linux下从远程机器拷贝文件. 特点: 传输是加密的,稍微影响了一下速度.而相比较rsync,它对于资源的占用还是有优势的. 用法 scp [参数] [原 ...
- 路由协议RIP、EIGRP、OSPF
前提 在网络拓扑中,我们经常多个路由连接不同子网,路由之间要转发不同子网的包,前提是路由之间要知道对方路由的存在. 因此这次我要写的是有关维护路由之间存在的协议,RIP.EIGRP和OSPF,静态路由 ...
- ansible之基本原理及命令
什么是ansible ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(\(puppet.chef.func.fabric\))的优点,实现了批量系统配置.批量程序部署 ...
- mongodb 启动
>mongod.exe --dbpath C:\Environ\mongodb-3.0.6\data\db >mongod.exe --logpath "C:\Environ\ ...
- io问题导致的insert缓慢
生产环境一日常insert在业务量加倍之后非常缓慢,对有问题sql做awr报告和10046trace得出以下结论:In the 10046 trace, the execution of sql el ...