Oracle和Teradata

Anonim

Oracle数据库

Oracle和Teradata都是 关系数据库管理系统(RDBMS)但是Oracle实现了 对象关系数据库管理系统(ORDBMS)。[一世]

RDBMS是使用关系模型[ii]引入的,它使用索引,主键和外键来维护表之间的关系。与旧的数据库管理系统(DBMS)相比,获取和存储数据更快。

虽然类似于关系数据库,但Oracle的面向对象数据库模型使用数据库模式和查询语言中支持的对象和类。

在七十年代末期,当Oracle成为第一个商用RDBMS时,Teradata正在为第一个数据仓库奠定基础。它的功能使其成为大数据(由Teradata创造的术语),商业智能(BI)工具[iii]和物联网(IoT)[iv]的完美选择。

OLTP和OLAP

关系数据库管理系统(RDBMS)可以归类为 在线事务处理 - OLTP在线分析处理 - OLAP。[V]

OLTP是事务性的,为数据仓库提供数据,OLAP用于分析数据。

“一个 数据仓库 是一个包含通常代表组织业务历史记录的数据的数据库。数据仓库中的数据被组织起来以支持分析而不是处理实时交易 在线交易处理系统(OLTP).

OLAP 技术使数据仓库能够有效地用于在线分析,从而快速响应迭代的复杂分析查询.”[VI]

虽然Teradata适用于OLAP和Oracle for OLTP,但Oracle可以在同一平台上运行OLTP和OLAP数据库,Teradata不支持这些数据库。在大多数混合工作负载方案中,性能使Oracle优于Teradata。

事务包括在数据库上执行的一个或多个SQL语句,以完成任务,同时保持数据完整性。事务是相互依赖的,以管理和处理从数据库添加或删除的数据。

Oracle因其架构灵活性(使用对象RDBMS)而为事务处理量身定制,而Teradata的OLAP非常适用于分析和切割数据(OLTP的数据历史)以进行分析,而无需移动或重构数据。

Oracle主要用作在交易时管理插入,更新和删除的在线后端应用程序,而Teradata 是 数据仓库,用于维护分析的大数据,并且没有实时事务。

Teradata是硬件和软件之间的良好组合,生产高端企业数据库设备,但Oracle在2008年推出了其OLAP Exadata Server。这是Oracle对完整数据库设备的回答。

两者都需要大量投资,并且更适合需要通过复杂查询获得出色性能的大型数据库。

什么都不共享?

Teradata是 无共享(SN)架构 而Oracle是 共享一切.

术语 没有共享架构 “处理器”指的是多处理器数据库管理系统,其中内存和磁盘存储不在处理器之间共享。[vii]共享网络带宽以传输数据。 使用Teradata,数据存储在服务器上,每个数据都计算自己的部分。数据被分区并存储在一组服务器上,每个服务器负责其数据。使用相同架构的高端平台示例包括Google,Amazon和Facebook。

但是对于Oracle来说 分享一切建筑 ,可以跨所有服务器访问所有数据,并且可以根据需要将访问级别应用于数据的任何部分。潜在的缺点是数据访问管理开销的增加,并且可能使系统管理更加复杂。

Oracle的架构有效地意味着任何机器都可以访问任何数据,这是Teradata之间的根本区别,使Teradata非常适合数据仓库,而Oracle更适合OTLP。

请注意,尽管Oracle Exadata部署了两种体系结构的混合方法,但如果没有Oracle,则无法使用Exadata系统。 Exadata是一个“附加”存储引擎,而不是对Oracle数据库引擎的彻底改造。

可扩展性

可伸缩性包括IT基础架构的多个方面,例如处理数据和事务卷的增加,以及多维数据,用户数量,工作负载管理,查询复杂性和卷等的增加。

Teradata是 线性可扩展[viii]意味着可以通过向基础架构添加更多节点来增加数据库容量,并且当数据量增加时,性能不会受到影响。

该系统旨在实现多维可扩展性,并提供比Oracle更强大的扩展和扩展模型。虽然Oracle确实具有良好的可扩展性,但已知存储子系统会出现瓶颈,并且它确实具有最佳数据处理速度之一,但只有一定的限制。例如,如果大多数查询已知并且使用的数据小于600TB,那么Oracle可能是合适的,但如果预计数据会增加,那么Teradata是更好的选择。

排比

Teradata具有无条件并行性[ix],而Oracle具有条件性。 它为Teradata提供了OLAP的优势,因为与非并行系统相比,性能非常出色,可以实现单一答案。 Parallelism使用多个处理器协同工作以快速完成任务。

要使用并行性如何工作的类比,请考虑在繁忙的购物商店中的队列,其中一个队列分支以分隔每个队列的队列。这条线移动速度更快,而不是一个队列和一个直到。并行加载越有效,系统的性能越好。

Teradata在其整个系统中具有并行性,包括架构,复杂处理和数据加载。与Oracle并行处理请求不需要查询调优,Teradata不依赖于列范围约束或有限的数据量。

特征比较

其他值得注意的差异包括:

  • 图形用户界面在Oracle中比在Teradata中更成熟和更先进。
  • Oracle和Teradata几乎支持相同的编程语言,但Oracle支持它的Visual Basic语言除外,而Teradata则不支持。
  • 对于操作系统,Oracle可在Unix,Linux,Windows,Mac OS X,z / OS上运行,而Teradata不在Mac OS X,z / OS上运行。
  • 尽管Teradata被认为是落后于Oracle Exadata的混合列压缩[x]的一步,但Teradata已大幅提升其压缩率。

综上所述

Oracle和Teradata在产品和技术方面都很成熟,但与Teradata相比,Oracle的数量超过了实施数量。

由于Oracle比Teradata使用得更广泛,因此它拥有丰富的工具集,使其成为开发人员和业务用户的更好选择。业务用户感知视图Teradata过于复杂或专为专业人士保留,因此找到熟练的Oracle用户或开发人员比找到Teradata更容易。

比较表

零件 Teradata数据 神谕
建筑 ·没有共享

·关系模型

·节点具有多个解析引擎和称为访问模块处理器的数据库引擎

·共享一切

·对象关系模型

·共享磁盘/松散耦合的共享内存

·多节点数据库的数据库架构

OLAP 不需要系统设计和基本配置。 OLAP的安装和配置技术复杂。
OLTP 不可能。 系统设计。
操作系统 ·Windows

·Linux

·UNIX

·Windows

·Linux

·UNIX

·Mac OS X.

·z / OS

排比 无条件的“永远在线”,从一开始就设计。 有条件且不可预测
数据库表 在数据库和磁盘空间中创建的表由Teradata本身管理。 在表空间中创建的表

属于模式并具有空间利用参数。

数据库对象 ·光标

·外部例程

·功能

·程序

·触发

·Data Domain

·光标

·外部例程

·功能

·程序

·触发

索引用法 传统上不使用大量索引,因为并行体系结构侧重于吞吐量性能要求。 依赖于索引,因为OLTP工作负载需要快速访问路径。
接口 ·SQL ·SQL

·GUI

数据类型
·CHAR

·CLOB

·VARCHAR

·CHAR

·CLOB

·VARCHAR

·NCHAR

·NVARCHAR

二进制 ·BYTE

·VARBYTE

·BFILE

·LONGRAW

· 生的

约会时间 · 时间

·日期

·TIMESTAMP

·日期

·TIMESTAMP

整体用户排名(IT中心站调查)[xi] 第三 第一