Öğretici: Azure Veritabanı Geçiş Hizmeti kullanarak MongoDB RU çevrimdışı olarak MongoDB'yi Azure Cosmos DB'ye 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. Azure Veritabanı Geçiş Hizmeti şu anda MongoDB için Azure Cosmos DB sanal çekirdek hesabına geçişleri desteklememektedir. MongoDB iş yüklerinizi çevrimdışı olarak MongoDB için Azure Cosmos DB sanal çekirdeğine geçirmek için Azure Data Studio'da MongoDB için Azure Cosmos DB uzantısını kullanın.
Bu MongoDB geçiş kılavuzu, MongoDB geçişi serisinin bir parçasıdır. Kritik MongoDB geçiş adımları aşağıda gösterildiği gibi geçiş öncesi, geçiş ve geçiş sonrası adımlarıdır.
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 çevrimdışı, tek seferlik bir veritabanı geçişi gerçekleştirmek için Azure Veritabanı Geçiş Hizmeti kullanın.
Bu öğreticide aşağıdakilerin nasıl yapılacağı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.
MongoDB için Azure Cosmos DB için bir hesap oluşturun.
Not
Sunucusuz modla sağlanan mongoDB için Azure Cosmos DB hesabına geçiş yaparsanız DMS şu anda desteklenmemektedir.
Azure Resource Manager kullanarak Azure Veritabanı Geçiş Hizmeti için Microsoft 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 adım adım ayrıntıları içeren "hızlı başlangıç" makalelerine bakın.
Sanal ağ kurulumu sırasında ExpressRoute'u Microsoft ile ağ eşlemesi ile kullanıyorsanız hizmetin sağlanacağı 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'nin İnternet 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'ne kaynak MongoDB sunucusu erişimi sağlamak için Windows güvenlik duvarınızı açın. Varsayılan ayarlarda 27017 numaralı TCP bağlantı noktası kullanılır.
Kaynak veritabanlarınızın önünde bir güvenlik duvarı cihazı kullanıyorsanız Azure Veritabanı Geçiş Hizmeti'nin geçiş amacıyla kaynak veritabanlarına erişmesi 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 idare özelliklerinden yararlanabilirsiniz. Bu özelliklerle sağlanan istek birimlerinizden (RU/sn) tam olarak yararlanabilirsiniz. Azure Cosmos DB, geçiş işlemi boyunca belirli bir Veritabanı Geçiş Hizmeti isteğini kısıtlayabilir ve bu istek kapsayıcı tarafından sağlanan RU/sn'yi aşarsa. Daha sonra bu isteğin yeniden denenmesi gerekir.
Veritabanı Geçiş Hizmeti yeniden deneme 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. Kısıtlanmış 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 azaltma hata kodlarını kesmesine ve çok daha kısa bir gidiş dönüş süresiyle yeniden denemesine olanak sağlayarak istek yanıt sürelerini önemli ölçüde artırır.
Sunucu Tarafı Yeniden Deneme'yi kullanmak için Azure Cosmos DB portalında Özellikler>Sunucu Tarafı Yeniden Deneme'yi seçin.
Özellik devre dışı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.DataMigration için kaydet'i seçin.
Örnek oluşturma
Azure portalında + 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ında sanal ağ oluşturma hakkında daha fazla bilgi için bkz . Azure portalını 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ında 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ş Hizmeti 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ışı veri geç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 URI Biçimi'nde açıklandığı gibi mongoDB bağlantı dizesi kabul eden bağlantı dizesi modu.
Blob kapsayıcı SAS URL'sini kabul eden Azure depolamadan alınan 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 belirlerseniz depolama hesabının bağlantı dizesi aşağıdaki biçimde göründüğünden emin olun:
https://blobnameurl/container?SASKEY
Bu blob kapsayıcı SAS bağlantı dizesi Azure Depolama gezgininde bulabilirsiniz. İlgili kapsayıcı için SAS 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ştirilmelidir ve collection.json biçimi kullanılarak adlandırılmalıdır. Meta veri dosyalarını meta veriler adlı bir alt klasöre yerleştirin ve collection.json aynı biçimi 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ı önermeyiz. Kullanmanız gerekiyorsa, bağlantı dizesi modunu kullanarak sunucuya bağlanın ve bağlantı dizesi tırnak işaretleri ("") olduğundan emin olun.
&sslVerifyCertificate=false
AYRıCA, DNS ad çözümlemesinin mümkün olmadığı durumlar için IP adresini 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şte bu noktada 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 koleksiyon 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üzeyinde 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?
- Tek bildiğiniz mevcut veritabanı kümenizdeki sanal çekirdek ve sunucu sayısıysa, sanal çekirdekleri veya vCPU'ları kullanarak istek birimlerini tahmin etme hakkında bilgi edinin
- Geçerli veritabanı iş yükünüz için tipik istek oranlarını biliyorsanız Azure Cosmos DB kapasite planlayıcısı kullanarak istek birimlerini tahmin etme hakkında bilgi edinin