Synchronisierung

Aus Marburger Medien

Wechseln zu: Navigation, Suche
(Inhalte)
 
Zeile 1: Zeile 1:
-
Zurück zu [[Internetseiten Programmierung]]
+
zurück zu [[IT-Systeme Online]]
-
== Technische Aspekte ==
+
==Grundlagen==
-
Daten werden in Bereiche unterteilt. Diese Bereiche werden immer nur in eine Richtung syncronisiert.  
+
Die Daten der Stiftung liegen im wesentlichen in zwei Sytemen:
 +
* SAP-Warenwirtschaft im Hause der Stiftung
 +
* Intrazone Datenbank auf dem Webserver beim Provider Grove
 +
Diese beiden Datenbestände müssen regelmäßig abgeglichen werden. Dies ist das Ziel der Synchronisation.
-
Beispiele:
+
== Technische Umsetzung ==
-
*Newsletter: Anmeldung erfolgt auf der Intranetseite. Syncronisations Bereich: Intranet -> SAP
+
Der Abgleich zwischen den beiden Parteien Web und SAP wird über XML Dateien geregelt. Diese Dateinen werden in das Verzeichnis
-
*Personendaten: werden auf der Intranetseite gepflegt. Syncronisations Bereich: Intranet -> SAP
+
-
*Produktportfolio: werden in der SAP gepflegt.  Syncronisations Bereich: SAP -> Intranet
+
 +
/sap-sync
-
=== Syncronisation von Datenbankdaten ===
+
auf dem Webserver der Intrazone abgelegt.
-
Datenbankdaten sind Daten welche in Tabellen einer Datenbank abgelegt sind. Dazu gehören z.B. die User-Tabelle.
+
Es werden Bereiche festgelegt (z.B. Bereich Bestellungen). Jeder Bereich besitzt einen eigenen Ordner:
-
Da die Datenbanktabellen des Intranetsystems bedingt durch Updates und Änderungen in den verwendeten Modulen
+
/sap-sync/order
-
strukturellen Änderungen unterworfen sein werden, ist für die Syncronisation eine stabile Schnittstelle erforderlich.
+
/sap-sync/product
-
Diese Schnittstelle definiert eine Datenstruktur für die Übergabe.
+
/sap-sync/user
-
Für die Syncronisation verbindet sich die SAP mit der Datenbank.
+
Zusätzlich existieren die Sonderordner:
-
Für die Syncronisation '''Bereich: Intranet -> SAP'''
+
/sap-sync/commited  #als Archiv für Übertragungsdateinen
-
werden die geforderten Daten aus der Schnittstelle ausgelesen. (Wie diese Daten in die SAP eingetragen werden ist nicht Bestandteil dieses Betrachtung).
+
/sap-sync/images  #zum übertragen von Bildern
 +
/sap-sync/log  #für Logfiles
-
Für die Syncronisation '''Bereich: SAP -> Intranet'''
+
Für jeden Bereich ist immer eine Partei Master und eine Partei Slave. Der Master schreibt XML-Dateien in den Ordner. Der Slave liest XML-Dateien aus dem Ordner und verschiebt diese abschließend in den Sonderordner commited.
-
werden die geforderten Daten in die Schnittstelle eingetragen. (Wie diese Daten aus der SAP ausgelesen werden ist nicht Bestandteil dieses Betrachtung).
+
-
====Bereich "Intranet -> SAP"====
+
Binärdaten wie z.B. Bilder werden vom Master in den Sonderordner /sap-sync/images abgelegt und sind vom Slave zu entfernen.
-
Für diesen Bereich werden auf der Datenbank Views mit einer festgelegten Datenstruktur angelegt. In diesen Views werden
+
==Bereiche==
-
dann die geforderten Inhalte abgebildet. Die Datenstruktur der Views '''IST''' die gefordete Schnittstelle. Bei Änderungen in
+
-
der Datenstruktur des Intranetsystems müssen damit nur die Views angepasst werden. Dies eigentliche Syncronisation bleibt
+
-
davon unberührt. Bei einer Änderung von Inhalten in der Intranetdatenbank werden diese neuen Inhalte automatisch in den Views
+
-
abgebildet.
+
-
====Bereich "SAP -> Intranet"====
 
-
Für diesen Bereich werden auf der Datenbank Tabellen mit einer festgelegten Datenstruktur angelegt. Aus diesen Tabellen werden
+
zurück zu [[IT-Systeme Online]]
-
die Inhalte über Views im Intranetsystem abgebildet. Die Datenstruktur der Tabellen '''IST''' die gefordete Schnittstelle. Bei Änderungen in
+
-
der Datenstruktur des Intranetsystems müssen damit nur die Views angepasst werden. Dies eigentliche Syncronisation bleibt
+
-
davon unberührt. Bei einer Änderung von Inhalten in der Schnittstelle werden diese neuen Inhalte automatisch in den Views und damit im Intranet
+
-
abgebildet.
+
-
 
+
-
=== Syncronisation von Dateien ===
+
-
 
+
-
Dies Syncronisation von Dateien wird über die gängigen Mechanismen zur Filesyncronisation geregelt. Diese sind z.B.
+
-
 
+
-
* [http://de.wikipedia.org/wiki/Unison_%28Programm%29 Unison] (bevorzugt einzusetzen)
+
-
* [http://de.wikipedia.org/wiki/Rsync Rsync] (sehr gut, aber immer nur in eine Richtung)
+
-
* mirror über FTP (Notlösung, funktioniert aber)
+
-
 
+
-
==Inhalte ==
+
-
 
+
-
=== Müssen über die MySQL mit der SAP Synchronisiert werden ===
+
-
 
+
-
==== Transaktionen ====
+
-
 
+
-
– Aufträge (Bestellungen)
+
-
 
+
-
– Spenden
+
-
 
+
-
==== Stammdaten ====
+
-
 
+
-
– Strukturdaten
+
-
 
+
-
– Personen-Daten (Adresse, E-Mail Adresse etc)
+
-
 
+
-
==== Newsletter Anmeldungen ====
+
-
 
+
-
Synchronisiert werden müssen die E-Mail Adressen der Newsletteranmeldungen mit den E-Mail Adressen in den Stammdaten. Es ist nicht vorgesehen, dass eine Person (= Geschäftspartner GP) mehrere E-Mail Adressen hat. Eine neue E-Mailadresse überschreibt also die gespeicherte E-mail-Adresse.
+
-
 
+
-
Zur Aufgabe Newsletter siehe Beitrag [[Newsletter]]
+
-
 
+
-
=== Müssen nicht synchronisiert werden ===
+
-
 
+
-
Die folgenden Daten müssen nicht in der SAP verwaltet und damit auch nicht über die MySQL synchronisiert werden. Es reicht, wenn sie im Joomla vorgehalten werden und über das Admin von Joomla administriert werden.
+
-
 
+
-
– News
+
-
 
+
-
– Informationen
+
-
 
+
-
– Kommunikation zwischen Teilnehmern auf der Intrazone
+
-
 
+
-
– Aufgaben (bei auch Aktionen genannt) (Beispiel: Eigene Aufgabe / Aufgabe an einen anderen)
+
-
 
+
-
=== Zu klären ===
+
-
 
+
-
*Veranstaltungs-Termine
+
-
*Veranstaltungs-Anmeldungen
+
-
 
+
-
Die Stiftung hat eine Reihe von Veranstaltungen, bei denen sich Personen anmelden müssen. Von daher reicht hier ein reiner Veranstaltungskalender nicht aus. Ein reiner Veranstaltungskalender könnte auf der Joomla Ebene isoliert bleiben. So bald es in den Bereich Anmeldung / Ticketing kommt, müssen wir mit den Stammdaten eine Beziehung herstellen und am besten auch die Chronologie erfassen (wer war auf welcher Veranstaltung). Das ist aber eine Aufgabenstellung für später.
+
-
 
+
-
  Anmerkung ([[Benutzer:heesemann | ahn]]): Jomsocial bietet die Möglichkeit Events anzulegen und dazu einzuladen. Der Event kann auch auf eine Anzahl von Teilnehmenden befrenzt werden (Tickets)
+
-
 
+
-
=== Müssen mit dem File-System des SMM Servers synchronisiert werden ===
+
-
 
+
-
– Dokumente
+
-
 
+
-
Dokumente sind nicht in der SAP-Datenbank, müssen aber mit dem jeweiligen Datei-Ordner in dem SMM-Server synchronisiert werden.
+
-
 
+
-
 
+
-
Zurück zu [[Internetseiten Programmierung]]
+
[[Kategorie:Programmierung]]
[[Kategorie:Programmierung]]
 +
[[Kategorie:IT]]

Aktuelle Version vom 11:29, 29. Apr. 2012

Persönliche Werkzeuge