Tüm Ürünler
Search
Belge Merkezi

ApsaraDB for MongoDB:DTS ile kendi kendine yönetilen bir MongoDB parçalı kümesini geçirin

Son Güncelleme:Oct 06, 2026

Veri Aktarım Hizmeti (DTS) kullanarak, kendi kendine yönetilen bir MongoDB parçalı kümesini ApsaraDB for MongoDB'ye tek seferde bir parça olacak şekilde geçirin. DTS artımlı geçiş özelliği, geçiş sırasında uygulamanızın çalışmaya devam etmesini sağlar.

Diğer seçenekler için bkz. MongoDB veri geçişi ve senkronizasyon çözümlerine genel bakış.

Ön koşullar

  • Kaynak ve hedef MongoDB sürümlerinizin desteklendiğini doğrulayın. Desteklenen sürüm kombinasyonlarını Geçiş çözümleri bölümünde kontrol edin.

    ta-tag="xref" id="xref_78n_86r_96y" href="t17092.dita#concept_26618_zh">Migration solutions.

  • Hedef parçalı küme örneğindeki her bir parçanın yeterli depolama alanına sahip olduğundan emin olun.

    Not

    Örnek: Kaynak veritabanınızdaki en büyük parça 500 GB kullanıyorsa, hedef örnekteki her bir parçada 500 GB'tan fazla depolama alanı bulunmalıdır.

    your source database uses 500 GB, each shard in the destination instance must have more than 500 GB of storage.

Çalışma mekanizması

DTS, parçalı bir kümeyi tek seferde bir parça olacak şekilde geçirir. Her bir parça için ayrı bir geçiş görevi oluşturun.

Not

Veri dağıtımı, yapılandırdığınız parça anahtarına bağlıdır. Parça performansını en üst düzeye çıkarmak için veri parçalamayı yapılandırın.

Migration architecture

Kullanım notları

  • Tam veri geçişi, hem kaynak hem de hedef veritabanlarında yükü artırır. Hizmet kesintilerini önlemek için geçişi yoğun olmayan saatlerde gerçekleştirin.

    avoid service interruptions.

  • Sürümler veya depolama altyapıları arasında geçiş yaparken öncelikle uyumluluğu Sürümler ve depolama altyapıları bölümünden doğrulayın.

    a#concept_qg2_xcr_52b">Versions and storage engines first.

  • DTS verileri eş zamanlı olarak yazar; bu nedenle hedef veritabanı, kaynağa kıyasla %5 ila %10 daha fazla depolama alanı kullanabilir.

    database may use 5% to 10% more storage than the source.

  • Hedefte, kaynakla aynı birincil anahtara (varsayılan olarak _id) sahip belgelerin bulunmadığından emin olun. Çakışmalar varsa ve silme işleminiz işinizi etkilemiyorsa, geçişten önce çakışan belgeleri hedeften silin.

    nflicts exist and deletion does not affect your business, delete the conflicting documents from the destination before migration.

  • admin ve local veritabanları kaynak veya hedef olarak kullanılamaz.

    cannot be used as the source or destination.

  • Kaynak MongoDB parçalı kümesi en fazla 10 mongos düğümüne sahip olabilir.

    have a maximum of 10 mongos nodes.

Faturalama

Geçiş türü

Görev yapılandırma ücreti

İnternet trafiği ücreti

Tam veri geçişi

Ücretsiz.

Alibaba Cloud dışına genel internet üzerinden aktarılan veriler ücrete tabidir. DTS Pricing.

Artımlı veri geçişi

Ücretlendirilir. .DTS Pricing

Geçiş türleri

  • Tam veri geçişi: Seçilen kaynak nesnelerdeki tüm mevcut verileri hedefe kopyalar.

    Not

    Veritabanlarını, koleksiyonları ve dizinleri içerir.

    n1y_f19">

    Includes databases, collections, and indexes.

  • Artımlı veri geçişi: Tam geçiş tamamlandıktan sonra DTS, kaynakta yapılan veri değişikliklerini hedefe sürekli olarak senkronize eder.

    Not
    • DTS; veritabanları, koleksiyonlar ve dizinler için oluşturma ve silme işlemlerini senkronize eder.

    • DTS; belgeler için oluşturma, silme ve güncelleme işlemlerini senkronize eder.

    and delete operations for databases, collections, and indexes. ns for databases, collections, and indexes.

  • DTS synchronizes create, delete, and update operations for documents.

    te, and update operations for documents.

Veritabanı hesabı izinleri


Veritabanı


Tam veri geçişi


Artımlı veri geçişi


Kendi kendine yönetilen MongoDB veritabanı


Geçişi yapılacak veritabanlarında read izni.


Geçişi yapılacak veritabanların yanı sıra admin ve local veritabanlarında read izni.


