GBase 8t的NoSQL功能是通过JSON 有线侦听器(JSON Wire Listener)来实现的。NoSQL的请求和保持通过有线侦听器使用JDBC连接到GBase 8t数据库。以下示例中我们使用Mongo Shell作为NoSQL连接到GBase 8t数据库的客户端工具。
有线侦听器使 GBase 8t/Informix 用户能够利用 MongoDB 社区驱动程序在 GBase 8t/Informix中原生地存储和查询 JSON 数据,进而将 GBase 8t/Informix用作 JSON 文档存储。
有线侦听器是一个服务器应用程序,它接受和处理 MongoDB 有线协议。它利用一个 GBase 8t/Informix JSON API 来处理、存储并从GBase 8t/Informix中检索 BSON 文档。下图显示了使用 MongoDB API 和 GBase 8t/Informix开发的应用程序之间的通信。
Informix历史【转贴】
1980
在一家早期的S-100/CP/M公司Cromemco工作的Roger Sippl和Laura King开发了一个基于ISAM技术的小型的关系数据库,作为一个报表记录器软件的一部分。
1980年,Sippl和King离开Cromemco去开发关系数据库系统(RDS)。他们的第一个产品叫做马拉松(Marathon),本质上是一个他们以前那个ISAM作品的16位版本,并且在Onyx操作系统上发布,这种Onyx操作系统是一个为早期的ZiLOG微处理器开发的Unix操作系统。
Informix Server System Requirements
See Link:
http://www-01.ibm.com/support/docview.wss?uid=swg27013343
评论:
殷仔学 2018-08-30 17:06
informix10对应的4.1版本的jdbc驱动包邮吗,可以给我一个吗,谢谢了
暗夜星空 2018-09-05 13:36
@殷仔学:informix对应的jdbc版本是3.0.
informix JDBC对应java运行环境版本
客户使用informix(gbase 8t)数据库时,使用JDBC方式访问数据库,通用会碰到版本对应关系的问题,以下是4.10版本和jre的对应关系:
4.10JC1-4.10JC3 支持使用JRE1.5及以后,支持数据库10.00,11.10,11.50,11.70及12.10
4.10JC4-4.10JC5 支持使用JRE1.6及以后,支持数据库11.50,11.70及12.10
4.10JC6及以后 支持使用JRE1.7及以后,支持数据库11.50,11.70及12.10
informix(gbase 8t)内部用户使用示例
informix从11.70开始支持内部用户,以下以gbase8t(informix 12.10)为例示范如何使用内部用户(mapping user)
1,配置allowed.surrogates
在/etc/informix目录(如没有,使用root用户创建)下创建allowed.surrogates配置文件,内容如下:
USERS:daemon
Informix与db2排序时null值处理
客户的数据库从db2迁移到gbase 8t/informix,在测试存储过程中,发现存储过程能正常执行,但结果却是不正确的。
按存储过程中的SQL语句逐条执行对比,发现在使用到
SELECT ROW_NUMBER()OVER(PARTITION BY FID ORDER BY MID) AS PX,MID,FID FROM FTAB
时,结果出现不一致。
Informix使用Java UDR的方法
操作系统:RHEL 6U4 64bit
数据库版本:Informix 12.10.FC6X5
Informix数据库支持C和JAVA写的用户自定义例程(UDR),以扩展用户对数据库的操作的功能。以下简单示例创建Java UDR的方法。
关于informix的offset含义
在创建dbspace中,-o 参数指定的是chunk相对于设备的开始的offset,其单位是KB。
当-o 0 时,表示从设备的开始位置初始化设备;
当-o 不为0时,需要考虑-k 参数的影响:
当-k 不指定(使用默认值时),在onstat -d 的输出中,offset的显示的是页数(需-o的值除于页大小)
当-k 指定时,如页大小为2KB,-k指定为4,即页大小为8KB,此时在onstat -d的输出中,offset页的是基础页大小(默认大小)的页数(-o的值除于基础页大小)。
总的来说,offset只跟基础页大小相关!
对于页大小的统计,在一些系统表中也是使用基础页大小。谨记!
PHP随机显示图片示例
用于随机显示图片的PHP代码,可自行改编成函数。
Informix删除记录的过程(delete row)
数据库版本:12.10.FC6X5
操作系统:RHEL 6U4 64bit
目的:通过onlog命令熟悉删除记录时的数据库内部操作过程
执行delete操作更新记录
[informix@rhel6u4 temp]$ dbaccess testdb -
Database selected.
> delete from ttt where col1 = 1;
1 row(s) deleted.
然后通过onlog -n <逻辑日志编号> 的输出,可知数据库内部需要完成如下操作:
1、开始事务
BEGIN(begin work):包含事务号、开始时间、用户;
2、从表中删除记录
HDELETE(Delete home row):
3、从blob页中删除text
PBDELETE(Delete tblspace blobpage):
4、从索引中删除记录
DELITEM(Delete item from index):
5、完成操作,提交
COMMIT(commit work): 包含提交时间。