blitzz kullanarak Oracle 'dan Azure Cosmos DB Cassandra API hesabına veri geçirme
Uygulama hedefı:
Cassandra API
Azure Cosmos DB Cassandra API, Oracle üzerinde çalışan kurumsal iş yükleri için, şunlar gibi çeşitli nedenlerle harika bir seçenek haline geldi:
Daha iyi ölçeklenebilirlik ve kullanılabilirlik: Tek hata noktalarını, daha iyi ölçeklenebilirliği ve uygulamalarınız için kullanılabilirliği ortadan kaldırır.
Önemli maliyet tasarrufları: VM 'nin, bant genişliğinin ve ilgili Oracle lisanslarının maliyetini içeren Azure Cosmos DB maliyeti tasarrufu sağlayabilirsiniz. Ayrıca, veri merkezlerini, sunucuları, SSD depolamayı, ağ iletişimini ve elektrik maliyetlerini yönetmeniz gerekmez.
Yönetme ve izleme için ek yük yoktur: tam olarak yönetilen bir bulut hizmeti olarak Azure Cosmos DB, bir grup ayarı yönetme ve izleme yükünü ortadan kaldırır.
Veritabanı iş yüklerini bir platformdan diğerine geçirmek için çeşitli yollar vardır. blitzz , çeşitli veritabanlarından Azure Cosmos DB için sıfır kesinti süresi geçişi gerçekleştirmeye yönelik güvenli ve güvenilir bir yol sunan bir araçtır. bu makalede, blitzz kullanarak verileri Oracle veritabanından Azure Cosmos DB Cassandra API geçirmek için gereken adımlar açıklanmaktadır.
Geçiş için Blitzz kullanma avantajları
Blitzz 'nin geçiş çözümü karmaşık işletimsel iş yüklerini geçirme adımları adım adım yaklaşımla uyar. Aşağıda, Blitzz 'nin sıfır kapalı kalma süresi geçiş planının bazı önemli yönleri verilmiştir:
Oracle veritabanından Azure Cosmos DB 'e otomatik olarak iş mantığı (tablolar, dizinler, görünümler) geçişi sağlar. Şemaları el ile oluşturmanız gerekmez.
Blitzz, yüksek hacimli ve paralel veritabanı çoğaltması sunar. Kaynak ve hedef platformların geçiş sırasında değiştirme-Data-Capture (CDC) adlı bir teknik kullanılarak eşitlenmesini sağlar. CDC kullanarak, blitzz sürekli olarak kaynak veritabanından (Oracle) bir değişiklik akışı çeker ve hedef veritabanına (Azure Cosmos DB) uygular.
Hataya dayanıklı olur ve sistemdeki bir donanım ya da yazılım arızası sırasında bile verilerin tam olarak bir kez teslim edilmesini sağlar.
İletim sırasında, TLS/SSL, şifreleme gibi çeşitli güvenlik yöntemleri kullanılarak verilerin güvenliğini sağlar.
PL/SQL 'de yazılan karmaşık iş mantığını Azure Cosmos DB eşdeğer iş mantığına dönüştürmek için hizmetler sunar.
Verileri geçirme adımları
bu bölümde, blitzz 'yi kurmak ve verileri Oracle veritabanından Azure Cosmos DB 'e geçirirken gereken adımlar açıklanmaktadır.
Blitzz Replicant 'i yüklemeyi planladığınız bilgisayardan bir güvenlik sertifikası ekleyin. bu sertifika, belirtilen Azure Cosmos DB hesabıyla bir TLS bağlantısı kurmak için blitzz replicant tarafından gerektirilir. Sertifikayı aşağıdaki adımlarla ekleyebilirsiniz:
wget https://cacert.omniroot.com/bc2025.crt mv bc2025.crt bc2025.cer keytool -keystore $JAVA_HOME/lib/security/cacerts -importcert -alias bc2025ca -file bc2025.cerOU, blitzz Web sitesindebir demo Isteyerek blitzz yüklemesini ve ikili dosyaları alabilir. Alternatif olarak, takıma e-posta da gönderebilirsiniz.
CLı terminalinde, kaynak veritabanı yapılandırmasını ayarlayın. Yapılandırma dosyasını komutunu kullanarak açın
vi conf/conn/oracle.ymlve Oracle düğümlerinin, bağlantı noktası numarasının, Kullanıcı adının, parolasının ve diğer gerekli AYRıNTıLARıN IP adreslerinin virgülle ayrılmış bir listesini ekleyin. Aşağıdaki kod, örnek bir yapılandırma dosyası göstermektedir:type: ORACLE host: localhost port: 53546 service-name: IO username: '<Username of your Oracle database>' password: '<Password of your Oracle database>' conn-cnt: 30 use-ssl: false
Yapılandırma ayrıntılarını doldurduktan sonra dosyayı kaydedin ve kapatın.
İsteğe bağlı olarak, kaynak veritabanı filtre dosyasını ayarlayabilirsiniz. Filtre dosyası geçirilecek şemaları veya tabloları belirtir. Komutunu kullanarak yapılandırma dosyasını açın
vi filter/oracle_filter.ymlve aşağıdaki yapılandırma ayrıntılarını girin:allow: - schema: “io_blitzz” Types: [TABLE]Veritabanı filtresi ayrıntılarını doldurduktan sonra dosyayı kaydedin ve kapatın.
Daha sonra hedef veritabanının yapılandırmasını ayarlayacaksınız. yapılandırmayı tanımladıktan önce bir Azure Cosmos DB Cassandra API hesabı oluşturun. Verilerinizde doğru bölüm anahtarını seçin ve ardından bir keyspace ve geçirilen verileri depolamak için bir tablo oluşturun.
Verileri geçirmeden önce, uygulamanızın hızla geçirilmesi için gereken miktarda kapsayıcı aktarım hızını artırın. Örneğin, aktarım hızını 100000 ru olarak artırabilirsiniz. Geçiş işlemine başlamadan önce üretilen iş verimini ölçeklendirirken verilerinizi daha az zaman geçirmeye yardımcı olur.
Geçiş işlemi tamamlandıktan sonra aktarım hızını azaltmalısınız. Her işlem için gerekli olan ve RUs veri miktarına bağlı olarak, veri geçişten sonra gereken aktarım hızını tahmin edebilirsiniz. gerekli olan RUs 'yi tahmin etme hakkında daha fazla bilgi edinmek için bkz. kapsayıcılar ve veritabanları üzerinde üretilen iş sağlama ve Azure Cosmos DB kapasite planlayıcısı makalelerini kullanarak RU/s 'yi tahmin etme.
bağlantı dizesi bölmesinden Azure Cosmos hesabınızın iletişim noktasını, bağlantı noktasını, kullanıcı adını ve birincil parolasını alın. Yapılandırma dosyasında bu değerleri kullanacaksınız.
CLı terminalinde hedef veritabanı yapılandırmasını ayarlayın. Yapılandırma dosyasını komutunu kullanarak açın
vi conf/conn/cosmosdb.ymlve konak URI 'si, bağlantı noktası numarası, Kullanıcı adı, parola ve diğer gerekli parametrelerin virgülle ayrılmış bir listesini ekleyin. Yapılandırma dosyasındaki içeriklerin bir örneği aşağıda verilmiştir:type: COSMOSDB host: `<Azure Cosmos account’s Contact point>` port: 10350 username: 'blitzzdemo' password: `<Your Azure Cosmos account’s primary password>' max-connections: 30 use-ssl: falseSonra Blitzz kullanarak verileri geçirin. Blizz Replicant öğesini tam veya anlık görüntü modunda çalıştırabilirsiniz:
Tam mod – bu modda, replıant geçiş sonrasında çalışmaya devam eder ve kaynak Oracle sisteminde herhangi bir değişiklik için dinleme yapılır. herhangi bir değişiklik algılarsa, hedef Azure Cosmos hesabında gerçek zamanlı olarak çoğaltılır.
Anlık görüntü modu – bu modda, şema geçişi ve tek seferlik veri çoğaltması gerçekleştirebilirsiniz. Bu seçenekle gerçek zamanlı çoğaltma desteklenmez.
Yukarıdaki iki modu kullanarak, geçiş sıfır kapalı kalma süresiyle gerçekleştirilebilir.
Verileri geçirmek için, Blitzz Replicant CLı terminalden aşağıdaki komutu çalıştırın:
./bin/replicant full conf/conn/oracle.yaml conf/conn/cosmosdb.yaml --filter filter/oracle_filter.yaml --replace-existingReplicant Kullanıcı arabirimi, çoğaltma ilerlemesini gösterir. Şema geçişi ve anlık görüntü işlemi tamamlandıktan sonra, ilerleme %100 gösterir. geçiş işlemi tamamlandıktan sonra hedef Azure Cosmos veritabanındaki verileri doğrulayabilirsiniz.
Geçiş için tam modu kullandığınız için, kaynak Oracle veritabanında veri ekleme, güncelleştirme veya silme gibi işlemler gerçekleştirebilirsiniz. daha sonra, hedef Azure Cosmos veritabanında gerçek zamanlı olarak çoğaltıldıklarından emin olabilirsiniz. geçişten sonra Azure Cosmos kapsayıcınız için yapılandırılmış aktarım hızını azalttığınızdan emin olun.
Herhangi bir noktayı durdurup --özgeçmişi anahtarıyla yeniden başlatabilirsiniz. Çoğaltma, veri tutarlılığından ödün vermeden durdurulan noktadan devam eder. Aşağıdaki komut, sürdürülmesi anahtarının nasıl kullanılacağını gösterir.
./bin/replicant full conf/conn/oracle.yaml conf/conn/cosmosdb.yaml --filter filter/oracle_filter.yaml --replace-existing --resume
Hedefe yönelik veri geçişi hakkında daha fazla bilgi edinmek için, bkz. Blitzz Replicant tanıtımı.