Azure Event Hubs is een volledig beheerde, real-time data-inname service die is ontworpen om miljoenen gebeurtenissen per seconde te streamen en te verwerken. Het wordt vaak gebruikt voor het verzamelen van log- en telemetriegegevens van verschillende bronnen zoals applicaties, apparaten en infrastructuur, en kan deze gegevens vervolgens doorsturen naar andere services voor opslag of verdere verwerking.
Event Hubs speelt een cruciale rol in big data architecturen door als een buffer en router te fungeren voor enorme hoeveelheden binnenkomende gegevens, waardoor analyses in real-time mogelijk zijn en vertragingen worden geminimaliseerd.
Massale gegevensinname: Ondersteunt het streamen van miljoenen gebeurtenissen per seconde.
Real-time verwerking: Integreert naadloos met Azure Stream Analytics en Apache Kafka voor real-time data-analyse.
Betrouwbare gegevensopslag: Biedt robuuste replicatie en retentieopties om gegevens veilig te bewaren.
Flexibele schaalbaarheid: Schaal dynamisch op of af op basis van de hoeveelheid binnenkomende gegevens.
Beveiliging: Ondersteunt end-to-end versleuteling en integratie met Azure Active Directory (AAD) voor rolgebaseerde toegangscontrole.
Event Hub: Dit is de centrale entiteit in Event Hubs, waar gebeurtenissen naar worden verzonden. Het kan worden gezien als een “poort” die gebeurtenissen accepteert en distribueert.
Event Producer: Een applicatie of service die gegevens naar een Event Hub stuurt.
Partitions: Fysieke logische indelingen van de Event Hub, die zorgen voor parallelle verwerking van gegevens.
Event Consumer: Een applicatie die gebeurtenissen leest van een Event Hub, zoals een log-analyse systeem of een data pipeline.
Hieronder vindt u de structuur en de validatieregels voor een JSON-object dat een 'Event' representeert volgens de aangeleverde JSON-schema-definitie. Deze handleiding is bedoeld voor ontwikkelaars en system integrators die werken met de Event datastructuur binnen systemen die gebruikmaken van JSON voor data uitwisseling.
Eigenschap | Type | Beschrijving | Vereisten |
---|---|---|---|
| Object | Bevat de aanvraaggegevens | Vereist |
| Integer | Unieke ID voor de aanvraag | 1000000000 - 9999999999 |
| Array | Lijst van aansluitingsobjecten | Unieke items, |
| Integer | Unieke ID voor het aansluitingsobject | 1000000000 - 9999999999 |
| Array | Unieke IDs voor de disciplines | 1000000000 - 9999999999 (array) |
| Array | IDs van bijlagen | 1000000000 - 9999999999 |
| String | Operatie die uitgevoerd moet worden | 4-64 alfanumerieke tekens of underscores, Vereist |
aanvraag
Object StructuurHet aanvraag
object is het kernonderdeel van de Event
structuur.
aanvraagId
Type: Integer
Omschrijving: Een unieke identificatiecode voor de aanvraag.
Restricties: Moet een waarde hebben tussen 1.000.000.000 en 9.999.999.999.
aansluitingsObjecten
ArrayType: Array
Omschrijving: Een verzameling van objecten die de verschillende aansluitingsentiteiten beschrijven.
aansluitingsObjecten
objectId
Type: Integer
Omschrijving: Unieke identificatiecode voor een aansluitingsobject.
Restricties: Waarde tussen 1.000.000.000 en 9.999.999.999.
disciplineIds
Type: Array
Omschrijving: Een lijst van unieke identificatiecodes voor de betrokken disciplines.
Restricties: Unieke items binnen de gespecificeerde numerieke grenzen.
bijlageIds
ArrayType: Array
Omschrijving: Een lijst van identificatiecodes voor bijlagen.
Restricties: Waarden tussen 1.000.000.000 en 9.999.999.999.
operation
StringType: String
Omschrijving: De naam van de operatie die moet worden uitgevoerd.
Restricties: Moet voldoen aan de reguliere expressie die een patroon van 4 tot 64 alfanumerieke tekens of underscores specificeert.
AanvraagIngediend
- Deze operatie geeft aan dat de aanvraag succesvol is ingediend en klaar is om opgehaald te worden door de netbeheerder.
Intake
- Deze operatie geeft aan dat er een intake vraag beschikbaar is voor de netbeheerder.
OfferteUpdate
- Deze operatie geeft aan dat er een handmatige status update is voor een offerte (bv. aanvrager heeft offerte goedgekeurd/geweigerd).
StatusGeannuleerd
- Deze operatie geeft aan dat er een status update is geweest met status 9.5
StatusGeannuleerdBuitenLIP
- Deze operatie geeft aan dat er een status update is geweest met status 9.6
{ "aanvraag": { "aanvraagId": 1000000001, "aansluitingsObjecten": [], "bijlageIds": [] }, "operation": "AanvraagIngediend" } |
{ "aanvraag": { "aanvraagId": 1000000002, "aansluitingsObjecten": [ { "objectId": 1000000001 }, { "objectId": 1000000002 } ], "bijlageIds": [] }, "operation": "Intake" } |
{ "aanvraag": { "aanvraagId": 1000000003, "aansluitingsObjecten": [ { "objectId": 1000000003, "disciplineIds": [1000000004, 1000000005] }, { "objectId": 1000000004, "disciplineIds": [1000000006, 1000000007] } ], "bijlageIds": [1000000008, 1000000009] }, "operation": "OfferteUpdate" } |
{ "$id": "<https://example.com/person.schema.json>", "$schema": "<https://json-schema.org/draft/2020-12/schema>", "type": "object", "description": "Event", "additionalProperties": false, "properties": { "aanvraag": { "type": "object", "additionalProperties": false, "properties": { "aanvraagId": { "type": "integer", "minimum": 1000000000, "maximum": 9999999999 }, "aansluitingsObjecten": { "type": "array", "uniqueItems": true, "items": { "type": "object", "additionalProperties": false, "properties": { "objectId": { "type": "integer", "minimum": 1000000000, "maximum": 9999999999 }, "disciplineIds": { "type": "array", "uniqueItems": true, "items": { "type": "integer", "minimum": 1000000000, "maximum": 9999999999 } } }, "required": [ "objectId" ] } }, "bijlageIds": { "type": "array", "items": { "type": "integer", "minimum": 1000000000, "maximum": 9999999999 } } }, "required": [ "aanvraagId" ] }, "operation": { "type": "string", "pattern" : "^[a-zA-Z_]{4,64}$" } }, "required": [ "aanvraag", "operation" ] } |