Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Settler am 10.03.05 - 17:12:16

Titel: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: Settler am 10.03.05 - 17:12:16
Hallo,

ich(wir) stehe(n) im Moment vor einem Problem:

Im Zuge einer Neuentwicklung eines Systems, wollen wir dieses aus Performance- und Sicherheitsaspekten auf mehrere DBs verteilen.

Wir haben da jetzt mehrer Idee (drei um genau zu sein):

1. Idee

DB1 hat Daten(Backenddocs), Masken und Scriptlibraries(Beinhalten Events für Masken, Aktionen, usw...)
DB2 beinhaltet nur Daten.
Ist es, was ich selber nicht glaube, möglich auf Masken in DB1 (und damit auch auf Scriptlibraries) aus DB2 heraus zuzugreifen, damit die Daten in DB2 korrekt dargestellt werden können?

2. Idee

DB1 wie im ersten Fall
DB2 beinhaltet Daten und  Masken wie DB2.
Ist es möglich auf SLs in DB1 aus DB2 heraus zuzugreifen, damit die Masken ihre Funktionaliät auch in DB2 haben?

3. Idee und mir im Moment einzige bekannte und  machbare Möglichkeit

Beide DBs haben ihrer Daten und die dementsprechenden Masken.
Scriptlibraries werden in Textdateien exportiert und von den Masken in beiden DBs eingebunden. Ist halt umständlicher als die ersten beiden Ideen.

Kann mir jemand, vorallem zu den ersten beiden Idee sagen, ob sowas möglich ist, und wenn ja wie?


mfg
Benjamin


PS: Und nicht gleich auf so nen Frischling wie mich einhauen  ;)

Titel: Re: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: Semeaphoros am 10.03.05 - 18:44:00
Wie wäre es mit einem gemeinsamen Template für beide DBs, wo die DBs ihre Design-Elemente her geliefert bekommen?
Titel: Re: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: Axel am 10.03.05 - 18:45:16
Hi,

erstmal willkommen im Forum.

Die erste Idee kannst du eigentlich gleich vergessen. Ist zwar prinzipiell machbar, Daten aus einer anderen DB zu lesen und auch zu schreiben. Bei dieser Idee geht die Performance erst so richtig schön in den Keller.

Aus der zweiten Idee werde ich nicht ganz schlau. Auf jeden Fall ist es nicht möglich, von einer DB aus auf Script-Libs in einer anderen DB zuzugreifen.

Dir bleibt eigentlich nur die dritte Möglichkeit.

Daten auf mehrere DB's verteilen hat in Notes eigentlich immer Performanceeinbußen zur Folge. Denn das Lesen der Daten aus anderen DB's löst immer eine Suchvorgang aus. Und du musst dir vor Augen führen, dass Notes kein relationales System mit Indizes ist.


Axel

PS:

PS: Und nicht gleich auf so nen Frischling wie mich einhauen ;)

Wir hauen hier niemanden.  ;D

Titel: Re: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: koehlerbv am 10.03.05 - 19:53:17
Was verstehst Du eigentlich genau unter "Sicherheitsaspekten" ? Wo schadet eine ScriptLib der Sicherheit ?

"Perfomanceaskpekte": Was wollt Ihr da genau performanter gestalten ?

Bernhard

PS: Auch von mir natürlich ein "Herzlich willkommen im Forum" !
Titel: Re: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: Settler am 11.03.05 - 09:50:26
Erstmal danke für die Antworten.

Wie wäre es mit einem gemeinsamen Template für beide DBs, wo die DBs ihre Design-Elemente her geliefert bekommen?

Das ist eine sehr gute Idee, so kann man auch den Code an einer Stelle zentral halten.
thx  ;D

@Axel:
Warum hat so eine Datenverteilung immer Performanceprobleme? Was meinst du damit genau? Wir machen das in einigen DBs und hatten damit eigentlich noch nie Probleme.

@Axel und koehlerbv:

Im Moment existiert eine DB mit ~50.000 Dokumenten und 20 Views in denen fast alle Dokumente angezeigt werden. Das hier die Performance nicht allzu gut ist lässt sich nicht abstreiten. Deswegen wollen wir diese Dokumente auf mehrer DBs verteilen und mit so wenig Views wie möglich auskommen.

Mit den Sicherheitsaspekt hab ich mich vielleicht etwas undeutlich ausgedrückt, hab da was anderes gemeint, was mit  der eigentlichen Problematik nicht zu tun hat. Vergesst es einfach :)

mfg
Benjamin
Titel: Re: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: Axel am 11.03.05 - 09:58:21
@Axel:
Warum hat so eine Datenverteilung immer Performanceprobleme? Was meinst du damit genau? Wir machen das in einigen DBs und hatten damit eigentlich noch nie Probleme.

Ganz einfach. Um auf Daten aus anderen Datenbanken zuzugreifen brauchst du immer einen @DBLookup oder GetDocumentByKey (Script) und das löst in der anderen DB immer einen Suchvorgang aus. Wenn du diese Funktion mit Bedacht einsetzt und nur da wo es wirklich nötigt ist, wirst du kaum Auswirkungen auf die Performance feststellen.

Wenn du aber eine Maske hast, die viele berechnete Felder mit @DBLookups hat, wirst du beim Öffnen davon schon was merken.


Axel
 
Titel: Re: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: Settler am 11.03.05 - 10:07:48
So meinst du das, ich verstehe.
Aber Masken mit sehr vielen Lookups in andere DBs verwenden wir natürlich nicht und wir haben auch nicht vor so etwas zu machen.

Deswegen sollte es bei uns keine Auswirkungen auf der Performance haben.

mfg
Benjamin
Titel: Re: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: Axel am 11.03.05 - 10:34:22
So meinst du das, ich verstehe.
Aber Masken mit sehr vielen Lookups in andere DBs verwenden wir natürlich nicht und wir haben auch nicht vor so etwas zu machen.

Yoo, aber deine Idee1 lief genau in diese Richtung.


Axel
Titel: Re: Zugriff auf Designelemente und Scriptlibraries anderer Datenbanken
Beitrag von: Settler am 11.03.05 - 10:55:12
So meinst du das, ich verstehe.
Aber Masken mit sehr vielen Lookups in andere DBs verwenden wir natürlich nicht und wir haben auch nicht vor so etwas zu machen.

Yoo, aber deine Idee1 lief genau in diese Richtung.


Axel


Aber ich hätte nicht gedacht, das so etwas geht  ;D Deswegen machen wir sowas auch nicht  ::)

Benjamin