说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

LokiJS:纯JavaScript实现的轻量级数据库

HTML文档下载 WORD文档下载 PDF文档下载
LokiJS一个轻量级的面向文档的数据库,由JavaScript实现,性能高于一切。支持字段索引来实现更快的文件访问,性能也相当好(近50万OPS/ s)。

LokiJS一个轻量级的面向文档的数据库,由JavaScript实现,性能高于一切。目的是把JavaScript对象作为文档,然后再进行存储,并且以同样的方式来检索数据。 LokiJS可以运行于Node.js和所有支持JavaScript的浏览器、移动应用程序上。

LokiJS支持字段索引来实现更快的文件访问,性能也相当好(近50万OPS/ s)。其内置的DynamicView类也能用于数据子集的索引,达到更快的性能。 LokiJS支持集合,很像MongoDB,并将数据以JSON格式保存到硬盘上(根据会话来恢复状态),所以你的数据是可移植的。

采用LokiJS的最理想情景:

  • 移动应用程序——尤其是基于HTML5的(例如:Cordova,Phonegap等等)
  • 基于Node.js的小——中型应用程序的数据存储
  • 采用Node-Webkit的桌面应用程序

LokiJS目前还处在alpha阶段。源码托管在Github上。

快速安装:

npm install lokijsor:bower install lokijs

创建一个数据库:

var db = new loki('loki.json') Pass the filename where to persist data
创建一个集合:

var children = db.addCollection('children')
插入一个文档:

children.insert({name:'Sleipnir', legs: 8})children.insert({name:'Jormungandr', legs: 0})children.insert({name:'Hel', legs: 2})
检索/获取文档:

children.get(1); // returns Sleipnirchildren.find( {'name':'Sleipnir'} )children.find( { legs: { '$gt' : 2 } } )
创建一个动态视图:

