Skip to content

Scripte und Konfigurationsdateien für den ETL-Workflow des Online-Katalogs des Deutschen Literaturarchivs Marbach

Notifications You must be signed in to change notification settings

dla-marbach/dla-opac-transform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

472 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dla-opac-transform

Scripte und Konfigurationsdateien für den ETL-Workflow des Online-Katalogs des Deutschen Literaturarchivs Marbach https://www.dla-marbach.de/katalog

Formatdokumentation

siehe Dokumentation Internformat

Voraussetzungen

Installation

OpenRefine, orcli und Apache Solr:

task install

Nutzung

Das Arbeitsverzeichnis wird über die Variable DIR gesetzt. Die Quelldateien im TSV-Format müssen in einem Unterverzeichnis input bereitgestellt werden.

Weitere Variablen:

  • MEMORY: Wieviel Arbeitsspeicher OpenRefine verwenden darf. Default: 2G
  • PORT: Der von OpenRefine zu verwendende Port. Default: 3333

Beispiel für Arbeitsverzeichnis data mit Quelldateien in data/input, 4 GB Java heap space für OpenRefine und Port 3334:

task DIR=data MEMORY=4G PORT=3334

Das Verzeichnis data ist bereits in .gitignore gelistet.

Entwicklung

orcli im interaktiven Modus starten (vgl. http://localhost:3333):

task dev

Indexierung in Solr testen (vgl. http://localhost:8983):

task solr

Konvertierung der JSONL-Daten in YAML:

task yaml

Vorgehen bei Erweiterungen

  1. Solr Schema erweitern
  2. Beispieldaten ergänzen in example/input
  3. OpenRefine Transformationsregeln ergänzen in config/main.
    • Dazu ggf. orcli im interaktiven Modus starten mit task dev
    • JSON aus OpenRefine-History in YAML konvertieren
  4. Daten generieren und Indexierung testen
    task main yaml solr
  5. Ergebnisse prüfen mit git diff
    git diff example/output/*.yaml
    git diff -U0 --word-diff-regex='[^,]+' --word-diff=porcelain example/output/*.jsonl
  6. Bei Änderung an exportDC oder exportMODS Daten validieren
    task validate
  7. Dokumentation in docs/internformat.csv
  8. Solr Konfiguration: Standardwert für Feldliste (fl) anpassen
    tail -n +2 docs/internformat.csv | cut -d , -f 2 | sort | uniq | grep -v 'export' | grep -v 'confidential' | head -c -1 | tr '\n' , | sed 's/,/, /g'
  9. Git commit und push
  10. schemaVersion in scripts/main.sh hochzählen
  11. Erneut Daten generieren
    task main yaml
  12. Erneut Git commit und push
  13. GitHub Release Notes
  14. Konfiguration des Solr auf Produktivsystem aktualisieren

About

Scripte und Konfigurationsdateien für den ETL-Workflow des Online-Katalogs des Deutschen Literaturarchivs Marbach

Resources

Stars

Watchers

Forks