ApsaraDB for MongoDB örneği


Hedef veritabanında readWrite izni.


Hedef veritabanında readWrite izni.

Veritabanı hesapları oluşturmak ve izin vermek için:

Başlamadan önce

  1. Gerekli: Veri tutarsızlıklarını önlemek için geçiş sırasında dengeleyiciyi devre dışı bırakın. Bir MongoDB örneğinin dengeleyicisini yönetin.

    Uyarı

    Dengeleyici devre dışı bırakılmazsa, parça geçişleri DTS'nin okuduğu verilerin tutarlılığını etkileyebilir.

    "c43899c026iua">If the balancer is not disabled, chunk migrations can affect the consistency of the data DTS reads.

  2. Başarısız parça geçişlerinden kaynaklanan artık belgeleri kaynak veritabanından kaldırın.

    Not

    Artık belgeler, geçiş performansını düşürebilir ve hatalara neden olan _id çakışmalarına yol açabilir.

    1. cleanupOrphaned.js betiğini indirin.

      wget "https://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/120562/cn_zh/1564451237979/cleanupOrphaned.js"
    2. In the cleanupOrphaned.js betiğinde, temizlenecek veritabanının adıyla test ifadesini değiştirin.

      Not

      Birden fazla veritabanınız varsa, bu adımı ve c adımını tekrarlayın.

      function cleanupOrphaned(coll) {
        var nextKey = { };
        var result;
        while ( nextKey != null ) {
          result = db.adminCommand( { cleanupOrphaned: coll, startingFromKey: nextKey } );
          if (result.ok != 1)
            print("Unable to complete at this time: failure or timeout.")
          printjson(result);
          nextKey = result.stoppedAtKey;
        }
      }
      var dbName = 'test'
      db = db.getSiblingDB(dbName)
      db.getCollectionNames().forEach(function(collName) {
              cleanupOrphaned(dbName + "." + collName);
      });
    3. Veritabanındaki tüm koleksiyonlardan artık belgeleri kaldırmak için bu komutu her bir parçada çalıştırın.

      Not

      Her parçada çalıştırın.

      mongo --host <Shardhost> --port <Primaryport>  --authenticationDatabase <database> -u <username> -p <password> cleanupOrphaned.js
      Not
      • <Shardhost>: Parçanın IP adresi.

      • <Primaryport>: Parçadaki birincil düğümün hizmet bağlantı noktası.

      • <database>: Hesap için kimlik doğrulama veritabanı.

      • <username>: Veritabanı hesabı.

      • <password>: Hesap parolası.

      Üç parçalı bir örnek:

      mongo --host 172.16.1.10 --port 27018  --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js
      mongo --host 172.16.1.11 --port 27021 --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js
      mongo --host 172.16.1.12 --port 27024  --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js

    d826nfg"><password>: The account password.

  3. Example with three shards:

  4. mongo --host 172.16.1.10 --port 27018  --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js
    mongo --host 172.16.1.11 --port 27021 --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js
    mongo --host 172.16.1.12 --port 27024  --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js
  5. g="codeblock" id="codeblock_6ze_gis_zmv" outputclass="language-plaintext" code-type="xCode">mongo --host 172.16.1.11 --port 27021 --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js

  6. mongo --host 172.16.1.12 --port 27024  --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js

Hedef örnekte parçalanması gereken veritabanlarını ve koleksiyonları oluşturun ve veri parçalamayı yapılandırın. Parça performansını en üst düzeye çıkarmak için veri parçalamayı yapılandırın.

Not

Geçişten önce parçalamayı yapılandırmak, tüm verilerin tek bir parçaya inmesini ve depolama kapasitesini aşmasını önler.

ote" id="note_keh_seo_9uz">

Configuring sharding before migration prevents all data from landing on a single shard and exceeding its storage capacity.

Sınırlamalar

Kaynak veritabanı sınırlamaları

  • Sunucunun yeterli giden bant genişliğine sahip olması gerekir. Yetersiz bant genişliği geçiş sürecini yavaşlatır.

  • Geçişi yapılacak koleksiyonlarda PRIMARY KEY veya UNIQUE kısıtlamaları bulunmalı ve tüm alanlar benzersiz olmalıdır. Aksi takdirde hedefte yinelenen kayıtlar oluşabilir.

  • DTS, tam veri geçişi sırasında hem kaynak hem de hedef veritabanlarında okuma ve yazma kaynaklarını kullanır; bu durum sunucu yükünü artırır. Geçişleri yoğun olmayan saatlerde çalıştırın.

  • Kaynak ve hedef veritabanları farklı MongoDB sürümleri veya depolama motorları kullanıyorsa öncelikle uyumluluğu doğrulayın. Bkz. MongoDB versions and storage engines

  • Artımlı veri geçişi için kaynak veritabanında oplog özelliğini etkinleştirin ve oplog verilerini en az 7 gün saklayın. Oplog etkinleştirilmezse ön denetim sırasında hata mesajları döndürülür ve veri geçişi görevi başlatılamaz. DTS oplog verilerine erişemezse görev başarısız olur ve veri tutarsızlığı veya veri kaybı meydana gelebilir. Bu saklama gereksinimleri DTS hizmet düzeyi sözleşmesi (SLA) kapsamı dışındadır.

  • Geçiş nesneleri olarak koleksiyonları seçer ve bunları hedefte düzenlemeyi (örneğin yeniden adlandırmayı) planlarsanız tek bir görev en fazla 1.000 koleksiyonu destekler. 1.000'den fazla koleksiyon için birden çok görev yapılandırın veya tüm veritabanını geçirin.

  • Kaynak veya hedef olarak admin ya da local veritabanını kullanmayın.

  • Kaynak kendi yönetimindeki MongoDB veritabanında 10'dan fazla mongos düğümü bulunamaz.

  • TTL (time to live) dizinlerine sahip koleksiyonları geçirmeyin. TTL dizinleri, geçişten sonra kaynak ve hedef arasında veri tutarsızlığına neden olabilir.

  • Kaynak veritabanında veya hedef parçalı küme örneğinde artık belge (orphaned document) olmadığından emin olun. Artık belgeler veri tutarsızlığına veya görev başarısızlığına yol açabilir. Bkz. the MongoDB documentation ve How do I delete orphaned documents of a MongoDB database deployed in the sharded cluster architecture?

Geçiş sırasında kaynak veritabanında aşağıdaki komutları çalıştırmayın; bu komutlar veri dağılımını değiştirir ve tutarsızlığa neden olur:

  • shardCollection, reshardCollection, unshardCollection, moveCollection, movePrimary

Şema geçişi ve tam veri geçişi sırasında:

  • Veritabanlarında veya koleksiyonlarda şema değişiklikleri yapmayın; buna dizi türlerinin güncellenmesi de dahildir. Şema değişiklikleri görev başarısızlığına veya veri tutarsızlığına neden olur.

  • Yalnızca tam veri geçişi çalıştırıyorsanız (artımlı geçiş olmadan) kaynak veritabanına veri yazmayın. Veri tutarlılığını sağlamak için şema geçişi, tam veri geçişi ve artımlı veri geçişini birlikte seçin.

Geçiş sırasında kaynak veritabanı dengeleyicisi (balancer) etkinse parça geçişi gecikmeye neden olabilir.

