author:skate

time:2010-03-11


Teradata 数据库介绍

Teradata在整体上是按Shared Nothing 架构体系进行组织的,他的定位就是大型数据仓库系统,定位比较高,他的软硬件都是NCR自己的,其他的都不识别;所以一般的企业用不起,价格很贵。由于Teradata通常被用于OLAP应用,因此单机的Teradata系统很少见,即使是单机系统,Teradata也建议使用SMP结构以尽可能地提供更好的数据库性能,在后面的介绍中,都是按多机系统进行说明的。

根据Shared Nothing的组成结构特点,在物理布局上,Teradata系统主要包括三个部分:

1. 处理节点(Node)、

2. 用于节点间通信的内部高速互联(InterConnection)

3. 数据存储介质(通常是磁盘阵列)。

每个节点都是SMP(对称多处理器结构)结构的单机,节点的物理和逻辑结构如图1所示,多个节点一起构成一个MPP(海量并行处理器结构)系统,多个节点之间的内部高速互联是通过一种被称为BYNET的硬件来实现的,整个系统的组成如图1所示。

单个节点的硬件结构

Teradata系统中的每个节点在物理上都是一个SMP处理单元,事实上就是一台CPU或多核的计算机。节点硬件包括CPU、内存、用于安装操作系统和应用软件的本地磁盘、与外界交互的网卡及BYNET端口。节点的网卡根据具体的网络环境而不同,通常包括两种:

1. 一种是与IBM MainFrame连接的Channel Adapter

2. 另一种就是我们熟悉的局域网网卡。

通常情况下一个节点上只会使用一种网卡,但会有多块网卡,分别用于不同的连接和冗余。

单个节点的软件结构

在软件结构上,每个节点自下向上包括操作系统软件(OS)、Teradata并行数据库扩展(PDE)和相关应用程序,其中PDE的主要职责是管理和运行虚拟处理器,其中主要包括PE和AMPs。

(1)Teradata并行数据库扩展(PDE,Parallel Database Extensions),是直接架构在操作系统之上的一个接口层,用于为Teradata提供并行环境,并保证这个并行环境的可运行性和健壮性。PDE的主要功能是执行虚拟处理器、进行Teradata并行任务调度、进行操作系统内核和Teradata数据库的运行时故障处理。

(2)虚拟处理器(VPROC,Virtual Processor),是一系列软件进程,这些进程驻留在一个节点上,依赖PDE环境运行,并接受PDE调度。可以把VPROC理解为一些Teradata的底层服务进程。虚拟处理器完成Teradata数据处理的主要工作,按照工作性质的不同,虚拟处理器主要包括两大类——解析引擎和存取模块处理器。

(3)解析引擎(PE,Parsing Engine),用于进行客户系统(通常是使用Teradata数据库的应用程序的SQL请求)和存取模块处理器之间的通讯和交互,主要的功能包括任务控制(Session Control),SQL语句的解析、优化、查询步骤的生成和分发,并行化预处理和返回查询结果。一个节点上通常只有一个或两个PE在工作。

(4)存取模块处理器(AMP,Access Module Processor),这是Teradata数据库的关键进程,用于处理所有与数据有关的文件系统的操作任务,是Teradata数据库Share Nothing架构的核心表现。通常情况下,一个节点上会有多个AMP在工作,每个AMP分别负责文件系统上不同的、固定的数据的存取操作。

(5)虚拟磁盘(VDisk,Virtual Disk),这是一个纯粹的逻辑概念,事实上不应该把它认为是软件结构的一部分。典型的Teradata MPP系统的数据存储都是以磁盘阵列(Disk Arrays)的形式实现的,在物理上是一个个存放于标准磁盘阵列柜中的磁盘阵列模块。Teradata系统中的每个AMP在处理数据存储时,会根据一种哈希算法把不同的数据均匀地分散存储到磁盘阵列中的不同的磁盘上(上海证券交易所的数据仓库就是teradata,每秒的io能达到2G,有1000多块磁盘,硬件昂贵。全表扫描一个几千万条的记录在几秒就完成了)。这样,在逻辑上我们就把磁盘阵列中不同磁盘上存储着的那些由同一个AMP负责存储和维护的数据合并在一起,就像它们在一个磁盘上一样,这就是VDisk的概念了。

BYNET

在Teradata MPP系统中,各个节点间(确切地说是各个AMP之间)的内部高速互联是通过BYNET实现的,我们可以认为它就是Teradata系统中那些松散耦合的节点之间互相联系的通讯总线,但事实上,它却远远没有这么简单。

