Lealone学习(一):简介和QuickStart

Lealone是什么?(发音:把萝莉倒过来念,莉萝)

引用官方描述:
Lealone是一个兼具RDBMS、NoSQL优点的面向OLTP场景的分布式关系数据库。

官方地址:https://github.com/lealone/Lealone。

具有以下特点:

开源版本(不支持分布式)

完全异步化,使用少量线程就能处理大量并发
基于SQL优先级的抢占式调度,慢查询不会长期霸占CPU
创建JDBC连接非常快速,占用资源少,不再需要JDBC连接池
插件化存储引擎架构,内置MVStore存储引擎
插件化事务引擎架构,事务处理逻辑与存储分离
支持索引、视图、Join、子查询、触发器、自定义函数、Order By、Group By、聚合
从H2数据库借鉴了大量成熟的代码和思想

从源代码里盗来一张架构图,先看下它的设计(其中Pluggable部分都是可扩展的):

架构图

企业版本(支持分布式)

内置AOSE自适应优化存储引擎(Adaptive Optimization Storage Engine)
高性能分布式事务,使用一种非常新颖的基于局部时间戳的多版本冲突与有效性检测的分布式事务模型
支持全局快照隔离
支持强一致性复制
支持自动化分片(Sharding),用户不需要关心任何分片的规则,没有热点,能够进行范围查询

Lealone是纯java编写,基于Vertx,而Vertx又是基于Netty写的。

Vertx是个啥?
Vertx是基于JVM(没错,就是java虚拟机)的、做企业级开发的平台框架。通俗点说,传统SSH能做的事情,它也能做,性能方面比SSH更出色。官网地址:http://vertx.io/。这里暂时就先不说它了,以后也会写关于Vertx的博客。

源代码当到本地后,在Docs目录里找到开发文档,按照开发文档描述,启动lealone-test子工程中的org.lealone.test.start.TcpServerStart类,这样,Lealone数据库在本地就启起来了,另外lealone-test子工程里有各种测试用例,这些测试用例都是很好的QuickStart,能够直接运行。

此条目发表在数据库分类目录,贴了, 标签。将固定链接加入收藏夹。