fastdb java_FastDB应用开发指南.pdf

FastDB是一个高效率的内存数据库系统,专注于读取访问模式,提供C++接口,支持事务、在线备份和恢复。其查询语言类似SQL但更面向对象,不支持连接和嵌套子查询,适用于内存中数据处理,但也适配大于内存大小的数据库,但性能会受影响。FastDB利用原子指令处理并发访问,使用应用程序类信息构建表,简化数据库设计。
摘要由CSDN通过智能技术生成

您所在位置:网站首页 > 海量文档

&nbsp>&nbsp计算机&nbsp>&nbsp数据库

a476e75ce57e4882405abe7b4456fc6b.gif

FastDB应用开发指南.pdf15页

本文档一共被下载:2377011b61454b208b34ad77b4c31088.gif次,您可全文免费在线阅读后下载本文档。

072ad097814a33d1ad18e33ca14a5a9e.png

9ec2792a743ebdf4575ee09a03c275ea.png

7af312d1be2cfc1e59f15880bb7a7e7a.png

5f207613e329ca76dc87c76d3ff77e64.png

adf7aa3071c520b8a2063089f549261c.png

下载提示

1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

2.该文档所得收入(下载+内容+预览三)归上传者、原创者。

3.登录后可充值,立即自动返金币,充值渠道很便利

FastDB 应用开发指南(一)

FastDB 是一个高效率的内存数据库系统,具有实时性能和方便的 C++ 接口。

FastDB 并不支持客户端/服务器结构,所有使用 FastDB 数据库的应用程序都必

须运行在同一台主机上。

FastDB 为具有主导读取访问模式的应用程序作了优化。

通过消除数据传输的开销和使用高性能的锁工具实现了查询执行的高速度。

数据库文件和使用该数据库的每一个应用程序占用的虚拟内存空间相映射。

所以查询在应用程序的任务中执行,不需要进行任务切换和数据传输。

在 FastDB 中,通过原子指令来实现对数据库并发访问的同步,对查询处理几乎

不增加任 何开销。

FastDB 假设整个数据库都在当前内存中,并且在这个假设的基础上优化查询算

法和结构。

另外,数据库缓存管理几乎不会给 FastDB 增加任何开销,同时 FastDB 也不需

要在数据库文件和缓冲池中进行数据传送。

这就是为什么 FastDB 比将所有数据放在缓冲池中的传统数据库明显速度快的原

因。

FastDB 支持事务、在线备份和系统崩溃之后的自动恢复。

事务提交协议基于一个影子根页算法,对数据库执行原子更新操作。

恢复操作执行起来非常快,给关键应用程序提供了高效率。

另外,它还取消了事务日志,提高了系统的整体性能,并且能够更加有效地使用

系统资源。

FastDB 是面向应用程序的数据库,使用应用程序的类信息来构建数据库的表。

FastDB 支持自动系统赋值,只允许你在一个地方——你的应用程序的类中,改

变它们的值。

FastDB 为从数据库中提取数据提供了一个灵活而方便的接口。

使用类似于 SQL 的语言来书写查询语句。

这些非原子字段、嵌套数组、用户自定义类型和方法、直接指向对象内部的指针

等后关系性能,简化了数据库应用程序的设计,并且使得它们更加高效。

虽然 FastDB 的优化是基于整个数据库都存放在机器的物理内存的这个假设上

的,我们依然可以将 FastDB 使用在那些大小超过系统物理内存的数据库上。

最后,标准操作系统的交换机制将会起作用。

但是所有的 FastDB 的算法和结构的优化都是基于数据存放在内存中这个假设

上的,所以数据交换的效率不会很高。

查询语言 FastDB 支持一种语法和 SQL 非常类似的查询语言。

FastDB 使用的符号更加流行于面向对象的编程中,而不是面向关系型数据库的

编程中。

将表行看作是对象的实例,表是这些对象的类。

跟 SQL 不一样,FastDB 是面向对象的,而并不跟 SQL 一样是工作在一张二维表

