热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

iBoxDB性能堪比MongoDB的NOSql数据库

2019独角兽企业重金招聘Python工程师标准iBoxDB是一款高性能的NOSql数据库,其具备类SQL的一些特性,但的确是个NOSql数据库。

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

  iBoxDB是一款高性能的NOSql数据库,其具备类SQL的一些特性,但的确是个NOSql数据库。高性能、无依赖、线程安 全、先天支持 Java 、.NET、Android、Mono、Unity3D、Xamarin、Nashorn、Linux、Windows Phone等平台、支持索引、事务、主键、零配置,内嵌或独立Server,用类SQL语局查询、支持Linq。官方有跟MongoDB的性能对比,基本 是高于MongoDB的。

官方网站:http://www.iboxdb.com/

下面我们就摘取官方网站的一些例子,方便大家进一步认识:

Examples

using(var box = db.Cube()){ //select, insert, update, delete ...var result = box.Commit();}

常见对象的插入:
box.Bind("Member").Insert(new Member() { ID=box.NewId(Member.IncTableID, 1) ,LoginName = "Andy",Password = Member.EncodePassowrd("123"),Tags = new string[]{ "Nice" , "Strong" }});

Dynamic Object (document database)

game["GameType"] = "ACT";box.Bind("Product").Insert(game);

game.put("GameType", "ACT");box.bind("Table").insert(game);

Key Value Style Query

box.Bind("Table", 2L).Select();//Composite Keybox.Bind("Table2", 99, "ABC").Select();

box.bind("Table", ID).select(Member.class);//Composite Keybox.bind("Table2",8, "MyID").select(Product.class);

更诱人的是可以像这样来写查询:


//from TABLE where A>? & B<&#61;? order by C limit 0,10box.Select("from Member where LoginName&#61;&#61;?", "MyName");

//from [table] where [condition] // order by [field1] desc,[field2] limit [0,10]//[Condition:] &#61;&#61; !&#61; <<&#61; > >&#61; & | ( )//[IFunction:] &#61;[F1,F2,F3]box.select(Member.class, "from Member where Name&#61;&#61;?", "MyName");

支持自定义查询函数&#xff1a;


box.Select("from Member where [Tags]", new QueryArray("Value")); 可以配合linq来使用


from o in box.Select("from Class")where o.Text.Contains(text)select o;

.NET

boolcharbytesbyteshort ushortintuintlongulong floatdouble decimalDateTimeGuidbool? char? byte? sbyte? short?ushort? int? uint? long? ulong? float? double? decimal?DateTime?Guid? string //non-indexableDictionaryMemoryStreambool[] char[] byte[]sbyte[] short[]ushort[] int[] uint[] long[]ulong[]float[]double[] decimal[] DateTime[] Guid[]

在32bit系统上 PK MongoDB&#xff1a;

Results:
threadCount&#61;100000 , batchCount&#61;10
MongoDB(Default)Database Transaction Test: NoneInsert:1000000 AVG:10521 objects/siBoxDB(File Mode)Database Transaction Test: SucceededInsert:1000000 AVG:17981 objects/sUpdate:1000000 AVG:12397 objects/s Delete:1000000 AVG:22869 objects/siBoxDB(MemoryMappedFile Mode)Database Transaction Test: SucceededInsert:1000000 AVG:38458 objects/sUpdate:1000000 AVG:20200 objects/s Delete:1000000 AVG:33342 objects/siBoxDB(InMemory Mode)Database Transaction Test: SucceededInsert:1000000 AVG:39132 objects/sUpdate:1000000 AVG:20226 objects/s Delete:1000000 AVG:33658 objects/s
iBoxDB.NET 在64bit System
iBoxDB v1.5 mongodb-win32-x86_64-2008plus-2.4.5 MongoDB.Driver v1.8.2.34

MongoDB(Default)Database Transaction Test: NoneInsert:1,000,000 AVG: 32,702 objects/siBoxDB(File Mode)Database Transaction Test: SucceededInsert:1,000,000 AVG:33,368 objects/sUpdate:1,000,000 AVG:16,939 objects/s Delete:1,000,000 AVG:22,504 objects/siBoxDB(MemoryMappedFile Mode)Database Transaction Test: SucceededInsert:1,000,000 AVG:42,236 objects/sUpdate:1,000,000 AVG:17,765 objects/s Delete:1,000,000 AVG:23,147 objects/siBoxDB(InMemory Mode)Database Transaction Test: SucceededInsert:1,000,000 AVG:47,382 objects/sUpdate:1,000,000 AVG:26,806 objects/s Delete:1,000,000 AVG:35,092 objects/s 实现主从同步&#xff1a;

好了&#xff0c;先整理到这儿吧&#xff0c;感兴趣的朋友&#xff0c;可以去参照官网&#xff0c;动手试试。



转:https://my.oschina.net/lichaoqiang/blog/601792



推荐阅读
author-avatar
昧凉生丶楚_139
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有