

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Replikasi database mainframe ke AWS dengan menggunakan Exactly Connect
<a name="replicate-mainframe-databases-to-aws-by-using-precisely-connect"></a>

*Lucio Pereira, Sayantan Giri, dan Balaji Mohan, Amazon Web Services*

## Ringkasan
<a name="replicate-mainframe-databases-to-aws-by-using-precisely-connect-summary"></a>

Pola ini menguraikan langkah-langkah untuk mereplikasi data dari basis data mainframe ke penyimpanan data Amazon dalam waktu dekat dengan menggunakan Exacently Connect. Ini mengimplementasikan arsitektur berbasis acara dengan Amazon Managed Streaming for Apache Kafka (Amazon MSK) dan konektor basis data khusus di cloud untuk meningkatkan skalabilitas, ketahanan, dan kinerja.

Tepat Connect adalah alat replikasi yang menangkap data dari sistem mainframe lama dan mengintegrasikannya ke dalam lingkungan cloud. Data direplikasi dari mainframe ke AWS melalui change data capture (CDC) dengan menggunakan aliran pesan mendekati real-time dengan jalur data heterogen latensi rendah dan throughput tinggi. 

Pola ini juga mencakup strategi pemulihan bencana untuk jaringan data tangguh dengan replikasi data Multi-region dan routing failover.

## Prasyarat dan batasan
<a name="replicate-mainframe-databases-to-aws-by-using-precisely-connect-prereqs"></a>

**Prasyarat**
+ Database mainframe yang ada—misalnya, IBM, IBM Information Management System (IMS) DB2, atau Virtual Storage Access Method (VSAM) —yang ingin Anda tiru ke AWS Cloud
+ [Akun AWS](https://aws.amazon.com/account/) yang aktif
+ [AWS Direct Connect](https://aws.amazon.com/directconnect/) atau [AWS Virtual Private Network (AWS VPN](https://aws.amazon.com/vpn/)) dari lingkungan perusahaan Anda ke AWS
+ [Cloud pribadi virtual](https://aws.amazon.com/vpc/) dengan subnet yang dapat dijangkau oleh platform lama Anda

## Arsitektur
<a name="replicate-mainframe-databases-to-aws-by-using-precisely-connect-architecture"></a>

**Tumpukan teknologi sumber**

Lingkungan mainframe yang mencakup setidaknya satu dari database berikut:
+ Basis data IBM IMS
+ Basis data IBM DB2 
+ File VSAM

**Tumpukan teknologi target**
+ Amazon MSK
+ Amazon Elastic Kubernetes Service (Amazon EKS) dan Amazon EKS Anywhere
+ Docker
+ Database relasional AWS atau NoSQL seperti berikut ini:
  + Amazon DynamoDB
  + Amazon Relational Database Service (Amazon RDS) untuk Oracle, Amazon RDS for PostgreSQL, atau Amazon Aurora
  + Amazon ElastiCache untuk Redis
  + Amazon Keyspaces (untuk Apache Cassandra)

**Arsitektur target**

*Mereplikasi data mainframe ke database AWS*

Diagram berikut menggambarkan replikasi data mainframe ke database AWS seperti DynamoDB, Amazon RDS, Amazon, atau Amazon Keyspaces. ElastiCache Replikasi terjadi dalam waktu dekat dengan menggunakan Tangkap dan Penerbit Secara Tepat di lingkungan mainframe lokal Anda, Pengirim dengan Tepat di Amazon EKS Anywhere di lingkungan terdistribusi lokal Anda, serta Terapkan konektor Mesin dan database dengan Tepat di AWS Cloud. 

![Mereplikasi data mainframe ke database AWS](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/17ac53b7-86d5-4a8c-a55f-56b6338a1af3/images/777dd7da-48ed-4510-b8fa-9041be042671.png)


Diagram menunjukkan alur kerja berikut:

1. Tepat Capture mendapatkan data mainframe dari log CDC dan memelihara data dalam penyimpanan transien internal.

1. Tepatnya Publisher mendengarkan perubahan dalam penyimpanan data internal dan mengirimkan catatan CDC ke Excently Dispatcher melalui koneksi. TCP/IP 

1. Tepatnya Dispatcher menerima catatan CDC dari Publisher dan mengirimkannya ke Amazon MSK. Dispatcher membuat kunci Kafka berdasarkan konfigurasi pengguna dan beberapa tugas pekerja untuk mendorong data secara paralel. Dispatcher mengirimkan pengakuan kembali ke Publisher ketika catatan telah disimpan di Amazon MSK.

1. Amazon MSK memegang catatan CDC di lingkungan cloud. Ukuran partisi topik tergantung pada persyaratan sistem pemrosesan transaksi (TPS) Anda untuk throughput. Kunci Kafka wajib untuk transformasi lebih lanjut dan pemesanan transaksi.

1. Mesin Terapkan Secara Tepat mendengarkan catatan CDC dari Amazon MSK dan mengubah data (misalnya, dengan memfilter atau memetakan) berdasarkan persyaratan basis data target. Anda dapat menambahkan logika yang disesuaikan ke skrip SQD Tepatnya. (SQD adalah bahasa hak milik Tepat.) Mesin Terapkan Secara Tepat mengubah setiap rekaman CDC ke format Apache Avro atau JSON dan mendistribusikannya ke berbagai topik berdasarkan kebutuhan Anda.

1. Topik Kafka target menyimpan catatan CDC dalam berbagai topik berdasarkan basis data target, dan Kafka memfasilitasi pemesanan transaksi berdasarkan kunci Kafka yang ditentukan. Tombol partisi sejajar dengan partisi yang sesuai untuk mendukung proses berurutan. 

1. Konektor database (aplikasi Java yang disesuaikan) mendengarkan catatan CDC dari Amazon MSK dan menyimpannya di database target.

1. Anda dapat memilih database target berdasarkan kebutuhan Anda. Pola ini mendukung NoSQL dan database relasional.

*Pemulihan bencana*

Kesinambungan bisnis adalah kunci keberhasilan organisasi Anda. AWS Cloud menyediakan kemampuan untuk ketersediaan tinggi (HA) dan pemulihan bencana (DR), serta mendukung paket failover dan fallback organisasi Anda. Pola ini mengikuti strategi active/passive DR dan memberikan panduan tingkat tinggi untuk menerapkan strategi DR yang memenuhi persyaratan RTO dan RPO Anda.

Diagram berikut menggambarkan alur kerja DR.

![Alur kerja pemulihan bencana untuk mereplikasi data mainframe di AWS](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/17ac53b7-86d5-4a8c-a55f-56b6338a1af3/images/9cccba7a-7a25-411e-829f-7cd5a7a20ab4.png)


Diagram menunjukkan yang berikut:

1. Failover semi-otomatis diperlukan jika terjadi kegagalan di AWS Region 1. Dalam kasus kegagalan di Wilayah 1, sistem harus memulai perubahan perutean untuk menghubungkan Tepatnya Dispatcher ke Wilayah 2. 

1. Amazon MSK mereplikasi data melalui mirroring antar Wilayah, Untuk alasan ini, selama failover, cluster MSK Amazon di Wilayah 2 harus dipromosikan sebagai pemimpin utama. 

1. Tepat Apply Engine dan konektor database adalah aplikasi stateless yang dapat bekerja di Wilayah mana pun. 

1. Sinkronisasi database tergantung pada database target. Misalnya, DynamoDB dapat menggunakan tabel global, ElastiCache dan dapat menggunakan datastores global.

*Pemrosesan latensi rendah dan throughput tinggi melalui konektor database*

Konektor database adalah komponen penting dalam pola ini. Konektor mengikuti pendekatan berbasis pendengar untuk mengumpulkan data dari Amazon MSK dan mengirim transaksi ke database melalui pemrosesan throughput tinggi dan latensi rendah untuk aplikasi kritis misi (tingkatan 0 dan 1). Diagram berikut menggambarkan proses.

![Menggunakan konektor database untuk mereplikasi data mainframe di AWS](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/17ac53b7-86d5-4a8c-a55f-56b6338a1af3/images/79479634-becb-4212-bbfc-1a3b17ae1bed.png)


Pola ini mendukung pengembangan aplikasi yang disesuaikan dengan konsumsi ulir tunggal melalui mesin pemrosesan multithreaded.

1. Utas utama konektor mengkonsumsi catatan CDC dari Amazon MSK dan mengirimkannya ke kumpulan utas untuk diproses.

1. Thread dari kumpulan thread memproses catatan CDC dan mengirimkannya ke database target.

1. Jika semua utas sibuk, catatan CDC ditahan oleh antrian utas.

1. Utas utama menunggu untuk menghapus semua catatan dari antrian utas dan melakukan offset ke Amazon MSK.

1. Utas anak menangani kegagalan. Jika kegagalan terjadi selama pemrosesan, pesan yang gagal dikirim ke topik DLQ (antrian surat mati).

1. Thread anak memulai pembaruan bersyarat (lihat [Ekspresi kondisi](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ConditionExpressions.html) dalam dokumentasi DynamoDB), berdasarkan stempel waktu mainframe, untuk menghindari duplikasi atau pembaruan apa pun dalam database. out-of-order

Untuk informasi tentang cara menerapkan aplikasi konsumen Kafka dengan kemampuan multi-threading, lihat posting blog [Konsumsi Pesan Multi-Threaded dengan Konsumen Apache Kafka di](https://www.confluent.io/blog/kafka-consumer-multi-threaded-messaging/) situs web Confluent.

## Alat
<a name="replicate-mainframe-databases-to-aws-by-using-precisely-connect-tools"></a>

**Layanan AWS**
+ [Amazon Managed Streaming for Apache Kafka (Amazon](https://docs.aws.amazon.com/msk/latest/developerguide/what-is-msk.html) MSK) adalah layanan yang dikelola sepenuhnya yang membantu Anda membangun dan menjalankan aplikasi yang menggunakan Apache Kafka untuk memproses data streaming.
+ [Amazon Elastic Kubernetes Service (Amazon](https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html) EKS) membantu Anda menjalankan Kubernetes di AWS tanpa harus menginstal atau memelihara control plane atau node Kubernetes Anda sendiri.
+ [Amazon EKS Anywhere](https://anywhere.eks.amazonaws.com/docs/) membantu Anda menerapkan, menggunakan, dan mengelola klaster Kubernetes yang berjalan di pusat data Anda sendiri.
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) adalah layanan database NoSQL yang dikelola sepenuhnya yang menyediakan kinerja yang cepat, dapat diprediksi, dan dapat diskalakan.
+ [Amazon Relational Database Service (Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html)) membantu Anda menyiapkan, mengoperasikan, dan menskalakan database relasional di AWS Cloud.
+ [Amazon ElastiCache](https://docs.aws.amazon.com/elasticache/) membantu Anda mengatur, mengelola, dan menskalakan lingkungan cache dalam memori terdistribusi di AWS Cloud.
+ [Amazon Keyspaces (untuk Apache Cassandra)](https://docs.aws.amazon.com/keyspaces/latest/devguide/what-is-keyspaces.html) adalah layanan database terkelola yang membantu Anda memigrasi, menjalankan, dan menskalakan beban kerja Cassandra Anda di AWS Cloud.

**Alat-alat lainnya**
+ [Connect](https://www.precisely.com/product/precisely-connect/connect) mengintegrasikan data dari sistem mainframe lama seperti dataset VSAM atau database mainframe IBM ke dalam platform cloud dan data generasi berikutnya. 

## Praktik terbaik
<a name="replicate-mainframe-databases-to-aws-by-using-precisely-connect-best-practices"></a>
+ Temukan kombinasi terbaik dari partisi Kafka dan konektor multi-ulir untuk menyeimbangkan kinerja dan biaya yang optimal. Beberapa Instans Pengambilan dan Dispatcher Secara Tepat dapat meningkatkan biaya karena konsumsi MIPS (juta instruksi per detik) yang lebih tinggi.
+ Hindari menambahkan manipulasi data dan logika transformasi ke konektor database. Untuk tujuan ini, gunakan Mesin Terapkan Tepatnya, yang menyediakan waktu pemrosesan dalam mikrodetik.
+ Buat permintaan berkala atau panggilan pemeriksaan kesehatan ke database (*detak jantung*) di konektor database untuk sering menghangatkan koneksi dan mengurangi latensi.
+ Terapkan logika validasi kumpulan utas untuk memahami tugas yang tertunda dalam antrian utas dan tunggu semua utas selesai sebelum polling Kafka berikutnya. Ini membantu menghindari kehilangan data jika node, wadah, atau proses mogok.
+ Paparkan metrik latensi melalui titik akhir kesehatan untuk meningkatkan kemampuan observabilitas melalui dasbor dan mekanisme penelusuran.

## Epik
<a name="replicate-mainframe-databases-to-aws-by-using-precisely-connect-epics"></a>

### Siapkan lingkungan sumber (di tempat)
<a name="prepare-the-source-environment-on-premises"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Siapkan proses mainframe (batch atau utilitas online) untuk memulai proses CDC dari database mainframe. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Insinyur mainframe | 
| Aktifkan aliran log basis data mainframe. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Spesialis DB Mainframe | 
| Gunakan komponen Capture untuk menangkap catatan CDC. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Insinyur mainframe, Tepatnya Connect SME | 
| Konfigurasikan komponen Publisher untuk mendengarkan komponen Capture. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Insinyur mainframe, Tepatnya Connect SME | 
| Menyediakan Amazon EKS Anywhere di lingkungan terdistribusi lokal. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | DevOps insinyur | 
| Terapkan dan konfigurasikan komponen Dispatcher di lingkungan terdistribusi untuk mempublikasikan topik di AWS Cloud. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | DevOps insinyur, Tepatnya Connect SME | 

### Siapkan lingkungan target (AWS)
<a name="prepare-the-target-environment-aws"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Menyediakan kluster Amazon EKS di Wilayah AWS yang ditentukan. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | DevOps insinyur, Administrator jaringan | 
| Menyediakan kluster MSK dan mengkonfigurasi topik Kafka yang berlaku. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | DevOps insinyur, Administrator jaringan | 
| Konfigurasikan komponen Apply Engine untuk mendengarkan topik Kafka yang direplikasi.  | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Tepatnya Connect SME | 
| Menyediakan instans DB di AWS Cloud. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Insinyur data, DevOps insinyur | 
| Konfigurasikan dan gunakan konektor database untuk mendengarkan topik yang diterbitkan oleh Apply Engine. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Pengembang aplikasi, arsitek Cloud, Insinyur data | 

### Menyiapkan kelangsungan bisnis dan pemulihan bencana
<a name="set-up-business-continuity-and-disaster-recovery"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Tentukan tujuan pemulihan bencana untuk aplikasi bisnis Anda. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Arsitek cloud, Insinyur data, Pemilik aplikasi | 
| Merancang strategi pemulihan bencana berdasarkan RTO/RPO yang ditentukan. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Arsitek cloud, Insinyur data | 
| Penyediaan cluster dan konfigurasi pemulihan bencana. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | DevOps insinyur, Administrator jaringan, Arsitek cloud | 
| Uji pipa CDC untuk pemulihan bencana.  | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/replicate-mainframe-databases-to-aws-by-using-precisely-connect.html) | Pemilik aplikasi, Insinyur data, arsitek Cloud | 

## Sumber daya terkait
<a name="replicate-mainframe-databases-to-aws-by-using-precisely-connect-resources"></a>

**Sumber daya AWS**
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html)
+ [Ekspresi kondisi dengan Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ConditionExpressions.html)
+ [Amazon EKS](https://docs.aws.amazon.com/eks/index.html)
+ [Amazon EKS Anywhere](https://anywhere.eks.amazonaws.com/docs/)
+ [Amazon ElasticCache](https://docs.aws.amazon.com/elasticache/index.html)
+ [Keyspaces Amazon](https://docs.aws.amazon.com/keyspaces/?icmpid=docs_homepage_databases)
+ [Amazon MSK](https://docs.aws.amazon.com/msk/latest/developerguide/getting-started.html)
+ [Amazon RDS dan Amazon Aurora](https://docs.aws.amazon.com/rds/index.html)
+ [Amazon VPC](https://docs.aws.amazon.com/vpc/index.html)

**Tepat Connect sumber daya**
+ [Ikhtisar Connect Tepatnya](https://www.precisely.com/product/precisely-connect/connect)
+ [Ubah Pengambilan Data dengan Tepat Connect](https://help.precisely.com/r/Connect-CDC-SQData/4.1/en-US/Connect-CDC-SQData-Installation/Connect-CDC-SQData-Architecture)

**Sumber daya pertemuan**
+ [Konsumsi Pesan Multi-Threaded dengan Konsumen Apache Kafka](https://www.confluent.io/blog/kafka-consumer-multi-threaded-messaging/)