2017-04-17 52 views
5

Mamy system, który zasadniczo zapisuje 250 MB danych w naszej instancji CouchDB 2, która generuje ~ 50 GB/dzień w bazie danych global_changes.Tabela systemowa CouchDB 2 global_changes staje się szalenie duża

To powoduje, że CouchDB2 pochłania cały dysk.

Gdy dojdziesz do tego stanu, CouchDB2 idzie i nigdy nie wraca.

Chcemy wiedzieć, czy istnieje sposób ograniczenia rozmiaru tabeli global_changes lub czy istnieje sposób zarządzania tą tabelą, podobnie jak zestaw najlepszych praktyk.

+1

Czy działająca kompaktowa coś robi? Wpadłem na ten sam problem i wygląda na to, że nowa wersja dokumentu "updated: " jest tworzona za każdym razem, gdy dana baza danych jest aktualizowana, więc zastanawiam się, czy kompaktowanie usunie te stare wersje. używanie dużych punktów końcowych może zmniejszyć ten wzrost rozmiaru: – slang

+1

Kompaktowanie zachowuje najnowszą wersję i usuwa starsze wersje Możesz ustawić automatyczne kompaktowanie i powinieneś być w porządku –

+0

Awesome guys.Nasza baza danych jest napisana przez tylko jednego klienta i będzie replikowane przez inne odczytywane węzły w przyszłości, na razie wydaje nam się, że po zakończeniu codziennego pisania uruchamiamy konsolidację ooor, możemy po prostu usunąć bazę danych _global_changes. – nicopace

Odpowiedz

0

tldr: wystarczy usunąć go

http://docs.couchdb.org/en/latest/install/setup.html#single-node-setup

członkowskie:

Zauważ, że ostatni z nich (w odniesieniu do _global_changes) nie jest konieczne, jeśli nie spodziewać się za pomocą globalnej zmienia kanał. Możesz usunąć tę bazę danych, jeśli ją utworzyłeś, jej rozmiar się zwiększył i nie potrzebujesz tej funkcji (i nie chcesz marnować zasobów systemowych na regularne kompaktowanie.)