Teradata数据仓库介绍
- 格式:ppt
- 大小:6.05 MB
- 文档页数:72
Teradata数据性能调优作者:郑曜来源:《硅谷》2009年第24期[摘要]简要介绍Teradata的vproc结构,自动分配和并行能力处理的特点,并根据Teradata的工作原理对SQL进行优化处理。
[关键词]TeradataSQL调优中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)1220068-01一、引言Teradata是专门针对决策支持应用而设计的,早在1983年就推出了世界上第一个基于海量并行处理技术(MPP)的商用系统。
它是一个关系数据库管理系统,采用标准的SQL查询语言,独特的内部结构特别适合处理复杂查询的数据仓库应用。
其良好的扩展性能够随着业务的发展而发展,从GB级扩展到100TB以上。
二、Teradata数据库系统(一)Teradata的基本结构。
Teradata采用了一种先进的虚拟处理器技术,称为VPROC(Virtual ProCessor)。
VPROC有两种,即PE(Parsing EngIne,分析引擎,负责与外部的接口、查询的优化、任务调度等)和AMP(Access Module Processor,存取模块处理器,负责完成数据处理操作)。
(二)Teradata的基本特点。
1.数据自动分配。
Teradata中只有一种基于HASH算法的数据分配机制,当要插入一条记录时,根据主索引计算出相应的AMP,该条记录即通过此AMP存到其对应的磁盘上。
由于主索引值的不同,一个表的各条记录将通过各AMP均匀地分布到各个磁盘上。
2.强大的并行处理能力和复杂查询处理能力。
提供查询并行,步内并行和多步并行。
三、Teradata性能分析数据性能调优:Teradata系统性能包括管理数据采集,cpu性能,I/O性能,负载性能,网络性能,存储性能等。
其中数据采集是性能调优的关键。
造成数据库系统性能下降的原因很多,但是由于SQL书写不当,而造成的系统性能下降情况也较为普遍。
Teradata基础教程1. 数据仓库(Data Warehouse):Teradata是一种专门用于构建和管理数据仓库的系统。
数据仓库是一个集成、主题导向、可变和持续的数据集,用于支持企业的决策制定过程。
2. 分布式架构:Teradata采用分布式架构,将数据存储在多个节点上,使得数据的访问和处理更加高效和可扩展。
3. AMP(Access Module Processor):AMP是Teradata的核心组件,负责存储和处理数据。
每个节点上都有多个AMP,它们负责将数据分片存储在磁盘上,并处理查询请求。
4. Vantage:Vantage是Teradata的最新版本,提供了集成分析引擎、存储、数据管理和高级分析功能。
1. 创建数据库:使用CREATE DATABASE语句可以创建数据库。
例如,CREATE DATABASE mydatabase;2. 创建表格:使用CREATE TABLE语句可以创建表格。
例如,CREATE TABLE mytable (column1 INT, column2 VARCHAR(100));3. 插入数据:使用INSERT INTO语句可以插入数据到表格中。
例如,INSERT INTO mytable VALUES (1, 'data1');4. 查询数据:使用SELECT语句可以查询数据。
例如,SELECT * FROM mytable;5. 更新数据:使用UPDATE语句可以更新表格中的数据。
例如,UPDATE mytable SET column1 = 2 WHERE column2 = 'data1';6. 删除数据:使用DELETE语句可以删除表格中的数据。
例如,DELETE FROM mytable WHERE column1 = 2;7. 删除表格:使用DROP TABLE语句可以删除表格。
例如,DROP TABLE mytable;1. 数据分区:可以根据特定的列将数据进行分区存储,以提高查询性能。
1、数据仓库是面向主题的、集成的、稳定的、随时间变化的数据集合,用以支持管理决策的过程。
数据仓库是一个综合的解决方案,主要用来帮助企业有关主管部门和业务人员做出更符合业务发展规律的决策。
决策支持系统也是数据仓库的代名词。
2 、OLTP(联机事务处理)系统即生产系统,是时间驱动、面向应用的。
OLTP基本特点:数据在系统中产生基于交易的处理系统每次交易牵涉的数据量很小对响应时间要求非常高用户数量非常庞大,主要是操作人员数据库的各种操作主要基于索引进行3、OLAP(联机分析处理)是基于数据仓库的信息分析处理过程,是数据仓库的用户接口部分。
OLAP特点:本身不产生数据,其基础数据来源于生产系统中的操作数据基于查询的分析系统复杂查询,经常使用多表连接、全表扫描等,牵涉的数据量往往十分庞大响应时间与具体查询有很大关系用户数量相对较少,其用户主要是业务人员与管理人员由于业务问题的不固定,数据库的各种操作不能完全基于索引进行4 、数据仓库中的详细数据和小结数据为什么要有小结数据:数据仓库的引擎—数据库系统—不适合处理大量的数据---出现小结数据,但是详细数据不能删除。
降低存储系统投资降低MIPS投资5、数据仓库和数据集市数据仓库是企业级的,能为整个企业各个部门的运行提供决策支持手段数据集市是部门级的,一般只能为某个局部范围内的管理人员服务,也称之为部门级数据仓库6、数据集市分为独立的数据集市和从属的数据集市7、衡量数据仓库引擎国际上标准的计算机系统的测试组织是TPC,它定义了专门针对决策支持系统(数据仓库)的基准测试指标。
TPC(transaction processing performance council)是一个非赢利的国际组织,专门定义交易处理和数据库的测试标准8、测试标准TCP-D是早期衡量决策支持系统的测试指标,主要考虑三方面的指标QppD(Query Processing Power D)描述了系统的复杂查询处理能力。
数据仓库的工具数据仓库是一个用于集中存储、管理和分析大量数据的系统。
为了有效地构建和维护数据仓库,许多工具和技术已被开发出来。
这些工具可以帮助企业在提供高性能数据存储和处理能力的同时,实现对数据的高效管理和分析。
下面是一些常用的数据仓库工具的简介:1. ETL工具:ETL(抽取、转换和加载)工具用于从各种数据源抽取数据并将其加载到数据仓库中。
这些工具不仅可以确保数据的有效传输和处理,还可以进行数据清洗、转换和整合,以使其符合数据仓库的要求。
常见的ETL工具包括Informatica PowerCenter、IBM InfoSphere DataStage和Microsoft SSIS(SQL Server Integration Services)等。
2. 数据仓库管理工具:数据仓库管理工具用于管理数据仓库的各种操作和维护任务。
它们可以提供数据仓库的配置、监控、备份和恢复等功能。
这些工具还可以帮助管理员监控数据仓库的性能,并提供报告和分析功能。
常见的数据仓库管理工具包括Teradata Viewpoint、Oracle Enterprise Manager和Microsoft SQL Server Management Studio等。
3. 数据挖掘工具:数据挖掘工具用于从数据仓库中发现隐藏的模式和信息。
它们使用各种算法和技术来分析大量的数据,以提取有用的信息和洞察。
数据挖掘工具可以帮助企业预测趋势、识别关联性和制定智能决策。
常见的数据挖掘工具包括IBM SPSS Modeler、SAS Enterprise Miner和RapidMiner等。
4. 可视化工具:可视化工具用于将数据仓库中的数据转化为易于理解和解释的图形和图表。
这些工具帮助用户直观地理解数据关系、趋势和模式,并提供交互式的数据探索和筛选功能。
常见的可视化工具包括Tableau、QlikView和Power BI等。
5. 查询和报告工具:查询和报告工具用于从数据仓库中提取数据并生成定制的报告和查询结果。
Teradata数据库的架构组成Teradata在整体上是按Shared Nothing 架构体系进行组织的(关于Shared Nothing及其它并行数据库体系结构请参考我的另一篇文章“并行数据库的基本体系结构”),由于Teradata通常被用于OLAP应用,因此单机的Teradata系统很少见,即使是单机系统,Teradata也建议使用SMP结构以尽可能地提供更好的数据库性能,我在后面的介绍中,都是按多机系统进行说明的。
根据Shared Nothing的组成结构特点,在物理布局上,Teradata系统主要包括三个部分:处理节点(Node)、用于节点间通信的内部高速互联(InterConnection)和数据存储介质(通常是磁盘阵列)。
每个节点都是SMP结构的单机,节点的物理和逻辑结构如图2所示,多个节点一起构成一个MPP系统,多个节点之间的内部高速互联是通过一种被称为BYNET的硬件来实现的,整个系统的组成如图1所示。
单个节点的硬件结构Teradata系统中的每个节点在物理上都是一个SMP处理单元,事实上就是一台多CPU或多核的计算机。
节点硬件包括CPU、内存、用于安装操作系统和应用软件的本地磁盘、与外界交互的网卡及BYNET端口。
节点的网卡根据具体的网络环境而不同,通常包括两种,一种是与IBM MainFrame连接的Channel Adapter,另一种就是我们熟悉的局域网网卡。
通常情况下,一个节点上只会使用一种网卡,但会有多块网卡,分别用于不同的连接和冗余。
单个节点的软件结构在软件结构上,每个节点自下向上包括操作系统软件(OS)、Teradata并行数据库扩展(PDE)和相关应用程序,其中PDE的主要职责是管理和运行虚拟处理器,其中主要包括PE和AMPs。
(1)Teradata并行数据库扩展(PDE,Parallel Database Extensions),是直接架构在操作系统之上的一个接口层,用于为Teradata提供并行环境,并保证这个并行环境的可运行性和健壮性。
大数据的存储技术大数据存储技术是指用于存储和管理大数据的各种技术和方法。
随着互联网、物联网和移动互联网的快速发展,大数据的规模和复杂度越来越大,传统的存储技术已经无法满足大数据的存储需求。
因此,大数据存储技术变得越来越重要。
本文将介绍大数据存储技术的相关概念、特点和技术,以及目前主流的大数据存储技术,包括分布式文件系统、NoSQL数据库、数据仓库等。
同时,我们还将讨论大数据存储技术的应用场景和未来发展趋势。
一、大数据存储技术的相关概念和特点1.1大数据存储技术的概念大数据存储技术是指用于存储和管理大数据的各种技术和方法。
大数据存储技术与传统的数据存储技术相比,具有以下特点:1)大规模:大数据存储技术需要能够存储和处理非常庞大的数据量,通常是TB、PB甚至EB级别的数据。
2)高可扩展性:大数据存储技术需要具有良好的可扩展性,能够在不影响性能的情况下动态地扩展存储容量。
3)高性能:大数据存储技术需要具有高性能,能够快速地读写大规模的数据。
同时,还需要能够支持并发访问和复杂的数据分析操作。
4)多样性:大数据存储技术需要能够存储和管理各种类型的数据,包括结构化数据、半结构化数据和非结构化数据。
1.2大数据存储技术的特点大数据存储技术具有以下特点:1)分布式存储:大数据存储技术通常基于分布式存储架构,能够将数据存储在多台独立的服务器上,并实现数据的分布式访问和处理。
2)高可靠性:大数据存储技术需要具有高可靠性,能够在硬件故障或其他问题出现时保证数据的安全性和完整性。
3)高性能:大数据存储技术需要具有高性能,能够快速地读写大规模的数据,并支持复杂的数据处理和分析操作。
4)低成本:大数据存储技术通常以低成本的硬件和开源软件为基础,能够降低存储成本并提高存储效率。
以上是大数据存储技术的相关概念和特点,接下来我们将介绍目前主流的大数据存储技术。
二、主流的大数据存储技术大数据存储技术包括分布式文件系统、NoSQL数据库、数据仓库等多种技术和方法,下面我们将介绍这些主流的大数据存储技术。
1、 Teradata 优势 ,能否打数据并发 1)优势以下是部分Teradata 客户数据仓库管理的内容,可说明Teradata 系统的强大处理能力: •多达千亿行数据的数据库表格 •每天数据加载超过30亿条记录 •每天捕获3000万笔客户交易 •每天为消费者在线提供150万种个性化产品和服务 •每小时处理100万次数据库查询 •每天响应1万个并发数据仓库用户 • 业务查询响应时间仅为40-50毫秒2)并发问题:机制 :Teradata 巨表数据存放机制好像是每个节点均匀分布表中一部分数据,当查询的时候每个节点并行查询,结果汇总到某个节点反馈给查询者。
这个复杂查询的实例形象地说明了Teradata 的多维并行处理机制。
Multi-Step 并 行并 行 作2. 搜 索 Orders3. 联 接 Lineitem & Orders 并 行同 时与 各 自 相 关据图8-16 Teradata 内部并行处理机制说明这里假设系统配置有4个虚拟处理器(VPROC),某个复杂查询被优化器分解成了7个步骤,图中SUPPLIERS、PARTS、PARTSUPP等为数据库中表的名字。
在每个步骤执行时,4个VPROC 同时处理与各自相关的数据块,例如搜索SUPPLIERS表,该表的记录是通过HASH算法均匀分布在四个VPROC各自负责的磁盘中的,搜索时4个VPROC将同时进行,把相关的记录搜索出来,这就是所谓的查询并行。
例子:例如:使用NCR 5300服务器,2个节点,存储为2TB,RAID1,在业务高峰期,系统并发查询用户在300个以上,最高到1000个,此时系统响应速度有些缓慢大概业务查询响应时间30秒,峰值过后速度就加快了。
主要进行的操作就是表之间的关联查询,4张表,每张6-7千万条记录,ETL加载的数据量不算太大。
2、Teradata内外部集建立原则针对实际的应用,采用内外部集市可以有效的发挥起各自的优势:1)松耦合原则介于要将整个系统划分为数据和应用层,相互存在很多密切关联,在设计库表时要充分考虑数据和应用的相互影响,做到应用不影响到数据的处理,数据处理不直接针对应用的松耦合技术架构2)任务明确原则数据处理层和应用层在处理具体业务时,必然存在既可以在数据层处理有可以在应用层处理的问题,需要在设计时充分讨论业务需求,做到责任明确,任务单一,各负其责。
数据仓库的发展历程简述v0.1数据仓库发展历程及相关概念1.1 概述数据仓库的概念可能⽐⼀般⼈想像的都要早⼀些,中间也经历⽐较曲折的过程。
其最初的⽬标是为了实现全企业的集成(Enterprise Integration),但是在发展过程中却退⽽求其次:建⽴战术性的数据集市(Data Marts)。
到⽬前为⽌,还有很多分歧、论争,很多概念模棱两可甚⾄是彻底的让⼈迷惑。
本⽂试图从数据仓库的发展历史中看到⼀些发展的脉络,了解数据仓库应该是怎么样的,并展望⼀下未来的数据仓库发展⽅向。
同时,由于新应⽤的不断出现,出现了很多新的概念和新的应⽤,这些新的应⽤如何统⼀现成完整的企业BI应⽤⽅案还存在很多争论。
本⽂试图对这些概念做⼀些简要的阐述,让⼤家对此有初步的了解。
1.2 粗略发展过程1.2.1 开始阶段(1978-1988)数据仓库最早的概念可以追溯到20世纪70年代MIT的⼀项研究,该研究致⼒于开发⼀种优化的技术架构并提出这些架构的指导性意见。
第⼀次,MIT的研究员将业务系统和分析系统分开,将业务处理和分析处理分成不同的层次,并采⽤单独的数据存储和完全不同的设计准则。
同时,MIT的研究成果与80年代提出的信息中⼼(Information Center)相吻合:即把那些新出现的、不可以预测的、但是⼤量存在的分析型的负载从业务处理系统中剥离出来。
但是限于当时的信息处理和数据存储能⼒,该研究只是确⽴了⼀个论点:这两种信息处理的⽅式差别如此之⼤,以⾄于它们只能采⽤完全不同的架构和设计⽅法。
之后,在80年代中后期,作为当时技术最先进的公司,DEC已经开始采⽤分布式⽹络架构来⽀持其业务应⽤,并且DEC公司⾸先将业务系统移植到其⾃⾝的RDBMS产品:RdB。
并且,DEC公司从⼯程部、销售部、财务部以及信息技术部抽调了不同的⼈员组建了新的⼩组,不仅研究新的分析系统架构,并要求将其应⽤到其全球的财务系统中。
该⼩组结合MIT的研究结论,建⽴了TA2(Technical Architecture 2)规范,该规范定义了分析系统的四个组成部分:数据获取、数据访问、⽬录、⽤户服务其中的数据获取和数据访问⽬前⼤家都很清楚,⽽⽬录服务是⽤于帮助⽤户在⽹络中找到他们想要的信息,类似于业务元数据管理;⽤户服务⽤以⽀持对数据的直接交互,包含了其他服务的所有⼈机交互界⾯,这是系统架构的⼀个⾮常⼤的转变,第⼀次将交互界⾯作为单独的组件提出来。