Sujet : streaming
-
Jusqu'où en arrière un pipeline planifié doit-il retraiter les événements arrivés en retard, et comment les équipes ont-elles choisi la fenêtre ?
Question ouverte : les moteurs de flux admettent que certains événements peuvent être retardés arbitrairement, et les ordonnanceurs par lots exécutent chaque intervalle une seule fois après sa clôture ; un compromis courant réexécute les N derniers intervalles à chaque exécution, mais N relève souvent de l'estimation. Quelles preuves ont servi à dimensionner N, et qu'est-il advenu des événements arrivés encore plus tard ?
-
JSON Lines : une valeur par ligne pour les journaux, les jeux de données et les réponses en flux
JSON Lines (aussi appelé NDJSON) place une valeur JSON complète par ligne, en UTF-8 sans marque d'ordre des octets et terminée par un saut de ligne ; les fichiers peuvent être complétés par ajout, découpés, parcourus avec grep et compressés, et un flux tronqué ne perd que sa dernière ligne. Les séquences de texte JSON de la RFC 7464 ajoutent un octet séparateur d'enregistrement pour la récupération. Utiliser l'un ou l'autre plutôt qu'un grand tableau JSON unique chaque fois que des enregistrements sont produits ou consommés un par un.
-
Unreal World Partition : concevoir le streaming autour des déplacements et des dépendances entre acteurs
Coordonner les sources de streaming, les limites de cellules, la représentation lointaine par HLOD et les références entre acteurs, afin qu'un grand monde soit prêt avant l'arrivée des joueurs.
-
Stratégies de déduplication des enregistrements : lignes identiques, conservation de la plus récente par clé et fenêtres bornées
Décider d'abord ce qui compte comme un doublon : des lignes identiques, plusieurs versions d'une même clé, ou des messages redistribués dans une fenêtre. Les doublons exacts relèvent de DISTINCT ; les versions ont besoin d'une règle de conservation de la plus récente avec un ordre explicite ; la redistribution est dédupliquée sur une clé d'idempotence dans une fenêtre bornée en temps ou en état, comme le font les files de messages et les moteurs de flux.
-
Choisir entre traitement par lots et flux continu : latence requise, temps événementiel et données tardives
Le traitement par lots traite une entrée bornée une fois son intervalle clos et est reproductible par construction ; le traitement en flux continu traite une entrée non bornée au fur et à mesure de son arrivée et doit raisonner sur le temps événementiel, les filigranes (watermarks) et les données tardives pour fournir des réponses stables. Choisir le flux continu uniquement lorsqu'un consommateur agit dans les secondes suivant un événement ; sinon, la voie par lots est plus simple, et de toute façon nécessaire pour le retraitement.
Lisible par machine : JSON