Membuat alur kerja pencocokan berbasis aturan dengan tipe aturan Lanjutan - Resolusi Entitas AWS

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

Membuat alur kerja pencocokan berbasis aturan dengan tipe aturan Lanjutan

Prosedur berikut menunjukkan cara membuat alur kerja pencocokan berbasis aturan dengan tipe aturan Lanjutan menggunakan Resolusi Entitas AWS konsol atau API. CreateMatchingWorkflow

Console
Untuk membuat alur kerja pencocokan berbasis aturan dengan tipe aturan Lanjutan menggunakan konsol
  1. Masuk ke AWS Management Console dan buka Resolusi Entitas AWS konsol di https://console.aws.amazon.com/entityresolution/.

  2. Di panel navigasi kiri, di bawah Alur Kerja, pilih Pencocokan.

  3. Pada halaman Pencocokan alur kerja, di sudut kanan atas, pilih Buat alur kerja yang cocok.

  4. Untuk Langkah 1: Tentukan detail alur kerja yang cocok, lakukan hal berikut:

    1. Masukkan nama alur kerja yang cocok dan deskripsi opsional.

    2. Untuk input Data, pilih AWS Glue database Wilayah AWS, AWS Glue tabel, dan kemudian pemetaan Skema yang sesuai.

      Anda dapat menambahkan hingga 19 input data.

      catatan

      Untuk menggunakan aturan Lanjutan, pemetaan skema Anda harus memenuhi persyaratan berikut:

      1. Setiap bidang input harus dipetakan ke kunci pencocokan unik, kecuali jika bidang tersebut dikelompokkan bersama.

      2. Jika kolom input dikelompokkan bersama, mereka dapat berbagi kunci kecocokan yang sama.

        Misalnya, pemetaan skema berikut akan berlaku untuk aturan Lanjutan:

        firstName: { matchKey: 'name', groupName: 'name' }

        lastName: { matchKey: 'name', groupName: 'name' }

        Dalam hal ini, lastName bidang firstName dan dikelompokkan bersama dan berbagi kunci pencocokan nama yang sama, yang diizinkan.

        Tinjau pemetaan skema Anda dan perbarui untuk mengikuti aturan one-to-one pencocokan ini, kecuali bidang dikelompokkan dengan benar, untuk menggunakan aturan Lanjutan.

      3. Jika tabel data Anda memiliki kolom DELETE, tipe pemetaan skema harus String dan Anda tidak dapat memiliki matchKey dan. groupName

    3. Opsi Normalisasi data dipilih secara default, sehingga input data dinormalisasi sebelum pencocokan. Jika Anda tidak ingin menormalkan data, batalkan pilihan opsi Normalisasi data.

      catatan

      Normalisasi hanya didukung untuk skenario berikut di Buat pemetaan skema:

      • Jika sub-tipe Nama berikut dikelompokkan: Nama depan, Nama tengah, Nama belakang.

      • Jika sub-tipe Alamat berikut dikelompokkan: Alamat jalan 1, Alamat jalan 2, Alamat jalan 3, Kota, Negara Bagian, Negara, Kode pos.

      • Jika sub-tipe Telepon berikut dikelompokkan: Nomor telepon, Kode negara telepon.

    4. Untuk menentukan izin akses Layanan, pilih opsi dan lakukan tindakan yang disarankan.

      Opsi Tindakan yang disarankan
      Membuat dan menggunakan peran layanan baru
      • Resolusi Entitas AWS membuat peran layanan dengan kebijakan yang diperlukan untuk tabel ini.

      • Nama peran Layanan default adalahentityresolution-matching-workflow-<timestamp>.

      • Anda harus memiliki izin untuk membuat peran dan melampirkan kebijakan.

      • Jika data input Anda dienkripsi, Anda dapat memilih Data ini dienkripsi dengan opsi kunci KMS dan kemudian masukkan AWS KMS kunci yang akan digunakan untuk mendekripsi input data Anda.

      Gunakan peran layanan yang ada
      1. Pilih nama peran layanan yang ada dari daftar tarik-turun.

        Daftar peran ditampilkan jika Anda memiliki izin untuk membuat daftar peran.

        Jika Anda tidak memiliki izin untuk membuat daftar peran, Anda dapat memasukkan Nama Sumber Daya Amazon (ARN) peran yang ingin Anda gunakan.

        Jika tidak ada peran layanan yang ada, opsi untuk Menggunakan peran layanan yang ada tidak tersedia.

      2. Lihat peran layanan dengan memilih tautan eksternal View in IAM.

        Secara default, Resolusi Entitas AWS tidak mencoba memperbarui kebijakan peran yang ada untuk menambahkan izin yang diperlukan.

    5. (Opsional) Untuk mengaktifkan Tag untuk sumber daya, pilih Tambahkan tag baru, lalu masukkan pasangan Kunci dan Nilai.

    6. Pilih Berikutnya.

  5. Untuk Langkah 2: Pilih teknik pencocokan:

    1. Untuk metode Pencocokan, pilih Pencocokan berbasis aturan.

    2. Untuk tipe Rule, pilih Advanced.

      Pilih layar teknik pencocokan dengan opsi pencocokan berbasis aturan lanjutan yang dipilih.
    3. Untuk Memproses irama, pilih salah satu opsi berikut.

      • Pilih Manual untuk menjalankan alur kerja sesuai permintaan untuk pembaruan massal

      • Pilih Otomatis untuk menjalankan alur kerja segera setelah data baru ada di bucket S3 Anda

      catatan

      Jika Anda memilih Otomatis, pastikan EventBridge notifikasi Amazon diaktifkan untuk bucket S3 Anda. Untuk petunjuk cara mengaktifkan Amazon EventBridge menggunakan konsol S3, lihat Mengaktifkan Amazon di Panduan EventBridge Pengguna Amazon S3.

    4. Untuk aturan Pencocokan, masukkan nama Aturan dan kemudian buat kondisi Aturan dengan memilih fungsi dan operator pencocokan yang sesuai dari daftar tarik-turun berdasarkan tujuan Anda.

      Anda dapat membuat hingga 25 aturan.

      Anda harus menggabungkan fungsi pencocokan fuzzy (Cosine, Levenshtein, atau Soundex) dengan fungsi pencocokan yang tepat (Exact,) menggunakan operator AND. ExactManyToMany

      Anda dapat menggunakan tabel berikut untuk membantu menentukan jenis fungsi atau operator yang ingin Anda gunakan, tergantung pada tujuan Anda.

      Tujuan Anda Fungsi atau operator yang direkomendasikan Direkomendasikan pengubah opsional Pro
      Cocokkan string identik pada data yang akurat tetapi tidak cocok dengan nilai kosong. Tepat EmptyValues=Proses
      Cocokkan string identik pada data yang akurat dan abaikan nilai kosong. Tepat (matchKey) EmptyValues=Abaikan
      Cocokkan beberapa catatan di seluruh tombol pertandingan. Cocokkan untuk pasangan fleksibel. Batas: 15 tombol pertandingan ExactManyToMany(matchKey, matchKey, ...) T/A
      Ukur kesamaan antara representasi numerik data tetapi tidak cocok dengan nilai kosong. Cocokkan untuk teks, angka, atau campuran keduanya. Cosine EmptyValues=Proses

      Sederhana, efisien.

      Bekerja dengan baik dengan teks panjang bila dikombinasikan dengan bobot TF-IDF.

      Bagus untuk pencocokan berbasis kata yang tepat.

      Ukur kesamaan antara representasi numerik data dan abaikan nilai kosong. Kosinus (matchKey,threshold,...) EmptyValues=Abaikan

      Menangani kesalahan ketik, kesalahan ejaan, dan transposisi dengan baik.

      Efektif pada berbagai jenis PII.

      Baik untuk string pendek (misalnya, nama atau nomor telepon).

      Hitung jumlah minimum perubahan yang diperlukan untuk mengubah satu kata ke kata lain tetapi tidak cocok dengan nilai kosong. Cocokkan untuk teks dengan sedikit perbedaan ejaan. Levenshtein EmptyValues=Proses
      Hitung jumlah minimum perubahan yang diperlukan untuk mengubah satu kata menjadi kata lain dan abaikan nilai kosong. Levenshtein (,,...) matchKey threshold EmptyValues=Abaikan
      Bandingkan dan cocokkan string teks berdasarkan seberapa mirip suaranya tetapi tidak cocok dengan nilai kosong. Cocokkan untuk teks dengan variasi ejaan atau pengucapan. Soundex EmptyValues=Proses

      Efektif untuk pencocokan fonetik, mengidentifikasi kata-kata yang terdengar serupa.

      Cepat dan murah secara komputasi.

      Bagus untuk mencocokkan nama dengan pengucapan yang mirip tetapi ejaan yang berbeda.

      Bandingkan dan cocokkan string teks berdasarkan seberapa mirip kedengarannya dan abaikan nilai kosong. Soundex () matchKey EmptyValues=Abaikan
      Gabungkan fungsi. DAN T/A
      Fungsi terpisah. ATAU T/A
      Kelompokkan kondisi untuk menciptakan kondisi bersarang. (…) T/A
      contoh Kondisi aturan yang cocok dengan nomor telepon dan email

      Berikut ini adalah contoh kondisi aturan yang cocok dengan catatan pada nomor telepon (Kunci pencocokan telepon) dan alamat email (Kunci pencocokan alamat email):

      Exact(Phone,EmptyValues=Process) AND Levenshtein("Email address",2)

      Contoh kondisi aturan yang cocok dengan catatan pada nomor telepon dan alamat email.

      Tombol pencocokan Telepon menggunakan fungsi pencocokan Tepat untuk mencocokkan string yang identik. Kunci pencocokan Telepon memproses nilai kosong dalam pencocokan menggunakan EmptyValues=Process modifier.

      Kunci pencocokan alamat Email menggunakan fungsi pencocokan Levenshtein untuk mencocokkan data dengan kesalahan ejaan menggunakan ambang algoritma Levenshtein Distance default 2. Tombol pencocokan Email tidak menggunakan pengubah opsional apa pun.

      Operator AND menggabungkan fungsi pencocokan Exact dan fungsi pencocokan Levenshtein.

      contoh Kondisi aturan yang digunakan ExactManyToMany untuk melakukan pencocokan matchkey

      Berikut ini adalah contoh kondisi aturan yang cocok dengan catatan pada tiga bidang alamat (kunci HomeAddresspencocokan, kunci BillingAddresspencocokan, dan kunci ShippingAddresspencocokan untuk menemukan kecocokan potensial dengan memeriksa apakah ada yang memiliki nilai yang identik.

      ExactManyToManyOperator mengevaluasi semua kemungkinan kombinasi bidang alamat yang ditentukan untuk mengidentifikasi kecocokan yang tepat antara dua atau lebih alamat. Misalnya, itu akan mendeteksi apakah HomeAddress cocok dengan BillingAddress atauShippingAddress, atau jika ketiga alamat sama persis.

      ExactManyToMany(HomeAddress, BillingAddress, ShippingAddress)
      contoh Kondisi aturan yang menggunakan pengelompokan

      Dalam Advanced Rule Based Matching dengan kondisi fuzzy, sistem pertama-tama mengelompokkan catatan ke dalam cluster berdasarkan kecocokan yang tepat. Setelah cluster awal ini terbentuk, sistem menerapkan filter pencocokan fuzzy untuk mengidentifikasi kecocokan tambahan dalam setiap cluster. Untuk kinerja optimal, Anda harus memilih kondisi pencocokan tepat berdasarkan pola data Anda untuk membuat klaster awal yang terdefinisi dengan baik.

      Berikut ini adalah contoh kondisi aturan yang menggabungkan beberapa kecocokan tepat dengan persyaratan kecocokan fuzzy. Ini menggunakan AND operator untuk memeriksa bahwa tiga bidang —FullName, Tanggal Lahir (DOB), dan Address — cocok persis di antara catatan. Hal ini juga memungkinkan untuk variasi kecil di InternalID lapangan menggunakan jarak Levenshtein. 1 Jarak Levenshtein mengukur jumlah minimum pengeditan karakter tunggal yang diperlukan untuk mengubah satu string menjadi string lainnya. Jarak 1 berarti akan cocok InternalIDs yang berbeda hanya dengan satu karakter (seperti salah ketik tunggal, penghapusan, atau penyisipan). Kombinasi kondisi ini membantu mengidentifikasi catatan yang sangat mungkin mewakili entitas yang sama, bahkan jika ada perbedaan kecil dalam pengenal.

      Exact(FullName) AND Exact(DOB) AND Exact(Address) and Levenshtein(InternalID, 1)
    5. Pilih Berikutnya.

  6. Untuk Langkah 3: Tentukan output dan format data:

    1. Untuk tujuan dan format keluaran Data, pilih lokasi Amazon S3 untuk output data dan apakah format Data akan dinormalisasi data atau Data asli.

    2. Untuk Enkripsi, jika Anda memilih untuk menyesuaikan pengaturan enkripsi, masukkan AWS KMS kunci ARN.

    3. Lihat output yang dihasilkan Sistem.

    4. Untuk keluaran Data, tentukan bidang mana yang ingin Anda sertakan, sembunyikan, atau tutupi, lalu lakukan tindakan yang disarankan berdasarkan sasaran Anda.

      Tujuan Anda Tindakan yang disarankan
      Sertakan bidang Pertahankan status output sebagai Termasuk.
      Sembunyikan bidang (kecualikan dari output) Pilih bidang Output, lalu pilih Sembunyikan.
      Bidang topeng Pilih bidang Output, dan kemudian pilih output Hash.
      Setel ulang pengaturan sebelumnya Pilih Reset.
    5. Pilih Berikutnya.

  7. Untuk Langkah 4: Tinjau dan buat:

    1. Tinjau pilihan yang Anda buat untuk langkah-langkah sebelumnya dan edit jika perlu.

    2. Pilih Buat dan jalankan.

      Sebuah pesan muncul, menunjukkan bahwa alur kerja yang cocok telah dibuat dan bahwa pekerjaan telah dimulai.

  8. Pada halaman detail alur kerja yang cocok, pada tab Metrik, lihat yang berikut ini di bawah Metrik pekerjaan terakhir:

    • ID Job.

    • Status pekerjaan alur kerja yang cocok: Antrian, Sedang berlangsung, Selesai, Gagal

    • Waktu selesai untuk pekerjaan alur kerja.

    • Jumlah Rekaman yang diproses.

    • Jumlah Rekaman yang tidak diproses.

    • Pertandingan Unik IDs yang dihasilkan.

    • Jumlah catatan Input.

    Anda juga dapat melihat metrik pekerjaan untuk mencocokkan pekerjaan alur kerja yang sebelumnya telah dijalankan di bawah riwayat Job.

  9. Setelah pekerjaan alur kerja yang cocok selesai (Status Selesai), Anda dapat pergi ke tab Output data dan kemudian pilih lokasi Amazon S3 Anda untuk melihat hasilnya.

  10. (Hanya jenis pemrosesan manual) Jika Anda telah membuat alur kerja pencocokan berbasis Aturan dengan jenis pemrosesan Manual, Anda dapat menjalankan alur kerja yang cocok kapan saja dengan memilih Jalankan alur kerja pada halaman detail alur kerja yang cocok.

  11. (Hanya jenis pemrosesan otomatis) Jika tabel data Anda memiliki kolom DELETE, maka:

    • Rekaman yang disetel ke true dalam kolom DELETE akan dihapus.

    • Rekaman yang disetel ke false dalam kolom DELETE dicerna ke dalam S3.

    Untuk informasi selengkapnya, lihat Langkah 1: Siapkan tabel data pihak pertama.

API
Untuk membuat alur kerja pencocokan berbasis aturan dengan tipe aturan Lanjutan menggunakan API
catatan

Secara default, alur kerja menggunakan pemrosesan standar (batch). Untuk menggunakan inkremental (pemrosesan otomatis, Anda harus mengkonfigurasinya secara eksplisit.

  1. Buka terminal atau command prompt untuk membuat permintaan API.

  2. Buat permintaan POST ke titik akhir berikut:

    /matchingworkflows
  3. Di header permintaan, atur Content-type ke application/json.

    catatan

    Untuk daftar lengkap bahasa pemrograman yang didukung, lihat Referensi Resolusi Entitas AWS API.

  4. Untuk badan permintaan, berikan parameter JSON yang diperlukan berikut:

    { "description": "string", "incrementalRunConfig": { "incrementalRunType": "string" }, "inputSourceConfig": [ { "applyNormalization": boolean, "inputSourceARN": "string", "schemaName": "string" } ], "outputSourceConfig": [ { "applyNormalization": boolean, "KMSArn": "string", "output": [ { "hashed": boolean, "name": "string" } ], "outputS3Path": "string" } ], "resolutionTechniques": { "providerProperties": { "intermediateSourceConfiguration": { "intermediateS3Path": "string" }, "providerConfiguration": JSON value, "providerServiceArn": "string" }, "resolutionType": "RULE_MATCHING", "ruleBasedProperties": { "attributeMatchingModel": "string", "matchPurpose": "string", "rules": [ { "matchingKeys": [ "string" ], "ruleName": "string" } ] }, "ruleConditionProperties": { "rules": [ { "condition": "string", "ruleName": "string" } ] } }, "roleArn": "string", "tags": { "string" : "string" }, "workflowName": "string" }

    Di mana:

    • workflowName(wajib) - Harus unik dan antara 1-255 karakter yang cocok pola [A-za-Z_0-9-] *

    • inputSourceConfig(wajib) — Daftar konfigurasi sumber input 1-20

    • outputSourceConfig(wajib) - Tepat satu konfigurasi sumber keluaran

    • resolutionTechniques(required) - Setel ke “RULE_MATCHING” sebagai resolutionType untuk pencocokan berbasis aturan

    • roleArn(wajib) - ARN peran IAM untuk eksekusi alur kerja

    • ruleConditionProperties(wajib) - Daftar kondisi aturan dan nama aturan yang cocok.

    Parameter opsional meliputi:

    • description— Hingga 255 karakter

    • incrementalRunConfig— Konfigurasi tipe run inkremental

    • tags— Hingga 200 pasangan nilai kunci

  5. (Opsional) Untuk menggunakan pemrosesan inkremental alih-alih pemrosesan standar (batch) default, tambahkan parameter berikut ke badan permintaan:

    "incrementalRunConfig": { "incrementalRunType": "AUTOMATIC" }
  6. Kirim permintaan .

  7. Jika berhasil, Anda akan menerima respons dengan kode status 200 dan badan JSON yang berisi:

    { "workflowArn": "string", "workflowName": "string", // Plus all configured workflow details }
  8. Jika panggilan tidak berhasil, Anda mungkin menerima salah satu kesalahan berikut:

    • 400 - ConflictException jika nama alur kerja sudah ada

    • 400 - ValidationException jika input gagal validasi

    • 402 - ExceedsLimitException jika batas akun terlampaui

    • 403 - AccessDeniedException jika Anda tidak memiliki akses yang memadai

    • 429 - ThrottlingException jika permintaan dibatasi

    • 500 - InternalServerException jika ada kegagalan layanan internal