Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Důležité
Automatické škálování LakeBase je v beta verzích v následujících oblastech: eastus2, westeurope, westus.
Automatické škálování LakeBase je nejnovější verze LakeBase s automatickým škálováním výpočetních prostředků, škálováním na nulu, větvení a okamžitým obnovením. Porovnání funkcí se službou Lakebase Provisioned najdete v tématu Volba mezi verzemi.
Větvení v Lakebase umožňuje bezpečně vytvářet, testovat a vyvíjet vaše datové prostředí podobně jako větvení kódu v Gitu. Můžete okamžitě vytvářet izolované, plně funkční větve pro vývoj, experimentování nebo testování změn schématu, aniž by to mělo vliv na produkční úlohy.
Ve výchozím nastavení Lakebase vytvoří při vytváření nového projektu jednu production větev. Jedná se o vaši výchozí větev, která je určena pro uložení produkčních dat vaší aplikace.
Podle potřeby můžete vytvořit další větve podle potřeby, aby vyhovovaly vašemu pracovnímu postupu. Můžete například přidat development větev pro sestavování a testování, staging větev pro předprodukční testování nebo vytvářet větve pro jednotlivé vývojáře pro úplnou izolaci. Každá větev funguje nezávisle – změny v dítěti nikdy neovlivní jeho rodiče. Při resetování větve můžete aktualizovat libovolnou podřízenou větev z nadřazené větve, abyste získali nejnovější schéma a data bez skriptů pro nasazení dat nebo odstranění.
Jak fungují větve
Vztahy nadřazenosti a podřízenosti
Každá větev (kromě kořenové větve) má rodiče. Tím se vytvoří hierarchie:
production (root branch)
├── staging (child of production)
│ └── feature-test (child of staging)
└── development (child of production)
└── bugfix-branch (child of development)
Tato hierarchie poskytuje důležitou izolaci: změny, které uděláte v podřízené větvi, nemají vliv na nadřazenou větev a změny nadřazené větve se automaticky nezobrazují v podřízených větvích. Když potřebujete aktualizovaná data z nadřazeného uzlu, můžete podřízenou větev resetovat. Větve můžete také vytvářet z libovolného bodu v historii rodiče, což je užitečné pro obnovení k určitému bodu v čase, testování vůči historickým datům nebo scénáře dodržování předpisů.
Při vytváření větve se rozhodnete, jestli se má inicializovat z aktuálních dat, nebo z konkrétního bodu v čase. Podrobné pokyny a podrobnosti o jednotlivých možnostech najdete v tématu Vytvoření větve .
Kopírování úložiště při zápisu
Lakebase využívá technologii kopírování při zápisu k efektivnímu větvení nadřazeného a podřízeného typu. Když vytvoříte novou větev, dědí schéma i data z nadřazeného objektu, ale sdílí podkladové úložiště prostřednictvím ukazatelů na stejná data. Pouze při úpravě dat zapisuje Lakebase nová data. To znamená:
- Vaše větve se okamžitě objeví; velikost databáze nemá žádný vliv na čas vytvoření větve.
- Platíte jenom za data, která se ve skutečnosti mění mezi větvemi.
- Vytváření větví nemá žádný vliv na výkon vaší produkční úlohy.
production branch child branch (at creation)
┌─────────────────┐ ┌─────────────────┐
│ [Data A] │◄──────│ → Data A │ (shared)
│ [Data B] │◄──────│ → Data B │ (shared)
│ [Data C] │◄──────│ → Data C │ (shared)
└─────────────────┘ └─────────────────┘
After modifying data in child branch:
┌─────────────────┐ ┌─────────────────┐
│ [Data A] │◄──────│ → Data A │ (shared)
│ [Data B] │ │ [Data B'] │ (changed)
│ [Data C] │◄──────│ → Data C │ (shared)
└─────────────────┘ └─────────────────┘
Only changed data is stored separately
Práce s větvemi
Resetování větve
Reset větve přenastaví podřízenou větev, aby odpovídala aktuálnímu stavu nadřazené větve. To je užitečné, když chcete aktualizovat vývojovou nebo testovací větev s nejnovějšími daty z nadřazené větve. Operace se okamžitě dokončí pomocí technologie kopírování při zápisu a podrobnosti o připojení zůstanou stejné.
Resetování větve funguje jenom jedním směrem (nadřazený → podřízený). Pokud chcete přesunout změny z podřízeného do nadřazeného objektu, použijte standardní nástroje pro migraci k aplikaci změn schématu. Podrobné kroky a scénáře najdete v tématu Resetování větve .
Obnovení dat k určitému okamžiku v čase
V okně obnovení můžete vytvořit větev z určitého bodu v čase, což je užitečné pro zotavení z chyb dat, jako jsou náhodné odstranění, vyšetřování minulých problémů nebo přístup k historickým datům pro účely auditování a dodržování předpisů. Pokud byla včera v 10:23 dopoledne odstraněna kritická tabulka, můžete vytvořit větev nastavenou na 10:22 dopoledne, abyste extrahovali chybějící data. Podobně můžete vytvořit větve odrážející stav databáze v konkrétních datech pro finanční vyrovnání, regulační audity nebo forenzní analýzu. Na rozdíl od resetování větve (které aktualizuje existující větev) vytvoří obnovení k určitému bodu v čase novou kořenovou větev z historických dat a ponechá vaši původní větev beze změny a v provozu. Podrobnosti najdete v části Obnovení k určitému bodu v čase .
Speciální typy větví
Výchozí větev
Při vytváření projektu Lakebase automaticky získáte jednu production větev jako výchozí větev. Je prázdný, připraven pro vaše data. Můžete vytvořit podřízené větve pro vývoj a testování – otestujte změny schématu v podřízené větvi a poté spusťte stejné migrace vůči production, až budete mít jistotu, že fungují.
Vaše výchozí větev se nikdy nesníží na nulu, což zajišťuje, že zůstane dostupná i tehdy, když ostatní větve sníží výpočetní kapacitu během období nečinnosti.
Chráněné větve
Chráněné větve mají ochranu, aby se zabránilo náhodným změnám. Z jejich nadřazeného objektu se nedají odstranit ani resetovat a z důvodu neaktivity jsou vyňaty z automatické archivace. Chráněné větve také blokují odstranění projektu v době, kdy existují, a zajišťují tak, že nemůžete omylem odebrat kritickou infrastrukturu. Používejte chráněné větve pro kritická data, jako je produkce. Podrobnosti najdete v tématu Chráněné větve .
Vliv větvení na spotřebu prostředků
S větvemi platíte jenom za to, co skutečně používáte.
Úložiště: Platíte jenom za data, která se mění. Pokud vytvoříte vývojovou větev a upravíte 1 GB dat v databázi 100 GB, platíte přibližně za 1 GB úložiště, nikoli za 200 GB. Nezměněných 99 GB se sdílí mezi větvemi.
Výpočty: Každá větev má vlastní výpočetní prostředky, které můžete škálovat nezávisle. Platíte jenom za aktivní výpočetní hodiny. Výpočet měřítka na nulu při nečinnosti. To znamená, že vývojová větev, kterou používáte příležitostně, stojí mnohem méně než provozování vyhrazeného vývojového serveru 24/7.
Výchozí větev: Vaše výchozí výpočetní větev se nikdy neškáluje na nulu, což zajišťuje, že vaše produkční úlohy zůstávají dostupné.
Strategie větví
Tady je několik běžných způsobů, jak týmy uspořádávají své větve:
Jednoduché (jednotlivci a malé týmy)
Použijte výchozí větev s jednou vývojovou větví:
production
└── development
Vaše development větev je místo, kde bezpečně vytváříte nové funkce. Můžete provádět změny schématu, přidávat testovací data a experimentovat bez rizika do produkční větve. Až budete připravení, spusťte testované migrace schématu na production (pomocí nástroje pro migraci) a pak resetujte development pro zahájení další funkce s čistými daty.
S přípravou
Přidejte přípravnou větev pro předprodukční testování:
production
├── staging
└── development
Pokud potřebujete předprodukční testování, udržujte staging větev, která kopíruje data produkční větve. Nasaďte svou aplikaci tam, spusťte integrační a výkonnostní testy s realistickými daty a před zahájením provozu získejte jistotu. Pravidelně resetujte staging ze production k obnovení vašich testovacích dat.
Větve pro jednotlivé vývojáře
Každý vývojář pracuje v úplné izolaci:
production
└── development
├── dev-alice
├── dev-bob
└── dev-charlie
Tento model brání vývojářům v vzájemném rušení práce a umožňuje každému nezávisle testovat změny schématu. Každý vývojář může experimentovat s vlastními změnami schématu a úpravami dat, aniž by to mělo vliv na ostatní, a následně použít otestované migrace na sdílenou development nebo production větev, až budou připravené.
Další kroky
- Správa větví a dozvíte se, jak vytvářet, resetovat a odstraňovat větve.
- Chráněné větve pro ochranu kritických větví