Tags:
create new tag
, view all tags

nethz Datenfluss

Allgemeines

nethz ist die Spinne im Datenfluss der ETH. nethz bezieht seine Daten aus folgenden Quellen:

  • PDB (Personaldatenbank)
  • Aladin (DB der Telefondienste, via PDB)
  • Online-Applikationen wie Admin-Tool, ISG-Tool, Inventardatenbank, etc.

Auf der Seite "Datenstromabwärts" gibt es folgende Konsumenten:

  • AD/Exchange
  • ldaps00-03 (Authorisierungsserver, WEBCMS)
  • Spamfilter-Maschinen
  • ftp.ethz.ch (ethstud.txt)
  • Eurospider (Suchmaschine)

Hier ist ein graphischer Überblick:

cronjobs

Diverse cronjobs laufen zur Zeit auf der Maschine idn.ethz.ch (als User nethzwww), welche die verschiedenen Datenflüsse aufrechterhalten.
Hier ist der aktuelle crontab (crontab -l).

Alle nethz-cronjobs sind im Verzeichnis /opt/local/apache/home/w3/cronjobs/ zu finden und sind im CVS integriert. Sie sind ausnahmslos in Perl geschrieben.

Einen nicht mehr ganz aktuelle Beschreibung zu den cronjobs befindet sich hier.

DB-Trigger

Auf diversen nethz-Tabellen befinden sich sog. Trigger, welche sicherstellen, das gewisse Informationnen Die wesentlichsten Tabellen sind:

  • PERSON
  • UNAME
  • EMAIL
  • NGROUP (Gruppenzugehörigkeit)

In der Regel schreiben Trigger Vermerke in sog. Synchronisationstabellen, welche wiederum von DBMS-Jobs oder cronjobs abgearbeitet werden. Damit ist stets ersichtlich, welche Datenkateogorien bereits auf dem Zielsystem aktualisiert werden.

DBMS Jobs (Datenbankjobs)

Sofern nur Daten innerhalb Oracle-Datenbanken repliziert werden müssen, bieten sich sog. DBMS Jobs an. Auf der produktiven Oracle-DB laufen zur Zeit folgende DBMS-Jobs (unter dem User nethz):

  • UPDATE_PRIMARY_NUID (primären Usernamen aktualisieren)
  • UPDATE_ORGSTRUKTUR (Tabellen ORGEINHEIT und ORGRSTRUKTUR replizieren)
  • UPDATE_MOBILE_CERTIFIED (zertifizierte Handynummer replizieren)
  • UPDATE_PDB_ADDRESSES (PDB-Adressen replizieren)
  • UPDATE_INDEXTABLE (für Eurospider)
  • GRANT_MAC_SERVICE (MAC-Service für Angehörige des D-ARCH einrichten, obsolet)
  • UP_DOZ_PERIODE (Dozentenstatus-Änderungen registrieren und in Synchronisationstabelle UPDATE_DOZ_PERIODE schreiben)
  • UP_ANSTELLUNG (Anstellungsänderungen registrieren und in Synchronisationstabelle UPDATE_ANSTELLUNG schreiben)
  • UP_EINSCHREIBUNG (dito für Einschreibungen, Sync-TabelLe UPDATE_EINSCHREIBUNG)
  • UP_IMMATRIKULATION (dito für Immatrikulationen, Sync-Tabelle: UPDATE_IMMATRIKULATION)
  • UP_DOZ_NGROUP (Aktualisierung der NGROUP-Zugehörigkeit für Dozenten, arbeitet UPDATE_DOZ_PERIODE ab)
  • UPDATE_NETHZ_PERSON (Aktualisiert einige Felder der Tabelle PERSON)
  • UPDATE_PERSON (Personendaten mit PDB abgleichen: Vorname, Nachname, Titel)
  • UPDATE_GEBAEUDEADRESSE (Synchronisiert die gleichnamige Tabelle mit nethz)
  • DO_CHECK_COMPANY_DEPARTMENT (Arbeitet die Tabelle CHECK_COMPANY_DEPARTMENT ab und aktualisiert die Felder COMPANY und DEPARTMENT der Tabelle PERSON)

Advanced Replication

Für die exakte Replikation von Tabellen wird die sog. Advanced Replication Technologie von Oracle eingesetzt. In der nethz-Datenbank wird sie seit kurzem für NETng angewendet, und zwar auf folgenden Tabellen:

  • UNAME
  • GRANTED_SERVICE
  • DIALUP800
  • DIALUP800_PHONE
  • MAC_ADDRESS

Die Daten dieser Tabelle werden zu den Radius-Servern, welche für NETng die Authentisierung und -Authorisierung vornehmen, synchronisiert. Wenn eine Tabellenspalte in der Originaltabelle gelöscht wird, wird die Replikation automatisch unterbrochen. Bei einer neuen Tabellenspalte hingegen kann die Replikation weiterlaufen.

Ob eine Tabelle mit dieser Technologie repliziert wird, sieht man am Vorhandensein folgender Tabellen:

  • MLOG$_<Tabellenname>
  • RUPD$_<Tabellenname>

Streams

Oracle Streams ist eine relativ neue Technologie, welche erst mit Oracle 10g eingeführt wurde. Sie ist für die Replikation von enormen Datenmengen (z.B. DAAK = Daten Akquisation = Netzwerkdaten der KOM) ausgelegt. Mit Streams können nicht bloss Tabellendaten, sondern beinahe alle Oracle Objekte (Views, Prozeduren, etc) repliziert werden. Oracle Streams wird demnächst für die Replikation von Teilen der DAAK eingesetzt.

-- Main.vermeul - 08 May 2006

Topic attachments
I Attachment History Action Size Date Who Comment
PDFpdf nethz_Datenflsse_2012.pdf r1 manage 4267.6 K 2014-05-20 - 08:37 UnknownUser nethz_datenfluesse.pdf
PDFpdf nethzaai.pdf r1 manage 756.1 K 2006-06-01 - 13:55 UnknownUser nethz aai
PDFpdf nethzservices.pdf r1 manage 693.8 K 2006-06-01 - 13:55 UnknownUser nethz services
PDFpdf nethzsystem.pdf r1 manage 1232.1 K 2006-06-01 - 13:56 UnknownUser nethz system
Topic revision: r5 - 2014-05-20 - vermeul
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback