huawei-cloud-dws-migration-teradata-to-dws

huawei-cloud-dws-migration-teradata-to-dws is a skill for Claude Code, Codex from huaweicloud/huaweicloud-skills. It costs 275 tokens per session (7,059 once invoked), scanned A, original, MIT.

A migration workflow for moving Teradata database structures and data to Huawei Cloud DWS, a cloud data-warehouse service. It reads Teradata, converts compatible definitions, creates the target structures, transfers data through OBS, and validates the result.

In plain words
What is it for?
Use it for pre-migration checks, table and partition conversion, data export and bulk loading, view or procedure migration, and functional and data validation.
Why use it?
It separates schema migration from data migration and keeps the Teradata source read-only. Checks for duplicate tables and compares counts, columns, values, views, macros, and procedures to catch migration errors.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it for pre-migration checks, table and partition conversion, data export and bulk loading, view or procedure migration, and functional and data validation.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/huaweicloud/huaweicloud-skills/huawei-cloud-dws-migration-teradata-to-dws
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add huaweicloud/huaweicloud-skills --skill huawei-cloud-dws-migration-teradata-to-dws
Clone the repo
git clone --depth 1 https://github.com/huaweicloud/huaweicloud-skills

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for huawei-cloud-dws-migration-teradata-to-dws