Diğer sınırlamalar

  • Bir görev yapılandırmadan önce bir DTS örneği satın alırsanız satın alma sırasında parça sayısını belirtin.

  • DTS, bir MongoDB veritabanına SRV bağlantı dizesi üzerinden bağlanamaz.

  • Geçişi başlatmadan önce kaynak veritabanındaki tüm verilere parça anahtarları ekleyin. Geçiş sırasında INSERT işlemleri parça anahtarlarını içermeli ve UPDATE işlemleri parça anahtarlarını değiştirememelidir.

  • Tam veri geçişi sırasında kaynak MongoDB veritabanı için dengeleyiciyi devre dışı bırakın. Her alt görev artımlı veri geçişi aşamasına ulaşana kadar devre dışı bırakılmış durumda tutun. Erken yeniden etkinleştirme veri tutarsızlığına neden olur. Bkz. Manage the ApsaraDB for MongoDB balancer

  • Hedef veritabanında kaynakla aynı birincil anahtara (_id) sahip belgelerin zaten bulunmadığından emin olun. Yinelenen veriler varsa geçişi başlatmadan önce hedefteki ilgili belgeleri silin.

  • İşlem bilgileri korunmaz. Geçirilen işlemler ayrı kayıtlara dönüştürülür.

  • DTS hedefe yazarken birincil anahtar veya benzersiz anahtar çakışması oluşursa DTS çakışan yazmayı atlar ve mevcut verileri korur.

  • Bir geçiş görevi çalışırken ApsaraDB for MongoDB parçalı küme örneğini ölçeklendirmeyin. Ölçeklendirme görevin başarısız olmasına neden olur.

  • Hedef ApsaraDB for MongoDB veritabanındaki sorgu sayımı sonuçlarını db.$table_name.aggregate([{ $count:"myCount"}]) kullanarak görüntüleyin.

  • DTS verileri eş zamanlı olarak yazdığından hedefte kullanılan depolama alanı kaynağa göre %5–%10 daha büyüktür.

  • Hedef koleksiyonda benzersiz dizin varsa veya capped niteliği true olarak ayarlanmışsa koleksiyon yalnızca tek iş parçacıklı yazmaları destekler ve artımlı geçiş sırasında eş zamanlı yeniden oynatmayı desteklemez. Bu durum geçiş gecikmesini artırabilir.

  • Tam veri geçişi her iki veritabanında da okuma ve yazma kaynaklarını kullanır ve sunucu yükünü artırır. Geçişleri yoğun olmayan saatlerde çalıştırın.

  • Tam veri geçişi sırasında gerçekleşen eş zamanlı INSERT işlemleri tablo parçalanmasına neden olur. Tam veri geçişinden sonra hedefteki tablo alanı kaynaktakinden daha büyük olur.

  • DTS, başarısız olan geçiş görevlerini en fazla 7 gün boyunca devam ettirmeye çalışır. İş yüklerini hedef örneğe taşımadan önce başarısız görevleri durdurun veya serbest bırakın ya da hedef üzerindeki DTS yazma izinlerini iptal edin. Aksi takdirde başarısız bir görev devam ettiğinde kaynak verileri hedef verilerin üzerine yazar.

  • Bir DTS görevi başarısız olursa DTS teknik destek ekibi görevi 8 saat içinde restore etmeye çalışır. Restorasyon sırasında görev yeniden başlayabilir ve görev parametreleri değiştirilebilir.

    Yalnızca görev parametreleri değiştirilebilir; veritabanı parametreleri değiştirilmez. Değiştirilebilecek parametreler Modify instance parameters bölümünde listelenmiştir.
  • Hedef bir çoğaltma kümesi örneği ise:

    • Express Connect, VPN Gateway, Smart Access Gateway, Public IP Address veya Cloud Enterprise Network (CEN) üzerinden bağlıysa Domain Name or IP ve Port Number değerlerini

      birincil düğümün IP adresine ve bağlantı noktasına veya yüksek kullanılabilirlik uç noktasına yapılandırın. Bkz. Create a DTS task in which the source or destination database is a high-availability MongoDB database

    • Self-managed Database on ECS üzerinden bağlıysa Port Number değerini birincil düğümün bağlantı noktasına ayarlayın.

  • Hedef bir parçalı küme örneği ise uygulama davranışınızın ApsaraDB for MongoDB parçalı küme gereksinimlerini karşıladığından emin olun.

Veri geçişi

Başlamadan önce

DTS görevini oluşturmadan önce aşağıdaki adımları tamamlayın.

Adım 1: Kaynak veritabanı dengeleyicisini devre dışı bırakın

DTS görevi sırasında parça geçişinin veri tutarlılığını etkilemesini önlemek için kendi yönetimindeki MongoDB veritabanındaki dengeleyiciyi devre dışı bırakın.

Uyarı

Geçiş sırasında dengeleyici etkinse parça geçişi DTS'nin tutarsız verileri okumasına neden olur.

Talimatlar için bkz. Manage the ApsaraDB for MongoDB balancer.

Adım 2: Kaynak veritabanından artık belgeleri silin

Başarısız parça geçişlerinden kalan artık belgeler geçiş performansını düşürür, yinelenen _id değerleri oluşturabilir ve istenmeyen verilerin geçirilmesine neden olabilir.

  1. cleanupOrphaned.js dosyasını indirin:

    wget "https://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/120562/cn_zh/1564451237979/cleanupOrphaned.js"
  2. cleanupOrphaned.js dosyasında artık belgelerini silmek istediğiniz veritabanının adıyla test ifadesini değiştirin.

    Birden fazla veritabanından artık belgeleri silmek için bu adımı ve sonraki adımı her veritabanı için tekrarlayın.

    Replace the database name in cleanupOrphaned.js

  3. Belirtilen veritabanındaki tüm koleksiyonlardan artık belgeleri silmek için her parçada aşağıdaki komutu çalıştırın:

    Bu komutu her parçada çalıştırın.


    Yer Tutucu


    Açıklama


    <Shardhost>


    Parçanın IP adresi


    <Primaryport>


    Parçadaki birincil düğümün hizmet bağlantı noktası


    <database>


    Hesabın ait olduğu veritabanının adı


    <username>


    Kendi yönetimindeki MongoDB veritabanında oturum açmak için kullanılan hesap


    <password>


    Kendi yönetimindeki MongoDB veritabanında oturum açmak için kullanılan parola

    mongo --host <Shardhost> --port <Primaryport> --authenticationDatabase <database> -u <username> -p <password> cleanupOrphaned.js

    Örnek: Üç parçalı bir kaynak veritabanı için:

    mongo --host 172.16.1.10 --port 27018  --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js
    mongo --host 172.16.1.11 --port 27021 --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js
    mongo --host 172.16.1.12 --port 27024  --authenticationDatabase admin -u dtstest -p 'Test123456' cleanupOrphaned.js

