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.
Tento článek vám pomůže naplánovat a spustit migraci z MongoDB na Azure DocumentDB. Zahrnuje dostupné nástroje pro migraci, klíčové fáze migrace a osvědčené postupy pro snížení rizika a minimalizaci výpadků.
Platí to bez ohledu na to, jestli migrujete z místního serveru MongoDB, virtuálního počítače hostovaného v cloudu nebo spravované služby MongoDB, platí možnosti migrace, pokyny a osvědčené postupy v tomto článku.
Klíčové fáze migrace
Úspěšná migrace se řídí těmito odlišnými fázemi. Každá fáze má specifické cíle a kritéria úspěchu.
1. Posouzení
Spuštění automatizované kontroly zdrojové MongoDB pomocí rozšíření Azure DocumentDB Migration k identifikaci nepodporovaných funkcí, příkazů, syntaxe dotazů a typů indexů. Posouzení také poskytuje přehled o verzi, licenci, typu instance a metrikách databáze a kolekce MongoDB. Tato zjištění použijte k plánování změn schématu a identifikaci veškerého požadovaného refaktoringu před migrací.
Tip
Před samotnou migrací doporučujeme projít si podporované funkce a syntaxi jazyka MongoDB Query Language (MQL) a provést testování konceptu.
2. Příprava
Analýza sestavy posouzení a měření zdrojových TPS (transakcí za sekundu). Spusťte zkušební migrace reprezentativních dat a nastavte cílovou úroveň výpočetních prostředků, úroveň úložiště a počet horizontálních oddílů. Proveďte testy výkonnosti, abyste zajistili, že cílová konfigurace splňuje vaše požadavky.
3. Upřesnit
Připravte cílové kolekce s příslušnými shard klíči a indexy, které odpovídají vzorům produkčních dotazů. Pokud používáte více shardů, rozhodněte se, jak distribuovat kolekce napříč shardy, abyste vyrovnali zatížení a minimalizovali operace mezi nimi.
4. Migrace
Spusťte úlohu migrace a přesuňte data v offline nebo online režimu:
- Offline migrace: Pořídí snímek zdroje na začátku a hromadně ho zkopíruje do cíle. Žádná data přidaná, aktualizovaná nebo odstraněná ve zdroji po vytvoření snímku nejsou zkopírována. Požadovaný výpadek závisí na tom, jak dlouho hromadné kopírování trvá.
- Online migrace: Provádí stejnou hromadnou kopii jako offline, ale během procesu také monitoruje stream změn. Změny provedené během migrace se replikují do cíle, takže požadovaný výpadek aplikace je minimální. Vyžaduje datový proud změn a dostatečně velký oplog ve zdroji.
Tip
U online migrací se ujistěte, že je povolený datový proud změn a operační protokol je ve vašem zdrojovém MongoDB správně velký, aby se zachytály všechny změny během okna migrace.
Dostupné nástroje najdete v tématu Nástroje pro migraci.
5. Ověření
Ověřte, že se všechna data zkopírovala, včetně nejnovějších aktualizací. Porovnejte počty dokumentů, spusťte ověření na základě ukázek a ověřte, že indexy a datové struktury odpovídají očekáváním cíle. Pomocí automatizovaných skriptů lze ověření opakovat a provádět konzistentně.
6. Přechod
Přesuňte provoz pro čtení do cíle a ověřte, že nejsou žádné problémy s funkčností nebo výkonem. Po úspěšném ověření čtení přesměrujte zápisový provoz do cílového místa. Během okna přepnutí pečlivě sledujte případné anomálie.
Nástroje pro migraci
Nástroje popisované v tomto článku vám pomůžou s migrací úloh MongoDB z následujících zdrojů:
- Virtuální počítač MongoDB
- MongoDB Atlas
- AWS DocumentDB
Rozšíření Azure DocumentDB pro migraci
Vytvářejte a spravujte úlohy migrace v Visual Studio Code pomocí Azure DocumentDB Migration Extension (Public Preview) – řešení navržené pro jednoduchost, bezpečnost a nulové výpadky.
Tento nástroj poskytuje jasné podrobné pokyny, které vám pomůžou s migrací úloh bez přerušení služeb. Můžete:
- Výběr konkrétních databází a kolekcí pro migraci
- Proveďte všechny kroky ve známém rozhraní VS Code.
- Zajištění zabezpečeného připojení v celém procesu
- Využijte nulové náklady na používání rozšíření.
S rozšířením migrace Azure DocumentDB můžete zjednodušit cestu migrace při zachování kontroly a zabezpečení – to vše bez další infrastruktury nebo složitosti.
Nástroj webové aplikace (Online)
Zjednodušte migraci na Azure DocumentDB pomocí MongoMigrationwebBasedUtility nástroj navržený pro efektivitu, spolehlivost a snadné použití. Úložiště nabízí podrobné podrobné pokyny pro migraci úloh. Tento nástroj nabízí bezproblémové prostředí pro online i offline migrace dat. Tento proces je uživatelsky přívětivý a vyžaduje zadání pouze podrobností o zdroji a cíli. Umožňuje snadno migrovat kolekce MongoDB při zachování kontroly, zabezpečení a škálovatelnosti a uvolnit tak úplný potenciál Azure DocumentDB.
Mezi klíčové funkce patří:
- Podporuje privátní nasazení ve vaší virtuální síti pro lepší zabezpečení.
- Funkce automatického obnovení, pokud dojde ke ztrátě připojení nebo přechodným chybám
- Uživatelsky přívětivé rozhraní
- Přístup ke zdrojovému kódu jazyka C# na GitHubu
Nástroj podporuje flexibilní možnosti nasazení a funguje nezávisle bez závislostí na jiných Azure prostředcích. Kromě toho nabízí škálovatelný výkon s přizpůsobitelnými cenovými plány webových aplikací Azure.
Nativní nástroje MongoDB (offline)
K migraci datových sad offline (bez replikace živých změn) do nabídky Azure DocumentDB můžete použít také nativní nástroje MongoDB, jako jsou mongodump/mongorestore, mongoexport/mongoimport .
| Scenario | Nativní nástroj MongoDB |
|---|---|
| Přesunout podmnožinu databázových dat ve formátu JSON/CSV | mongoexport/mongoimport |
| Přesunutí celé databáze (založené na BSON) | Mongodump/mongorestore |
-
mongoexport/mongoimport je nejlepší pár nástrojů pro migraci podmnožiny databáze MongoDB.
- Mongoexport exportuje existující data do souboru JSON nebo CSV, který je čitelný pro člověka. Mongoexport přebírá argument určující podmnožinu existujících dat k exportu.
- Mongoimport otevře soubor JSON nebo CSV a vloží obsah do cílové instance databáze (v tomto případě Azure DocumentDB).)
- JSON a CSV nejsou kompaktní formáty; při použití mongoimport mohou vzniknout nadbytečné poplatky za síť, když je data odesílána do Azure DocumentDB.
-
Mongodump/mongorestore je nejlepší pár nástrojů pro migraci celé databáze MongoDB. Kompaktní formát BSON zefektivňuje využití síťových prostředků při vkládání dat do Azure DocumentDB.
- Mongodump exportuje existující data jako soubor BSON.
- Mongorestore naimportuje výpis souboru BSON do Azure DocumentDB.
Note
Nativní nástroje MongoDB můžou přesouvat data pouze tak rychle, jak umožňuje hostitelský hardware.
Osvědčené postupy migrace
Pomocí těchto osvědčených postupů můžete snížit riziko, přesněji odhadnout kapacitu, zlepšit rychlost migrace a bezpečně provést přímou migraci.
Omezení chyb
V připojovacích řetězcích používejte hesla zakódovaná adresou URL. Speciální znaky, jako je
@,#a:, mohou přerušit analýzu, když nejsou kódovány. Kódování adresy URL pomáhá vyhnout se selháním připojení během vyhodnocování a migrace.Před migrací spusťte předběžné posouzení. Hodnocení vám pomůže včas identifikovat nepodporované funkce, mezery v kompatibilitě a potenciální překážky. Vyřešte problémy před migrací, abyste během spuštění snížili nutnost dodatečných úprav.
Procvičte si migraci a přechod před spuštěním do produkčního prostředí. Spusťte jednu nebo více zkušebních migrací v neprodukčním prostředí. Praxe zlepšuje přesnost načasování, připravenost týmu a sebedůvěru během přechodu do produkčního prostředí.
Správně dimenzovat infrastrukturu
Spusťte zkušební migraci u malé, ale reprezentativní datové sady. Pomocí zkušební verze můžete zachytit realistickou propustnost, latenci a spotřebu prostředků. Reprezentativní vzorek poskytuje lepší odhady než syntetická testovací data.
Extrapolujte výsledky zkušební verze pro odhad výpočetní vrstvy, úložné vrstvy a počtu shardů. Pomocí pozorovaných zkušebních metrik můžete stanovit konečné potřeby dimenzování na základě celkového objemu vaší datové sady. Znovu se můžete vrátit k odhadu, pokud se vaše distribuce produkčních dat liší od vzorku.
Použijte reprezentativní počet dokumentů, velikost a strukturu s nastavením podobných produkčním prostředím. Porovná nastavení indexování a horizontálního dělení v produkčním prostředí během zkušební verze, abyste se vyhnuli podcenění nákladů nebo doby trvání migrace. Neprodukční nastavení může vést k zavádějícím výsledkům.
Odhad cílového úložiště ze zkušebních výsledků namísto předpokladu, že jsou zdrojové a cílové velikosti stejné. Nároky zdrojového a cílového úložiště se můžou lišit kvůli rozdílům v definicích indexů a rozložení dat. Výsledky zkušební verze slouží k plánování úložiště s bezpečnou vyrovnávací pamětí.
Optimalizace rychlosti migrace
Pokud je to možné, proveďte migraci ve stejné oblasti. Zachování zdroje a cíle ve stejné oblasti snižuje latenci sítě a zlepšuje výkon přenosu dat. Může také snížit náklady na přenos dat mezi oblastmi.
Škálujte nahoru během migrace a po přechodu škálujte dolů. Můžete například dočasně škálovat cílový cluster na M200, abyste zvýšili propustnost migrace. Po migraci snižte kapacitu na odpovídající úroveň v podporovaném rozsahu pro stabilní úlohy.
Pro rychlejší zápisy zvolte disky s vyšším počtem IOPS. Vyšší IOPS může výrazně zlepšit výkon migrace náročné na zápis. Vzhledem k tomu, že velikost disku se obvykle nedá později vertikálně snížit, při plánování pečlivě vyberte velikost disku.
Pečlivě naplánujte přímý přechod, protože není možné vrátit zpět
Naplánujte výpadek během okna s nízkým provozem. Požadovaný výpadek závisí na tom, jak dlouho trvají kroky ověření, než migrace dožene. Období nízkého provozu snižuje obchodní dopad.
Před samotným překlopením zastavte všechny zápisy do zdroje. Tento krok zabraňuje náhlému odklonu mezi zdrojem a cílem na poslední chvíli. Před dokončením přechodu ověřte, že aktivita zápisu je zcela pozastavena.
Před přesunem zápisů ověřte migrovaná data. Porovnejte počty dokumentů a pak spusťte porovnání náhodných ukázkových dokumentů (například kontroly založené na hodnotě hash). Pokud je to možné, použijte skript, aby bylo možné ověření opakovat.
Aktualizujte připojovací řetězce aplikace a otestujte je v cílovém prostředí. Před povolením produkčních zápisů spusťte ověření funkčnosti a výkonu na základě cílových čtení a testovacího provozu. Ověřte, že se kritické cesty chovají podle očekávání.
Přesun zápisové operace až po úspěšném ověření. Převod produkčních zápisů do cíle až po úspěšném a konzistentním výsledku testu. Pokud ji vaše architektura aplikace podporuje, použijte fázované zavedení.
Koordinace napříč týmy pro bezproblémovou migraci
Získání podpory od všech zúčastněných stran: aplikace, data, infrastruktura, zabezpečení, síť, a týmy pro správu. Slučujte očekávání a povinnosti co nejdříve. Sdílené vlastnictví snižuje nedorozumění a zpoždění během provádění.
Pomocí plánování a zkušebních běhů můžete vytvářet týmové jistoty a upřesňovat postupy. Neexistuje žádná zkratka pro bezproblémovou migraci. Zkušební provozy odhalují problémy v prostředí s nižším rizikem a umožňují týmům si je procvičit.
Zacházejte s přechodem jako s kritickým a časově citlivým procesem. Přechod vyžaduje přesnou koordinaci a jasnou komunikaci. Určete pracovníky s rozhodovací pravomocí a nastavte eskalační cesty, než začne.
Zjistěte, kdo bude každý krok provádět, kdy se má stát, a jak minimalizovat výpadky. Přiřaďte zodpovědnosti, nastavte časové osy a srovnejte kritéria úspěchu. Zdokumentujte cutover runbook a sdílejte jej se všemi účastníky.
Koordinujte se se všemi zúčastněnými stranami, když migrace vyžaduje aktualizace více pracovních zátěží současně. Plánujte přechod během údržbového okna, které vyhovuje všem týmům. Vyhněte se pátečním nocím nebo obdobím poblíž hlavních obchodních událostí.
Nespěchejte ani nepřeskakujte kroky pro hloubkovou kontrolu – není možné vrátit zpět. Důkladné ověření a pečlivé provádění brání nákladným chybám. Přijměte, že přechod trvá nějakou dobu, zkratky zaměřené na rychlost vytvářejí riziko.
Související obsah
- Migrace dat do Azure DocumentDB pomocí nativních nástrojů MongoDB
- Migrujte data do Azure DocumentDB pomocí MongoMigrationwebBasedUtility.