设为首页 加入收藏

TOP

Sybase IQ体系结构(一)
2014-11-23 22:54:21 来源: 作者: 【 】 浏览:14
Tags:Sybase 体系结构

1. SybaseIQ体系结构 SybaseIQ数据库包括服务器进程、数据库空间和服务器文件,其中数据库空间指:元数据存储catalog store,IQ主数据存储iq store,临时数据存储temporary store。如下图所示。

1.1.
数据库服务器 Sybase IQ 数据库服务器(Server)是运行在一台主机上的操作系统进程,是 Sybase IQ 数据库系统的核心,用户连接到Sybase IQ服务器访问Sybase IQ 数据库中的数据。单台的硬件服务器下,SybaseIQ采用“一个服务器一个数据库”的架构,在Multiplex架构下,属于“多个服务器一个数据库”。一台硬件服务器可以安装多个SybaseIQ数据库,不推荐在一个服务器上安装多个数据库。
1.1.1.
Sybase ASA和SybaseIQ Sybase ASA (Adaptive Server Anywhere)是独立于SybaseIQ的另一个按行存储的关系型数据库,是Sybase信息移动解决方案的一个核心产品,主要用于移动设备数据库,属于小型数据库产品。SybaseIQ的数据库元数据管理采用了ASA引擎,Sybase ASA负责SybaseIQ的元数据的存储管理,数据库连接调度库,查询解析,系统安全和组件集成服务(Component Integration Services)。基于SybaseIQ的程序开发与基于Sybase ASA的程序类似。
1.1.2.
CIS用户接口 基于Sybase数据库产品直接的数据库互连访问,可以通过其产品内嵌的CIS功能实现,不需要额外产品支持,通过Open Client方式实现远程数据库的数据加载和isql方式的数据库访问,需要配置open client接口文件。UNIX和Linux方式文件存放在用户的主目录,文件名为interfaces,Windows下文件名为sql.ini。以下文件是一个CIS接口配置文件样板,配置了两个服务器,其中服务器asiqdemo,IP为158.77.123.168端口为2638 ;服务器test,IP为158.77.123.244端口为2688:

[asiqdemo]
master=TCP,158.77.123.168,2638
query=TCP,158.77.123.168,2638

[test]
master=TCP,158.77.123.244,2688
query=TCP,158.77.123.244,2688
1.2.
数据库构成 1.2.1.
数据库空间 SybaseIQ以数据库空间方式将应用级别在多个磁盘上分布式存储用户数据,一个数据库空间可能是一个操作系统文件或者一个磁盘的原始分区。数据库空间中同时存储用户数据或者用于用户启动、恢复、备份和事务管理的内部数据结构。
SybaseIQ数据库建立成功后,将缺省建立如下几个数据库文件
<数据库名>.db是元数据库空间,包含描述数据库的系统表和存储过程,按照Sybase另一个数据库ASA标准描述,数据库空间名是SYSTEM。
<数据库名>.iq 是IQ存储,存储SybaseIQ的数据表和索引, IQ存储的第一个数据库空间名是IQ_SYSTEM_MAIN。
<数据库名>.iqtmp 是初始化的临时存储,包含查询生成的临时表,临时存储的第一个数据库空间名是IQ_SYSTEM_TEMP。
Multiplex架构的查询服务器上的用户还可以建立本地存储空间,它的用途与主数据存储类似,但是只能被建立它的查询服务器使用。用户可以在数据库建立期间建立所有的数据库空间,也可以在数据库建立后添加数据库空间。
其中元数据存储必须以文件形式存在,IQ存储、临时存储和本地存储可以是文件或者裸设备形式。
元数据存储
每个数据库对应一个元数据表空间,只能放在文件系统上,文件名形如“<数据库名>.db”,这个文件随数据库对象增加动态增长,包括所有需要管理的IQ 数据库信息,系统表元数据存储,系统和用户的存储过程。元数据空间的逻辑名是 SYSTEM。
元数据存储采用Sybase按行存储的数据库Sybase ASA,其数据库页面通常是4K (4096 byte),其页面大小在建立数据库时指定。
通常元数据存储中包括如下系统表,完整的系统表列表可以参考SybaseIQ的产品手册:
SYSIQCOLUMN:数据库中的所有表和视图的字段信息;
SYSIQFILE:数据库操作系统文件列表;
SYSIQINDEX:数据库的索引信息;
SYSIQTABLE:数据库中的所有表和视图信息;
这些系统表数据可以通过
DBISQL客户端或者 Sybase Central浏览。
IQ存储
SybaseIQ的数据以压缩的索引方式存储在磁盘上的数据 ,也包括SybaseIQ的事务日志,采用(free list)方式管理分配空间,free list指明已经分配给IQ存储的磁盘页面。IQ存储是一种预分配的空间,它也可以通过预先计划的形式进行空间扩充。当数据库首次建立时,将建立一个数据库空间。每个数据库只有一个IQ存储(IQ STORE),但是可以包括多个数据库空间(dbspaces),数据库空间可以是裸设备或者文件系统,IQ存储的第一个数据库空间逻辑名称为 IQ_SYSTEM_MAIN。
在规划数据库空间时,IQ存储的总空间可以按照源数据的75%规划。其数据存储的空间耗费与数据类型、数据重复值,以及IQ索引的类型和数量有关。
多个IQ存储的数据库空间,会提升系统性能,IQ存储数据库空间的个数与CPU有关,一般要求 3+CPU数量(内核个数)/10,对于Multiplex环境CPU数量是指所有服务器的CPU数量的总和。IQ存储的数据库空间可以在系统运行后,由具有DBA权限的用户添加,对于单点的SybaseIQ可以采用命令行方式或者Sybase Central方式添加,对于Multiplex方式的SybaseIQ,必须通过Sybase Central方式添加。
IQ存储的数据库层面的空间分配按照IQ页面分配,IQ页面大小在数据库建立时由用户通过建立数据库的语句指定。数据库建立后,其IQ页面大小不允许修改。IQ页面大小可以是64KB,128KB,256KB或者512KB。
推荐的IQ PAGE SIZE大小是数据库中最大表宽的两倍。数据必须是2的倍数,数据从65536到524288。
64KB (IQ PAGE SIZE 65536):最大表的记录数10亿条,单个表大小大小不超过8TB。 对应32位系统64KB IQ page size性能最好。
128KB (IQ PAGE SIZE 131072)对于64-位平台的数据库最大表记录条数超过10亿条记录不超过40亿条记录,单表大小可超过8TB 。128KB 是缺省的IQ page size。
256KB (IQ PAGE SIZE 262144) 对于64-位平台的数据库最大表记录条数超过40亿条记录,单表大小可超过8TB 。
临时存储
在数据加载和数据查询时需要使用临时存储。在数据加载和数据删除时,临时存储用来建立和修改字段上的HG索引和优化的FP索引。数据查询时,临时存储用来进行数据排序,以及分组和表连接处理。数据库建立时,会建立一个初始化的临时存储的数据库空间,临时存储的第一个数据库空间的逻辑名是IQ_SYSTEM_

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇sybase12.5在windows上安装指南 下一篇SybaseIQ的备份与恢复

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: