Automatyczne kopie zapasowe

Użytkownicy subskrypcji Blaze mogą skonfigurować Firebase Realtime Database do automatycznych kopii zapasowych. Jest to funkcja samoobsługowa, która umożliwia codzienne tworzenie kopii zapasowych danych aplikacji bazy danych i reguł w formacie JSON w zasobniku Cloud Storage.

Konfiguracja

Aby rozpocząć, otwórz kartę Kopie zapasowe w sekcji Baza danych w konsoli Firebase, a kreator przeprowadzi Cię przez proces konfigurowania automatycznych kopii zapasowych.

Aby obniżyć koszty przechowywania, domyślnie włączamy kompresję Gzip. Możesz też włączyć 30-dniową zasadę cyklu życia w przypadku swojego zasobnika, aby automatycznie usuwać kopie zapasowe starsze niż 30 dni.

Stan i aktywność kopii zapasowej możesz sprawdzić bezpośrednio w konsoli Firebase, gdzie możesz też utworzyć kopię zapasową ręcznie. Może to być przydatne do wykonywania określonych migawek w określonym czasie lub jako działanie zabezpieczające przed wprowadzeniem zmian w kodzie.

Po zakończeniu konfiguracji utworzymy dla Ciebie nowy zasobnik Cloud Storage z uprawnieniami WRITER w Firebase. Nie przechowuj w tym zbiorze danych, do których nie chcesz, aby Firebase miała dostęp. Firebase nie będzie mieć dodatkowego dostępu do innych zasobników Cloud Storage ani innych obszarów usługi Google Cloud.

Przywracanie z kopii zapasowych

Aby przywrócić Firebase z kopii zapasowej, najpierw pobierz plik z Cloud Storage na dysk lokalny. Można to zrobić, klikając nazwę pliku w sekcji aktywności tworzenia kopii zapasowej lub w interfejsie zasobnika Cloud Storage. Jeśli plik jest skompresowany za pomocą Gzip, najpierw odkompresuj plik.

Dane możesz importować na 2 sposoby:

Metoda 1. W sekcji Dane bazy danych kliknij przycisk Importuj plik JSON i wybierz plik danych aplikacji w formacie JSON.

Metoda 2. Możesz też wysłać żądanie CURL z poziomu wiersza poleceń.

Najpierw pobierz tajny klucz z Firebase. Aby to zrobić, otwórz stronę ustawień bazy danych.

Następnie wpisz w terminalu te wartości, zastępując pola DATABASE_NAME i SECRET własnymi wartościami:

curl 'https://<DATABASE_NAME>.firebaseio.com/.json?auth=<SECRET>&print=silent' -X PUT -d @<DATABASE_NAME>.json

Jeśli masz problemy z przywracaniem kopii zapasowej z bardzo dużej bazy danych, skontaktuj się z naszym zespołem pomocy.

Harmonogram

Twoja kopia zapasowa bazy danych jest przypisana do konkretnej godziny każdego dnia, co zapewnia równomierny rozkład obciążenia i najwyższą dostępność dla wszystkich klientów korzystających z kopii zapasowych. Zaplanowana kopia zapasowa zostanie utworzona niezależnie od tego, czy w ciągu dnia zostaną utworzone ręczne kopie zapasowe.

Nazewnictwo plików

Pliki przenoszone do zasobnika Cloud Storage będą oznaczone sygnaturami czasowymi (standard ISO 8601) i będą zgodne z tymi konwencjami nazewnictwa:

  • Dane bazy danych: YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_data.json
  • Reguły bazy danych: YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_rules.json

Jeśli Gzip jest włączony, do nazw plików zostanie dodany sufiks .gz. Za pomocą wyszukiwania prefiksów Cloud Storagemożesz łatwo znaleźć kopie zapasowe z określonej daty lub godziny.

Kompresja Gzip

Domyślnie kompresujemy pliki kopii zapasowej za pomocą Gzip, aby obniżyć koszty przechowywania i skrócić czas przesyłania. Rozmiar skompresowanego pliku zależy od charakterystyki bazy danych, ale typowe bazy danych mogą zostać skompresowane do 1/3 ich pierwotnego rozmiaru, co pozwoli Ci zaoszczędzić na kosztach miejsca na dane i skróci czas przesyłania kopii zapasowych.

Aby rozpakować skompresowane pliki JSON skompresowane za pomocą Gzip, użyj polecenia w wierszu poleceń, używając pliku binarnego gunzip, który jest domyślnie uruchamiany w dystrybucjach systemu operacyjnego OS X i większości Linuksa.

gunzip <DATABASE_NAME>.json.gz  # Will unzip to <DATABASE_NAME>.json

30-dniowy cykl przechowywania danych

Oferujemy łatwy w użyciu przełącznik konfiguracji, który umożliwia włączenie domyślnej zasady cyklu życia obiektów na 30 dni w zasośniku Cloud Storage. Gdy ta opcja jest włączona, pliki w Twoim zasobniku są automatycznie usuwane po 30 dniach. Pomaga to zmniejszyć liczbę niechcianych starych kopii zapasowych, oszczędzać na kosztach miejsca na dane i utrzymywać katalog zasobników w czystości. Jeśli umieścisz w zasobniku Automatyczne kopie zapasowe inne pliki, one również zostaną usunięte z tą samą zasadą.

Koszty

Funkcję kopii zapasowych można włączyć w przypadku projektów w ramach abonamentu Blaze bez dodatkowych kosztów. Opłaty za pliki kopii zapasowych umieszczone w zasobniku Cloud Storage będą jednak naliczane według standardowych stawek. Aby zmniejszyć koszty miejsca na dane, możesz włączyć kompresję gzip i cykl życia danych na 30 dni.