README.md
[![agentmods](https://agentmods.dev/badge/skills/huaweicloud/huaweicloud-skills/huawei-cloud-dws-migration-teradata-to-dws/github.svg)](https://agentmods.dev/skills/huaweicloud/huaweicloud-skills/huawei-cloud-dws-migration-teradata-to-dws)
Your own site
<a href="https://agentmods.dev/skills/huaweicloud/huaweicloud-skills/huawei-cloud-dws-migration-teradata-to-dws"><img src="https://agentmods.dev/badge/skills/huaweicloud/huaweicloud-skills/huawei-cloud-dws-migration-teradata-to-dws/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for huawei-cloud-dws-migration-teradata-to-dws

Your own site · 80×15
<a href="https://agentmods.dev/skills/huaweicloud/huaweicloud-skills/huawei-cloud-dws-migration-teradata-to-dws"><img src="https://agentmods.dev/badge/skills/huaweicloud/huaweicloud-skills/huawei-cloud-dws-migration-teradata-to-dws.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 275 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 7,059 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00275 $0.07059
Opus 5.5 $0.00110 $0.02824
Sonnet 5.5 $0.00055 $0.01412
Haiku 4.5 $0.00028 $0.00706

Measured 25d ago against content hash d6a5da63a2ad, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

huawei-cloud-dws-migration-teradata-to-dws scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 25d ago.

The scan reads SKILL.md. This mod also ships 16 executable files (examples/sample_migration.sh, scripts/datatype_mapping.py, scripts/dws_writer.py, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/bigdata/dws/huawei-cloud-dws-migration-teradata-to-dws/SKILL.md · 499 lines

How it starts

The opening of the file, as written. The whole thing — 499 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Teradata to DWS Migration Skill

概述

本 skill 用于将 Teradata 数据库迁移到华为云 DWS(数据仓库服务)。迁移过程严格遵循以下核心规则:

  1. 禁止在源端 Teradata 进行任何写操作 — 所有对源端的访问均为只读
  2. 遵循 Teradata 到 DWS 的数据类型映射规则 — 参考 https://support.huaweicloud.com/migration-dws/dws_15_0131.html
  3. 迁移分为两大步骤 — 先迁移表结构(DDL),后迁移表数据(DML)
  4. 重复表需用户确认 — 发现 DWS 中已存在的表时,列出并询问用户确认后才删除重建
  5. OBS 临时目录 — 数据导出到 OBS 而非本地磁盘,避免磁盘容量问题
  6. COPY 命令批量导入 — 使用 COPY 命令替代逐行 INSERT,性能提升 10-100 倍,支持 TB 级数据

迁移流程

Step 0   迁移前预检     pre_migration_check.py  网络/源端/目标端/业务影响/时间预估(全部只读)
  ↓
Step 1   表结构 DDL    migrate_schema.py       只读提取 DDL → 数据类型映射 → PPI 分区转换(ppi_converter)
                                                  → 生成 DWS DDL → 重复表确认 → 建表
  ↓
Step 2   表数据 DML    migrate_data.py         CSV/OBS 临时目录导出 → 实时进度 → COPY/OBS 外表导入 → 校验
  ↓
Step 2.5 视图/宏/过程  migrate_views_procs.py  提取(SHOW VIEW/MACRO/PROCEDURE) → SQL 语法转换 → DWS 重建
  ↓
Step 3   数据校验       validate_migration.py   表数/行数/列/聚合/抽样/TIMESTAMP 精确值比对
  ↓
Step 3.5 功能性校验     validate_functional.py  宏/存储过程/视图调用与结果比对

使用前提

环境要求

  • Python 3.8+
  • Teradata ODBC 驱动 或 teradatasql Python 包
  • DWS gsql 客户端 或 psycopg2 Python 包
  • (可选)DSC 工具 — 用于 SQL 脚本迁移,需 JDK 1.8+
  • (可选)obsutil — 用于通过 OBS 中转导入数据

安装依赖

pip3 install teradatasql psycopg2-binary

配置文件

在使用前,需要准备以下配置文件:

  1. Teradata 连接配置 — 参考 config/teradata_config_template.ini
  2. DWS 连接配置 — 参考 config/dws_config_template.ini
  3. 迁移配置文件(视图/宏/存储过程迁移与功能性校验使用)— 参考模板 config/migration_config_template.yaml,复制为 config/migration_config.yaml 并填写 Teradata/DWS 连接信息(含 source_database、目标 schema 等字段),格式说明见下文「迁移配置文件(migration_config.yaml)」

迁移配置文件(migration_config.yaml)

migrate_views_procs.py(Step 2.5)与 validate_functional.py(Step 3.5)通过 --config config/migration_config.yaml 读取 Teradata/DWS 连接信息。该文件不在 skill 包内随附,需从模板创建:

cp config/migration_config_template.yaml config/migration_config.yaml
# 编辑 config/migration_config.yaml 填写实际连接信息

格式说明(YAML,字段说明见模板内注释):

teradata:
  host: <teradata_host>          # Teradata 主机地址
  port: 1025                     # Teradata 端口(默认 1025)
  user: <td_user>                # Teradata 只读账号
  password: <td_password>        # 或通过环境变量 TD_PASSWORD 注入
  database: DBC                  # 连接数据库(默认 DBC)
  logmech: TD2                   # 登录机制(默认 TD2)
  source_database: <source_db>   # 待迁移的源数据库名(必填)
dws:
  host: <dws_host>               # DWS 集群连接端点
  port: 25308                    # DWS 端口(默认 25308)
  database: <dws_database>       # DWS 数据库名
  user: <dws_user>               # DWS 账号
  password: <dws_password>       # 或通过环境变量 DWS_PASSWORD 注入
  schema: public                 # 目标 Schema(默认 public)
  target_schema: public          # target_schema 优先于 schema 用于目标表

Read the full file on GitHub · 499 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 25d ago First seen · 499 lines · 275 tokens per session scan A d6a5da63a2ad

Subscribe to this mod's changes

huawei-cloud-dws-migration-teradata-to-dws is a skill published in the GitHub repository huaweicloud/huaweicloud-skills (59 stars, last pushed 2d ago), licensed MIT. It adds 275 tokens to every session and 7,059 once invoked, about $0.0011 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-30.

Related

Other skills, from other repositories

cloud-sql-basics

This file generates or explains Cloud SQL resources. Use this file when the user asks to create a Cloud SQL instance or database for MySQL, PostgreSQL, or SQL Server. Cloud SQL manages third-party MySQL, PostgreSQL, and SQL Server instances as resources in Cloud SQL. For example, when Cloud SQL creates an open-source…

google/skills · 108 tokens

moai-platform-database-cloud

Cloud database platform specialist covering Neon (serverless PostgreSQL), Supabase (PostgreSQL 16 with real-time), and Firebase Firestore (NoSQL with offline sync). Use when choosing or setting up cloud databases.

modu-ai/moai-adk · 51 tokens

aws-rds

Manage Amazon RDS for fully managed relational databases. Provision MySQL, PostgreSQL, and Aurora instances with automated backups and patching. Configure read replicas for scaling, snapshots for recovery, and Aurora Serverless for variable workloads.

TerminalSkills/skills · 52 tokens

backup-recovery

Design and verify backups and restoration for owned databases, files and application state. Use when preparing recovery, migrating data or testing backups; protect the source and prove restore into an isolated destination before calling recovery ready.

WrongStack/WrongStack · 45 tokens

blueprint-from-collection-import

Move the copied collection's records into Postgres and the files they point at into Storage, proven on a freshly reset local database.

receptron/mulmoterminal · 33 tokens

aws-rds-spring-boot-integration

Provides patterns to configure AWS RDS (Aurora, MySQL, PostgreSQL) with Spring Boot applications. Configures HikariCP connection pools, implements read/write splitting, sets up IAM database authentication, enables SSL connections, and integrates with AWS Secrets Manager. Use when setting up RDS connections in Spring…

giuseppe-trisciuoglio/developer-kit · 83 tokens