存档

2009年2月26日 的存档

在Berkeley DB Java版中实现SQL查询

2009年2月26日 chaohuang 13 条评论

前言

众所周知,Berkeley DB 产品家族(包括了 C语言版,Java版和XML数据库)是一套高效率的,可扩展的嵌入式数据库引擎。此处,所谓数据库引擎是指它提供了除SQL处理层以外的所有关系数据库的功能(如事务性(ACID)支持,数据存储,数据恢复等)。那么,您不禁要问,为什么Berkeley DB产品不提供对SQL的支持呢?答案很简单,它可以嵌入到您的应用代码中,在应用代码的地址空间运行,从而达到高效率。

到底有多高效?

在我自己的DELL OptiPlex 745 台式机上(Intel(R) Core(TM)2 CPU 6400, 2G memory, running Ubuntu 7.04 Server x86_64),用自己写的一个单线程的例子程序在9秒内读取了100万条记录,22秒内插入100万的记录。

从关系表的角度看,我插入数据的行定义,大致如下:

f0      INT PRIMARY KEY,
f1      STRING PRIMARY KEY,
id      LONG,
one     STRING,
two     DOUBLE,
three   STRING,
zip     INT,
city    STRING,
state   STRING

在Berkeley DB Java 版中的定义如下:
阅读全文…

Berkeley DB示例程序详解 (1)

2009年2月26日 davidzhao 9 条评论

本文通过分析Berkeley DB自带的示例程序来详细阐述了使用Berkeley Db基本功能的方法。这之后还将有更多这类文章,我认为通过学习好的例子和已有代码来学习使用berkeley db是很有效的。

阅读全文…

Դ