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. Kreator poprowadzi 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 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. W tym zbiorze nie należy przechowywać danych, do których Firebase nie powinno mieć dostępu. 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. Aby to zrobić, kliknij nazwę pliku w sekcji aktywności kopii zapasowej lub w interfejsie zasobnika Cloud Storage. Jeśli plik jest skompresowany za pomocą Gzip, najpierw odkompresuj go.
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 podane niżej polecenia, 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. Ta zaplanowana kopia zapasowa będzie tworzona niezależnie od tego, czy w ciągu dnia tworzysz ręczne kopie zapasowe.
Nazewnictwo plików
Pliki przeniesione do zasobnika Cloud Storage będą zawierać sygnaturę czasową (zgodnie ze standardem ISO 8601) i stosować się do tych konwencji 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, użyj polecenia wiersza poleceń z binarnym plikiem gunzip
, który jest domyślnie dostarczany z OS X i większą liczbą dystrybucji systemu Linux.
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 przypadku zasobnika Cloud Storage włączenie domyślnej zasady cyklu życia obiektu na 30 dni. 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 sekcji automatycznych kopii zapasowych inne pliki, zostaną one również usunięte zgodnie z tymi samymi zasadami.
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.