Adım 3: Hedef örnekte parçalamayı yapılandırın (yalnızca parçalı küme)

Hedef bir parçalı küme örneği ise geçişi başlatmadan önce parçalanacak veritabanlarını ve koleksiyonları oluşturun ve veri parçalamasını yapılandırın. Bu işlem geçirilen verilerin parçalar arasında eşit dağıtılmasını sağlar ve tek bir parçanın aşırı yüklenmesini önler.

Bkz. Configure sharding to maximize the performance of shards.

Adım 1: Veri Geçişi sayfasını açın

Data Migration sayfasını açmak ve geçiş örneğinin bulunduğu bölgeyi seçmek için aşağıdaki yöntemlerden birini kullanın.

DTS konsolu

  1. DTS console adresinde oturum açın.

  2. Sol gezinme bölmesinde Data Migration öğesine tıklayın.

  3. Sol üst köşede veri geçişi örneğinin bulunduğu bölgeyi seçin.

DMS konsolu

Kesin adımlar DMS konsol moduna ve düzenine göre değişebilir. Bkz. Simple mode ve Customize the layout and style of the DMS console .
  1. DMS console adresinde oturum açın.

  2. Üst gezinme çubuğunda Data + AI > DTS (DTS) > Data Migration yolunu izleyin.

  3. Data Migration Tasks öğesinin sağındaki açılır listeden geçiş örneğinin bulunduğu bölgeyi seçin.

Adım 2: Görev oluşturun

Görev yapılandırma sayfasını açmak için Create Task öğesine tıklayın.

3. Adım: Kaynak ve hedef veritabanlarını yapılandırın

Uyarı

Kaynak ve hedef veritabanlarını yapılandırdıktan sonra sayfanın üst kısmında görüntülenen Sınırlamalar bölümünü dikkatlice okuyun. Bu adımı atlamak görevin başarısız olmasına veya veri tutarsızlıklarına yol açabilir.

Aşağıdaki parametreleri belirtin:

Genel


Parametre


Açıklama


Task Name


DTS otomatik olarak bir görev adı oluşturur. Görevi kolayca tanımlayabilmeniz için açıklayıcı bir ad belirtin. Benzersiz bir ad girmeniz gerekmez.

Kaynak veritabanı


Parametre


Açıklama


Select Existing Connection


Örnek DTS ile kayıtlıysa açılır listeden seçin; DTS kalan parametreleri otomatik olarak doldurur. Aksi takdirde aşağıdaki parametreleri manuel olarak girin. DMS konsolunda Select a DMS database instance listesinden seçim yapın.


Database Type


MongoDB seçeneğini belirleyin.


Access Method


Bağlantı yöntemini seçin. Bu örnekte Public IP Address kullanılmaktadır. Diğer yöntemler için önce ağ ortamını hazırlamanız gerekir. Bkz. Hazırlık genel bakış.


Instance Region


Kaynak veritabanının bulunduğu bölge. Liste içinde ilgili bölge yoksa coğrafi olarak en yakın olanı seçin.


Architecture


Sharded Cluster seçeneğini belirleyin. Bu seçenek yalnızca Express Connect, VPN Gateway, Smart Access Gateway, Public IP Address veya Cloud Enterprise Network (CEN) erişim yöntemlerinde görünür.


Migration Method


Artırılan verilerin geçişi için yöntemi seçin: Oplog (önerilen) veya ChangeStream. Kaynakta oplog etkinleştirilmişse (hem kendi yönettiğiniz veritabanlarında hem de ApsaraDB for MongoDB örneklerinde varsayılan olarak etkindir) Oplog kullanılabilir ve düşük gecikme süreli artırılmış geçiş sağlar. Change streams etkinleştirildiğinde ChangeStream seçeneği mevcuttur. Bkz. Change Streams. Kaynak esnek olmayan bir Amazon DocumentDB kümesiyse yalnızca ChangeStream seçeneğini belirleyin. Architecture parametresi Sharded Cluster olarak ayarlandığında Shard account ve Shard password parametrelerini girmeniz gerekmez.


Endpoint Type


Kurulumunuza göre Standalone veya Multi-node seçeneğini belirleyin. Bu parametre yalnızca Express Connect, VPN Gateway, Smart Access Gateway, Public IP Address veya Cloud Enterprise Network (CEN) erişim yöntemlerinde görünür.


Mongos Domain Name or IP Address


Herhangi bir mongos düğümünün uç noktası veya IP adresi. Bu alan yalnızca Endpoint Type değeri Standalone olduğunda görünür. Domain Name or IP değerini herhangi bir mongos düğümünün adresi olarak, Port Number değerini ise ilgili bağlantı noktası numarası olarak ayarlayın.


Port Number


