ďťż
 
Sens stosowania dwóch różnych baz danych ďťż
 
Sens stosowania dwóch różnych baz danych
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

Sens stosowania dwóch różnych baz danych



Zibi - 30-06-2006 00:08
Sens stosowania dwóch różnych baz danych
  Witam wszystkich.
Zastanawia mnie pewne rozwiązanie i chciałbym poznać opinię osób bardziej
doświadczonych. Otóż pracuję nad pewnym nazwijmy to 'projektem', w którym
wykorzystywany jest PostgreSQL jako silnik bazy danych. Ilość obsługiwanych
tabel i przechowywanych danych jest raczej niewielka. Sama baza stoi na mało
wydajnej maszynie i to wystarcza do obecnych zastosowań.

Pojawił się jednak pewien pomysł 'od góry' aby rozszerzyć funkcjonalność i
przetwarzać dodatkowe dane, które pod względem ilości rekordów i ważności
informacji (ochrona przed utratą danych) będą potrzebowały dużo
wydajniejszego środowiska. Zastanawiam się nad wykorzystaniem DB2 w wersji
express, z którą można działać większe cuda. Bynajmniej bardziej podoba mi
się możliwość zapewnienia większego bezpieczeństwa danych. Ponieważ prace są
dosyć zaawansowane i wykorzystuję parę funkcji zarezerowowanych dla
Postgresa nie chciałbym dokonywać zmian w kodzie. Pomyślałem nad
rozwiązaniem z wykorzystaniem dwóch typów baz danych. Krótko mówiąc
aplikacja pracowałaby sobie na postgresie a w przypadkach określonych
operowałaby na bazie DB2 (np. do tej bazy importowane byłyby dane z źródeł
zewnętrznych, generowanie raportów, statystyk, itp).

Wiem, że najładniejszym rozwiązaniem byłoby postawienie wszystkiego na DB2.
Ale czy takie rozwiązanie jest do przyjęcia? Będę wdzięczny za opinie.

Pozdrawiam,
Zibi





Marcin A. Guzowski - 30-06-2006 00:08

  Zibi napisał(a):
> Witam wszystkich.
> (..)

Połączenia do kilku baz (też na różnych silnikach) to
nic złego z punktu widzenia większości technologii, w
których tworzone są aplikacje. Wydaje mi się, że można
sobie obmyślić całkiem fajne rozwiązanie, oczywiście pod
pewnymi warunkami:
1) przepływ informacji między tymi bazami jest minimalny,
a najlepiej - nie istnieje; jeżeli sporą część czasu
aplikacja będzie przerzucała rekordy z jednej bazy do
drugiej - np. żeby zrobić spójny raport - to będzie to
złe rozwiązanie.
2) zbiory informacji potrzebne do opracowania wyniku
(czyli np. zbiór wszystkich danych o płatnościach,
żeby dokonać jakieś agregacji typu średnia cena sprzedaży
akcji per dzień) znajdują się na poszczególnych bazach
i są kompletne; w przeciwnym razie: albo przerzucanie
rekordów między bazami, albo zaciąganie dużej ilości
danych do aplikacji z kilku baz - i mielenie sumy tych
zbiorów w jej pamięci - nie jest to dobre rozwiązanie,
bo miejscem na wykonywanie takich działań w sposób
optymalny jest baza danych a nie aplikacja dostępowa

IMHO nie wolno z założenia przekreślać samej idei
wykorzystania różnych silników w jednym systemie, ale
należy uszyć rozwiązanie pod konkretny scenariusz,
bo może się okazać, że w danej sytuacji taki pomysł
nie wypali.

--
Pozdrawiam,
Marcin Guzowski
http://guzowski.info




Kmail - 02-07-2006 00:14

  > Postgresa nie chciałbym dokonywać zmian w kodzie. Pomyślałem nad
> rozwiązaniem z wykorzystaniem dwóch typów baz danych. Krótko mówiąc
> aplikacja pracowałaby sobie na postgresie a w przypadkach określonych
> operowałaby na bazie DB2 (np. do tej bazy importowane byłyby dane z źródeł
> zewnętrznych, generowanie raportów, statystyk, itp).

Uzywając dwuch silników/baz moze przyjsc czas ze nalezy dane miksowac między
nimi. Ja w takim wypadku zrobiłem TaskManagera który pracujac na jednym z
serwerow cyklicznie przenosił dane między bazami. Danych niewiele i ruch
jednostronny ( tzn. dane mają jedne żródło raz w jednej a raz w drugiej
bazie). Naszczesie obie bazy maja triggery dzieki ktorym moglem powiadamac o
zmianach.
Swojego czasu tez miłem jeden silnik ale dwie bazy, za pomoca BDE daje sie
normalnie zadawac pytanie do baz jak do jednej, chodz predkosc nie jest
oszałamiająca.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [MSSQL2000] Problem z =?ISO-8859-2?Q?tabel=B1/indeksem/zapytanie?==?ISO-8859-2?Q?m_czy_b=B3=B1d_w_bazie_danych=2E=2E=2E?= =?iso-8859-2?Q?=5BMySQL=5D_Wy=B6wietlenie_wszystkich_rekordow _zawierajacy?==?iso-8859-2?Q?ch_duplikat_a__moze_inna_struktura_bazy_danych ?= Konwesja znaków w dump'ie bazy danych - ISO -> utf-8 -> ISO -> utf-8 [mysql] przenoszenie danych =?ISO-8859-2?Q?mi=EAdzy_tabelami_?==?ISO-8859-2?Q?w_r=F3=BFnych_bazach?= Zrywanie =?ISO-8859-2?Q?po=B3aczen_z_baza_danych_-_pos?==?ISO-8859-2?Q?tgresql_=3C-=3E_odbc?= Połączenie bazy danych z wykonaniem polaczenia telefonicznego [mssql] insert do tabeli na podstawie danych z innej tabeli [oracle] Baza danych do kursy Introduction to Oracle9i:PL/SQL ? Skąd ją pobrać ? [MySQL] - Wstawianie aktualnej daty do bazy danych - PHP i MySQL Insert do tabeli z danych innej tabeli plus dodatkowa wartośćpola (Firebird)
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • ponland.htw.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com