分享
 
 
 

SAS9 技术 --SPD引擎

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

简介:SPD引擎

SPD(Scalable Performance Data )是设计用于高性能数据传送,它之所以能达到快速的数据传送是由于按特定的格式组织数据,以最大限度的利用多CPU实现并行输入/输出功能

SPD引擎使用多线程并行的快速读取数据,但相应的OS必须支持容许线程执行在现有的任意CPU上,虽然该功能是SPDE最重要的功能,但这种功能的是来自于SAS的数据存储的结构组织方面的支持,这种数据组织方式容许多线程、并行处理I/0任务的能力

然它是不能替代缺省的SAS BASE引擎的,SPDE为大数据量的高速处理提供了一种选择,特别是在读写数百万记录的时候,并且还有某些OS是不容许大于2GB的文件存在,其主要表现在以下方面:

支持上GB的数据

在多CPU机器上具有可量测性

并行WHERE处理

并行装载

并行INDEX创建

并行数据传送

固有的排序在BY时

SPDE可运行于UNIX 、WINDOWS、z/oS(只在ZFS文件系统上) 和OpenVMS Alpha(只在 ODS-5文件系统上)上

利用SMP(symmetric multiprocessing)机器

SPDE技术是充分建立在SMP机器上的,一个SMP机器有多个CPU且OS支持线程,一般来说,它具有多个控制器和多个磁盘设备,每个磁盘设备对应一个控制器,当SPDE读数据是,它运行一个或多个线程在每一个CPU上,这些线程并行的从多个磁盘设备上读取数据,这种读取很有可能是通过多CPU操控的

例如:一个完美的系统,其有5个CPU和10个磁盘设备,在进行数据读取时要比单CPU机器会快上5倍以上,除了多线程I/0外,SMP机器还能支持多线程应用,如SORT过程

如何利用SPDE组织SAS数据

因为SPDE是为高性能数据处理,故数据集的物理存储上是跟BASE SAS的的数据存储是不同的,后者是用单一文件存储数据集,其包含了数据和数据的相关描述信息,而SPDE是采用了分开的文件用来存储数据和数据描述信息,另外,如果数据集是被索引,则将会为每一个索引产生2个INDEX文件,这4种文件类型可被称为SPDE组件文件,每一种类型的文件都有它自己的文件扩展名

另外,每一个组件文件可以一个或多个物理文件组成,故它可以跨越多个卷但在引用时是作为一个逻辑文件,例如:SPDE能建立许多物理文件,但引用时可以当作一个单一的文件

描述性数据组件跟实际数据组件是不同的,表现在以下2方面:

1。你能为实际数据组件指定一个固定长度的分区尺寸,用PARTSIZE选项指定,然而,你是不能控制描述性数据组件的分区尺寸的

2。数据组件文件可以建立在不同的路径上,但描述性数据只能建立在一个单一路径下,直到路径的存储空间已满,才会使用下一个路径

元数据组件文件

其扩展名为.MDF,通常一个SPDE数据集只有一个MDF文件

索引组件文件

如果一个文件被索引,SPDE将会产生2个索引组件文件为每一个索引,HBX扩展名的文件包含了全局的索引,而.IDX文件则包含了分段的索引

数据组件文件

一个数据组件文件可被几个或多个文件组成,胜于单一一个文件,每一个文件的是固定长度的,这个长度在建立数据集时指定

特别的,分区尺寸的大小会影响你应用的执行性能,因为每一个文件是被一个线程读的

比较BASE SAS 引擎和SPD引擎

2者有很多相同处,2者都是用SAS 数据库存储数据;SAS库是一个包含多个文件和目录的东西,然而,SPDE库下的东西能存在在不同路径下,你可已在使用LIBNAME句法是指定一些数据存储的细节

一个SPDE库包含数据文件,元数据文件,索引文件,

注意的是SPDE库是不支持目录,视图,MDDB或者其他文件的

SPDE文件操作空间

SPDE文件操作空间是用于SPDE操作时所需要的额外的空间,如没有指定会使用缺省的,但当你操作大数据量的数据时,可能缺省的空间不足够大,因此,你可以用SPDEUTILLOC选项来指定SPDE文件操作空间

临时数据集存储

通过TEMP选项指定,如下

libname user spde '/mydata' temp=yes;

data a; x=1;

run;

proc print data=a;

(注:USER选项的使用使得在引用时只需使用一级名字)

2者的其他异同处

【Feature】 【SPD Engine】 【Base SAS Engine 】

分区数据集 YES NO

并行WHERE优化 YES NO

最低锁定级别 成员级别 记录级别

不同请求同时访问给出的数据集 只读 读写

支持SAS/SHARE NO YES

SAS BY时自动排序 YES NO

目录支持 NO YES

视图支持 NO YES

MDDB支持 NO YES

完整性约束 NO YES

变量数 多于32767

记录数 2的63次方-1 2的32次方-1(32位机器上)

2种引擎下数据集的互用

BSE数据集必须转化为SPDE数据集才能被SPDE访问,你可已很容易的使用COPY、APPEND过程或数据步(PROC MIGRATE除外)

另外,你已存在的SAS程序可以很好的运行在SPDE引擎下,只需做很小的修改,除了LIBNAME句法

共用SPDE文件

SPDE支持成员级的锁定,意思时多个用户可以同时读同一个SPDE数据集,然而当一个数据集在被更新时,其他用户只能访问它,如果你想支持读写,那么你需要SPD 服务器产品

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有