Öğretici: MongoDB'yi MongoDB için Azure Cosmos DB'ye çevrimdışı geçirme
ŞUNLAR IÇIN GEÇERLIDIR: MongoDB
Önemli
Geçiş adımlarınızı gerçekleştirmeden önce lütfen bu kılavuzun tamamını okuyun.
DMS kullanarak MongoDB'den Azure Cosmos DB'ye çevrimdışı veri geçişine genel bakış
MongoDB'nin şirket içi veya bulut örneğinden MongoDB için Azure Cosmos DB'ye veritabanlarının çevrimdışı, tek seferlik geçişini gerçekleştirmek için Azure Veritabanı Geçiş Hizmeti kullanın.
Bu öğreticide şunların nasıl yapıldığını öğreneceksiniz:
- Azure Veritabanı Geçiş Hizmeti örneği oluşturun.
- Azure Veritabanı Geçiş Hizmeti kullanarak geçiş projesi oluşturun.
- Geçişi çalıştırma.
- Geçişi izleme.
Bu öğreticide, MongoDB'de bir Azure sanal makinesinde barındırılan bir veri kümesini geçirirsiniz. Azure Veritabanı Geçiş Hizmeti kullanarak veri kümesini MongoDB için Azure Cosmos DB'ye geçirirsiniz. Önceden ayarlanmış bir MongoDB kaynağınız yoksa bkz. Azure'da Windows VM'sinde MongoDB'yi yükleme ve yapılandırma.
Önkoşullar
Bu öğreticiyi tamamlamak için aşağıdakileri yapmanız gerekir:
Aktarım hızını tahmin etme ve bölüm anahtarı seçme gibi geçiş öncesi adımları tamamlayın.
Not
Sunucusuz modla sağlanan bir MongoDB için Azure Cosmos DB hesabına geçiş yaptığınızda DMS şu anda desteklenmemektedir.
Azure Resource Manager kullanarak Azure Veritabanı Geçiş Hizmeti için Microsoft Bir Azure Sanal Ağ oluşturun. Bu dağıtım modeli , Azure ExpressRoute veya VPN kullanarak şirket içi kaynak sunucularınıza siteden siteye bağlantı sağlar. Sanal ağ oluşturma hakkında daha fazla bilgi için Azure Sanal Ağ belgelerine, özellikle de adım adım ayrıntıları içeren "hızlı başlangıç" makalelerine bakın.
Not
Sanal ağ kurulumu sırasında ExpressRoute'u Microsoft için ağ eşlemesi ile kullanırsanız, hizmetin sağlandığı alt ağa aşağıdaki hizmet uç noktalarını ekleyin:
- Hedef veritabanı uç noktası (örneğin, SQL uç noktası veya Azure Cosmos DB uç noktası)
- Depolama uç noktası
- Service Bus uç noktası
Azure Veritabanı Geçiş Hizmeti internet bağlantısı olmadığından bu yapılandırma gereklidir.
Sanal ağınız için ağ güvenlik grubu (NSG) kurallarınızın şu iletişim bağlantı noktalarını engellemediğinden emin olun: 53, 443, 445, 9354 ve 10000-20000. Daha fazla bilgi için bkz. Ağ güvenlik grupları ile ağ trafiğini filtreleme.
Azure Veritabanı Geçiş Hizmeti varsayılan olarak TCP bağlantı noktası 27017 olan kaynak MongoDB sunucusuna erişmesine izin vermek için Windows güvenlik duvarınızı açın.
Kaynak veritabanınızın önünde bir güvenlik duvarı gereci kullanırken, Azure Veritabanı Geçiş Hizmeti geçiş için kaynak veritabanına erişmesine izin vermek için güvenlik duvarı kuralları eklemeniz gerekebilir.
Sunucu Tarafı Yeniden Deneme özelliğini yapılandırma
MongoDB'den Azure Cosmos DB'ye geçiş yaparsanız kaynak idaresi özelliklerinden yararlanabilirsiniz. Bu özelliklerle, sağlanan istek birimlerinizden (RU/sn) aktarım hızını tam olarak kullanabilirsiniz. Azure Cosmos DB, kapsayıcı tarafından sağlanan RU/sn değerini aşarsa geçiş işlemi boyunca belirli bir Veritabanı Geçiş Hizmeti isteğini kısıtlayabilir. Ardından bu isteğin yeniden denenmesi gerekir.
Veritabanı Geçiş Hizmeti yeniden denemeler gerçekleştirebilir. Veritabanı Geçiş Hizmeti ile Azure Cosmos DB arasındaki ağ atlamasında yer alan gidiş dönüş süresinin bu isteğin genel yanıt süresini etkilediğini anlamak önemlidir. Azaltılan istekler için yanıt süresini geliştirmek, geçiş için gereken toplam süreyi kısaltabilir.
Azure Cosmos DB'nin Sunucu Tarafı Yeniden Deneme özelliği, hizmetin hata kodlarını engellemesine ve çok daha düşük bir gidiş dönüş süresiyle yeniden denemesine olanak sağlayarak istek yanıt sürelerini önemli ölçüde iyileştirir.
Sunucu Tarafı Yeniden Deneme'yi kullanmak için Azure Cosmos DB portalında Özellikler>Sunucu Tarafı Yeniden Deneme'yi seçin.
Özellik devre dışı bırakıldıysa Etkinleştir'i seçin.
Kaynak sağlayıcısını kaydetme
İlk Veritabanı Geçiş Hizmeti örneğinizi oluşturmadan önce Microsoft.DataMigration kaynak sağlayıcısını kaydedin.
Azure portalında oturum açın. Abonelikler'i arayın ve seçin.
Azure Veritabanı Geçiş Hizmeti örneğini oluşturmak istediğiniz aboneliği seçin ve ardından Kaynak sağlayıcıları'nı seçin.
Geçiş için arama yapın ve ardından Microsoft için kaydet'i seçin. DataMigration.
Örnek oluşturma
Azure portal + Kaynak oluştur'u seçin, Azure Veritabanı Geçiş Hizmeti arayın ve açılan listeden Azure Veritabanı Geçiş Hizmeti seçin.
Azure Veritabanı Geçiş Hizmeti ekranında Oluştur'u seçin.
Geçiş Hizmeti Oluştur'da hizmet, abonelik ve yeni veya mevcut bir kaynak grubu için bir ad belirtin.
Azure Veritabanı Geçiş Hizmeti örneğini oluşturmak istediğiniz konumu seçin.
Mevcut bir sanal ağı seçin veya yeni bir ağ oluşturun.
Sanal ağ, Azure Veritabanı Geçiş Hizmeti kaynak MongoDB örneğine ve hedef Azure Cosmos DB hesabına erişim sağlar.
Azure portal sanal ağ oluşturma hakkında daha fazla bilgi için bkz. Azure portal kullanarak sanal ağ oluşturma.
Fiyatlandırma katmanını seçin.
Maliyetler ve fiyatlandırma katmanları hakkında daha fazla bilgi için fiyatlandırma sayfasına bakın.
Hizmeti oluşturmak için Oluştur’u seçin.
Geçiş projesi oluşturma
Hizmeti oluşturduktan sonra Azure portal içinde bulun ve açın. Ardından yeni bir geçiş projesi oluşturun.
Azure portalda Tüm hizmetler'i seçin, Azure Veritabanı Geçiş Hizmeti araması yapın ve Azure Veritabanı Geçiş Hizmeti'ni seçin.
Azure Veritabanı Geçiş Hizmetleri ekranında, oluşturduğunuz Azure Veritabanı Geçiş Hizmeti örneğin adını arayın ve ardından örneği seçin.
+ Yeni Geçiş Projesi'ni seçin.
Yeni geçiş projesinde proje için bir ad belirtin ve Kaynak sunucu türü metin kutusunda MongoDB'yi seçin. Hedef sunucu türü metin kutusunda NoSQL için Azure Cosmos DB'yi seçin ve etkinlik türünü seçin için Çevrimdışı verigeçişi'ni seçin.
Projeyi oluşturmak ve geçiş etkinliğini çalıştırmak için Etkinlik oluştur ve çalıştır'ı seçin.
Kaynak ayrıntılarını belirtme
Kaynak ayrıntıları ekranında, kaynak MongoDB sunucusu için bağlantı ayrıntılarını belirtin.
Önemli
Azure Veritabanı Geçiş Hizmeti kaynak olarak Azure Cosmos DB'i desteklemez.
Bir kaynağa bağlanmak için üç mod vardır:
Tam etki alanı adı veya IP adresi, bağlantı noktası numarası ve bağlantı kimlik bilgilerini kabul eden standart mod.
Bağlantı dizesi modu, Bağlantı Dizesi URI Biçimi'nde açıklandığı gibi mongoDB bağlantı dizesini kabul eder.
Blob kapsayıcıSı SAS URL'sini kabul eden Azure depolamadan veriler. Blob kapsayıcısının MongoDB bsondump aracı tarafından üretilen BSON dökümleri varsa Blob BSON dökümlerini içerir'i seçin. Kapsayıcıda JSON dosyaları varsa bu seçeneği belirtmeyin.
Bu seçeneği seçerseniz depolama hesabı bağlantı dizesinin aşağıdaki biçimde göründüğünden emin olun:
https://blobnameurl/container?SASKEY
Bu blob kapsayıcıSı SAS bağlantı dizesini Azure Depolama gezgininde bulabilirsiniz. İlgili kapsayıcının SAS'sini oluşturmak, url'yi istenen biçimde sağlar.
Ayrıca, Azure Depolama'daki tür dökümü bilgilerine bağlı olarak aşağıdakileri göz önünde bulundurun:
BSON dökümleri için blob kapsayıcısı içindeki verilerin bsondump biçiminde olması gerekir. Veri dosyalarını collection.bson biçimindeki içeren veritabanlarının adını taşıyan klasörlere yerleştirin. collection.metadata.json biçimini kullanarak tüm meta veri dosyalarını adlandırın.
JSON dökümleri için blob kapsayıcısı içindeki dosyalar, içeren veritabanlarının adını taşıyan klasörlere yerleştirilmelidir. Her veritabanı klasörünün içinde, veri dosyaları data adlı bir alt klasöre yerleştirilmeli ve collection.json biçimini kullanarak adlandırılmalıdır. Meta veri dosyalarını metadata adlı bir alt klasöre yerleştirin ve aynı collection.json biçimini kullanarak adlandırın. Meta veri dosyaları MongoDB bsondump aracı tarafından üretilenle aynı biçimde olmalıdır.
-
Önemli
MongoDB sunucusunda otomatik olarak imzalanan bir sertifika kullanmanızı önermiyoruz. Kullanmanız gerekiyorsa, bağlantı dizesi modunu kullanarak sunucuya bağlanın ve bağlantı dizenizde tırnak işaretleri ("") bulunduğundan emin olun.
&sslVerifyCertificate=false
IP adresini, DNS ad çözümlemesinin mümkün olmadığı durumlar için de kullanabilirsiniz.
-
Kaydet’i seçin.
Hedef ayrıntılarını belirtme
Geçiş hedefi ayrıntıları ekranında, hedef Azure Cosmos DB hesabı için bağlantı ayrıntılarını belirtin. Bu hesap, MongoDB verilerinizi geçirmekte olduğunuz mongoDB için önceden sağlanan Azure Cosmos DB hesabıdır.
Kaydet’i seçin.
Hedef veritabanlarıyla eşleyin
Hedef veritabanlarına eşle ekranında, geçiş için kaynağı ve hedef veritabanını eşleyin.
Hedef veritabanı kaynak veritabanıyla aynı veritabanı adını içeriyorsa, Azure Veritabanı Geçiş Hizmeti varsayılan olarak hedef veritabanını seçer.
Veritabanı adının yanında Oluştur görünürse, Azure Veritabanı Geçiş Hizmeti hedef veritabanını bulamadığını ve hizmetin veritabanını sizin için oluşturacağını gösterir.
Geçişin bu noktasında aktarım hızı sağlayabilirsiniz. Azure Cosmos DB'de aktarım hızını veritabanı düzeyinde veya her koleksiyon için ayrı ayrı sağlayabilirsiniz. Aktarım hızı istek birimleri cinsinden ölçülür. Azure Cosmos DB fiyatlandırması hakkında daha fazla bilgi edinin.
Kaydet’i seçin.
Koleksiyon ayarı ekranında koleksiyonlar listesini genişletin ve geçirilecek koleksiyonların listesini gözden geçirin.
Azure Veritabanı Geçiş Hizmeti hedef Azure Cosmos DB hesabında mevcut olmayan kaynak MongoDB örneğinde bulunan tüm koleksiyonları otomatik olarak seçer. Zaten veri içeren koleksiyonları yeniden silmek istiyorsanız, bu bölmedeki koleksiyonları açıkça seçmeniz gerekir.
Koleksiyonların kullanmasını istediğiniz RU sayısını belirtebilirsiniz. Azure Veritabanı Geçiş Hizmeti koleksiyon boyutuna göre akıllı varsayılanlar önerir.
Not
Veritabanı geçişini ve koleksiyonunu paralel olarak gerçekleştirin. Gerekirse, çalıştırmayı hızlandırmak için birden çok Azure Veritabanı Geçiş Hizmeti örneğini kullanabilirsiniz.
En iyi ölçeklenebilirlik için Azure Cosmos DB'de bölümlemeden yararlanmak için bir parça anahtarı da belirtebilirsiniz. Parça/bölüm anahtarı seçmek için en iyi yöntemleri gözden geçirin.
Kaydet’i seçin.
Geçiş özeti ekranının Etkinlik adı metin kutusunda geçiş etkinliği için bir ad belirtin.
Geçişi çalıştırma
Geçişi çalıştır'ı seçin. Geçiş etkinliği penceresi görüntülenir ve etkinliğin durumu Başlatılmaz.
Geçişi izleme
Geçiş etkinliği ekranında Yenile'yi seçerek geçişin durumu Tamamlandı olarak gösterilene kadar ekranı güncelleştirin.
Not
Veritabanı ve koleksiyon düzeyi geçiş ölçümlerinin ayrıntılarını almak için etkinliği seçebilirsiniz.
Azure Cosmos DB'de verileri doğrulama
Geçiş tamamlandıktan sonra Azure Cosmos DB hesabınızı denetledikten sonra tüm koleksiyonların başarıyla geçirildiğini doğrulayabilirsiniz.
Geçiş sonrası iyileştirme
MongoDB veritabanında depolanan verileri MongoDB için Azure Cosmos DB'ye geçirdikten sonra Azure Cosmos DB'ye bağlanabilir ve verileri yönetebilirsiniz. Geçiş sonrası diğer iyileştirme adımlarını da gerçekleştirebilirsiniz. Bunlar dizin oluşturma ilkesini iyileştirmeyi, varsayılan tutarlılık düzeyini güncelleştirmeyi veya Azure Cosmos DB hesabınız için genel dağıtımı yapılandırmayı içerebilir. Daha fazla bilgi için bkz. Geçiş sonrası iyileştirme.
Ek kaynaklar
- Azure Cosmos DB'ye geçiş için kapasite planlaması yapmaya mı çalışıyorsunuz?
- Tüm bildiğiniz mevcut veritabanı kümenizdeki sanal çekirdek ve sunucu sayısıysa, sanal çekirdek veya vCPU kullanarak istek birimlerini tahmin etme hakkında bilgi edinin
- Geçerli veritabanı iş yükünüz için tipik istek hızlarını biliyorsanız Azure Cosmos DB kapasite planlayıcısı kullanarak istek birimlerini tahmin etme hakkındaki bilgileri okuyun
Sonraki adımlar
Azure Veritabanı Geçiş Kılavuzu'ndaki ek senaryolar için geçiş kılavuzunu gözden geçirin.