2015-05-07 10 views
5

Google Cloud Bigtable wygląda fantastycznie, ale mam kilka pytań na temat tworzenia kopii zapasowych i redundancji.Bigtable Backup and Redundancy

Czy są jakieś opcje tworzenia kopii zapasowych danych w celu ochrony przed ludzkimi błędami?

Klastry obecnie działają w jednej strefie - czy istnieją sposoby na złagodzenie niedostępności strefy?

Odpowiedz

1

Wydaje się, że funkcja replikacji nie jest dostępny na tym etapie tak widzę następujące opcje zważywszy, że dostęp do odczytu napisać Ahead Log (lub cokolwiek nazwa dziennika BigTable TX) nie jest przewidziane:

  1. W Google We Trust. Polegaj na ich wiedzy fachowej na temat dostępności i odzyskiwania. Jedną z atrakcji hostowanych deweloperów BigTable to HBase jest mniejsze obciążenie administracyjne, bez obaw o kopie zapasowe i odzyskiwanie.

  2. Wdrożyć drugi zestaw BigTable w innym AZ i wysłać kopię każdej Mutacji w trybie asynchronicznym, z bardziej agresywnym buforowaniem zapisu na kliencie, ponieważ małe opóźnienie nie jest priorytetem. Można nawet wdrożyć zwykły klaster HBase zamiast klastra BigTable, ale zakres, w jakim klient HBase firmy Google i klient Apache HBase mogą współistnieć w tym samym środowisku wykonawczym, pozostaje widoczny.

  3. Kopiowanie Mutacje do pliku lokalnego, odciążone zgodnie z harmonogramem do klasy pamięci GCP do wyboru: standard lub DRA. Odtwórz pliki po odzyskaniu.

  4. Odmiana 3). Stand-up klastra Kafka, rozproszonego w wielu strefach dostępności. Wprowadź producenta i wyślij Mutacje do Kafki, jego przepustowość powinna być wyższa niż BigTable/HBase. Śledź przesuwanie i odtwarzanie Mutacji, pobierając wiadomości od Kafki podczas odzyskiwania.

Kolejna myśl ... jeśli historia jest jakąś lekcją, AWS od samego początku nie posiadał opcji Multi-AZ. Rozwijanie się zajęło im trochę czasu.

4

Jednym ze sposobów tworzenia kopii zapasowych danych, która dostępna jest dziś uruchomić MapReduce eksportowych, jak opisano tutaj:

https://cloud.google.com/bigtable/docs/exporting-importing#export-bigtable

Masz rację, że na dzień dzisiejszy, Bigtable dostępność Klaster jest związana z dostępnością Strefa, w której są uruchomione. Jeśli problemem jest większa dostępność, możesz spojrzeć na różne metody replikacji twoich zapisów (np. Kafka), ale pamiętaj, że zwiększa to złożoność budowanego systemu, na przykład zarządzanie spójnością między klastrami. (Co stanie się, jeśli wystąpi błąd w twoim oprogramowaniu i pominiesz dystrybucję niektórych zapisów?)

Użycie innego systemu, takiego jak Cloud Datastore, pozwala uniknąć tego problemu, ponieważ nie jest to pojedynczy system strefowy - ale zapewnia inne kompromisy do rozważenia.