Mongos düğümünün hizmet bağlantı noktası. Bu alan yalnızca Endpoint Type değeri Standalone olduğunda görünür. Bağlantı noktasının İnternet üzerinden erişilebilir olması gerekir.


Mongos endpoint


Kaynak veritabanının uç noktası <IP>:<Port> biçiminde belirtilir. Bu alan yalnızca Endpoint Type değeri Multi-node olduğunda görünür. Birden fazla uç noktayı satır sonlarıyla ayırın. Mümkünse genel olarak erişilebilir bir etki alanı adı kullanın.


Authentication Database


Kaynak için kimlik doğrulama veritabanı. Varsayılan değer: admin.


Database Account


Mongos düğümlerine erişmek için kullanılan hesap. Access Method değeri Self-managed Database on ECS veya Database Gateway ise bunun yerine parça erişim hesabını girin.


Database Password


Veritabanı hesabının parolası.


Access to Multiple Shard Nodes


Parça düğümleri için erişim bilgileri. Bu seçenek yalnızca kaynak mimarisi Sharded Cluster, Migration Method değeri Oplog ve Endpoint Type değeri Multi-node olduğunda kullanılabilir. Add seçeneğine tıklayın, her bir parça düğümü uç noktasını <IP>:<Port> biçiminde (her satıra bir tane olacak şekilde) girin ve tüm parçalar için işlemi tekrarlayın.


Shard access information (IP:Port)


Her bir parçanın IP adresi ve bağlantı noktası IP:Port biçiminde belirtilir. Bu alan yalnızca Endpoint Type değeri Standalone olduğunda görünür. Birden fazla parçayı virgülle ayırın.


Shard account


Kaynak veritabanındaki parçalara erişmek için kullanılan hesap.


Shard password


Parça hesabının parolası.


Encryption


Bağlantı şifreleme yöntemi: Non-encrypted, SSL-encrypted veya Mongo Atlas SSL. Kullanılabilir seçenekler Access Method ve Architecture ayarlarına bağlıdır. Architecture değeri Sharded Cluster ve Migration Method değeri Oplog ise ApsaraDB for MongoDB için SSL-encrypted seçeneği kullanılamaz. Kaynak Replica Set mimarisini kullanıyorsa, Access Method değeri Alibaba Cloud Instance değilse ve Encryption değeri SSL-encrypted ise bağlantıyı doğrulamak için bir CA sertifikası yükleyin.

Hedef veritabanı


Parametre


Açıklama


Select Existing Connection


Örnek DTS ile kayıtlıysa açılır listeden seçin. Aksi takdirde aşağıdaki parametreleri yapılandırın.


Database Type


MongoDB seçeneğini belirleyin.


Access Method


Alibaba Cloud Instance seçeneğini belirleyin.


Instance Region


Hedef ApsaraDB for MongoDB örneğinin bulunduğu bölge.


Replicate Data Across Alibaba Cloud Accounts


Mevcut hesaptaki bir örneği kullanmak için No seçeneğini belirleyin.


Architecture


Hedef örneğin mimarisi.


Instance ID


Hedef ApsaraDB for MongoDB örneğinin kimliği.


Authentication Database


Hedef için kimlik doğrulama veritabanı. Varsayılan değer: admin.


Database Name


Geçirilen nesneleri alacak hedef veritabanının adı.


Database Account


Hedef örnek için veritabanı hesabı.


Database Password


Hedef veritabanı hesabının parolası.


Encryption


Bağlantı şifreleme yöntemi. Kullanılabilir seçenekler Access Method ve Architecture ayarlarına bağlıdır. Hedef, Sharded Cluster mimarisine sahip bir ApsaraDB for MongoDB örneği ise SSL-encrypted seçeneği kullanılamaz.

4. Adım: Bağlantıyı test edin

Test Connectivity and Proceed seçeneğine tıklayın.

DTS sunucu CIDR bloklarının kaynak ve hedef veritabanlarının güvenlik ayarlarına eklendiğinden emin olun. Bkz. DTS sunucularının CIDR bloklarını ekleyin . Kaynak veya hedef, Alibaba Cloud Instance olarak bağlanmamış kendi yönettiğiniz bir veritabanıysa CIDR Blocks of DTS Servers iletişim kutusunda Test Connectivity seçeneğine tıklayın.

5. Adım: Geçiş nesnelerini yapılandırın

Configure Objects sayfasında aşağıdaki parametreleri yapılandırın:


Parametre


Açıklama


Migration Types


