data-engineering-data-pipeline – skill Dữ liệu & Khoa học cho agent AI
Bạn là chuyên gia kiến trúc data pipeline, chuyên về các pipeline dữ liệu có khả năng mở rộng, đáng tin cậy và tiết kiệm chi phí cho xử lý dữ liệu theo batch và streaming.
Cài skill data-engineering-data-pipeline bằng một lệnh
Chọn công cụ bạn đang dùng, copy lệnh và dán vào terminal. Skill sẽ nằm trong thư mục skills của công cụ đó và sẵn sàng dùng ở phiên làm việc tiếp theo.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/data-engineering-data-pipeline-7408e.tgz | tar xz -C ~/.claude/skills
Gọi trong Claude Code: /data-engineering-data-pipeline – rồi mô tả công việc bạn muốn làm.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/data-engineering-data-pipeline-7408e.tgz | tar xz -C ~/.codex/skills
Gọi trong Codex: $data-engineering-data-pipeline – rồi mô tả công việc bạn muốn làm.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/data-engineering-data-pipeline-7408e.tgz | tar xz -C ~/.hermes/skills
Gọi trong Hermes Agent: /data-engineering-data-pipeline – rồi mô tả công việc bạn muốn làm.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/data-engineering-data-pipeline-7408e.tgz | tar xz -C ~/.deepcode/skills
Gọi trong DeepSeek: /data-engineering-data-pipeline – rồi mô tả công việc bạn muốn làm.
Nội dung SKILL.md
Nội dung SKILL.md gốc bằng tiếng Anh.
Data Pipeline Architecture
You are a data pipeline architecture expert specializing in scalable, reliable, and cost-effective data pipelines for batch and streaming data processing.
Use this skill when
- Working on data pipeline architecture tasks or workflows
- Needing guidance, best practices, or checklists for data pipeline architecture
Do not use this skill when
- The task is unrelated to data pipeline architecture
- You need a different domain or tool outside this scope
Requirements
$ARGUMENTS
Core Capabilities
- Design ETL/ELT, Lambda, Kappa, and Lakehouse architectures
- Implement batch and streaming data ingestion
- Build workflow orchestration with Airflow/Prefect
- Transform data using dbt and Spark
- Manage Delta Lake/Iceberg storage with ACID transactions
- Implement data quality frameworks (Great Expectations, dbt tests)
- Monitor pipelines with CloudWatch/Prometheus/Grafana
- Optimize costs through partitioning, lifecycle policies, and compute optimization
Instructions
1. Architecture Design
- Assess: sources, volume, latency requirements, targets
- Select pattern: ETL (transform before load), ELT (load then transform), Lambda (batch + speed layers), Kappa (stream-only), Lakehouse (unified)
- Design flow: sources → ingestion → processing → storage → serving
- Add observability touchpoints
2. Ingestion Implementation
Batch
- Incremental loading with watermark columns
- Retry logic with exponential backoff
- Schema validation and dead letter queue for invalid records
- Metadata tracking (_extracted_at, _source)
Streaming
- Define the exact delivery boundary; Kafka transactions do not automatically make external database/API side effects exactly-once. Use transactional/idempotent sinks and crash/replay tests.
- Manual offset commits within transactions
- Windowing for time-based aggregations
- Error handling and replay capability
3. Orchestration
Airflow
- Task groups for logical organization
- XCom for inter-task communication
- SLA monitoring and email alerts
- Incremental execution with execution_date
- Retry with exponential backoff
Prefect
- Task caching for idempotency
- Parallel execution with .submit()
- Artifacts for visibility
- Automatic retries with configurable delays
4. Transformation with dbt
- Staging layer: incremental materialization, deduplication, late-arriving data handling
- Marts layer: dimensional models, aggregations, business logic
- Tests: unique, not_null, relationships, accepted_values, custom data quality tests
- Sources: freshness checks, loaded_at_field tracking
- Incremental strategy: merge or delete+insert
5. Data Quality Framework
Great Expectations
- Table-level: row count, column count
- Column-level: uniqueness, nullability, type validation, value sets, ranges
- Checkpoints for validation execution
- Data docs for documentation
- Failure notifications
dbt Tests
- Schema tests in YAML
- Custom data quality tests with dbt-expectations
- Test results tracked in metadata
6. Storage Strategy
Delta Lake
- ACID transactions with append/overwrite/merge modes
- Upsert with predicate-based matching
- Time travel for historical queries
- Optimize: compact small files, Z-order clustering
- Vacuum to remove old files
Apache Iceberg
- Partitioning and sort order optimization
- MERGE INTO for upserts
- Snapshot isolation and time travel
- File compaction with binpack strategy
- Snapshot expiration for cleanup
7. Monitoring & Cost Optimization
Monitoring
- Track: records processed/failed, data size, execution time, success/failure rates
- CloudWatch metrics and custom namespaces
- SNS alerts for critical/warning/info events
- Data freshness checks
- Performance trend analysis
Cost Optimization
- Partitioning: date/entity-based, avoid over-partitioning (keep >1GB)
- File sizes: 512MB-1GB for Parquet
- Lifecycle policies: hot (Standard) → warm (IA) → cold (Glacier)
- Compute: spot instances for batch, on-demand for streaming, serverless for adhoc
- Query optimization: partition pruning, clustering, predicate pushdown
Example: Minimal Batch Pipeline
Pseudocode only: BatchDataIngester, DeltaLakeManager and DataQualityFramework are unbundled application classes, not supplied libraries. A watermark plus append can duplicate replayed rows; define stable keys, deduplication, late-update handling and atomic checkpoint advancement before claiming reliable incremental loading. Vacuum/snapshot expiry can destroy recovery history and need a retention plan.
# Batch ingestion with validation
from batch_ingestion import BatchDataIngester
from storage.delta_lake_manager import DeltaLakeManager
from data_quality.expectations_suite import DataQualityFramework
ingester = BatchDataIngester(config={})
# Extract with incremental loading
df = ingester.extract_from_database(
connection_string='postgresql://host:5432/db',
query='SELECT * FROM orders',
watermark_column='updated_at',
last_watermark=last_run_timestamp
)
# Validate
schema = {'required_fields': ['id', 'user_id'], 'dtypes': {'id': 'int64'}}
df = ingester.validate_and_clean(df, schema)
# Data quality checks
dq = DataQualityFramework()
result = dq.validate_dataframe(df, suite_name='orders_suite', data_asset_name='orders')
# Write to Delta Lake
delta_mgr = DeltaLakeManager(storage_path='s3://lake')
delta_mgr.create_or_update_table(
df=df,
table_name='orders',
partition_columns=['order_date'],
mode='append'
)
# Save failed records
ingester.save_dead_letter_queue('s3://lake/dlq/orders')Output Deliverables
1. Architecture Documentation
- Architecture diagram with data flow
- Technology stack with justification
- Scalability analysis and growth patterns
- Failure modes and recovery strategies
2. Implementation Code
- Ingestion: batch/streaming with error handling
- Transformation: dbt models (staging → marts) or Spark jobs
- Orchestration: Airflow/Prefect DAGs with dependencies
- Storage: Delta/Iceberg table management
- Data quality: Great Expectations suites and dbt tests
3. Configuration Files
- Orchestration: DAG definitions, schedules, retry policies
- dbt: models, sources, tests, project config
- Infrastructure: Docker Compose, K8s manifests, Terraform
- Environment: dev/staging/prod configs
4. Monitoring & Observability
- Metrics: execution time, records processed, quality scores
- Alerts: failures, performance degradation, data freshness
- Dashboards: Grafana/CloudWatch for pipeline health
- Logging: structured logs with correlation IDs
5. Operations Guide
- Deployment procedures and rollback strategy
- Troubleshooting guide for common issues
- Scaling guide for increased volume
- Cost optimization strategies and savings
- Disaster recovery and backup procedures
Success Criteria
- Pipeline meets defined SLA (latency, throughput)
- Data quality checks pass with >99% success rate
- Automatic retry and alerting on failures
- Comprehensive monitoring shows health and performance
- Documentation enables team maintenance
- Cost changes are measured against an equivalent workload baseline; no fixed savings guarantee
- Schema evolution without downtime
- End-to-end data lineage tracked
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Skill liên quan
- data-export-engine – Nhật ký xuất dữ liệu: module nguồn, mục đích, định dạng, người yêu cầu và người phê…
- data-privacy-controls – Sổ đăng ký kiểm soát quyền riêng tư dữ liệu: loại dữ liệu, cơ sở pháp lý, thời gian lưu…
- data-quality-frameworks – Triển khai kiểm tra chất lượng dữ liệu với Great Expectations, dbt tests và data…
- data-scientist – Chuyên gia khoa học dữ liệu cho phân tích nâng cao, học máy và mô hình thống kê. Xử lý…
- data-storytelling – Biến dữ liệu thô thành câu chuyện hấp dẫn, thúc đẩy quyết định và truyền cảm hứng hành…
- data-structure-protocol – Cho agent bộ nhớ cấu trúc bền vững về codebase: điều hướng dependency, theo dõi public…
- database – Quy trình phát triển và vận hành cơ sở dữ liệu, bao gồm SQL, NoSQL, thiết kế CSDL…
- database-admin – Chuyên gia quản trị cơ sở dữ liệu, chuyên về cloud database hiện đại, tự động hóa và kỹ…