- 多用途
- 支持事务
- 嵌入式(no jni calls)
- 高效
有两种方式使用JE-API:
- high-level api 允许持久化java对象
- lower-level api 为和JE交互时,提供更多的灵活性。
JE 特性:
- large database support
- Databse evironments 提供了一个封装和管理一个或多个数据库,同时管理内部资源(如缓存大小、线程数),并且可以控制并发和事务。
- 支持多线程。JE支持多线程控制,使用记录级锁。
- 事务
- In-memory cache。提高读写速度、减少磁盘I/O。
- 索引。JE允许创建一个次级索引,提供另外的快速查找方式。
- Log files。在环境目录,JE存储了一个或多个以数字命名的日志文件。JE使用日志文件在修改数据库前,记录数据的所有操作到日志文件。
- Background threads。JE 提供多个管理内部资源的线程。checkpointer(将内存中的数据写到磁盘);compressor(删除由于删除操作而导致的空subtrees);cleaner(清除不需要的日志文件)
- 备份和恢复。