@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix edu: <https://knobit.org/def/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <https://schema.org/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://knobit.org/id/task/dii-flow-resilience/I1> a edu:Question ;
    rdfs:label "I1 (2 points)"@en ;
    dcterms:license <https://creativecommons.org/licenses/by/4.0/> ;
    schema:hasPart <https://knobit.org/id/register/data-integration#DI-356>,
        <https://knobit.org/id/register/data-integration#DI-357> ;
    schema:identifier "I1" ;
    schema:position 4 ;
    schema:text "Written answers, 1 each. (a) Q-1 explains that delivery is at least once, so a replay from the last committed offset redelivers events already applied; the upsert on customer_id (guarded by log position) makes reapplying them harmless - an idempotent receiver - and an event the consumer cannot apply goes to the dead-letter topic, whose owner reviews it and republishes it after the fix. (b) Q-2 explains that Kafka orders only within a partition: card-txn keyed by card_id gives order per card, none across a customer's cards in different partitions; per-customer order needs re-keying by customer_id or a resequencer by customer_id on event_time."@en .

edu:Question rdfs:label "Question"@en,
        "Küsimus"@et .

<https://knobit.org/id/register/data-integration#DI-356> rdfs:label "dii-flow-resilience I1a: replay from the last committed offset made safe by an idempotent receiver, rejects to a dead letter channel"@en .

<https://knobit.org/id/register/data-integration#DI-357> rdfs:label "dii-flow-resilience I1b: Kafka orders within a partition only; per-customer order by re-keying or a resequencer"@en .

