![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 660 Pomógł: 13 Dołączył: 9.06.2004 Skąd: Wrocław i okolice Ostrzeżenie: (0%) ![]() ![]() |
Witam. Dostałem za zadanie zrobienia dwóch systemów od dwóch różnych firm, które w przyszłości będą miały zostać połączone. Na razie ze względów polityczno-ekonomicznych muszą stać dwie niezależne bazy danych i dwa niezależne serwery php. Niejako "jądra" systemów są identyczne (tzn. bazy danych), ale layouty (interfejsy) będą różne. W przyszłości planowane jest połączenie dwóch systemów w jedną bazę danych (bo tak chyba będzie najlepiej). I teraz zastanawiam się jak już przyszykować się na taką fuzję? Na pewno bazy danych muszą mieć identyczną strukture, ale co w systemie? Czy na początku skryptu porobić sekcję z zapytaniami i ją modyfikować? Czy porobić odopowiednie klasy do wywołania zapytań?
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(TomASS @ 2005-09-25 23:18:11) Są dwie, różne bazy, dla różnych producentów, na różnych maszynach. Załóżmy że nazwiemy je baza1 oraz baza2. Bazy są o identycznych strukturach. To po co je rozdzielać. Nadmiar danych to nie powód do bólu głowy. A jak bedziesz miał połączone to łatwiej Ci bedzie wykonywać statystyki połączone. Bo związane z jedną firmą to wiadomo.Cytat(TomASS @ 2005-09-25 23:18:11) W momencie sygnalu do połączenia systemów, tworzę wspólną bazę danych o nazwie baza3, na zupełnie innym - trzecim serwerze. Strukuta idnetyczna jak baza2 lub baza3. Zbędne zamieszanie. Nie lepiej postawić coś a'la aplikacja rozproszona: jedna baza danych i dwa front'endy. Bedziesz musiał zadbać tylko żeby prowider, u którego masz bazę pozwalał na połączenia z nią z poza localhost.Cytat(TomASS @ 2005-09-25 23:18:11) W momencie gdy nastepuje modyfikacja bazy danych nr. 1 lub nr.2(INSERT/UPDATE/DELETE), jest również modyfikowana baza3. Ciekawe jak zadbasz o poprawność takich "transakcji". Bedzie Ci bardzo trudno kontrolować operacje na dwóch różnych bazach.Miom zdaniem najlepszym wyjściem jest postawienie jednej bazy, z której kożystają dwie aplikacje zewnętrzne i flagowanie danych (tych, które tego wymagają: loginy, produkty, ...) z którego serwisu pochodzą. Bedzie Ci łatwo łączyć te dane i tworzyć statystyki, zaoszczędzisz na ilościach wykonywanych zapytań (czasem jedno do jednej bazy, zamiast dwóch do dwóch baz) oraz czasie dostępu do danych i siwych włosów przy pisaniu tego (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 16:25 |