Teradata - 架构
Teradata 架构基于大规模并行处理 (MPP) 架构。Teradata 的主要组件是解析引擎、BYNET 和访问模块处理器 (AMP)。下图显示了 Teradata 节点的高级架构。
Teradata 的组件
Teradata 的关键组件如下 −
节点 − 它是 Teradata 系统中的基本单元。Teradata 系统中的每个单独服务器都称为节点。节点由其自己的操作系统、CPU、内存、自己的 Teradata RDBMS 软件副本和磁盘空间组成。机柜由一个或多个节点组成。
解析引擎 − 解析引擎负责接收来自客户端的查询并准备有效的执行计划。解析引擎的职责是 −
从客户端接收 SQL 查询
解析 SQL 查询检查语法错误
检查用户是否对 SQL 查询中使用的对象具有所需的权限
检查 SQL 中使用的对象是否实际存在
准备执行计划以执行 SQL 查询并将其传递给 BYNET
从 AMP 接收结果并发送给客户端
消息传递层 −消息传递层(称为 BYNET)是 Teradata 系统中的网络层。它允许 PE 和 AMP 之间以及节点之间的通信。它从解析引擎接收执行计划并发送到 AMP。同样,它从 AMP 接收结果并发送到解析引擎。
访问模块处理器 (AMP) − AMP,称为虚拟处理器 (vprocs),是实际存储和检索数据的处理器。AMP 从解析引擎接收数据和执行计划,执行任何数据类型转换、聚合、过滤、排序并将数据存储在与其关联的磁盘中。表中的记录均匀分布在系统中的 AMP 之间。每个 AMP 都与一组存储数据的磁盘相关联。只有该 AMP 可以从磁盘读取/写入数据。
存储架构
当客户端运行查询以插入记录时,解析引擎会将记录发送到 BYNET。BYNET 检索记录并将行发送到目标 AMP。AMP 将这些记录存储在其磁盘上。下图显示了 Teradata 的存储架构。
检索架构
当客户端运行查询以检索记录时,解析引擎会将请求发送到 BYNET。BYNET 将检索请求发送到适当的 AMP。然后 AMP 并行搜索其磁盘并识别所需记录并发送到 BYNET。然后,BYNET 将记录发送到解析引擎,解析引擎再发送给客户端。以下是 Teradata 的检索架构。