Hintergrund Datenaufbereitung

Aus TV-Browser Wiki
Version vom 15. Februar 2009, 19:18 Uhr von Jo⧼word-separator⧽⧼parentheses⧽ ⧼parentheses⧽
⧼revision-nav⧽
Wechseln zu: Navigation⧼comma-separator⧽Suche

Hier soll näher erläutert werden, wie TV-Browser die Daten aufbereitet. Allgemeineres unter TV-Daten Tutorial

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

Wenn sich Daten im Vergleich zum letzten Durchlauf geändert haben, werden "update"-Dateien angelegt, die durchnummeriert werden. Das zweite Update bei einer "picture00-16"-Datei wäre dann "picture00-16_update_2". Hat sich z.B. nur ein Bild geändert, so wird nur von der "picture"-Datei ein Update erstellt, "base" und "more" bleiben unverändert.

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.