上的。

所以每一个查询的执行结果就是一个类的一组对象。

FastDB 查询语言和标准的 SQL 的主要区别如下:

1、 在多张表之间没有连接,也没有嵌套的子查询。

通常,查询是从一张表中返回一个对象集。

2、 表的最小的列单元是标准的 C 类型。

3、 FastDB 只有空指针,而没有 NULL 值。

我完全同意 C.J Date 关于三值逻辑的评论,也赞同他使用默认值的建议。

4、 结构和数组可以用作记录成员。

提供了一个特定的 exists 引用来定位数组中的元素,

5、 不仅可以用无参用户方法来定义记录成员,也可以用它来定义 表记录(对

象)。

6、 应用程序可以定义仅带一个简单字符型或数值型参数的用户函数。

7、 支持对象之间的指针,并且自动支持反向指针。

8、 start from follow by 的构造函数,实现了指针在递归记录之间的移动。

9、 由于查询语言和 C++类结合得比较紧密,关键字和语言的标识符都区分大小

写。

10、 不能进行整型和符点类型到字符串类型的隐式转换。

如果需要进行这种转换的话,必须显式地进行。

文章出处:飞诺网

():/course/7_databases/database_ot

her/2007106/77043.html

FastDB 不同访问模式带来的影响

本文原创作品,如需转载请注明来源,作者:姜涛, towerjt@

FastDB 中不同的访问 DataBase 的模式在程序中能体现不一样的结果。

从试验可以知道,不同访问模式主要体现在对表的锁上。

(具体的试验,大家如果觉得有必要,可以自己做一下,用

subsql -access [read-only concurrent-read concurrent-update normal]

可以指定访问数据的模式,然后自己构建相关测试用例进行测试

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名:

验证码:

c9f2bced460b0329ba0aadbbc3f0fc71.png

匿名?

发表评论

概述FastDB是一个高效率的内存数据库系统,具有实时性能和方便的C++接口。 FastDB并不支持客户端/服务器结构,所有使用FastDB数据库的应用程序都必须运行在同一台主机上。FastDB为具有主导读取访问模式的应用程序作了优化。通过消除数据传输的开销和使用高性能的锁工具实现了查询执行的高速度。数据库文件和使用该数据库的每一个应用程序占用的虚拟内存空间相映射。所以查询在应用程序的任务中执行,不需要进行任务切换和数据传输。在FastDB中,通过原子指令来实现对数据库并发访问的同步,对查询处理几乎不增加任何开销。FastDB假设整个数据库都在当前内存中,并且在这个假设的基础上优化查询算法和结构。另外,数据库缓存管理几乎不会给FastDB增加任何开销,同时FastDB也不需要在数据库文件和缓冲池中进行数据传送。这就是为什么FastDB比将所有数据放在缓冲池中的传统数据库明显速度快的原因。   FastDB支持事务、在线备份和系统崩溃之后的自动恢复。事务提交协议基于一个影子根页算法,对数据库执行原子更新操作。恢复操作执行起来非常快,给关键应用程序提供了高效率。另外,它还取消了事务日志,提高了系统的整体性能,并且能够更加有效地使用系统资源。   FastDB是面向应用程序的数据库,使用应用程序的类信息来构建数据库的表。FastDB支持自动系统赋值,只允许你在一个地方——你的应用程序的类中,改变它们的值。FastDB为从数据库中提取数据提供了一个灵活而方便的接口。使用类似于SQL的语言来书写查询语句。这些非原子字段、嵌套数组、用户自定义类型和方法、直接指向对象内部的指针等后关系性能,简化了数据库应用程序的设计,并且使得它们更加高效。   虽然FastDB的优化是基于整个数据库都存放在机器的物理内存的这个假设上的,我们依然可以将FastDB使用在那些大小超过系统物理内存的数据库上。最后,标准操作系统的交换机制将会起作用。但是所有的FastDB的算法和结构的优化都是基于数据存放在内存中这个假设上的,所以数据交换的效率不会很高。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值