Realtime data wordt direct na het genereren geleverd en verwerkt. Een beurskoers wordt elke seconde bijgewerkt. Een fraudedetectiesysteem beoordeelt een transactie terwijl de klant wacht. Een app voor autodelen koppelt chauffeurs en passagiers binnen enkele seconden. De waarde zit hem in de snelheid. Een fraudewaarschuwing die een uur na de transactie binnenkomt, is nutteloos. Een verkeersupdate die na de rit binnenkomt, is alweer achterhaald. Realtime data maakt beslissingen mogelijk die nu genomen moeten worden.
De infrastructuur verschilt van batchverwerking. Streamverwerkingsplatformen zoals Kafka, Flink en Spark Streaming verwerken continue datastromen. Ze verwerken gebeurtenissen zodra ze binnenkomen, vaak binnen milliseconden. De architectuur is complexer dan bij batchverwerking. Je hebt berichtenwachtrijen nodig om data te bufferen, streamprocessors om deze te transformeren en opslag met lage latentie om de data te leveren. Je moet ook omgaan met te laat binnenkomende data, gebeurtenissen in een verkeerde volgorde en exact-once verwerking. Dat zijn lastige problemen. Realtime systemen zijn bovendien duurder om te bouwen en te beheren. De vraag is of de toepassing de complexiteit rechtvaardigt. Fraudebestrijding, realtime biedingen en industriële monitoring doen dat wel. Maandelijkse rapporten en nachtelijke salarisverwerking niet. Realtime is een vereiste, geen prestige. Gebruik het wanneer latentie belangrijk is. Gebruik batchverwerking wanneer dat niet het geval is.
Realtime-eigenschappen
- Lage latentie — milliseconden tot seconden
- Continu — verwerkt gebeurtenissen zodra ze binnenkomen
- Op streams gebaseerd — berichtenwachtrijen en streamprocessors
- Complex — verwerkt te late en niet-opeenvolgende gegevens
- Duur — meer infrastructuur dan batchverwerking
Realtime data gaat over het hier en nu. De waarde zit hem in handelen voordat het moment voorbij is.
Comments
No comments yet. Be the first to share a thought.
Leave a comment