JE在使用DPL方式存储数据时必须有个唯一的主键,但是用使用Base APi时却没有这么严格。
其他的secondary key不必须是唯一。
- 使用java annotations标明一个类是实体类还是持久类。
- 实体类有一个主键和若干个
secondary key,将直接用DPL保存和获取的对象类,注释是@Entity。
- 持久化类,是被entity类使用,没有用来保存和查询的主键和
secondary key。持久化类只是在当实体类执行相关指令时才会被存储和获取。注释是@Persistent。
- 实体类的主键用@PrimaryKey标注。
- 所有的non-transient都会被持久化。静态和transient属性不会被持久化。
- 所有的java对象,如String、Date都是自动当做persistent
使用base api存储数据时key和value必须是byte array(二进制)。以DatabaseEntry实例方式存储和获取,DatabaseEntry只支持二进制数据。
当使用DPL时可以用@SecondaryKey注释来标注一个secondary key。同时得说明索引类型。ONE_TO_ONE、MANY_TO_ONE
当使用base api时secondary key是靠使用一个专门的数据库实现的---secondary databse。
分享到:
相关推荐
**Berkeley DB JE 7.0.6:深入理解分布式数据存储** Berkeley DB JE(Java Edition)是Oracle公司提供的一款开源、嵌入式、基于Java的键值对数据库系统。它以其轻量级、高性能和高可用性而受到广泛的青睐,尤其适合...
Berkeley DB 提供了灵活的数据存储方式,支持多种数据访问方法,包括 B-树、哈希表、队列和记录编号访问等。这些访问方法的选择取决于具体的应用场景需求。 - **B-树**:适用于需要频繁查询和更新的数据集。 - **...
Berkeley DB是一款由Oracle公司开发的嵌入式数据库系统,被广泛应用于许多软件项目中,尤其是在需要快速、轻量级数据存储解决方案的场景下。它提供了键值对存储模式,适用于构建高性能的数据缓存和数据库应用程序。...
对于初次接触Berkeley DB的开发者,"BerkeleyDB-Core-Cxx-GSG.pdf"这份文档是一个很好的起点。它详尽地介绍了如何在C++环境中配置、初始化Berkeley DB环境,以及如何使用C++接口进行数据操作。同时,它也涵盖了错误...
综上所述,"berkeley db je-6.4.9.gz"压缩包提供的BDB JE 6.4.9版本是一个强大且灵活的数据库解决方案,适用于多种需要高效、可靠数据存储的Java应用。开发者可以通过学习其API和特性,将其整合进自己的项目中,以...
在“BerkeleyDB概念”部分,文档会介绍Berkeley DB的基本概念,如BTree和Hash数据库的访问方式选择,以及Queue和Recno之间的选择。 接下来,教程会讨论数据库的限制与可移植性、环境设置、异常处理和错误返回。然后...
5. **多存储模型**:Berkeley DB支持多种数据存储模型,包括B树、哈希表和记录集等,这使得开发者可以根据具体需求选择最适合的数据组织方式。 6. **跨平台兼容性**:Berkeley DB可以在多种操作系统上运行,包括...
根据提供的文档信息,“BerkeleyDB-Core-JAVA-GSG.pdf”主要介绍了如何在Java环境中使用Berkeley DB。该文档强调了Berkeley DB作为一种文件类型数据库的优势,包括快速的存取速度和方便的操作特性。 #### 二、...
- **键值对(Key-Value Pair)**:BerkeleyDB的基础数据模型,每个记录由一个唯一的键和对应的数据值组成。 - **数据库环境(Database Environment)**:管理和协调数据库的操作,包括内存池管理、事务处理和锁管理...
**Berkeley DB (BDB)** 是一款开源的、嵌入式数据库系统,由...通过详读并实践“BerkeleyDB-Core-Cxx-GSG.pdf”中的内容,开发者将能够熟练地在C++项目中集成和使用Berkeley DB,从而实现高效、可靠的数据存储和管理。
BerkeleyDB 的设计理念是提供简单API、高效能和高度可移植性,这使得它成为许多软件项目首选的底层数据存储解决方案。 **嵌入式数据库** 指的是可以直接集成到应用程序中的数据库系统,无需独立的服务器进程。与...
BerkeleyDB 多库联合操作 (Secondary Databases) - **3.1 二级数据库介绍** - **概念解释**:二级数据库是对主数据库的一个索引,用于提高查询效率。 - **应用场景**:快速查找、数据统计等。 - **3.2 创建二级...
- **20.3 BerkeleyDB存储功能概述** - **存储引擎**:概述Berkeley DB提供的不同存储引擎及其特点。 - **20.4 BerkeleyDB的四种算法异同** - **算法比较**:对比Berkeley DB中几种主要存储算法的优缺点。 - **20.5...
Oracle Berkeley DB是一款专为需要高效且强大的嵌入式数据存储的应用程序设计的数据库引擎。Berkeley DB是一个完整的数据管理库,支持并发访问、ACID事务处理与恢复功能,并且具备容错性和高可用性复制能力。...
在Java-Edition-BerkeleyDB-3.1.0版本中,它提供了高效、可靠的数据存储解决方案,尤其适合于对性能有极高要求的嵌入式应用或分布式系统。该数据库系统以其轻量级、无服务器模式以及出色的并发控制而闻名。 **1. ...
**BerkeleyDB** 是一款强大的、高度可定制的嵌入式数据库系统,广泛应用于各种软件开发,尤其是在需要高效存储和检索数据的场景中。这款数据库系统由Oracle公司开发,最初在1990年由Sleepycat Software推出,因其...
BDB-HA 基于 Berkeley DB 事务数据存储(BDB-TDS)产品之上构建,后者是一个直接与应用程序链接的库,提供快速、可靠的键值数据存储服务。通过 BDB-TDS,应用程序可以创建索引数据库,支持哈希、B树或基于记录编号的...
在实际应用中,BerkeleyDB 4.8.30.NC被广泛应用于操作系统内核(如Linux的Key-Value Store)、邮件系统、网络设备配置存储、以及分布式系统中的数据存储等。它的高效和灵活使得开发者能够构建高性能、高可靠性的应用...
3. **使用BerkeleyDB**:Scrapy-Deltafetch会利用BerkeleyDB的API,将抓取到的URL和数据存储为键值对,便于后续判断新旧和更新内容。 通过以上内容,我们了解了BerkeleyDB的核心特性和安装过程,以及它在Scrapy-...