W szczególności chodzi o zachowanie pewności w używaniu różnych rozwiązań replikacji, które umożliwiłyby przełączenie awaryjne na inny serwer bez utraty danych. Lub w sytuacji master-master, którą możesz znać w rozsądnym czasie, jeśli jedna z baz danych nie jest zsynchronizowana.weryfikuje spójność danych między dwiema bazami danych PostgreSQL
Czy są na to jakieś narzędzia, czy ludzie na ogół zależą od samego systemu replikacji, aby ostrzec przed niespójnościami? Obecnie najlepiej poznałem wysyłkę WAL PostgreSQL w konfiguracji master-standby, ale rozważam konfigurację master-master z czymś podobnym do PgPool. Ponieważ to rozwiązanie jest nieco mniej bezpośrednio związane z samym PostgreSQL (moim podstawowym założeniem jest to, że zapewnia połączenie, z którego korzystałaby aplikacja, przechwytując różne instrukcje SQL, a następnie wysyła je do serwerów znajdujących się w puli) , skłoniło mnie to do zastanowienia się nad faktyczną weryfikacją spójności danych.
Szczególne wymagania:
Nie mówię tylko o strukturze tabeli. Chciałbym wiedzieć, że rzeczywiste dane rekordów są takie same, więc wiedziałbym, czy rekordy zostały uszkodzone lub pominięte (w takim przypadku ponownie zainicjowałbym złą bazę danych za pomocą ostatnich kopii zapasowych + plików WAL przed ich przywróceniem do puli)
Bazy danych są rzędu 30-50 GB. Wątpię, by surowe zapytania SELECT działały bardzo dobrze.
Nie widzę potrzeby sprawdzania w czasie rzeczywistym (choć byłoby to oczywiście miłe). Godzinowe lub nawet codzienne byłoby lepsze niż nic.
Sprawdzanie na poziomie bloku nie działa. Będą to dwie bazy danych z niezależną pamięcią masową.
Czy ten typ weryfikacji jest po prostu nierealny?
pierwsza myśl, która przychodzi mi do głowy, że jest w bazie agnostyk jest hash wiersze z obu stron i dowiedzieć się, w jaki sposób porównać mieszań dla każdego wiersza w db1 do DB2. Początkowe obciążenie tego byłoby powolne, ale jeśli zrobiłeś to stopniowo, to może nie być tak źle. – Kuberchaun
Oto link do interesującego mnie rozszerzenia mojego poprzedniego komentarza. http: // stackoverflow.com/questions/9607063/checksum-field-in-postgresql-to-content-comparison – Kuberchaun