Gereksinimlerinize göre geçiş türlerini seçin. Yalnızca tam veri geçişi gerçekleştirmek için Schema Migration ve Full Data Migration seçeneklerini belirleyin. Geçiş sırasında hizmetin çalışır durumda kalmasını sağlamak istiyorsanız Schema Migration, Full Data Migration ve Incremental Data Migration öğelerini seçin. Schema Migration seçilmezse veritabanını ve koleksiyonları hedefte görevi başlatmadan önce oluşturmanız gerekir; ayrıca Selected Objects alanında nesne adı eşlemeyi etkinleştirin. Incremental Data Migration seçilmezse geçiş sürecinde kaynak sisteme veri yazmayın.


Processing Mode of Conflicting Tables


Precheck and Report Errors: Hedefte kaynakla aynı ada sahip koleksiyonların olup olmadığını denetler. Yinelenen adlar bulunursa ön denetim başarısız olur. Hedefteki koleksiyonları silmeden veya yeniden adlandırmadan ad çakışmalarını çözmek için nesne adı eşleme özelliğini kullanın. Bkz. Map object names. Ignore Errors and Proceed: Yinelenen koleksiyon adlarına yönelik ön denetimi atlar. Tam veri geçişi sırasında bir kaydın birincil anahtarı hedefte zaten varsa mevcut kayıt korunur. Artımlı veri geçişi sırasında ise mevcut kaydın üzerine yazılır. Kaynak ve hedef şemaları farklıysa belirli sütunlar geçişte hata verebilir.


Capitalization of Object Names in Destination Instance


Hedefteki veritabanı ve koleksiyon adlarının büyük/küçük harf kullanımını kontrol eder. Varsayılan: DTS default policy. Ayrıntılar için bkz. Specify the capitalization of object names in the destination instance.


Source Objects


Bir veya daha fazla nesne (koleksiyon ya da veritabanı) seçin ve bunları Selected Objects listesine eklemek için 向右小箭头 simgesine tıklayın.


Selected Objects


Nesneyi hedefte yeniden adlandırmak veya farklı bir hedef nesneyle eşlemek için nesneye sağ tıklayın. Bkz. Map object names. Veritabanları ve koleksiyonlar için artımlı geçiş modunu ayarlamak amacıyla nesneye sağ tıklayın. Tam geçiş için WHERE filtre koşullarını belirtmek üzere bir koleksiyona sağ tıklayın. Bkz. Specify filter conditions. Nesneleri kaldırmak için ilgili öğelere tıklayıp image simgesine tıklayın. Nesne adı eşleme kullanılıyorsa eşlenen nesnelere bağımlı diğer nesnelerin geçişi başarısız olabilir.

Aşağıdaki ayarları yapılandırmak için Next: Advanced Settings düğmesine tıklayın:


Parametre


Açıklama


Dedicated Cluster for Task Scheduling


DTS varsayılan olarak görevleri paylaşılan bir kümeye zamanlar. Daha yüksek kararlılık için özel bir küme satın alabilirsiniz. Bkz. What is a DTS dedicated cluster.


Retry Time for Failed Connections


Görev başladıktan sonra bağlantı hataları için geçerli olan yeniden deneme aralığıdır. Geçerli değerler: 10–1.440 dakika. Varsayılan: 720 dakika. En az 30 dakika olacak şekilde ayarlayın. DTS bu süre içinde yeniden bağlanırsa görev devam eder; aksi takdirde görev başarısız olur. Birden çok görev aynı veritabanını paylaşıyorsa en son ayarlanan yeniden deneme süresi geçerli olur. DTS, yeniden deneme sırasında örnek için ücretlendirme yapar.


Retry Time for Other Issues


DDL veya DML işlemlerindeki hatalar için yeniden deneme aralığıdır. Geçerli değerler: 1–1.440 dakika. Varsayılan: 10 dakika. 10 dakikadan uzun bir süre belirtin. Bu değer Retry Time for Failed Connections parametresinden küçük olmalıdır.


Enable Throttling for Full Data Migration


Tam veri geçişi sırasında DTS kaynak kullanımını sınırlar. Queries per second (QPS) to the source database, RPS of Full Data Migration ve Data migration speed for full migration (MB/s) parametrelerini yapılandırın. Bu seçenek yalnızca Full Data Migration seçildiğinde kullanılabilir.


Only one data type for primary key _id in a table of the data to be synchronized


Eşlenecek verideki her koleksiyonda _id birincil anahtarının tek bir veri türüne sahip olup olmadığını belirtir. Yes: DTS birincil anahtar veri türlerini taramayı atlar ve koleksiyon başına tek bir türü geçirir. No: DTS birincil anahtarın tüm veri türlerini tarar ve geçirir. Veri yapınıza göre etkinleştirin. Yanlış yapılandırma veri kaybına yol açabilir. Bu seçenek yalnızca Full Data Migration seçildiğinde görünür.


Enable Throttling for Incremental Data Migration


