在多个节点上部署Oracle NoSQL数据库
1. 简介
Oracle NoSQL数据库是一款基于Berkeley DB Java Edition构建的,分布式的,跨数据中心的Key-Value数据库。它是一款高性能,和极短的响应时间(毫秒级)的云数据库方案。Oracle NoSQL数据库使客户能够轻松地管理大量的,动态模式 (dynamic schemas) 的数据,如Web日志数据,传感器和智能仪表的数据,用户个性化数据,和社交网络的数据。 Oracle NoSQL DB是采用Oracle Berkeley DB Java Edition做底层存储引擎,但我们在其之上添加了更多的基础架构层的功能,如: 数据分布 动态分区 负载平衡 监控和管理 可预见的延迟 多节点备份 举例来说,Oracle NoSQL DB是汽车的话,Oracle BDB则算汽车引擎。 Oracle NoSQL数据库会有商业版和社区版两个版本。当前发行的第一个版本中(v1.1.100),两者没有功能上的区别(商业版有Oracle的支持服务)。目前商业版本已经开放下载:http://t.cn/SvbsUm 它包括数据库产品本身的Java类库,第三方类库,示例代码,文档,启动脚本和基于Google GWT实现的管理功能。 阅读全文…
这是一篇译文,现在贴过来。原文见JE官网http://www.oracle.com/technetwork/database/berkeleydb/overview/index-093405.html的底部“Berkeley DB Java Edition High Availability”一栏。
概览
Oracle Berkeley DB Java版高可用性(JE HA)是一个支持replication特性的事务性数据管理系统。JE HA提供的高可用特性可以极大提升数据读操作的可扩展性(scalability)及其性能。
这份白皮书将详细介绍JE HA的关键概念和主要特性,从而让开发人员和应用软件设计者理解如何最好地利用JE HA解决软件开发中特有的数据管理问题。
本白皮书同时也讨论了软件架构师在设计基于JE HA的应用时,如何从技术的角度权衡各方面的性能与资源。
阅读全文…
这篇文章翻译了一个在JE OTN论坛关于如何实现分页的讨论。由于时间仓促,采用google翻译的内容可能比较晦涩,请谅解。英文原文见 http://forums.oracle.com/forums/thread.jspa?messageID=3197926.
1楼,用户Shoaib的提问:
有一点我注意到的是,在使用DPL我们无法得到ArrayList的代理实现,像Map和sorteMap。 假设,如果我想从索引第5000条记录位置获取到下50条记录,我会通过EntityCursor迭代器或key的Map遍历获取未来50个记录。
因此,当我们实现分页并一页一页进行页面遍历,这个过程中要消耗大量的CPU周期。 我可以使用EntityCursor跳转到记录号对应位置(而不通过主键)吗? 现在我不看任何这样的选项。 有没有使用DPL我们可以指定记录号而不是主键进行访问?
如果我这样做(如下),它将吃了整个内存,如果有百万条记录的话。
ArrayList list = new ArrayList(dao.getMyEntityByPK().map().values());
这将把所有实体值载入到内存的ArrayList。
阅读全文…
各位BDB中文博客的粉丝们,为了更好的和大家交互并分享BDB的消息,我们刚刚开通的新浪微博。微博地址为:
http://www.weibo.com/bdbchina
欢迎各位朋友添加关注并和我们分享信息。感谢大家的一直以来的支持。
备注: 由于工作比较忙(很少看博客评论),我们推荐大家使用新浪微博和我们互动,从而可以得到更及时、有效的反馈。
Oracle Berkeley DB 中国开发团队
这段时间看到有些用户对BDB JE的事务持久性(Durability),主要是JE各种事务提交方式比较感兴趣。以下这篇博客介绍了事务的持久性,并简要描述了JE事务所提供的提交方式。
大家知道,事务具有ACID特性,即:原子性,一致性,隔离性和持久性。事务的持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失,即一旦一个事务提交,数据库保证它对数据库中数据的改变是永久性的,能够承受任何系统故障,持久性通过数据库备份和恢复来保证。
事务的持久性与事务的提交方式有着密切联系,当JE的用户创建一个事务时,用户通过设置TransactionConfig来指定事务的提交方式,分别是:
- TransactionConfig.setNoSync(boolean),即txnNoSync
- TransactionConfig.setWriteNoSync(boolean),即txnWriteNoSync
- TransactionConfig.setSync(boolean),即txnSync。
阅读全文…
BDB Java Edition 4.1 delivers up to a 3X performance improvement over JE 4.0 in some read-only scenarios where the working set doesn’t fit in the cache. The new release includes multi-threaded cache management and advanced in-memory Internal Node compression.
With Concurrent Eviction, cache management is now multi-threaded, resulting in reduced latency and a smoother performance curve as the application data exceeds the cache space. Internal Node (IN) Compression significantly reduces the in-memory footprint of internal data structures, creating better efficiency.
Tests run by a BDB JE user comparing JE 4.0.103 to JE 4.1 using a read-only workload demonstrate extraordinary improvements. The two versions have equivalent performance when the database fits completely in cache (4 GB of memory), but when the cache size is dropped to .5 GB (only some of the Internal Nodes fit in memory) the throughput and latency of JE 4.1 is 300% better than 4.0.103. Further, the variation in latency is greatly reduced.
Software Downloads
* Downloads for software and the latest documentation will be available on OTN.
* Downloads available today at http://download.oracle.com/berkeley-db/je-4.1.6.tar.gz (.zip).
Oracle Berkeley DB最先由加州大学伯克利分校为了移除受到AT&T限制的dbm代码,而从BSD 4.3到4.4时所改写的。经过将近二十年的衍化,目前Oracle Berkeley DB家族已经发展到包含4个独立产品线 – Berkeley DB、Berkeley DB Java 版、Berkeley DB XML和Mobile Server,被应用到行行业业,在全球有超过2亿的部署。
本文将分别介绍Oracle Berkeley DB四大产品线的特点以及应用,希望能对中国市场的新老用户有所启发和帮助。
阅读全文…
关于使用Oracle Berkeley DB作为空间数据库的引擎,可以参考如下资料:
* 使用基于Key/Value 接口的场合,可以考虑Berkeley DB C版本或者Berkeley DB Java 版的产品。可以参考美国University of Virginia的叫做PRIDE的学术论文:http://www.cs.virginia.edu/~stankovic/psfiles/pride.pdf
* 使用Oracle Berkeley DB SQL产品中的R*Tree功能,具体可以参考:http://www.bdbchina.com/2010/04/bdb11gr2的r-tree功能/
更多反馈,欢迎留言。
自从BDB-JE 4.0推出了高可用/集群的新特性,我们的工程师进一步做了关于在大型服务器上运行BDB-JE HA的性能测试。具体测试案例及结果数据可参考:http://www.oracle.com/technology/products/berkeley-db/pdf/BDB-JE-HighAvailability-WhitePaper-June2010.pdf。
这篇白皮书可以作为BDB-JE HA性能的参考,也可以作为测试选型BDB-JE HA的依据。需要注意的是, 性能数据依赖于很多因素的影响,我们的测试结果仅作参考。
同时,你可能发现附件中涉及到的关于GC和JVM参数的调整,对于性能的巨大影响。
希望能对您有用。更多反馈,欢迎留言。
最近评论