BYNET是一组硬件和运行在这组硬件上的一些处理通讯任务的软件进程的组合体,用于节点之间的双向广播(bidirectional broadcast)、多路传递(multicast)和点对点通信(point-to-point communication),同时,BYNET还实现SQL查询过程中的合并功能(每个节点或AMP,均匀分布表中一部分数据,当查询的时候每个节点并行查询,结果汇总到某个节点反馈给查询者,提高查询速度。参考:http://blog.csdn.net/NevePioneer/archive/2009/01/04/3704443.aspx)。

参考文章:

http://www.cnblogs.com/hustcat/articles/1627784.html

Teradata 数据库介绍相关推荐

  1. teradata是MySQL吗_Teradata 数据库介绍

    Teradata在整体上是按Shared Nothing 架构体系进行组织的,他的定位就是大型数据仓库系统,定位比较高,他的软硬件都是NCR自己的,其他的都不识别:所以一般的企业用不起,价格很贵.由于 ...

  2. 数据简化社区2018年全球数据库总结及18种主流数据库介绍(公号回复“数据库2018”下载典藏版PDF报告)

    数据简化社区2018年全球数据库总结及18种主流数据库介绍(公号回复"数据库2018"下载典藏版PDF报告) 秦陇纪 数据简化DataSimp 今天 数据简化DataSimp导读: ...

  3. MNIST数据库介绍及转换

    MNIST数据库介绍:MNIST是一个手写数字数据库,它有60000个训练样本集和10000个测试样本集.它是NIST数据库的一个子集. MNIST数据库官方网址为:http://yann.lecun ...

  4. Mongodb数据库介绍

    Mongodb数据库介绍 一种非关系型数据库mongodb,mongodb数据库主要用于海量存储,常被用在数据采集项目中. mongodb官方文档 https://docs.mongodb.com/ ...

  5. hbase数据库介绍,HBASE的特点,表结构逻辑视图,Row Key,列族,时间戳,Cell

    HBASE数据库 1. Hbase基础 1.1 hbase数据库介绍 1.简介nosql hbase是bigtable的开源java版本.是建立在hdfs之上,提供高可靠性.高性能.列存储.可伸缩.实 ...

  6. MySQL(1)数据库介绍,配置MySQL的tab补全

    文章目录 一.数据库的基本概念 1.1 使用数据库的必要性 1.2 数据库的概念 1.2.1 数据(Data) 1.2.2 表 1.2.3 数据库 1.2.4 数据库管理系统(DBMS) 1.2.5 ...

  7. 数据库概述(了解数据库,当前数据库介绍,mysql数据库介绍,安装mysql数据库)

    文章目录 数据库概述 什么是数据库(数据,表,数据库) 数据库有什么作用? 关系数据库详解 非关系数据库详解 数据库系统发展史 数据库管理系统(DBMS) 当今主流数据库介绍 MySQL数据库 MyS ...

  8. db2 mysql sql server_下文给大家介绍mysql数据库介绍,具体详情如下所示:MySQL数据库:Oracle、DB2、SQL Server、MySQL、access、mang...

    下文给大家介绍mysql数据库介绍,具体详情如下所示: MySQL 数据库: Oracle.DB2.SQL Server.MySQL.access.mangodb.bigtable 关系型数据库 大型 ...

  9. java连接mongodb_第78天: Python 操作 MongoDB 数据库介绍

    MongoDB 是一款面向文档型的 NoSQL 数据库,是一个基于分布式文件存储的开源的非关系型数据库系统,其内容是以 K/V 形式存储,结构不固定,它的字段值可以包含其他文档.数组和文档数组等.其采 ...

最新文章

  1. C++ 虚函数与存虚函数
  2. 数据库高性能读写分离集群操作说明
  3. linux——使用fidsk对linux硬盘进行操作【转】
  4. 东方文学网新进作品【2】
  5. IDEA项目中 target 目录的作用
  6. 计算机网络的唯一缺点,有点伤感的说说 我唯一的缺点就是,对你太好
  7. 你会快速裂变顾客吗?
  8. Windows Server 2012 NIC Teaming
  9. 22 模块:宏伟蓝图
  10. 最好吃的月饼!用Python爬取了某宝1166家月饼进行可视化分析!
  11. java色号_RGB颜色与16进制颜色的换算方法
  12. 大话西游服务器哪个稳定,大话西游2五大顶尖热门服务器全面分析:剑烛沧海篇...
  13. 【安全狗高危安全通告】Oracle WebLogic Server 4月多个安全漏洞解决方案
  14. android版本5.1下载,嘉兴禾点点下载-禾点点 安卓版v5.1.1-PC6安卓网
  15. 微信小程序开发学习第二天 按部就班的名片小程序
  16. 转:旅游推荐系统的演进
  17. 33 《对权威的服从:一次逼近人性真相的心理学实验》 -豆瓣评分9.0
  18. 关于双边滤波的一些理解
  19. 做实验的顺序【重要】
  20. R语言查看版本 R包查看版本

热门文章

  1. 坛经与禅宗的智慧-王德峰
  2. Head First C - C语言入门
  3. 使用TestProject Python SDK创建移动Appium测试
  4. 武汉理工大学计算机基础与编程实验—网吧计费管理系统(含扩展超级管理员功能)
  5. pycharm配置深度学习环境:conda env create -f environment.yml报错
  6. 使用GitLab来实现IOS项目的持续集成CI
  7. 二分法 查表测温 算法 PT100
  8. Auto CAD:图纸幅面规格之图纸幅面、标题栏与会签栏、图签与布局空间之详细攻略
  9. python二维数组按照第一列排序_Python中二维数组按照某行或列排序的实现方法
  10. vue 数组中不满足条件跳出循环