Minimierung der Replizierkonflikte in der Praxis

Im Praxiseinsatz von Notes werden immer wieder Replizierkonflikte beobachtet. Grundsätzlich lassen sich diese durch das „Konzept der verteilten Datenhaltung“ (also x Repliken einer Datenbank) nie ganz ausschliessen.

Es gibt aber ein paar Faktoren, die die Anzahl der Konfliktdokumente in der Praxis reduzieren können. Nicht alle lassen sich in jeder Umgebung und für jede Anwendung umsetzen.

Hinweis:
Die gemachten Angaben beziehen sich auf Replizierkonflikte – nicht auf Speicherungskonflikte (mindestens 2 Personen ändern den gleichen Datensatz in der gleichen Datenbank). Speicherungskonflikte könnte man z.B. durch ein selbst programmiertes Record-Locking relativ einfach selbst verhindern. Oder man verwendet Notes/Dominio 6 – diese Version hat einen solchen Mechanismus „ab Werk“ integriert.

ACL Zugriffsebene für die Benutzer der Datenbank
Konfliktdokumente entstehen, wenn mindestens 2 Benutzer das gleiche Ddokument zwischen zwei Replizierungen editieren. Durch die Reduzierung der Zugriffsebene auf „Autor“ in der ACL und dem Einsatz von Autorenfeldern (möglicherweise mit dynamischer Inhaltssteuerung) können nicht mehr alle Benutzer an allen Dokumenten Änderungen vornehmen. So könnte z.B. in einer Workflow-Anwendung eine „Bearbeitungs-Reihenfolge“ für die Dokumente erreicht werden – das führt i.d.R. zu einer massiven Reduzierung der Konfliktdokumente.

Häufiges Replizieren der betroffenen Datenbanken
Wenn Benutzer A eine Änderung an einem Dokument vornimmt und diese Änderung wäre z.B. nach 1 Minute in alle Repliken der Datenbank repliziert, kann nun Benutzer B in einer anderen Replik eine Änderung am gleichen Dokument vornehmen. DAS produziert dann kein Konfliktdokument, denn die zusätzlichen Änderungen am Dokument wurden ja nicht zwischen den Replizierungen gemacht.

Ein Repliziertakt von einer Minute lässt sich in der Praxis natürlich nur in Ausnahmefällen realisieren. Grundregel: Je kürzer der Abstand zwischen zwei Replizierungen, desto kleiner die Anzahl der Konflikdokumente.

Anzahl der Dokumente in einer Datenbank
Hier hilft quasi der „Zufall“ weiter. Wenn eine Datenbank z.B. 10.000 Dokumente hat, ist es unwahrscheinlicher, dass zwei Personen den gleichen Datensatz editieren, als dies bei einer Anzahl von z.B. 100 Dokumenten der Fall ist.

Mit wachsender Anzahl der Dokumente werden bei gleicher Benutzeranzahl die Replizierkonflikte zumindest in der Theorie weniger.

Einsatz von Leserfeldern/Abschnitte mit kontrolliertem Zugriff
Auch durch gutes Anwendungsdesign unter Einsatz von Leserfeldern und Abschnitten mit kontrolliertem Zugriff sowie weiteren Massnahmen, die die „Editierbarkeit von Dokumenten“ steuern, kann die Anzahl der Konfliktdokumente ebenfalls reduziert werden.

So könnte man z.B. durch Leserfelder die Dokumente immer nur für die Personen „sichtbar“ machen, die zu diesem Zeitpunkt auch tatsächlich eine Änderung durchführen müssen. Das bringt aus der Sicht des Endanwenders möglicherweise sogar den Vorteil, dass die Anwendung übersichtlicher wird – es werden nur noch die Dokumente angezeigt, mit denen der Endanwender aktiv etwas zu tun hat.

Einsatz von Antwort-Dokumenten
Wenn die Anwendung es zulässt, könnte eine Teil der Felder aus dem Hauptdokument via einer Antwort-Maske in Antwortdokumente ausgelagert werden. Da hierdurch neue Dokumente entstehen, kann deren Zugriffsteuerung auch individueller als beim Einsatz eines einzigen Hauptdokumentes erfolgen. Vorteil: Es müssen nicht mehr zwingend mehrere Personen eine Änderung am gleichen Dokument vornehmen.

Einsatz der Notes-eigenen Versionskontrolle
Notes verfügt über eine „eingebaute“ Versionkontrolle für Dokumente (Eigenschaft einer Maske). So können z.B. neuere Versionen eines Dokumentes als „Antwortdokument zum gerade editierten Dokument“ gespeichert werden. Je nach Typ der Anwendung kann hierdurch die Anzahl der Konfliktdokumente reduziert werden.

Faktor Mensch
Sollten keine Mittel wie Autorenfelder, häufige Replikation usw. zum Einsatz kommen können, besteht (vorwiegend natürlich in kleineren Teams) auch die Möglichkeit zur Absprache der Benutzer – wer ändert grundsätzlich welche Dokumente?

Gerade diese Möglichkeit scheint allerdings in der Praxis kaum durchführbar – meist ist nur für wenige Tage eine Verbesserung spürbar… ;-)

Notes/Domino Version: ab 4.x