KSH-Statistik und Rohdatensätze – Import und Speicherung

Indikatorimport, Dateiabruf, CSV- und SDMX-ML-Verarbeitung, Speicherung, Diagramm-Endpunkte und Rechteschlüssel.

Überblick

ksh/stat importiert NUTS3-Indikatoren und stellt sie im Diagramm dar, ksh/dataset zeigt die Rohzeilen heruntergeladener Datensätze. Beide lösen die aktive API-Konfiguration mit dem Code „ksh“ auf (Unternehmen → Gruppe → global).

Datenmodell

Die Tabellennamen tragen in der Datenbank das installationseigene Präfix.

Tabelle oder OrtRolleSchlüssel, Hauptfelder
ksh_settlement_statIndikatorwerteeindeutiger Schlüssel (geo, Jahr, Indikator), Wert
ksh_dataset_rowRohdatenzeilenDatensatz, Ressource, geo, Zeitraum, Indikator, Einheit, Wert, row_json
DIR_STORAGE/tmp_ksh/temporärer Download-OrdnerCSV- und XML-Dateien

Ablauf

  1. stat.import: lädt gemäß der Liste stat_indicators (leer: die 2 eingebauten Indikatoren) jede Ressource einmal (ksh->datasetData), filtert auf NUTS3, wendet einen optionalen Spaltenfilter an, normalisiert die Zahl und führt ein Upsert aus; bei Teilfehlern werden auch die Fehler gemeldet.
  2. stat.fetchfiles: lädt die Datensätze aus raw_datasets (oder einen Parameter dataset) nach tmp_ksh/ (ksh->downloadDatasets).
  3. stat.processfiles: info=1 listet die geladenen CSV-Dateien; file= übernimmt eine CSV stapelweise per Upsert in die Rohtabelle. Der Dateiname durchläuft basename, nur .csv; die Datei wird hier nicht gelöscht.
  4. dataset.sync: info=1 liefert die zu verarbeitenden Paare (Datensatz, Ressource); für eine Ressource: Download, Löschen früherer Zeilen (deleteByResource), Verarbeitung von CSV oder SDMX-ML-XML per Stapel-Upsert, danach Löschen der Datei. ext nur csv oder xml.
  5. Diagramme: stat.chartdata im Modus county (jüngstes Jahr je Komitat) oder trend (Zeitreihe eines Komitats); dataset.chartdata im Modus auto.

Berechtigungen

  • ksh/stat: list (Liste und Diagramm), import, delete, debug.
  • ksh/dataset: list mit Inhaltsbereich auf Geo-Codes (Regeln ksh_dataset / geo); import, delete, debug. dataset.clear (vollständiges Leeren) nur für den Super-Admin.

Hintergrundaufgabe

Der direkte Einstieg cron/kshfetch erledigt denselben Abruf und dieselbe Verarbeitung wie „Abrufen & verarbeiten“; er gehört nicht zur zentralen Warteschlange, eine Authentifizierungsprüfung ist im Controller nicht erkennbar.

Bekannte Einschränkungen

  • Der Endpunkt dataset.chartdata wendet den Inhaltsbereich der Geo-Codes nicht an.
  • Nach processfiles bleibt die CSV im Download-Ordner.