课程大纲

Teradata简介

模块1:Teradata基础与架构

  • Teradata是什么及其用途
  • 并行架构:AMPs, PEs, BYNET
  • 数据分布与哈希
  • 关键概念:会话、spool、锁
  • 连接系统:Teradata Studio / BTEQ / SQL Assistant

模块2:Teradata中的SQL入门

  • 基本SELECT, WHERE, ORDER BY
  • 数据类型与类型转换
  • 数学函数与日期函数
  • 使用ALIAS, CASE表达式
  • Teradata特殊操作符(TOP, QUALIFY, SAMPLE)
  • 指导实践:基于真实表的查询

模块3:连接、子查询与集合操作符

  • INNER, LEFT, RIGHT, FULL OUTER JOIN
  • 无ON子句的连接(笛卡尔积)
  • 标量子查询与相关子查询
  • UNION, INTERSECT, MINUS
  • 数据集成实践练习

模块4:分析函数与OLAP

  • RANK(), ROW_NUMBER(), DENSE_RANK()
  • 使用PARTITION BY进行数据分区
  • 使用OVER()和ORDER BY进行窗口操作
  • LAG(), LEAD(), FIRST_VALUE()
  • 用例:KPI、趋势、累计值

模块5:数据与表管理

  • 表类型:永久表、临时表、全局临时表
  • 创建与使用二级索引和连接索引
  • 插入、更新与删除记录
  • MERGE, UPSERT与重复数据控制
  • 事务与锁控制

模块6:优化与性能调优

  • Teradata优化器:如何决定执行计划
  • 使用EXPLAIN与COLLECT STATISTICS
  • Skew及其避免方法
  • 查询设计的最佳实践
  • 识别瓶颈(spool、锁、重新分布)
  • 实践:优化与非优化查询的比较

模块7:数据分区与压缩

  • 分区类型:范围分区、案例分区、多级分区
  • 在大型查询中的优势与实际应用
  • 块级压缩(BLC)与列压缩
  • 优势与限制

模块8:数据加载与提取

  • TPT(Teradata Parallel Transporter) vs. FastLoad / MultiLoad
  • 批量加载 vs. 批量插入
  • 错误处理与重试
  • 将结果导出到文件或外部系统
  • 使用脚本与工具进行基本自动化

模块9:技术用户的基本管理

  • 角色与权限
  • 资源控制(Query Bands, Priority Scheduler)
  • 使用DBQLOGTBL, DBC.Tables, ResUsage进行监控
  • 共享环境中的最佳实践

模块10:最终集成实验室

  • 端到端实践案例:
    • 数据加载
    • 转换与聚合
    • 使用OLAP函数构建指标
    • 优化与解释
    • 最终导出
  • 讨论最佳实践与常见错误

要求

  • 理解关系型数据库和SQL概念
  • 有查询大数据集或在数据环境中工作的经验
  • 熟悉商业智能或分析目标

受众

  • 数据分析师和商业智能专业人员
  • SQL开发者和数据工程师
  • 在Teradata环境中管理或优化数据的技术用户
 35 小时

客户评论 (1)

即将举行的公开课程

课程分类