1---2name: data-analytics3description: Create data pipeline and analytics architecture diagrams using PlantUML syntax with database/analytics stencil icons. Best for ETL pipelines, data lakes, real-time streaming, data warehousing, and BI dashboard design.4---56# Data Analytics Diagram Generator78**Quick Start:** Define data sources → Declare ingestion/ETL icons → Connect to storage/warehouse → Add BI/visualization → Wrap in ` ```plantuml ` fence.910> ⚠️ **IMPORTANT:** Always use ` ```plantuml ` or ` ```puml ` code fence. NEVER use ` ```text ` — it will NOT render as a diagram.1112## Critical Rules1314- Every diagram starts with `@startuml` and ends with `@enduml`15- Use `left to right direction` for data pipelines (Source → Ingest → Transform → Store → Visualize)16- Use `mxgraph.aws4.*` stencil syntax for analytics, database, and storage icons17- Default colors are applied automatically — you do NOT need to specify `fillColor` or `strokeColor`18- Use `rectangle "Zone" { ... }` or `package "Layer" { ... }` for grouping pipeline stages19- Directed flows use `-->`, async/streaming flows use `..>` (dashed)2021**Full stencil reference:** See [stencils/README.md](../uml/stencils/README.md) for 9500+ available icons.2223## Mxgraph Stencil Syntax2425```26mxgraph.aws4.<icon> "Label" as <alias>27```2829### Analytics & ETL Stencils3031| Category | Stencils | Purpose |32|----------|----------|---------|33| Query Engine | `athena`, `athena_data_source_connectors` | Serverless SQL on S3 data |34| ETL | `glue`, `glue_crawlers`, `glue_data_catalog`, `aws_glue_data_quality`, `aws_glue_for_ray` | Data integration & cataloging |35| Streaming | `kinesis`, `kinesis_data_streams`, `kinesis_data_firehose`, `kinesis_data_analytics`, `kinesis_video_streams` | Real-time data streaming |36| MapReduce | `emr`, `emr_engine`, `emr_engine_mapr_m3`, `emr_engine_mapr_m5` | Big data processing (Spark, Hive) |37| Data Warehouse | `redshift`, `redshift_ra3`, `redshift_streaming_ingestion`, `redshift_ml` | Columnar analytics warehouse |38| Search | `opensearch_service_data_node`, `opensearch_ingestion`, `cloudsearch` | Full-text search & log analytics |39| BI | `quicksight` | Dashboards & visualizations |40| Data Lake | `lake_formation`, `s3`, `glacier`, `glacier_deep_archive` | Governed data lake storage |41| Catalog | `datazone_custom_asset_type`, `data_exchange` | Data governance & sharing |42| Streaming Kafka | `msk`, `msk_connect` | Managed Kafka streaming |4344### Database Stencils4546| Category | Stencils | Purpose |47|----------|----------|---------|48| Relational | `aurora`, `aurora_instance`, `rds`, `rds_instance`, `rds_mysql_instance`, `rds_postgresql_instance` | Transactional databases |49| NoSQL | `dynamodb`, `dynamodb_table`, `dynamodb_global_secondary_index`, `dynamodb_stream` | Key-value & document store |50| Graph | `neptune` | Graph database |51| In-Memory | `elasticache`, `elasticache_for_redis`, `elasticache_for_memcached` | Cache & session store |52| Document | `documentdb`, `documentdb_with_mongodb_compatibility` | Document database |53| Ledger | `quantum_ledger_database` | Immutable transaction log |54| Wide-Column | `keyspaces` | Cassandra-compatible |5556### Connection Types5758| Syntax | Meaning | Use Case |59|--------|---------|----------|60| `A --> B` | Solid arrow | Batch data flow / API call |61| `A ..> B` | Dashed arrow | Streaming / async / CDC |62| `A -- B` | Solid line | Bidirectional sync |63| `A --> B : "label"` | Labeled connection | Describe data format or volume |6465### Quick Example6667```plantuml68@startuml69left to right direction70mxgraph.aws4.s3 "Data Lake\n(S3)" as s371mxgraph.aws4.glue "Glue\nETL" as glue72mxgraph.aws4.redshift "Redshift" as rs73mxgraph.aws4.quicksight "QuickSight" as qs7475s3 --> glue76glue --> rs77rs --> qs78@enduml79```8081## Data Analytics Architecture Types8283| Type | Purpose | Key Stencils | Example |84|------|---------|--------------|---------|85| Data Lake | Centralized raw data store | `s3`, `lake_formation`, `glue`, `athena` | [data-lake.md](examples/data-lake.md) |86| Real-time Streaming | Event stream processing | `kinesis`, `msk`, `lambda_function`, `opensearch_service` | [real-time-streaming.md](examples/real-time-streaming.md) |87| Data Warehouse | Star-schema analytics | `redshift`, `glue`, `quicksight` | [data-warehouse.md](examples/data-warehouse.md) |88| ETL Pipeline | Extract-transform-load | `glue`, `glue_crawlers`, `glue_data_catalog`, `s3` | [etl-pipeline.md](examples/etl-pipeline.md) |89| Log Analytics | Centralized logging | `kinesis_data_firehose`, `opensearch_service`, `lambda_function` | [log-analytics.md](examples/log-analytics.md) |90| ML Feature Store | Feature engineering pipeline | `glue`, `s3`, `athena`, `emr` | [ml-feature-pipeline.md](examples/ml-feature-pipeline.md) |91| CDC Pipeline | Database change capture | `dynamodb_streams`, `kinesis`, `lambda_function`, `redshift` | [cdc-pipeline.md](examples/cdc-pipeline.md) |92| Multi-source BI | Cross-database reporting | `aurora`, `dynamodb`, `redshift`, `quicksight` | [multi-source-bi.md](examples/multi-source-bi.md) |