Artımlı veri geçişi sırasında DTS kaynak kullanımını sınırlar. RPS of Incremental Data Migration ve Data migration speed for incremental migration (MB/s) parametrelerini yapılandırın. Bu seçenek yalnızca Incremental Data Migration seçildiğinde kullanılabilir.


Environment Tag


DTS örneğini tanımlamak için kullanılan isteğe bağlı bir etikettir.


Configure ETL


Çıkarma, dönüştürme ve yükleme (ETL) özelliğini etkinleştirir. Kod düzenleyicide veri işleme ifadelerini girmek için Yes seçeneğini belirleyin. Bkz. Configure ETL in a data migration or data synchronization task. ETL adımını atlamak için No seçeneğini belirleyin.


Monitoring and Alerting


Görev için uyarı yapılandırması yapmanızı sağlar. Uyarı eşiği ve bildirim kişilerini ayarlamak için Yes seçeneğini belirleyin. Bkz. Configure monitoring and alerting when you create a DTS task.

Veri doğrulamayı yapılandırmak için Next Step: Data Verification düğmesine tıklayın. Bkz. Configure a data verification task.

6. Adım: Ön denetimi çalıştırın

Next: Save Task Settings and Precheck düğmesine tıklayın.

Bu görev yapılandırması için API parametrelerini önizlemek amacıyla Next: Save Task Settings and Precheck üzerine gelin ve Preview OpenAPI parameters öğesine tıklayın.

DTS, geçiş başlamadan önce bir ön denetim gerçekleştirir. Görev ancak ön denetim başarılı olduğunda başlayabilir.

  • Bir ön denetim öğesi başarısız olursa yanındaki View Details bağlantısına tıklayarak sorunu giderin ve ardından ön denetimi yeniden çalıştırın.

  • Bir ön denetim öğesi uyarı tetiklerse:

    • Uyarı dikkate alınamıyorsa View Details öğesine tıklayın, sorunu çözün ve ön denetimi tekrar çalıştırın.

    • Uyarı dikkate alınabiliyorsa Confirm Alert Details düğmesine tıklayın, iletişim kutusunda Ignore ve ardından OK seçeneklerini belirleyin. İşlemi sürdürmek için Precheck Again düğmesine tıklayın. Uyarının dikkate alınması veri tutarsızlığına neden olabilir.

7. Adım: Örnek satın alın

  1. Success Rate değeri %100 olana kadar bekleyin ve ardından Next: Purchase Instance düğmesine tıklayın.

  2. Purchase Instance sayfasında aşağıdaki bilgileri yapılandırın:

    Bölüm

    Parametre

    Açıklama

    New Instance Class

    Resource Group

    Geçiş örneği için kaynak grubu. Varsayılan: default resource group. Bkz. What is Resource Management?

    Instance Class

    Örnek sınıfı geçiş hızını belirler. İhtiyaçlarınıza göre seçim yapın. Bkz. Instance classes of data migration instances.

  3. Onay kutusunu işaretleyerek Data Transmission Service (Pay-as-you-go) Service Terms sözleşmesini okuyup kabul edin.

  4. Buy and Start düğmesine tıklayın ve onay iletişim kutusunda OK seçeneğini belirleyin.

Görev Data Migration sayfasında görüntülenir.

  • Yalnızca tam veri geçişi yapılıyorsa görev otomatik olarak durur. Durum Completed olarak gösterilir.

  • Artımlı veri geçişi yapılıyorsa görev sürekli çalışır ve otomatik olarak durmaz. Durum Running olarak gösterilir.

8. Adım: Kalan parçalar için görevler oluşturun (varsa)

Kaynak için Access Method değeri Self-managed Database on ECS veya Database Gateway olarak ayarlanmışsa kalan her parça için 1–7. adımları tekrarlayın.

9. Adım: Geçiş görevlerini durdurun

Full data migration

Tam veri geçişi görevini manuel olarak durdurmayın; aktarılan veriler eksik kalabilir. Görevin otomatik olarak durmasını bekleyin.

Incremental data migration

Artımlı veri geçişi otomatik olarak durmaz. Yoğunluğun düşük olduğu saatlerde veya iş yüklerini hedef örneğe yönlendirmeden önce uygun bir zamanda manuel olarak durdurun.

  1. Incremental Data Migration ilerleme çubuğunda Running ve Operation Info alanında Undelayed göründüğünü teyit edin. Ardından kaynak veritabanına birkaç dakika boyunca veri yazmayı bırakın.

  2. Incremental Data Migration durumu tekrar Undelayed konumuna döndüğünde tüm parçalar için geçiş görevlerini manuel olarak durdurun.

10. Adım: İş yüklerini hedef örneğe yönlendirin

Geçiş tamamlandıktan ve verileri doğruladıktan sonra iş yüklerinizi hedef ApsaraDB for MongoDB örneğine yönlendirin.