Real-Time Data Architecture(实时数据架构)
知识库位置:
FDE Knowledge Base/04 Architecture/Patterns/08-Real-Time-Data-Architecture.md
Architecture Metadata(架构元数据)
Section titled “Architecture Metadata(架构元数据)”Architecture ID: ARCH-008
Category(类别):Data Foundation(数据底座)
Primary Business Problem(主要业务问题):Low-latency Processing and Response(低延迟数据处理与响应)
Complexity(复杂度):High(高)
AI Dependency(AI 依赖度):Low / Medium(低/中)
Data Dependency(数据依赖度):High(高)
Integration Complexity(集成复杂度):High(高)
Human Review(人工复核):Not needed(不需要)
Status: CoreVersion: v0.2Business Problem(业务问题)
Section titled “Business Problem(业务问题)”某些业务需要:
数据发生后,在很短时间内完成处理或响应。
例如:
- Fraud Detection(反欺诈检测)
- IoT Monitoring(物联网监控)
- Real-time Alerting(实时告警)
- Operational Monitoring(运营监控)
- Live Recommendation(实时推荐)
Important Question(先问的问题)
Section titled “Important Question(先问的问题)”先问:
多快才算足够快?
24h1h5m30s1s100ms不同答案对应完全不同的架构成本。
Architecture(架构)
Section titled “Architecture(架构)”Data Source(数据源) ↓Event / Stream Producer(事件 / 流生产者) ↓Message Broker(消息代理) ↓Stream Processing(流处理) ↓State / Feature Store(状态 / 特征存储) ↓Real-time Decision(实时决策) ↓Action / Alert / API(动作 / 告警 / 接口)同时通常有:
Stream(流)↓Durable Storage(持久化存储)↓Historical Analytics(历史分析)Components(组件)
Section titled “Components(组件)”- Producer(生产者)
- Broker(消息代理)
- Consumer(消费者)
- Stream Processor(流处理器)
- State Store(状态存储)
- Sink(数据汇)
- Monitoring(监控)
Reliability(可靠性)
Section titled “Reliability(可靠性)”必须考虑:
- At-least-once(至少一次投递)
- Duplicate(重复)
- Ordering(顺序)
- Replay(重放)
- Backpressure(背压)
- Dead Letter(死信)
- Consumer Lag(消费滞后)
Data Semantics(数据语义)
Section titled “Data Semantics(数据语义)”核心问题:
Exactly once?(精确一次?)At least once?(至少一次?)At most once?(至多一次?)很多业务最终采用:
At-least-once(至少一次)+Idempotent Consumer(幂等消费者)Failure Modes(失败模式)
Section titled “Failure Modes(失败模式)”- Consumer Lag(消费滞后)
- Duplicate Event(事件重复)
- Event Loss(事件丢失)
- Out-of-order Event(事件乱序)
- Schema Mismatch(结构不匹配)
- State Corruption(状态损坏)
When NOT to Use(不适用场景)
Section titled “When NOT to Use(不适用场景)”如果业务接受:
15 minutes30 minutes1 hourBatch / Micro-batch(批量 / 微批处理)往往更简单。
关联:Decision Guide:Batch vs Streaming(批量 vs 流式)