Harvesting von OAI-PMH-Schnittstellen und Transformation in METS/MODS für das Portal noah.nrw.
Go to file
Felix Lohmeier 192bbef02d ersetze .reverse()[0] durch [-1] 2021-02-10 11:23:31 +01:00
rules ersetze .reverse()[0] durch [-1] 2021-02-10 11:23:31 +01:00
tasks individuelle Portnummer für Münster 2021-02-10 11:14:27 +01:00
.gitignore Automatisierung OPUS Siegen 2021-01-14 16:51:39 +01:00
LICENSE Initial commit 2021-01-12 12:27:43 +01:00
README.md workaround für too many open files deutlicher machen 2021-01-20 15:48:54 +01:00
Taskfile.yml fix #22 Split ohne extra Zeichenkette 2021-02-03 15:11:17 +01:00
flowchart.mmd resolve #19 Neue Datenquelle: miami ULB Münster 2021-02-06 02:51:16 +01:00
flowchart.svg resolve #19 Neue Datenquelle: miami ULB Münster 2021-02-06 02:51:16 +01:00

README.md

Datenintegration für noah.nrw

Harvesting von OAI-PMH-Schnittstellen und Transformation in METS/MODS für das Portal noah.nrw

⚠️ Dies ist ein Prototyp für die Beta-Version des Portals.

Datenfluss

Datenflussdiagramm

Verwendete Tools

Systemvoraussetzungen

  • GNU/Linux (getestet mit Fedora 32)
  • JAVA 8+

Installation

  1. Git Repository klonen

    git clone https://github.com/opencultureconsulting/noah.git
    cd noah
    
  2. OpenRefine 3.4.1 (benötigt JAVA 8+)

    # in Unterverzeichnis openrefine installieren
    wget -O openrefine.tar.gz https://github.com/OpenRefine/OpenRefine/releases/download/3.4.1/openrefine-linux-3.4.1.tar.gz
    mkdir -p openrefine
    tar -xzf openrefine.tar.gz -C openrefine --strip 1 && rm openrefine.tar.gz
    # automatisches Starten des Browsers abschalten
    sed -i '$ a JAVA_OPTIONS=-Drefine.headless=true' "openrefine/refine.ini"
    # Zeitraum für automatisches Speichern von 5 Minuten auf 25 Stunden erhöhen
    sed -i 's/#REFINE_AUTOSAVE_PERIOD=60/REFINE_AUTOSAVE_PERIOD=1440/' "openrefine/refine.ini"
    
  3. openrefine-client 0.3.10

    # in Unterverzeichnis openrefine installieren
    mkdir -p openrefine
    wget -O openrefine/openrefine-client https://github.com/opencultureconsulting/openrefine-client/releases/download/v0.3.10/openrefine-client_0-3-10_linux
    chmod +x openrefine/openrefine-client
    
  4. metha 0.2.20

    a) RPM-basiert (Fedora, CentOS, SLES, etc.)

    wget https://github.com/miku/metha/releases/download/v0.2.20/metha-0.2.20-0.x86_64.rpm
    sudo dnf install ./metha-0.2.20-0.x86_64.rpm && rm metha-0.2.20-0.x86_64.rpm
    

    b) DEB-basiert (Debian, Ubuntu etc.)

    wget https://github.com/miku/metha/releases/download/v0.2.20/metha_0.2.20_amd64.deb
    sudo apt install ./metha_0.2.20_amd64.deb && rm metha_0.2.20_amd64.deb
    
  5. Task 3.2.2

    a) RPM-basiert (Fedora, CentOS, SLES, etc.)

    wget https://github.com/go-task/task/releases/download/v3.2.2/task_linux_amd64.rpm
    sudo dnf install ./task_linux_amd64.rpm && rm task_linux_amd64.rpm
    

    b) DEB-basiert (Debian, Ubuntu etc.)

    wget https://github.com/go-task/task/releases/download/v3.2.2/task_linux_amd64.deb
    sudo apt install ./task_linux_amd64.deb && rm task_linux_amd64.deb
    

Nutzung

  • Vorab ggf. ulimit erhöhen, um Abbruch durch "too many open files" zu vermeiden

    ulimit -n 10000
    
  • Alle Datenquellen harvesten, transformieren und validieren (parallelisiert)

    task
    
  • Eine Datenquelle harvesten, transformieren und validieren

    task siegen:default
    
  • Zwei Datenquellen harvesten, transformieren und validieren (parallelisiert)

    task --parallel siegen:default wuppertal:default
    
  • Links einer Datenquelle überprüfen

    task siegen:linkcheck
    
  • Cache einer Datenquelle löschen

    task siegen:delete
    
  • Verfügbare Tasks auflisten

    task --list
    

Konfiguration

OAI-PMH Data Provider

Für die Bereitstellung der transformierten Daten wird der dateibasierte OAI-PMH Data Provider oai_pmh genutzt. Installations- und Nutzungshinweise sind dort zu finden.