




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Teradata结构概述 张晓军,Teradata结构,Teradata在整体上是按Shared Nothing架构体系进行组织的 单机Teradata很少见,即使是单机也被也是SMP结构,大多 是按多机系统的; 物理上Teradata包括3个部分: 处理节点(node)、用于节点间通信的内部高速互联(InterConnection)和数据存储介质(一般是磁盘阵列)。 每个节点都是SMP结构的单机,节点的物理和逻辑结构如图1所示:,Teradata结构,多个节点一起构成MPP系统,多个节点之间的内部高速互联时通过BYNET的硬件实现,单个节点结构,单个节点自下而上包括: 1、操作系统OS; 2
2、、Teradata数据库并行扩展(PDE)及相关应用程序; 其中PDE:parallel database extensions 管理和运行虚处理器:PE和AMPs,单个节点结构- PDE,PDE: 直接架构在操作系统上的接口层,为td提供并行环境,保证这个环境的可运行性和健壮性。 功能: 执行虚力处理器,进行Teradata并行任务调度、进行操作系统内核和td数据库的运行时故障处理。,单个节点结构- 虚拟处理器VPROC,虚拟处理器: VPROC,virtual processors,是一些列软件进程,这些进程驻留在节点上,依赖PDE环境调度。 功能:完成Teradata数据库的主要工作:
3、解析引擎; 存取模块处理器;,单个节点结构- 虚拟处理器VPROC,解析引擎: PE:parsing engine; teradata数据库应用程序的sql请求和存取模块处理器的通讯和交互。 功能:任务控制:session control; sql语句解析、优化、查询步骤的生成和分发; 并行化预处理和返回查询结果,一个节点上通常只有一个或2个PE在工作。,单个节点结构- 存取模块处理器AMP,存取模块处理器: AMP:Access Module Processor; teradata数据库关键进程,处理所有与数据有关的文件系统的操作任务。 一个节点有多个AMP,每个AMP分别负责文件系统上不同
4、的、固定的数据存取操作,单个节点结构- 虚拟磁盘VDISK,虚拟磁盘: VDISK:Virtual Disk; 纯粹的逻辑概念,不是软件结构的一部分; 典型的Teradata Mpp 系统的数据存储都是以磁盘阵列(Disk Arrays)的形式实现的,在物理上是一个个存放于标准磁盘的阵列柜中的磁盘阵列模块。 每个AMP在处理数据存储时,会根据一种哈希算法把不同的数据均匀的分散存储到磁盘阵列中的不同磁盘上。所以在逻辑上,就把磁盘阵列中不同磁盘上存储着的那些由同一个AMP负责存储和维护的数据合并在一起,好比在一个磁盘上,就是VDISK的概念。,单个节点结构- BYNET,BYNET: 在Terad
5、ata Mpp系统中,各个节点间(准确的说是各个AMP间)的内部高速互联时通过BYNET实现的,BYNET是Teradata系统内部松散耦合的节点之间的相互联系的通讯总线,实际上,远非如此简单。 BYNET是一组硬件和运行在这些硬件上的一些处理通讯任务的软件进程的组合体,用于节点间的双向广播(bidirectional broadcast)、多路传递(multicast)和点对点通信(point-to-point communication),同时,BYNET还实现SQL查询过程中的合并功能,Teradata结构补充说明,Teradata结构补充说明,1:Teradata系统的主要组件 2:表
6、和AMP 3:线性增长和扩充性 4 :Teradata的并发操作 5 :Teradata功能概述 6 :Teradata的内部对象,Teradata物理运行原理,Teradata物理运行实现原理,1:数据分布 2:哈希化 3:多列哈希化 4:主索引哈希映射 5:哈希图 6:主哈希图 7:数据分布-TeradataRDBMS for UNIX潜在问题 8:哈希关系表达式Hash-Related Expressions 9:哈希函数 10:不平均数据分布的影响,11:数据分布:另外的问题 12:歪斜的连接和聚类处理 13:重新配Reconfiguration 14:使用主索引 15:Row ID
7、16:定位行 17:表ID Table ID 18:Master Index Foramt 19:Master Index,Teradata物理运行实现原理,20:Cylinder Index设计规划 21:Cylinder Index 22:General Block Layout物理块设计 23:General Row Layout 24:AMP Read I/O 概要,Teradata常用名词解释,Teradata名词解释,DSS(Decision Support System):决策支持系统 SMP(Symmetric Multi Processing):包含一个节点,多个CPU一起工
8、作,单一操作系统。使用SystemConsole管理。 MPP(Massively Parallel Processing):包含多个节点,也就是多个SMP通过BYNET连接、协同工作。使用AWS(Administration Workstation)管理。 BYNET(Banyan Network):一系列软件和硬件的集成体,为节点之间提供高性能的网络。 PEs(Parsing Engines):接受来自Client的SQL请求,并将其拆分成具体的步骤,发送给AMP,最后将结果返回给Client. vprocs=Virtual Processors vdisk=Virtual Disk,是虚
9、拟的逻辑空间,由1-64个物理分区pdisk构成。 AMPs(Access Module Processors):接收来自PE的操作步骤,调用底层函数操作数据。每个AMP有自己的vdisk,只访问自己对应vdisk上的数据。 PDE(Parallel Database Extensions):运行在每个节点的操作系统之上的软件层,用于支持平行环境。 SystemBus,支持PCI和MCA两种总线模式,支持Lan、MainFrameChannel和Connections to the external disk array cabinets三种链接方式,个别型号还支持LPB(Local peri
10、pheral board)和Internal RAID disk arrays。,Teradata名词解释,Shared Nothing Architecture:一种分布式计算架构,每个组件间都是独立、自给自足的。 Cliques:基于同一个磁盘队列共享连接的一组节点,Cliques中的每个节点都会该磁盘队列进行连接,由于是多个节点处理相同的磁盘队列,从而具有很高的扩展性和灵活性。当一个阶段出现故障时,会自动将处理迁移到其他节点上,起到了容错,负载均衡,提高性能的作用。 TPA(Trusted Parallel Application):TeraDATA Database的组成部分,包含PE
11、、AMP、ChannelDriver和TeraDATA Gateway四部分。 CLIv2(Call Level Interface, Version 2):主要包含CLI(Call Level Interface),MTDB(Micro TeraDATA Director Program),MOSI(Micro Operating System Interface)三种组件。 User:是包含userid和密码的database,可以包含其他数据库对象。这与其他DB的定义稍有不同。 需要Perm Space的数据库对象:Table和StroagedProcedure。 不需要Perm Spa
12、ce的数据库对象:View,Trigger和Macro。 Spool Space:用于存放中间结果的空间,任何没有被分配的PermSpace都可以作为SpoolSpace。创建User或者Database时,可以不指定,则自动从parentDB继承过来。当parentDB也没有指定时,db访问会提示“runaway transaction”错误。 Data Dictionary:Database的元数据,用于描述该DB目前的PermSpace和SpoolSpace设置和状况、访问权限、所有关系以及所有DB对象的定义。,Teradata名词解释,RAID(Redundant Array of I
13、nspensive Disks):一直以来,只知道这个词是磁盘阵列,是一种磁盘级别的数据保护技术,却不知道他是英文缩写。包括6种级别,分别是 RAID0RAID5,这6个数字并不直接意味着优势的高低,仅仅是存储方式上的不同。目前,TeraDATA支持RAID1和RAID5。在EMC系统中,RAID 5也称作RAID S。包括3种组件:SCSI Bus、Disk Array Controllers和Physical Disks。基于性能考虑,TeraDATA采用了双重DiskArrayController机制,起到互为备份的作用。 RAID 0:这种方式比较好理解,就是单纯的备份,磁盘0出问题时
14、,就去读磁盘1. RAID 5:采用异或XOR计算的方式,因为XOR计算具有A XOR B XOR C = D - A = B XOR C XOR D - B = C XOR D XOR A .的特性。可以根据正常工作的磁盘上的数据,推算出出现问题的磁盘上的数据。 Fallback:是TeraDATA的一种处理AMP错误的机制,采用AMP集群的方式实现。将当前操作的每一行数据在同一集群中的另一个AMP上进行备份的方式,当该AMP出现问题时,自动访问备份的AMP来满足当前的请求。 缺点就是:要求的存储空间以及数据更新操作(INSERT、UPDATE、DELETE)的I/O读写的代价都要加倍。 优
15、点就是:RAID Disk基础之上的又一层保护,可以针对表进行指定,在AMP脱机时允许访问数据,以及在AMP脱机期间可以自动回复变更的数据。,Teradata名词解释,Journals:包括RecoveryJournals和PermanentJournals. Recovery Journals:系统自动维护的,不需要管理员参与,同时,日志的产生会占一定的表空间。包括: Transient Journal:日常的事务执行过程中,所有的反映的数据都被在TransientJournal中备份,当事务commit后,自动清除;当事务中断时,通过rollback可以恢复数据到修改前的状态,然后清除。
16、Down-AMP Recovery Journal:顾名思义,当AMP宕机时,为了replacement而备份数据使用的日志。 Permanent Journals:是一种可选的额外数据保护机制,以表为单位进行指定,可以对某个时间点进行整表恢复。同时,在此基础之上,可以设置Fallback保护。 Lock:包括Exclusive、Write、Read和Access四种,从范围上可分为DB层、表层和记录行层。 Exclusive:只能指定DB或者Table,限制级别做高的Lock,通常是在DDL执行的时候产生。 Write: Read: Access: Primary Index:包括Uniqu
17、e 和 Non-Unique两种。这不同于以往的PrimaryKey概念,特性: 每个表只能有一个PI PI的值可以唯一,也可以不唯一 PI不可以修改,如果要修改,必须先将表删掉,再重新创建,再导入数据 PI的值可以为null,Unique场合,只能有1条记录为null,否则必须是Non-Unique PI的值可以修改 PI定义最多不能超过64个字段 SQL: CREATE TABLE XXX (.) UNIQUE PRIMARY INDEX (.); 注:根据PI进行检索,是一个单AMP操作。 PPI(Partitioned Primary Index):俺的理解,简单点的解释就是从另一个维
18、度建立索引,从而提高性能。,Teradata名词解释,SI(Secondary Index):也包括Unique 和 Non-Unique两种。和PI类似,特性: SI不是必须的 SI的值可以唯一,也可以不唯一 SI可以修改 SI的值可以为null,Unique场合,只能有1条记录为null,否则必须是Non-Unique SI的值可以修改 SI定义最多不能超过64个字段 根据用途,可分为: Join Index:可以用于多表 Sparse Index:可以指定常量作为过滤条件 Hash Index:只用于单表,相对使用几率较少。 Value-Ordered NUSI:具有排序功能,但是:排序
19、字段只能有一个、必须是数字类型、长度不能超过4个字节以及最多可以定义2个index,字段总数不能超过32个。 SI的存储:SI是存储在Index Subtables中的,USI和NUSI略有不同, USI:由于表中的数据是根据PI的值进行分配存储的,因此,IndexSubtable的数据是与主表数据分离的,根据USI的Hash值分布。 NUSI:是与主表数据按照相同的规则分布存储的,从而降低了对BYNET的使用率,但是,由于数据可能存储在不同的AMP内,因此,基所有的AMP都处在激活状态。 注:对于无索引检索时,可能会使用整表检索。尽量避免使用不等号或者区间条件进行检索,因为此时,系统会使用整
20、表检索进行处理。,Teradata常用工具,Teradata常用工具,GUI操作界面,图形化的操作界面 作业设置 作业监控 日志检查 作业执行 功能设置,Teradata常用工具,Teradata常用工具,Teradata常用工具,Teradata-ETL,Teradata业务基础-ETL,ETL作业的状态,关于作业的状态,ETL服务流程,分布式ETL服务架构,ETL_Automation逻辑架构,ETL REPOSITORY,D:ETL (主目录) |-APP |-DATA |-complete |-fail |-message |-process |-queue |-receive,D:E
21、TL (主目录) |-APP |-DATA |-complete |-fail |-message |-process |-queue |-receive,SERVER 1,SERVER 2,ETL_Automation 的特定概念,数据驱动 控制文件 - 控制作业处理的文件 dir.job_source_nameYYYYMMDDetl_rcv 监控并处理 Convert_Job_NameYYYYMMDD.diretl_master监控并处理 数据文件 - 作业处理的数据文件,随控制文件一起在处理时移动 控制文件中包含数据文件的列表 如控制文件是空文件,则表明该作业无数据文件,ETL_Auto
22、mation客户端,加载的管理和监控 ETLAdmin - 加载管理、控制、监视 ETLMonitor 加载监视,ETL REPOSITORY,加载服务器,加载服务器,目前ETL状况,SXMCC_BASS2的系统结构,SXMCC_BASS2的系统结构,短信发送,短信模块介绍如下: 短信发送模块需求: 可以配置; 短信发送功能实现; 不形成骚扰(即:发送频率,必须可以配置,以小时为单位,double类型); 各要求详细解释: 可以配置: 解释: 可以配置 从可以的内容分为下一几部分: (1)、接收短信的手机号码;可以配置(输入) 举例:可以配置手机号码:1234、23456等 (2)、要发送的模块(如:session、ETL错误);可以配置(点选) 举例:对手机号码1234的session pool错误发送短信; 对手机号码23456的ETL错误发送短信; 注意:短信发送的模块以综合监控的模块基础表为准 (3)、发送的时间段;(支持全天的0:0024:00 任意时间段) 举例:对手机号码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论