Hintergrund Datenaufbereitung
Hier soll näher erläutert werden, wie TV-Browser die Daten aufbereitet. Allgemeineres unter TV-Daten Tutorial. Weitere Infos auch im englischen Artikel (siehe Leiste links, Übersetzung erwünscht).
Inhaltsverzeichnis
Rohdaten holen und aufbereiten
Die verschiedenen Parser, die die Daten von den Sendern holen und ins TV-Browser-Format bringen, werden über das Tool PDSRunner gestartet. Die fertigen Daten werden pro Tag und Sender in einer Datei in das "raw"-Verzeichnis gespeichert.
Diff-Dateien erstellen
Das Tool PrimaryDataManager prüft nach Unterschieden der neuen Daten im raw-Verzeichnis zu den alten Daten aus früheren Durchläufen im prepared-Verzeichnis und erstellt nach Bedarf "update"-Dateien mit den Unterschieden.
Um den Traffic für die Datenanbieter gering zu halten, werden die Daten in verschiedene Dateien aufgeteilt, die auch getrennt im TV-Browser runtergeladen werden können. Dabei werden alle Dateien außer "base" nur angelegt wenn erforderlich.
- "base" enthält Uhrzeit, Titel und Daten wie Schauspieler, Länge usw.
- "more00-16" enthält die Beschreibungen für Sendungen zwischen 0 und 16 Uhr
- "more16-00" enthält die Beschreibungen für Sendungen zwischen 16 und 0 Uhr
- "picture00-16" enthält die Bilder für Sendungen zwischen 0 und 16 Uhr
- "picture16-00" enthält die Bilder für Sendungen zwischen 16 und 0 Uhr
- Für Tage mit > 255 Sendungen gibt es noch "additional"-Dateien
Die einzelnen Sendungen erhalten Ids, mit denen dann einer Sendung aus der base-Datei die richtige Beschreibung in der more-Datei und das richtige Bild aus "picture" zugeordnet werden kann.
Update-Dateien
Beim ersten Durchlauf haben die Dateien die Bezeichnung "full" (z.B. "more00-16_full"). Wenn sich Daten im Vergleich zum letzten Durchlauf geändert haben, werden "update"-Dateien angelegt, die durchnummeriert werden. Das zweite Update bei einer "more00-16"-Datei wäre dann "more00-16_update_2". Hat sich z.B. nur eine Beschreibung geändert, so wird nur von der "more"-Datei ein Update erstellt, "base" und "picture" bleiben unverändert. Allerdings wird die Änderung auch in die vorigen update-Dateien und die base-Datei eingepflegt. Also enthält auch "more00-16_update_1" und "more00-16_full" dann die neue Beschreibung und auch diese Dateien werden (im nächsten Schritt) neu auf die Server geladen.
Die "update"-Dateien enthälten die Id der Sendung bei der es eine Änderung gab, und die Änderung selbst.
Daten auf den Server laden
Mit dem MirrorUpdater werden die Dateien aus dem "prepared"-Verzeichnis zusammen mit ein paar anderen Infos auf die Server geladen.