WEB开发网
开发学院数据库Sybase Sybase下的数据分片技术 阅读

Sybase下的数据分片技术

 2005-11-28 21:41:07 来源:WEB开发网   
核心提示:Sybase公司生产的DBMS主要包括: 1、Sybase Adaptive Server Enterprise 11.5 2、Sybase Adaptive Server Enterprise 11.9.2 3、Sybase Adaptive Server Anywhere 6.0 4、Sybase SQL Anyw
Sybase公司生产的DBMS主要包括: 1、Sybase Adaptive Server Enterprise 11.5 2、Sybase Adaptive Server Enterprise 11.9.2 3、Sybase Adaptive Server Anywhere 6.0 4、Sybase SQL Anywhere 5.x 这些产品的基本权限控制内核是一致的,但由于Sybase系列不支持动态视图,不支持用户自定义函数,因此,想通过动态视图实现权限分配是不可能的,只能人工加入控制,原理如下: 一、建立用户表、部门表 create table sys_user (suser_id varchar(8),suser_name varchar(20),...); create table sys_department(sdept_id varchar(8),sdept_name varchar(20),...); 二、在需要进行权限分配的表中加入特殊字段,用来表明此行数据属于哪个部门或哪个用户,如 客户信息: create table customer ( scustomer_id varchar(10), scustomer_name varchar(20), sdataowner varchar(20)...); 三、建立权限分配对照表,用来描述某用户可以操作的数据所属的部门或用户及相关权限 create sys_grant ( suser_id varchar(8), sdept_id varchar(8), sdataowner varchar20), scanInsert char(1) default Y, scandelete char(1) default Y, scanupdate char(1) default Y, ...); 四、建立或维护好以上基础表单后,在具体的操作上就可以实现了,如选择某用户可以操作的可户数据,则 SQL 语法可以写为: select a.* from customer a,sys_grant b where b.sdataowner = a.owner and b.suer_id = :as_user_id; 五、Pb中的实现: PB中实现可以通过对sys_grant的维护来定义某用户的具体可操作那些用户及部门的数据,可以定义在数据窗中,也可以通过一个公用底层函数来动态修改数据窗,即对开发而言是透明的,对用户是可控制的。若将来Sybase支持动态视图,则可以通过sp_process过程中定义相关信息(如保留当前登录用户信息)来实现动态视图,这样对于开发者而言,透明度就更高。 优点 1、可以实现网状数据分片,自由,灵活,对组织机构变化不敏感; 2、速度快,对巨量数据无明显影响; 缺点 1、技术实现复杂,需要程序支持; 2、应用外数据操作无法约束。

Tags:Sybase 数据 分片

编辑录入:coldstar [复制链接] [打 印]
赞助商链接