AI Glossary
The complete dictionary of Artificial Intelligence
Event Sourcing
Persistence pattern where all state changes are recorded as a sequence of immutable events rather than as a stored current state. Allows complete reconstruction of system state and temporal data auditability.
Windowing
Technique for segmenting data streams into time-based or counter-based windows to perform aggregations and analyses. Enables computing metrics over defined periods (tumbling, sliding, session windows) in streaming systems.
Watermarking
Time management mechanism in streaming systems that tracks processing progress and handles late data. Defines temporal boundaries to guarantee computation completeness while allowing processing of late arrivals.
Backpressure
Flow control mechanism allowing streaming systems to manage throughput imbalances between producers and consumers. Prevents system saturation by dynamically adapting processing speed to available capacities.
State Management
Set of mechanisms for maintaining and updating computational state in distributed streaming applications. Essential for aggregation, join, and pattern detection operations on continuous data streams.
Checkpointing
Periodic backup mechanism of a streaming application's state to guarantee recovery after failure. Allows exact resumption of processing from the last backup point without data loss.
Time-Series Database
Database system optimized for storing and querying temporal data with specific indexing and compression. Designed to efficiently handle large-scale timestamped metrics and events.
Pub/Sub Model
Asynchronous communication pattern where publishers transmit messages to subscribers without direct coupling between them. Fundamental for distributed streaming system architecture and horizontal scalability.
Micro-batching
Hybrid approach processing data in small batches of very short duration to combine the advantages of batch and streaming. Offers a compromise between reduced latency and high throughput in distributed processing frameworks.
Event Time vs Processing Time
Fundamental distinction between when an event actually occurs and when it is processed by the system. Essential for ensuring temporal accuracy of analyses in the presence of asynchronous networks and systems.
Real-time Dashboard
Visualization interface dynamically updating key indicators and metrics as new data arrives. Enables continuous monitoring and responsiveness to changes in operations and systems.
CQRS (Command Query Responsibility Segregation)
Architectural pattern separating modification operations (commands) from read operations (queries) to optimize real-time performance. Allows data models and scaling strategies adapted to each type of operation.