| name | flink |
| description | Comprehensive guidance for developing, optimizing, and operating Apache Flink applications on Amazon Managed Service for Apache Flink. Use when working with Apache Flink, Managed Service for Apache Flink, streaming, stream-processing, real-time data, Kafka, or Kinesis. |
Managed Service for Apache Flink Skill
Overview
This skill provides comprehensive guidance for developing, optimizing, and operating Apache Flink applications on AWS Managed Service for Apache Flink. It is designed to improve Apache Flink onboarding and improve operational excellence.
Disclaimer
All code generated by this skill is AI-assisted and should be thoroughly reviewed, tested, and validated by users before being used in production environments. AI-generated code may contain errors, security vulnerabilities, or suboptimal patterns that require human judgment to identify and correct. Any code changes adopted from this skill should be tagged with generated by Managed Service for Apache Flink Kiro Power in code comments or commit messages to clearly indicate when generated changes were adopted.
Key Problems Solved
- New Customer Onboarding: Overcome the steep learning curve for Flink's Java-centric development model
- Existing Customer Optimization: Systematic review and improvement of Flink applications to align to best practices
- Operational Excellence: Integrated troubleshooting and monitoring using automated tools with CloudWatch and Managed Service for Apache Flink APIs
- Migrating / upgrading to Flink 2: Systematic review and upgrade from Flink 1.x apps to Flink 2.x apps to handle migrations to 2.x with breaking changes
Reference Files
Load these files as needed based on the user's task:
- Core Managed Service for Apache Flink Development Workflow โ how to approach user interaction, development, and testing
- Environment Setup โ set up a local dev environment
- Dependency Management โ Maven pom.xml dependencies for new projects
- Best Practices โ Flink best practices for new apps
- Managed Service for Apache Flink Overview and Concepts โ Managed Service for Apache Flink-specific optimizations and constraints
- Flink 2.x Migration Guide โ upgrading from Flink 1.x to 2.x, including state compatibility
- Resource Optimization โ KPU sizing, operator parallelism tuning, configuration overrides, and checkpoint resource impact
- Job Graph Architecture โ job graph optimization, monolith anti-pattern, high fan-out, and operator-to-task-slot mapping
- Monitoring and Metrics โ CloudWatch metrics analysis, recommended alarms, and custom metrics emission
- Logging Configuration โ logging best practices, Log4j2 configuration, and rate-limited logging patterns for Managed Service for Apache Flink
- Kinesis Source / Sink Development โ Kinesis connector-specific guidance
General Guidance
- Don't get started until you confirm the user's goals and use case
- Don't make changes unless the user asks you to
- When developing code, use this skill's reference files as guidance first, followed by general knowledge
CRITICAL: Required Reading for All Flink Development
BEFORE writing ANY Flink code, you MUST read these files:
- ALWAYS read core-workflow.md first โ Contains essential steps for development
- ALWAYS read best-practices.md second โ Contains essential Managed Service for Apache Flink patterns, anti-patterns, serialization guidance, state management, and configuration separation
These are NOT optional โ you must read them before generating any code.
Working with Multiple Reference Files
When creating Flink applications, always reference multiple relevant files together:
- Start with best-practices.md โ Read this FIRST for all development work
- Then read dependency-management.md โ For correct Maven dependencies when building new Flink apps
- Then read connector-specific guides (e.g., kinesis-connector-guide.md) for API usage whenever making changes to or evaluating app's source/sink configs or making new apps
- For resource sizing and scaling โ Read resource-optimization.md for KPU sizing, parallelism tuning, and checkpoint impact on resources
- For job graph design โ Read job-graph-architecture.md for operator chaining, data skew, anti-patterns, and task slot mapping
- For monitoring and observability โ Read monitoring-and-metrics.md for CloudWatch metrics analysis and custom metrics emission, and logging-configuration.md for log configuration
- Cross-reference between documents โ They link to each other for related information
Support & Legal