var legs = children.addDynamicView('legs');legs.applyFind( { legs: { '$gt' : 2 } )legs.applySimpleSort('legs');legs.data();
MapReduce:

children.mapReduce(   function( obj ){ return obj.legs; } ,   function( array ) {     var sum = 0;    for (var i=0; i < array.length; i++ ){       sum += array[i];    }    return ( sum / array.length ).toFixed(2); });
LokiJS相关资料:

官网:http://lokijs.org/

托管地址:https://github.com/techfort/LokiJS

盘点英特尔IDF2013第一天:技术产品新趋势 英雄组队去打怪!Nimble Quest开发团队访谈 云通讯平台打造本土Twilio 被逼无奈?传微软或明年秋发布iOS和Android版Office 欧洲各国政府将向大众开放公共数据 访联想云存储罗予晋:优化MooseFS,共建生态系统 磊友创始人赵霏:关于HTML5与Flash争执之我见 国际混乱C语言代码大赛优胜作品详解之“A clock in one line” 揭秘程序员大脑编程的七大“误区” 从Java到ObjC语言的桥梁:谷歌J2ObjC 0.7版本亮相 数据库管理系统ParElastic:打破常规 扩展云端MySQL 谷歌苹果专利纠纷意在战略无意和解 美法官为其苦恼 Facebook收购神秘移动软件创业公司Osmeta 修改驱动,使用Erlang+VoltDB实现每秒87.7万事务 横评美国IaaS“8匹狼”:AWS、GCE、Azure、Rackspace、SoftLayer、Dell、HP、Joyent 独立游戏精神释放的舞台:IGF China 2013作品火热征集中 三款热门入门级在线编程教程对比 微软modern.IE:网站兼容性测试利器 Localytics:AngularJS代替Backbone 代码减少一半 史上增长最快的SaaS服务Optimizely:13亿访客,10万次测试 IDF上的云计算故事 移动周报:百万年薪、微信疑云,老罗小马本周很忙 一个创业失败者的自述:我是如何搞砸一款产品 收入百万美元:一个放弃上大学的程序员 Cocos2D配Box2D:逆天小白程序员作iOS游戏 招聘移动开发,老板必问的10个问题 黑客用智能手机劫持和控制民航飞机 几小时即可使互联网瘫痪的黑客 现已加入谷歌 Tsar开源:淘宝内部大量使用的系统监控工具 五款超实用的开源SVG工具 微信收费事件背后被广泛忽略的技术细节 用resin时,“No tags”是什么错误!分必给! 热烈庆祝VBA开张! 请问在asp中如何读取/显示access数据库中的备注字段 紧急求救:在VC++里如何通过ATL OLE DB访问(INSERT\UPDATE\DELETE\SELECT)ORACLE和SQL SERVER里的BLOB字段内容? 高薪寻找西安的兼职UNIX程序 员 在delphi中,怎么调用api函数? www.alldas.de为什么无法访问了??? 如何检测被覆盖的窗口区域是否发生了变化? 高薪寻找西安的兼职UNIX 程序员 如何制作下拉菜单 请高手指点:好猫为何不工作? 一种设想,20台电脑5根电话线上网,如何达到较快的速度? 对话框程序调试时的问题?!!!! 请介绍几本好用的自学C语言的书籍好吗?? 紧急求救,请高手来看看 .NET和JAVA到底哪个好? 谁来救我?ISequentialStream::write()为何不好使? 定义类型的困惑 大虾们,如何做一个图标选择框!!!(详情见内) ADO编程问题求解!!!!!!!!!!! ****************简单问题,高分求救??????????????????????? 请问怎样在TabStrip中的选项卡中增加图片?谢了 工程如何能建的工整一些? www.alldas.de为什么无法访问了? 关于动态控件的问题 ADO编程问题求解 怎么编程产生1MHz甚至更高频率的周期信号? 紧急求助—有关JMail4.1附件问题 挥泪大送分!!!!! 怎样才能让自己变胖? 做个仅有对话框的应用,但想把它放到托盘, 给ASP爱好者提个建议! 关于SQLserver2000“视图“的两个问题,请教高手! 好久没上网了,送分以庆祝再回csdn!!!!! 做浏览器,如何实现 “后退”,“前进”,这二个功能? 如何使C:盘,D盘的根目录不共享? 用resin时,是否需要jdk,如何配置?分必给! SDI中的某一个子视图里怎样对主窗口的状态栏进行更改?? ◇◆◇ 失恋代表什么? ◇◆◇ 我英语不懂,想考高程.行吗 ◇◆◇ 学生生涯快完了,大家来说说对学生生涯的感受,特别是什么最深刻的! ◇◆◇ 求救!如何把SQL命令从前端应用程序传给应用程序服务器 要去招商行笔试了,有参加过的兄弟给点建议。 ###############讨论一下->微软全力推出.NET技术和C#语言的出现,VC++还有多久的寿命??? 要去招商行笔试了,有参加过的兄弟给点建议 如何发一消息,帮别人问的 高手帮助!!! 要去招商行笔试,有参加过的兄弟给点建议。 要去招商行笔试,有参加过的兄弟给点建议 我配置的IIS,为什么只能读数据库,不能写入?为什么? 我要去招商行笔试了,有参加过的兄弟给点建议。 已知X1,X2 是方程-3X-4X+2=0的两根,求x1+x2=?x1x2=? 方程2的x次方=3-2x的解为x1,方程log2(x)=3-2x的解为x2,求x1+x2的值答案是3/2,可是我怎么都是2啊? 已知2+根号3是方程x2-4x+c的一个根,求方程的另一个根及c的值 已知方程3x的平方+4x的两根是x1、x2,求1/x1的平方+1/x2的平方的值已知方程3x的平方+4x=7的两根是x1、x2,求1/x1的平方+1/x2的平方的值用韦达定理, 设方程2的-x次方=lgx绝对值的两个根为x1,x2,则x1乘以x2的积与0,1的大小关系 已知关于X的一元二次方程x的平方+(m+3)+m+1=0.若X1,X2是原方程的根,且|X1-X2|=二倍根号二.求m的值 若方程X平方-3X-1=0的两个根为x1,x2,则1/X1 + 1/X2的值为 关于x的二次方程2x^2+(log2为底,m为真)x+log2为底根号m为真=0有两个实数根,求m的值两个相等的实数根。。对不起啊,少打两个字。。 x1、x2是方程x^+根号p*x+q=0的两个根且x1^+x1x2+x2^=3/2,1/x1^+1/x2^=5/2,求p、q的值 设方程4x的平方-3x-8=0的两根分别为x1,x2求下列代数式的值(x1-3)(x2-3) x1分之2+X2分之2 (x1-x2)的平方 若关于x的方程(根号x+3)+2x+m=0只有一个实数根,求m的取值范围 方程根号4-x2=lgx的根个数是几个? 设x1,x2是方程2x²-3x-3=0的两个实数根,则x1/x2+x2/x1的值为 已知关于方程x^2+2x+2根号(x^2+2x+2p) -p^2=0,其中p为实数(1)若方程没有实数根,求p的范围(2)若p>0,为p为何值时,方程只有一个实数根,并求出这个根用换元法设根号中为a,我想知道分解因式后 已知X1,X2为方程X的平方加px加q等于0的两根,且X1加X2等于6,X1的平方加X2的平方等于20求p和q的值? 已知方程3x²-4x-2=0的两根是x1、x2求、x1²+x2² 2、1/x1²+1/x2²3、x1三次方+x2三次方. log根号2^(x-5)log2^(x-1) 已知关于X的方程x^2-px+q=0的两根分别为x1,x2,且x1^2+x2^2=7,1/x1+1/x2=3,求p+q的值 设x1,x2,x3是方程x^3-x+1=0的三个根,则x1^5+x2^5+x3^5的值为 已知关于x的方程3x^2-5x+a=0的两个根为x1、x2,且-2小于x1小于0,1小于x2小于3,求实数a的取?、 log2(1+根号2+根号3)+log2(1+根号2 -根号3) X1、X2为方程X²+3X+1=0的两实根,求代数式X1³+8X+20的值 已知关于X的方程3x^2-5x+a=0的一根分布在区间(-2,0)内,另一根分布在区间(1,3)内,求实数a的取值范围 已知函数f(x)=2^x+x,g(x)=x-log1/2x(1/2为底数),h(x)=log2x-根号x(2为底数)的零点是x1,x2,x3,比较大小 已知方程3x平方+5x-2=0的两个根分别为x1 x2 求代数式x1+x2+x1乘x2的值 已知关于x的方程3x^2-6(m-1)x+m^2+1=0的两个根x1,x2满足|x1|+|x2|=2,求实数m的值 已知x∈[根号2,8],函数f(x)=log2 (x/2)乘以log根号2 ((根号x)/2)求该函数的最大值与最小值,注:这两个对数式是相乘,底数分别是2和(根号2),真数分别是 (x÷2)与 (根号x÷2),在10月23日下午3 已知x1、x2为方程xˆ2+3x+1=0的两实根,求代数式x1ˆ3+8x2 20的值 设x1,x2是方程3x方-5x-7=0的两根.求(1)x1方+x2方=?(2)1/x1+1/x2=?(3)X2/X1+X1/X2=? 已知函数f(x)=log2(2^x+1),g(x)=log2(2^x-1),若关于x的函数F(x)=g(x)-f(x)-m在[1,2]上有零点,求m范围 已知函数f(x)=3x的平方—x的2次方,求方程f(x)=0在区间【-1,0】上实根的个数已知函数f(x)=3的x次方—x的2次方,求方程f(x)=0在区间【-1,0】上实根的个数 设方程3x²-5x-7=0的两根,分别为x1,x2,求一.(x1-x2) 二.(x1-2)(x2-2) 若关于x的方程根号下1-x^2=log2(x-a)有正数解,则实数a的取值范围 已知函数f(x)=3x次方+3x-8,用二分法求方程3x次方+3x-8=0在x∈(1,3)内近似解的过程中,取区间中点x0=2那么下一个有根区间为() 已知,方程3x²-5x-7=0的两个根为x1、x2(韦达定理)求|x1-x2|根据韦达定理x1+x2=-b/ax1x2=c/a 关于X的方程根号下1-X^2=x+a在区间[1,1]上有解,则实数a的取值范围是 f(x)=三分之一x三次方+x方-3x,一、求图像在原点处的切线方程 二、求函数的单调区间 已知方程-x2+3x-m=3-x在x∈(0,3)内有唯一解,求实数m的取值范围 使得方程根号(16-x^2)-x-m=0有实数解,则实数m的取值范围?答案是4≤m≤4根号2.这个好像要画图!麻烦给个图解, 已知函数f(x)=2x的三次方-3x的平方+3 若关于x的方程f(x)+m=0有三个不同的实根,求实数m的取值范围 若正数a为方程3x^2-5x+3=0的两个根x1,x2的比例中项,求a(我觉得3x^2-5x+3=0这个方程无解) 已知全集U=R A={x f(x)=根号(X-1)(X-2)} B={x log2(X-a) 已知函数f(x)=2/3x三次方-2x二次方-6x+1.求:曲线f(x)在x=0处的方程.求函数在区间〔-3,1〕上的最大...已知函数f(x)=2/3x三次方-2x二次方-6x+1.求:曲线f(x)在x=0处的方程.求函数在区间〔-3,1〕上的最大 设集合A={x1,x2,x3}={x|x^3=1,x∈C},则集合B={x1x2,x1x3,x2x3}(x1,x2,x3∈A)与A的关系是 已知函数f(x)=log2(x^2-ax-a)在区间(-∞ ,1减根号3]是单调递减函数.求实数a的取值范围 已知x1,x2为方程x²+3x+1=0的两实根,则x1的三次方+8x2+20=__________________. 已知5a的y+5次方b的3x次方,与-4a的2x次方b的2-4y次方是同类项,则x= y= 已知a>0a≠1,试求使方程log2(x-ka)=log2根号下(x^2-a^2)有解的k的取值范围希望得到图象法的解释,谢 x1、x2是方程3x平方+4x-7=0的两个根,利用根与系数的关系,求下列格式的值(1).x2 x1 ( 2).(x1-2)(x2-2) (3).x1-x2__ + __ x1 x2 已知2a的y+5次方b的3x次方与2分之5a的2x次方b的2-4y次方是同类项则x=【】,y=【】 若log2(2-a)/根号(a-1)有意义,则a的取值范围 设x1、x2是方程是2x^2+4x-3=0的两个根,利用根与系数的关系,求下列各式的值:1、(x1+1)(x2+1) 2、x1^2x2+x1x2^2 3、x2/x1+x1/x2 4、(x1-x2)^2 已知关于x的方程2x^2+(log2m)x+log2根号m=0,有两个相等的实数根,求m的值 设关于方程4^x-2^x+1-b=0,若方程有实数解,求实数b的取值范围 1方程x^2+2x+1=0的根为X1= X2= X1+X2= X1X2= 方程x^2-3x-1=0的根为X1= X2= X1+X2= X1X2= 方程3x^2+4x-7=0的根为X1= X2= X1+X2= X1X2=由上述的你能得出什么猜想 你能证明你的猜想吗? 若方程(1/2)^x=log2(X)的解为x1,方程(1/2)^x=log1/2X的解为x2,则x1x2的取值范围为若方程(1/2)的x次方=log以2为底x的对数的解为X1,若方程(1/2)的x次方=log以1/2为底X的对数的解为x2,则x1.x2的取值范围是什么 方程根号下(4-x^2)=lgx的根的个数是请把步骤写得清楚点,谢谢 (1)方程x²+2x+1=0的根为x1= x2= x1+x2= x1x2= (2)方程x^2-3x-1=0的根为X1= X2= X1+X2= X1X2=(3)方程3x^2+4x-7=0X1=的根为X1= X2= X1+X2= X1X2= 由上述的你能得出什么猜想 ?你能证明你的猜想吗? 主 若x1,x2为方程【2的x次方=(1/2)的-1/x+1次方】的两个实数解,则x1+x2= 方程根号下4-x^2=lg x的根的个数4-x^2都在根号里
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn