[Kobv-opus-tester] Fragen zur Migration von OPUS 3 nach 4
Jens Schwidder
schwidder at zib.de
Mi Apr 23 19:12:12 CEST 2025
Hallo,
ich hoffe es gibt irgendwo noch frische Erfahrungen zum Umstieg von OPUS
3 nach 4. Ich befürchte in den Hosting Teams ist die letzte Migration
schon eine ganze Weile her. Ich selbst bin erst mit OPUS 4 in die
Entwicklung eingestiegen und kann daher zu OPUS 3 nichts weiter sagen.
On 23.04.25 14:26, Holger Trapp wrote:
> Liebe Kolleginnen und Kollegen,
>
> die UB Chemnitz betreibt seit 2008 eine OPUS-basierte Universitätsbibliografie:
>
> https://www.bibliothek.tu-chemnitz.de/uni_biblio/
>
> Wir hatten dazu 2007 von der SULB Saarbrücken einen Software-Stand von OPUS 3.0
> übernommen, der schon für den Einsatz als Bibliografie vorbereitet war. Diesen
> haben wir gegen Angriffe gehärtet und schrittweise an unsere Bedürfnisse
> angepasst (Änderungen am Datenbankschema und PHP-Code, so dass er aktuell unter
> PHP 8.2 lauffähig ist), wobei die Grundstruktur von OPUS 3.0 erhalten blieb und
> wir keine Updates auf höhere Versionen vornahmen.
>
> Seit Ende März 2025 evaluieren wir das OPUS 4.8. Unser Ziel ist es, die
> Bibliografie auf eine neue technische Basis zu stellen und das neue System auch
> als Volltext-Repo nutzen zu können.
>
> Damit stellt sich die Frage der Datenmigration von OPUS 3 nach 4. Hier wären
> wir an Erfahrungen und Tipps sowie ggf. an Tools anderer Häuser interessiert.
>
> Gelesen hatten wir vom OPUS4-Projekt "migration" (https://github.com/OPUS4/migration).
> Wäre das nach wie vor die primäre Empfehlung? Wenn ja, welche PHP-Version wäre
> die höchste, die hier unterstützt wird? Ein Syntax-Check mit "php -l" unter PHP
> 8.2 ergab keine Probleme.
Das Projekt "migration" enthält Code, der aus der OPUS 4 Application
ausgelagert wurde, als es keinen akuten Bedarf mehr dafür gab. Der Code
wurde nicht weiter gepflegt und seit OPUS 4.4.5 hat sich viel verändert.
Die Dokumentation ist da leider auch nicht mehr hilfreich.
https://github.com/OPUS4/userdoc/blob/gh-pages/update/migration.md
Am Besten ist daher wahrscheinlich wirklich eine frische OPUS 4 Instanz
und dann Skripte, die die Daten von der alten Datenbank in die neue
übertragen. SWORD ist vielleicht auch eine Möglichkeit, aber vermutlich
lassen sich darüber nicht alle Metadaten übertragen.
OPUS 4.8.* ist noch nicht PHP 8.2 kompatibel. Vieles funktioniert, aber
leider nicht alles. OPUS 4.9, dass hoffentlich diesen Sommer endlich
veröffentlicht werden kann, wird den PHP 7.1 Support fallen lassen und
damit hoffentlich den Weg für PHP 8.2 ebnen.
Anschließend soll es auch mit dem Umstieg von Zend zu Laminas und
Doctrine weiter gehen. Wenn Zend entfernt ist, können wir hoffentlich
auch zügig kompatibel zu PHP 8.3+ werden. OPUS 4 hat leider noch ein
paar sehr alte Abhängigkeiten.
> Die von uns hinzugefügten Datenbankfelder (z.B. die Kostenstellen der Autoren,
> um die Bibliografie auch für die Bewertung der Publikationstätigkeit der
> Uni-Angehörigen nutzen zu können) müssten wir in den Skripten ergänzen oder
> anderweitig migrieren, sofern wir sie weiter nutzen wollen und können.
Aktuell gibt es keine Möglichkeit Personen in OPUS 4 mit weiteren
Informationen anzureichern. Ich gehe unten noch einmal weiter darauf ein.
> Bei OPUS 4 streben wir dabei nach Möglichkeit keine großen eigenen Anpassungen
> an, um Updates zu erleichtern. Dennoch die Frage: Hat jemand Erfahrungen mit
> der Migration eigener Felder?
Lokale Felder für Dokumente können als Enrichments abgebildet werden.
Eigene Felder für andere Objekte werden bisher nicht unterstützt.
>
> Eine andere Idee war noch, die Daten unserer Bibliografie mit einem eigenen
> Tool in SWORD zu exportieren und sie über diesen Weg nach OPUS 4 zu
> importieren. Liegen dazu Erfahrungen und ggf. Skripte vor?
Die SWORD Schnittstelle funktioniert auf jeden Fall. Es kann nur sein,
dass das Import-Format nicht alle gewünschten Metadaten unterstützt. So
etwas dann bitte als Issue auf GitHub melden.
Ich fände es gut, wenn unsere SWORD-Schnittstelle auch Standard-Formate
unterstützen würde, aber das ist alles eine Frage der Kapazitäten für
die Entwicklung.
> Existieren konkrete Erfahrungen mit zusätzlichen Personenmerkmalen wie
> Kostenstellen oder Institutsnamen? Wie lassen sich diese mit den vorhandenen
> OPUS-Mitteln sinnvoll abbilden?
Das hilft Ihnen erst einmal nicht, aber es wäre nützlich diese
Anwendungsfälle als Issues auf GitHub festzuhalten.
Der Umstieg auf Laminas (im Prinzip Zend 4) und Doctrine soll OPUS 4 auf
eine moderne technische Basis stellen, für die nächsten 15 Jahre
Entwicklung. Dafür müssen sehr viele Altlasten bereinigt werden. Es ist
eine sehr große Aufgabe. Was mit dem Umstieg auf Doctrine auch passieren
soll, sind grundlegende Veränderungen im Datenmodell, unter anderem
- Trennung von "System" Enrichments und lokalen Metadaten-Feldern
- Beseitigung der Sonderbehandlung von Enrichments
- Erweiterbarkeit aller Datenobjekte
Enrichments sollen in Zukunft einfach lokal definierte Felder sein, im
Gegensatz zu den Standard-Feldern. Es sind aber alles Felder, die
ansonsten gleich behandelt werden. Es soll das Konzept von "Harten" und
"Soften" Feldern geben. Die "hart" verdrahteten Felder werden direkt auf
Spalten in der Datenbank abgebildet. Die "soften" Felder, wie die jetzt
Enrichments, in allgemeinen Tabellen gespeichert. Mit diesen Änderungen
soll die Erweiterbarkeit aller Objekte kommen. Zusätzliche lokale Felder
für Personen sollen damit also auch möglich werden.
Das alles ist vom Umstieg auf Doctrine abhängig, weil es keinen Sinn
macht die alte Codebasis jetzt noch weiter auszubauen. Über den Code für
das Datenmodell und die Datenbankanbindung hinaus, müssen dafür
natürlich auch die Formulare und viele andere Aspekte angepasst werden.
Wie gesagt, ein großer Job.
Eine Zeitrahmen kann ich dafür nicht angeben, weil ich bei der Kern
Entwicklung alleine unterwegs bin und es immer davon abhängt wie viel
Ablenkung generiert wird. Ich kann nur eine Aufgabe nach der anderen
angehen.
Ziele für dieses Jahr sind auf jeden Fall Fortschritte mit Doctrine
(Laminas macht mir wenig Sorgen danach), ein neues Publish-Modul und
Verbesserungen bei der Personenverwaltung, insbesondere auch als
Schritte für eine umfassendere ORCiD Integration. Dafür müssen auch
weitere Informationen für Personen gespeichert werden.
Vielleicht habe Sie mit Ihrer Instanz da schon Erfahrungen gesammelt,
die für die weitere Planung hilfreich sind. Wir sollten da im Dialog
bleiben.
> Gibt es für OPUS 4 eine Dokumentation der SQL-Tabellen analog zum Dokument
> opus-techdoku-3_0.pdf?
Ich glaube nicht. Ich würde einfach einfach eine Instanz aufsetzen und
mir das Schema anschauen. Wenn es Fragen dazu gibt, können sicherlich
auch die Hosting Teams, andere Betreiber und ich helfen.
> Viele Grüße aus Chemnitz
> Nils Trampel und Holger Trapp
>
Aktuell muss erst einmal OPUS 4.9 fertig werden. Danach sind vielleicht
Teilschritte möglich, um das Datenmodell zu erweitern, auch wenn noch
nicht alles umgebaut wurde.
Viele Grüße aus Berlin
Jens Schwidder
>
> --
> Kobv-opus-tester mailing list
> Kobv-opus-tester at zib.de
> https://listserv.zib.de/mailman/listinfo/kobv-opus-tester
--
==============================================================
Jens Schwidder
Kooperativer Bibliotheksverbund Berlin-Brandenburg (KOBV)
Zuse Institute Berlin (ZIB)
Takustr. 7, D-14195 Berlin
Telefon: (030) 841 85 - 308
E-Mail: schwidder at zib.de
WWW: http://www.kobv.de
==============================================================
Mehr Informationen über die Mailingliste Kobv-opus-tester