Użytkownicy planu Blaze mogą skonfigurować Firebase Realtime Database na potrzeby 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 Firebase konsoli. Kreator przeprowadzi Cię przez proces konfigurowania automatycznych kopii zapasowych.
Aby zmniejszyć 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 wyświetlić bezpośrednio w Firebasekonsoli i tam też możesz rozpocząć ręczne tworzenie kopii zapasowej. Może to być przydatne do robienia określonych migawek czasowych lub jako działanie zabezpieczające przed wprowadzeniem zmian w kodzie.
Po skonfigurowaniu utworzymy dla Ciebie nowy Cloud Storage zasobnik z uprawnieniami ZAPISU dla Firebase. Nie przechowuj w tym zasobniku danych, do których nie chcesz, aby Firebase miał dostęp. Firebase nie będzie mieć dodatkowego dostępu do innych zasobników Cloud Storage ani żadnych innych obszarów Google Cloud.
Przywracanie z kopii zapasowych
Aby przywrócić Firebase z kopii zapasowej, najpierw pobierz plik z Cloud Storage na dysk lokalny. Możesz to zrobić, klikając nazwę pliku w sekcji aktywności kopii zapasowej lub w interfejsie Cloud Storage kosza. Jeśli plik jest skompresowany za pomocą Gzip, najpierw go rozpakuj.
Dane możesz importować na 2 sposoby:
Metoda 1. W sekcji Dane bazy danych kliknij przycisk Importuj JSON i wybierz plik JSON z danymi aplikacji.
Metoda 2. Możesz też wysłać żądanie CURL z wiersza poleceń.
Najpierw pobierz klucz tajny z Firebase. Możesz to zrobić, otwierając stronę ustawień bazy danych.
Następnie wpisz w terminalu podane niżej polecenie, 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 przywróceniem kopii zapasowej z bardzo dużej bazy danych, skontaktuj się z naszym zespołem pomocy.
Harmonogram
Kopia zapasowa bazy danych jest przypisana do konkretnej godziny każdego dnia, co zapewnia równomierne obciążenie i najwyższą dostępność dla wszystkich klientów korzystających z kopii zapasowych. Ta zaplanowana kopia zapasowa zostanie utworzona niezależnie od tego, czy w ciągu dnia utworzysz jakieś kopie ręczne.
Nazewnictwo plików
Pliki przesyłane do zasobnika Cloud Storage będą miały sygnaturę czasową (zgodną z normą ISO 8601) i będą używać tych konwencji nazewnictwa:
- Dane z 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 opcja Gzip jest włączona, do nazw plików zostanie dodany sufiks .gz
. Możesz łatwo znaleźć kopie zapasowe z określonej daty lub godziny, korzystając z wyszukiwania z prefiksami Cloud Storage.
Kompresja Gzip
Domyślnie kompresujemy pliki kopii zapasowych za pomocą kompresji Gzip, aby obniżyć koszty pamięci i skrócić czas przesyłania. Rozmiar skompresowanego pliku zależy od charakterystyki danych w bazie danych, ale typowe bazy danych mogą zmniejszyć się do ⅓ swojego pierwotnego rozmiaru, co pozwala zaoszczędzić na kosztach miejsca na dane i skrócić czas przesyłania kopii zapasowych.
Aby zdekompresować pliki JSON skompresowane za pomocą gzip, wydaj polecenie wiersza poleceń za pomocą pliku binarnego gunzip
, który jest domyślnie dostarczany w systemach OS-X i większości dystrybucji Linuxa.
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 włącza domyślne zasady cyklu życia obiektów w zasobniku Cloud Storage na 30 dni. Gdy ta opcja jest włączona, pliki w Twoim zasobniku będą automatycznie usuwane po 30 dniach. Pomaga to zmniejszyć liczbę niechcianych starych kopii zapasowych, co pozwala zaoszczędzić na kosztach przechowywania i utrzymać porządek w katalogu zasobnika. Jeśli umieścisz inne pliki w zasobniku Automatyczne kopie zapasowe, zostaną one usunięte zgodnie z tymi samymi zasadami.
Koszty
Funkcję tworzenia kopii zapasowych można włączyć w projektach w ramach abonamentu Blaze bez dodatkowych opłat. Za pliki kopii zapasowych umieszczone w zasobniku Cloud Storage naliczane będą jednak standardowe stawki. Aby obniżyć koszty przechowywania danych, możesz włączyć kompresję Gzip i 30-dniowy cykl życia usługi Storage.