数据处理模板的翻译 数据处理的两大分类OLAP、OLTP
日期:2023-03-11 12:39:36 / 人气: 876 / 发布者:成都翻译公司
而对于一些分页操作比较多的网站类数据库,设置为first_rows会更好一些。比如我们要对几亿条或者几十亿条数据进行聚合处理,这种海量的数据,全部放在内存中操作是很难的,同时也没有必要,因为这些数据快很少重用,缓存起来也没有实际意义,而且还会造成物理I/O相当大。的优化非常重要,因为它的数据量很大,做全表扫描和索引对性能上来说差异是非常大的。使用数据仓库模板使用一般用途或事务处理模板。OLTP 和 OLAP 介绍
数据处理大致可以分为两大类:OLTP(在线事务处理)和OLAP(在线分析处理)。OLTP 是传统关系型数据库的主要应用,主要用于基础和日常事务处理,例如银行事务。OLAP 是数据仓库系统的主要应用。支持复杂的分析操作,专注于决策支持,提供直观易懂的查询结果。
OLTP系统强调数据库内存效率,强调内存各项指标的命令率,强调绑定变量,强调并发操作;
OLAP 系统强调数据分析、SQL 执行市场、磁盘 I/O 和分区。
OLTP 和 OLAP 的比较:
OLTP,也叫在线事务处理(Online Transaction Processing),是指具有非常高的事务处理能力的系统,一般都是高可用的在线系统,专注于小事务和小查询。在评估他们的系统时,通常会查看它们。每秒执行的事务和执行 SQL 的数量。在这样的系统中,单个数据库每秒处理几百、几千个事务,Select语句的执行量每秒几千甚至几万。典型的OLTP系统包括电子商务系统、银行、证券等,例如美国eBay的业务数据库就是典型的OLTP数据库。
OLTP 系统中*容易出现瓶颈的是 CPU 和磁盘子系统。
例如将计算结果保存到统计表中。适当的方法。
(2)在OLTP环境下,磁盘子系统的承载能力一般取决于其IOPS处理能力。因为在OLTP环境下,物理磁盘读取一般是db文件顺序读取,即单块读取。但是,读取的次数非常频繁,如果磁盘子系统不能频繁承载其IOPS,则会出现很大的性能问题。
OLTP比较常用的设计和优化方法是Cache技术和B-tree索引技术。缓存决定了很多语句不需要从磁盘子系统获取数据。因此,Web 缓存和 Oracle 数据缓冲区对于 OLTP 系统非常重要。另外,在索引使用方面,语句越简单越好,这样执行计划就稳定了数据处理模板的翻译,必须使用绑定变量,减少语句解析,减少表关联,减少分布式事务,基本不使用分区技术或MV技术。、并行技术和位图索引。由于并发量高,批量更新应该分批快速提交,避免阻塞。
OLTP系统是一个数据块变化非常频繁,SQL语句提交非常频繁的系统。对于数据块,数据块应该尽可能地保存在内存中。对于SQL,应尽量使用变量绑定技术,实现SQL复用,减少物理I/O和重复SQL解析,从而大大提高数据库的性能。
除了绑定变量,这里的性能影响也可能是热块。当一个块被多个用户同时读取时,Oracle需要使用Latch来序列化用户操作,以保持数据的一致性。当一个用户获得锁存器时,其他用户只能等待。获得这个数据块的用户越多,等待的就越明显。这就是散热快的问题。这个hot flash可能是一个数据块,也可能是一个回滚结束块。对于数据块,通常是由于数据库中数据分布不均造成的。如果是索引数据块,可以考虑创建倒排索引,以达到重新分配数据的目的。对于回滚段数据块,可以适当增加几个回滚段来避免这种争用。
OLAP,也叫在线分析处理(Online Analytical Processing)系统,有时也叫DSS决策支持系统,就是我们所说的数据仓库。在这样的系统中,一条语句的执行量并不是一个评价标准,因为一条语句的执行时间可能很长,读取的数据也很大。因此,在这样的系统中,考核标准往往是磁盘子系统的吞吐量(带宽),比如可以达到多少MB/s的流量。
磁盘子系统的吞吐量通常取决于磁盘的数量。这时候Cache基本无效,数据库的读写类型基本都是db文件分散读和直接路径读/写。应该尽量使用比较多的磁盘和比较大的带宽,比如4Gb的光纤接口。
在 OLAP 系统中,经常使用分区技术和并行技术。
OLAP系统中分区技术的重要性主要体现在数据库管理上。例如,可以通过分区交换来实现数据库加载,通过备份分区表空间来实现备份,通过分区来删除被删除的数据。至于分区的性能,可以让一些大表的扫描速度非常快(只扫描单个分区)。另外,如果分区结合并行,整个表的扫描可以变得非常快。总之,分区的主要功能是方便管理,它并不能绝对保证查询性能的提升,分区有时会带来性能提升,有时会降低。
除了并行技术和分区技术的结合,在Oracle 10g中,结合RAC实现多节点同时扫描,效果也很好。一个任务,比如select的全表扫描,可以平均分配到多个RAC节点上去。
在OLAP系统中数据处理模板的翻译,不需要使用绑定(BIND)变量,因为整个系统的执行量很小,对于执行时间可以忽略分析时间,可以避免错误的执行计划。但是,位图索引和物化视图可以在 OLAP 中广泛使用。对于大交易,尽量寻求速度优化。不需要像OLTP那样要求快速提交,甚至可以故意放慢执行速度。
绑定变量的真正用途是在 OLTP 系统中。该系统通常具有并发用户数非常大,用户请求非常密集,并且这些请求的大部分SQL可以重用的特点。
对于OLAP系统,数据库大部分时间在运行报表作业,执行的基本都是聚合SQL操作,比如group by。这时候,将优化器模式设置为all_rows比较合适。对于一些分页操作较多的网站数据库,*好设置为first_rows。但有时对于OLAP系统,当我们有分页时,我们可以考虑在每个SQL中使用提示。喜欢:
从表a中选择a.*;
分离设计和优化
在设计上要特别注意,比如在高可用的OLTP环境中,不要盲目使用OLAP技术。
比如分区技术,假设不大规模使用分区键,而使用其他字段作为where条件,那么如果是本地索引,就得扫描多个索引,性能会变得甚至更低。如果是全局索引,就失去了分区的意义。
并行技术也是如此。一般在完成大型任务时使用。比如在现实生活中,翻译一本书,可以安排多人翻译不同的章节,这样可以提高翻译速度。如果只是翻译一页书,指派不同的人翻译不同的行,然后组合起来,没有必要,因为在分配的工作时间内,一个人可能早就完成了翻译。
位图索引也是一样,如果用在OLTP环境中,很容易造成阻塞和死锁。但是,在OLAP环境中,OLAP的查询速度可能因其独特的特性而得到提升。MV基本相同,包括trigger等,在DML频繁的OLTP系统上,很容易成为瓶颈,甚至Library Cache等待,而在OLAP环境中,可能会因为使用得当而提高查询速度。
对于 OLAP 系统,内存中几乎没有优化空间。提高CPU处理速度和磁盘I/O速度是提高数据库性能*直接的方法。当然,这也意味着系统成本的增加。
比如我们要聚合上亿或者上亿的数据,在内存中操作这么海量的数据是很困难的,也是没有必要的,因为这些数据很少被复用和缓存。它没有实际意义,而且还会造成相当大的物理 I/O。所以这种系统的瓶颈往往是磁盘I/O。
对于OLAP系统,由于数据量大,SQL的优化非常重要,全表扫描和索引的性能差异非常大。
其他
Oracle 10g之前的版本在构建数据库的过程中可以选择的模板有:
数据仓库
通用(General Purpose,General Purpose)
新建数据库
事务处理
Oracle 11g版本的数据库构建过程中可以选择的模板有:
通用或事务处理
自定义数据库
数据库
个人对这些模板的理解是:
在线分析处理(OLAP,On-line Analytical Processing),数据量大,DML少。使用数据仓库模板
在线事务处理(OLTP,On-line Transaction Processing),数据量小,DML频繁,并行事务很多,但一般都很短。使用通用或事务处理模板。
决策支持系统(DDS,Decision support system),典型的操作是全表扫描、长查询、长事务,但一般事务的数量很少,往往是事务独占系统。
相关阅读Relate
热门文章 Recent
- 翻译证书模板免费下载 ACCA各类证书翻译参考模板&下载(在校证明+身份证+英语等级等)2023-03-11
- 美国出生证翻译模板 美国亚利桑那州出生证明翻译模板截图2023-03-11
- 英签:2017.7.31北京简化材料出签(含自制*新结婚证房产证翻译模板)2023-03-11
- 成绩单翻译模板英语 留学成绩单如何翻译?2023-03-11
- 翻译实践类开题报告模板 翻译实践报告开题报告.docx2023-03-11
- 翻译流程图模板免费下载 翻译流程报告2023-03-11
- 外文翻译模板例文 英文简历模板范文 免费版2023-03-11
- 翻译的职业规划模板下载 英语翻译专业大学生的职业规划2023-03-11
- 日语翻译邮件翻译模板 联系商家邮件模板2023-03-11
- 翻译保密协议书合同范本模板 翻译保密协议(*新修订完整版)2023-03-11


