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 swojego zasobnika, aby automatycznie usuwać kopie zapasowe starsze niż 30 dni.
Stan i aktywność tworzenia kopii zapasowej możesz wyświetlić bezpośrednio w konsoli Firebase, w której możesz też rozpocząć ręczne tworzenie kopii zapasowej. Jest to przydatne podczas wykonywania określonych zrzutów w określonym czasie lub jako środek bezpieczeństwa przed wprowadzeniem jakichkolwiek 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 usługi 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 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 również wysłać żądanie CURL z 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 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 usługa Gzip jest włączona, do nazw plików zostanie dołączony 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 włącza domyślną 30-dniową zasadę cyklu życia obiektu w zasobniku Cloud Storage. Gdy ta opcja jest włączona, pliki w 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.