

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

# Menggunakan status Peta dalam mode Terdistribusi untuk beban kerja paralel skala besar di Step Functions
<a name="state-map-distributed"></a>

**Mengelola status dan mengubah data**  
Pelajari tentang [Melewati data antar status dengan variabel](workflow-variables.md) dan [Mengubah data dengan JSONata](transforming-data.md).

Dengan Step Functions, Anda dapat mengatur beban kerja paralel skala besar untuk melakukan tugas, seperti pemrosesan data semi-terstruktur berdasarkan permintaan. Beban kerja paralel ini memungkinkan Anda memproses sumber data skala besar yang disimpan di Amazon S3 secara bersamaan. Misalnya, Anda dapat memproses satu file JSON atau CSV yang berisi sejumlah besar data. Atau Anda dapat memproses satu set besar objek Amazon S3. 

Untuk menyiapkan beban kerja paralel skala besar dalam alur kerja Anda, sertakan `Map` status dalam mode Terdistribusi. *Status Peta* memproses item dalam kumpulan data secara bersamaan. `Map`Status yang disetel ke **Distributed** dikenal sebagai *status Peta Terdistribusi*. Dalam *mode Terdistribusi*, `Map` status memungkinkan pemrosesan konkurensi tinggi. Dalam mode Terdistribusi, `Map` status memproses item dalam kumpulan data dalam iterasi yang disebut eksekusi *alur kerja anak*. Anda dapat menentukan jumlah eksekusi alur kerja anak yang dapat berjalan secara paralel. Setiap eksekusi alur kerja anak memiliki riwayat eksekusi terpisah sendiri dari alur kerja induk. Jika Anda tidak menentukan, Step Functions menjalankan 10.000 eksekusi alur kerja anak paralel secara paralel.

Ilustrasi berikut menjelaskan bagaimana Anda dapat mengatur beban kerja paralel skala besar dalam alur kerja Anda.

![\[Diagram untuk mengilustrasikan konsep orkestrasi beban kerja paralel skala besar.\]](http://docs.aws.amazon.com/id_id/step-functions/latest/dg/images/autobahn-concept.png)


**Belajar di lokakarya**  
Pelajari bagaimana teknologi tanpa server seperti Step Functions dan Lambda dapat menyederhanakan pengelolaan dan penskalaan, membongkar tugas yang tidak berdiferensiasi, dan mengatasi tantangan pemrosesan data terdistribusi skala besar. Sepanjang jalan, Anda akan bekerja dengan peta terdistribusi untuk pemrosesan konkurensi tinggi. Lokakarya ini juga menyajikan praktik terbaik untuk mengoptimalkan alur kerja Anda, dan kasus penggunaan praktis untuk pemrosesan klaim, pemindaian kerentanan, dan simulasi Monte Carlo.  
**Workshop: [Pemrosesan Data Skala Besar dengan Step Functions](https://catalog.workshops.aws/serverless-data-processing)**

**Topics**
+ [Istilah kunci](#dist-map-orchestrate-parallel-workloads-key-terms)
+ [Definisi status Peta Terdistribusi](#use-map-state-dist-mode)
+ [Izin untuk menjalankan Peta Terdistribusi](#dist-map-permissions)
+ [Bidang status Peta Terdistribusi](#map-state-distributed-additional-fields)
+ [Ambang kegagalan Peta Terdistribusi](#maprun-fail-threshold)
+ [Pelajari lebih lanjut tentang peta terdistribusi](#dist-map-next-steps)

## Istilah kunci
<a name="dist-map-orchestrate-parallel-workloads-key-terms"></a>

**Mode terdistribusi**  
Mode pemrosesan [status Peta](state-map.md). Dalam mode ini, setiap iterasi `Map` status berjalan sebagai eksekusi alur kerja anak yang memungkinkan konkurensi tinggi. Setiap eksekusi alur kerja anak memiliki riwayat eksekusi sendiri, yang terpisah dari riwayat eksekusi alur kerja induk. Mode ini mendukung input pembacaan dari sumber data Amazon S3 skala besar. 

**Status Peta Terdistribusi**  
Status Peta diatur ke [mode pemrosesan](state-map.md#concepts-map-process-modes) **Terdistribusi**.

**Alur kerja peta**  
Serangkaian langkah yang dijalankan oleh suatu `Map` negara.

**Alur kerja orang tua**  
Alur kerja yang berisi satu atau lebih status Peta Terdistribusi.

**Eksekusi alur kerja anak**  
Iterasi dari *status Peta Terdistribusi*. Eksekusi alur kerja anak memiliki riwayat eksekusi sendiri, yang terpisah dari riwayat eksekusi alur kerja induk.

**Peta Jalankan**  
Saat Anda menjalankan `Map` status dalam mode Distributed, Step Functions akan membuat resource Map Run. Map Run mengacu pada sekumpulan eksekusi alur kerja anak yang memulai *status Peta Terdistribusi*, dan pengaturan runtime yang mengontrol eksekusi ini. Step Functions menetapkan Amazon Resource Name (ARN) ke Map Run Anda. Anda dapat memeriksa Map Run di konsol Step Functions. Anda juga dapat menjalankan tindakan `[DescribeMapRun](https://docs.aws.amazon.com/step-functions/latest/apireference/API_DescribeMapRun.html)` API.  
Eksekusi alur kerja anak dari Map Run memancarkan metrik ke;. CloudWatch Metrik ini akan memiliki ARN Mesin Negara berlabel dengan format berikut:  
 `arn:partition:states:region:account:stateMachine:stateMachineName/MapRunLabel or UUID`   
Untuk informasi selengkapnya, lihat [Melihat Peta Berjalan](concepts-examine-map-run.md).

## Contoh definisi status Peta Terdistribusi (JSONPath)
<a name="use-map-state-dist-mode"></a>

Gunakan `Map` status dalam mode Terdistribusi saat Anda perlu mengatur beban kerja paralel skala besar yang memenuhi kombinasi kondisi berikut:
+ Ukuran dataset Anda melebihi 256 KiB.
+ Riwayat peristiwa eksekusi alur kerja akan melebihi 25.000 entri.
+ Anda memerlukan konkurensi lebih dari 40 iterasi bersamaan.

Contoh definisi *status Peta Terdistribusi* berikut menentukan kumpulan data sebagai file CSV yang disimpan dalam bucket Amazon S3. Ini juga menentukan fungsi Lambda yang memproses data di setiap baris file CSV. Karena contoh ini menggunakan file CSV, itu juga menentukan lokasi header kolom CSV. Untuk melihat definisi mesin status lengkap dari contoh ini, lihat tutorial [Menyalin data CSV skala besar menggunakan Peta Terdistribusi](tutorial-map-distributed.md).

```
{
  "Map": {
    "Type": "Map",
    "ItemReader": {
      "ReaderConfig": {
        "InputType": "CSV",
        "CSVHeaderLocation": "FIRST_ROW"
      },
      "Resource": "arn:aws:states:::s3:getObject",
      "Parameters": {
        "Bucket": "amzn-s3-demo-bucket",
        "Key": "csv-dataset/ratings.csv"
      }
    },
    "ItemProcessor": {
      "ProcessorConfig": {
        "Mode": "DISTRIBUTED",
        "ExecutionType": "EXPRESS"
      },
      "StartAt": "LambdaTask",
      "States": {
        "LambdaTask": {
          "Type": "Task",
          "Resource": "arn:aws:states:::lambda:invoke",
          "OutputPath": "$.Payload",
          "Parameters": {
            "Payload.$": "$",
            "FunctionName": "arn:aws:lambda:us-east-2:account-id:function:processCSVData"
          },
          "End": true
        }
      }
    },
    "Label": "Map",
    "End": true,
    "ResultWriter": {
      "Resource": "arn:aws:states:::s3:putObject",
      "Parameters": {
        "Bucket": "amzn-s3-demo-destination-bucket",
        "Prefix": "csvProcessJobs"
      }
    }
  }
}
```

## Izin untuk menjalankan Peta Terdistribusi
<a name="dist-map-permissions"></a>

Bila Anda menyertakan *status Peta Terdistribusi* dalam alur kerja Anda, Step Functions memerlukan izin yang sesuai untuk memungkinkan peran mesin status menjalankan tindakan `[StartExecution](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html)` API untuk status Peta *Terdistribusi*.

Contoh kebijakan IAM berikut memberikan hak istimewa paling sedikit yang diperlukan untuk peran mesin status Anda untuk menjalankan status Peta *Terdistribusi*.

**catatan**  
Pastikan Anda mengganti `stateMachineName` dengan nama mesin status tempat Anda menggunakan *status Peta Terdistribusi*. Misalnya, `arn:aws:states:region:account-id:stateMachine:mystateMachine`.

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "states:StartExecution"
      ],
      "Resource": [
        "arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachineName"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "states:DescribeExecution"
      ],
      "Resource": "arn:aws:states:us-east-1:123456789012:execution:myStateMachineName:*"
    }
  ]
}
```

 Selain itu, Anda perlu memastikan bahwa Anda memiliki hak istimewa paling sedikit yang diperlukan untuk mengakses AWS sumber daya yang digunakan dalam *status Peta Terdistribusi*, seperti bucket Amazon S3. Untuk informasi, lihat [Kebijakan IAM untuk menggunakan status Peta Terdistribusi](iam-policies-eg-dist-map.md).

## Bidang status Peta Terdistribusi
<a name="map-state-distributed-additional-fields"></a>

Untuk menggunakan *status Peta Terdistribusi* dalam alur kerja Anda, tentukan satu atau beberapa bidang ini. Anda menentukan bidang ini selain [bidang status umum](statemachine-structure.md#amazon-states-language-common-fields).

**`Type` (Wajib)**  
Menetapkan jenis negara, seperti`Map`.

**`ItemProcessor` (Wajib)**  
Berisi objek JSON berikut yang menentukan mode pemrosesan `Map` status dan definisi.  
+ <a name="childworkflows"></a>`ProcessorConfig`— JSON objek yang menentukan modus untuk memproses item, dengan sub-bidang berikut:
  + `Mode`— Setel **DISTRIBUTED** untuk menggunakan `Map` status dalam mode Terdistribusi.
**Awas**  
Mode terdistribusi didukung dalam alur kerja Standar tetapi tidak didukung dalam alur kerja Express.
  + `ExecutionType`**- Menentukan jenis eksekusi untuk alur kerja Peta sebagai **STANDARD** atau EXPRESS.** Anda harus memberikan bidang ini jika Anda menentukan `DISTRIBUTED` untuk `Mode` sub-bidang. Untuk informasi selengkapnya tentang jenis alur kerja, lihat[Memilih jenis alur kerja di Step Functions](choosing-workflow-type.md).
+ `StartAt`- Menentukan string yang menunjukkan keadaan pertama dalam alur kerja. String ini peka huruf besar/kecil dan harus cocok dengan nama salah satu objek state. Status ini berjalan pertama kali untuk setiap item dalam kumpulan data. Masukan eksekusi apa pun yang Anda berikan ke `Map` status akan diteruskan ke `StartAt` status terlebih dahulu.
+ `States`[— Objek JSON yang berisi kumpulan status yang dibatasi koma.](workflow-states.md) Dalam objek ini, Anda mendefinisikan[Map workflow](state-map-inline.md#mapwflow).

**`ItemReader`**  
Menentukan dataset dan lokasinya. `Map`Negara menerima data inputnya dari kumpulan data yang ditentukan.  
Dalam mode Terdistribusi, Anda dapat menggunakan payload JSON yang diteruskan dari status sebelumnya atau sumber data Amazon S3 skala besar sebagai kumpulan data. Untuk informasi selengkapnya, lihat [ItemReader (Peta)](input-output-itemreader.md).

**`Items`(Opsional, JSONata hanya)**  
Sebuah array JSON, objek JSON, atau JSONata ekspresi yang harus mengevaluasi untuk array atau objek.

**`ItemsPath`(Opsional, JSONPath hanya)**  
Menentukan [jalur referensi](amazon-states-language-paths.md#amazon-states-language-reference-paths) menggunakan [JsonPath](https://datatracker.ietf.org/wg/jsonpath/about/)sintaks untuk memilih node JSON yang berisi array item atau objek dengan pasangan kunci-nilai dalam input negara.  
Dalam mode Terdistribusi, Anda menentukan bidang ini hanya ketika Anda menggunakan array JSON atau objek dari langkah sebelumnya sebagai input status Anda. Untuk informasi selengkapnya, lihat [ItemsPath (Peta, JSONPath hanya)](input-output-itemspath.md).

**`ItemSelector`(Opsional, JSONPath hanya)**  
Mengganti nilai item kumpulan data individu sebelum diteruskan ke setiap `Map` iterasi status.   
Di bidang ini, Anda menentukan input JSON valid yang berisi kumpulan pasangan kunci-nilai. Pasangan ini dapat berupa nilai statis yang Anda tentukan dalam definisi mesin status Anda, nilai yang dipilih dari input status menggunakan [jalur](amazon-states-language-paths.md), atau nilai yang diakses dari [objek konteks](input-output-contextobject.md). Untuk informasi selengkapnya, lihat [ItemSelector (Peta)](input-output-itemselector.md).

**`ItemBatcher` (Opsional)**  
Menentukan untuk memproses item dataset dalam batch. Setiap eksekusi alur kerja anak kemudian menerima batch item ini sebagai input. Untuk informasi selengkapnya, lihat [ItemBatcher (Peta)](input-output-itembatcher.md).

**`MaxConcurrency` (Opsional)**  
Menentukan jumlah eksekusi alur kerja anak yang dapat berjalan secara paralel. Penerjemah hanya mengizinkan hingga jumlah eksekusi alur kerja anak paralel yang ditentukan. Jika Anda tidak menentukan nilai konkurensi atau menyetelnya ke nol, Step Functions tidak membatasi konkurensi dan menjalankan 10.000 eksekusi alur kerja anak paralel. Di JSONata negara bagian, Anda dapat menentukan JSONata ekspresi yang mengevaluasi ke bilangan bulat.  
Meskipun Anda dapat menentukan batas konkurensi yang lebih tinggi untuk eksekusi alur kerja anak paralel, sebaiknya Anda tidak melebihi kapasitas AWS layanan hilir, seperti. AWS Lambda

**`MaxConcurrencyPath`(Opsional, JSONPath hanya)**  
Jika Anda ingin memberikan nilai konkurensi maksimum secara dinamis dari input status menggunakan jalur referensi, gunakan. `MaxConcurrencyPath` Ketika diselesaikan, jalur referensi harus memilih bidang yang nilainya adalah bilangan bulat non-negatif.  
Suatu `Map` negara tidak dapat mencakup keduanya `MaxConcurrency` dan`MaxConcurrencyPath`.

**`ToleratedFailurePercentage` (Opsional)**  
Mendefinisikan persentase item gagal untuk ditoleransi dalam Map Run. Map Run secara otomatis gagal jika melebihi persentase ini. Step Functions menghitung persentase item yang gagal sebagai hasil dari jumlah total item yang gagal atau habis waktu dibagi dengan jumlah total item. Anda harus menentukan nilai antara nol dan 100. Untuk informasi selengkapnya, lihat [Menyetel ambang kegagalan untuk status Peta Terdistribusi di Step Functions](#maprun-fail-threshold).  
 Di JSONata negara bagian, Anda dapat menentukan JSONata ekspresi yang mengevaluasi ke bilangan bulat.

**`ToleratedFailurePercentagePath`(Opsional, JSONPath hanya)**  
Jika Anda ingin memberikan nilai persentase kegagalan yang ditoleransi secara dinamis dari input status menggunakan jalur referensi, gunakan. `ToleratedFailurePercentagePath` Ketika diselesaikan, jalur referensi harus memilih bidang yang nilainya antara nol dan 100.

**`ToleratedFailureCount` (Opsional)**  
Mendefinisikan jumlah item gagal untuk ditoleransi dalam Map Run. Map Run secara otomatis gagal jika melebihi angka ini. Untuk informasi selengkapnya, lihat [Menyetel ambang kegagalan untuk status Peta Terdistribusi di Step Functions](#maprun-fail-threshold).  
 Di JSONata negara bagian, Anda dapat menentukan JSONata ekspresi yang mengevaluasi ke bilangan bulat.

**`ToleratedFailureCountPath`(Opsional, JSONPath hanya)**  
Jika Anda ingin memberikan nilai hitungan kegagalan yang ditoleransi secara dinamis dari input status menggunakan jalur referensi, gunakan. `ToleratedFailureCountPath` Ketika diselesaikan, jalur referensi harus memilih bidang yang nilainya adalah bilangan bulat non-negatif.

**`Label` (Opsional)**  
String yang secara unik mengidentifikasi keadaan. `Map` Untuk setiap Map Run, Step Functions menambahkan label ke Map Run ARN. Berikut ini adalah contoh dari Map Run ARN dengan label kustom bernama: `demoLabel`  

```
arn:aws:states:region:account-id:mapRun:demoWorkflow/demoLabel:3c39a231-69bb-3d89-8607-9e124eddbb0b
```
Jika Anda tidak menentukan label, Step Functions secara otomatis menghasilkan label unik.   
Label tidak boleh melebihi 40 karakter, harus unik dalam definisi mesin status, dan tidak dapat berisi salah satu karakter berikut:  
+ Spasi putih
+ Karakter wildcard (`? *`)
+ Karakter tanda kurung (`< > { } [ ]`)
+ Karakter khusus (`: ; , \ | ^ ~ $ # % & ` "`)
+ Karakter kontrol (`\\u0000` - `\\u001f` atau `\\u007f` - `\\u009f`).
Step Functions menerima nama untuk mesin negara, eksekusi, aktivitas, dan label yang berisi karakter non-ASCII. Karena karakter seperti itu akan CloudWatch mencegah Amazon mencatat data, sebaiknya gunakan hanya karakter ASCII sehingga Anda dapat melacak metrik Step Functions.

**`ResultWriter` (Opsional)**  
Menentukan lokasi Amazon S3 tempat Step Functions menulis semua hasil eksekusi alur kerja anak.  
Step Functions menggabungkan semua data eksekusi alur kerja anak, seperti input dan output eksekusi, ARN, dan status eksekusi. Kemudian mengekspor eksekusi dengan status yang sama ke file masing-masing di lokasi Amazon S3 yang ditentukan. Untuk informasi selengkapnya, lihat [ResultWriter (Peta)](input-output-resultwriter.md).  
Jika Anda tidak mengekspor hasil `Map` status, ia mengembalikan array dari semua hasil eksekusi alur kerja anak. Contoh:  

```
[1, 2, 3, 4, 5]
```

**`ResultPath`(Opsional, JSONPath hanya)**  
Menentukan di mana dalam input untuk menempatkan output dari iterasi. Input kemudian disaring seperti yang ditentukan oleh [`OutputPath`](input-output-example.md#input-output-outputpath)bidang jika ada, sebelum diteruskan sebagai output negara. Untuk informasi selengkapnya, lihat [Pemrosesan Input dan Output](concepts-input-output-filtering.md).

**`ResultSelector` (Opsional)**  
Lewati kumpulan pasangan kunci-nilai, di mana nilainya statis atau dipilih dari hasilnya. Untuk informasi selengkapnya, lihat [ResultSelector](input-output-inputpath-params.md#input-output-resultselector).  
Jika status Paralel atau Peta yang Anda gunakan di mesin status Anda mengembalikan array array, Anda dapat mengubahnya menjadi array datar dengan [ResultSelector](input-output-inputpath-params.md#input-output-resultselector) bidang. Untuk informasi selengkapnya, lihat [Meratakan array array](input-output-inputpath-params.md#flatten-array-of-arrays-result-selector).

**`Retry` (Opsional)**  
Array objek, yang disebut Retriers, yang mendefinisikan kebijakan coba lagi. Eksekusi menggunakan kebijakan coba lagi jika status mengalami error runtime. Untuk informasi selengkapnya, lihat [Contoh mesin negara menggunakan Coba Ulang dan Tangkap](concepts-error-handling.md#error-handling-examples).  
Jika Anda mendefinisikan Retrier untuk *status Peta Terdistribusi*, kebijakan coba lagi berlaku untuk semua eksekusi alur kerja anak yang dimulai status. `Map` Misalnya, bayangkan `Map` negara Anda memulai tiga eksekusi alur kerja anak, yang satu gagal. Ketika kegagalan terjadi, eksekusi menggunakan `Retry` bidang, jika ditentukan, untuk `Map` negara. Kebijakan coba lagi berlaku untuk semua eksekusi alur kerja anak dan bukan hanya eksekusi yang gagal. Jika satu atau beberapa eksekusi alur kerja anak gagal, Map Run gagal.  
Saat Anda mencoba lagi `Map` status, itu membuat Map Run baru.

**`Catch` (Opsional)**  
Array objek, disebut Catch yang menentukan status fallback. Step Functions menggunakan Catchers yang ditentukan `Catch` jika status mengalami kesalahan runtime. Ketika terjadi kesalahan, eksekusi pertama menggunakan retrier apa pun yang ditentukan dalam`Retry`. Jika kebijakan coba ulang tidak ditentukan atau habis, eksekusi menggunakan Catchers, jika ditentukan. Untuk informasi selengkapnya, lihat [Status Fallback](concepts-error-handling.md#error-handling-fallback-states).

**`Output`(Opsional, JSONata hanya)**  
Digunakan untuk menentukan dan mengubah output dari negara. Ketika ditentukan, nilai mengesampingkan default output status.   
Bidang output menerima nilai JSON apa pun (objek, array, string, angka, boolean, null). Nilai string apa pun, termasuk yang ada di dalam objek atau array, akan dievaluasi JSONata seolah-olah dikelilingi oleh karakter \$1%%\$1.  
 Output juga menerima JSONata ekspresi secara langsung, misalnya: “Output”: “\$1% jsonata expression%\$1”   
Untuk informasi selengkapnya, lihat [Mengubah data dengan Step JSONata Functions](transforming-data.md).

** `Assign` (Opsional)**  
Digunakan untuk menyimpan variabel. `Assign`Bidang menerima objek JSON dengan key/value pasangan yang mendefinisikan nama variabel dan nilai yang ditetapkan. Nilai string apa pun, termasuk yang ada di dalam objek atau array, akan dievaluasi seperti JSONata ketika dikelilingi oleh karakter `{% %}`  
Untuk informasi selengkapnya, lihat [Melewati data antar negara bagian dengan variabel](workflow-variables.md).

## Menyetel ambang kegagalan untuk status Peta Terdistribusi di Step Functions
<a name="maprun-fail-threshold"></a>

Saat Anda mengatur beban kerja paralel skala besar, Anda juga dapat menentukan ambang kegagalan yang dapat ditoleransi. Nilai ini memungkinkan Anda menentukan jumlah maksimum, atau persentase, item gagal sebagai ambang kegagalan untuk [Map Run](concepts-examine-map-run.md). Bergantung pada nilai yang Anda tentukan, Map Run Anda gagal secara otomatis jika melebihi ambang batas. Jika Anda menentukan kedua nilai tersebut, alur kerja akan gagal jika melampaui salah satu nilai.

Menentukan ambang batas membantu Anda gagal dalam jumlah item tertentu sebelum seluruh Map Run gagal. Step Functions mengembalikan `States.ExceedToleratedFailureThreshold` kesalahan ketika Map Run gagal karena ambang batas yang ditentukan terlampaui.

**catatan**  
Step Functions dapat terus menjalankan alur kerja turunan di Map Run bahkan setelah ambang kegagalan yang ditoleransi terlampaui, tetapi sebelum Map Run gagal.

Untuk menentukan nilai ambang batas di Workflow Studio, pilih **Setel ambang kegagalan yang ditoleransi** dalam **Konfigurasi tambahan** di bawah bidang Pengaturan **waktu proses**.

**Persentase kegagalan yang ditoleransi**  
Mendefinisikan persentase item yang gagal untuk ditoleransi. Map Run Anda gagal jika nilai ini terlampaui. Step Functions menghitung persentase item yang gagal sebagai hasil dari jumlah total item yang gagal atau habis waktu dibagi dengan jumlah total item. Anda harus menentukan nilai antara nol dan 100. Nilai persentase default adalah nol, yang berarti alur kerja gagal jika salah satu eksekusi alur kerja turunannya gagal atau habis waktu. Jika Anda menentukan persentase sebagai 100, alur kerja tidak akan gagal meskipun semua eksekusi alur kerja anak gagal.   
Atau, Anda dapat menentukan persentase sebagai [jalur referensi](amazon-states-language-paths.md#amazon-states-language-reference-paths) ke pasangan kunci-nilai yang ada di masukan *status Peta Terdistribusi* Anda. Jalur ini harus menyelesaikan ke bilangan bulat positif antara 0 dan 100 saat runtime. Anda menentukan jalur referensi di `ToleratedFailurePercentagePath` sub-bidang.  
Misalnya, diberikan input berikut:  

```
{
  "percentage": 15
}
```
Anda dapat menentukan persentase menggunakan jalur referensi ke input tersebut sebagai berikut:  

```
{
  ...
  "Map": {
    "Type": "Map",
    ...
    "ToleratedFailurePercentagePath": "$.percentage"
    ...
  }
}
```
Anda dapat menentukan salah satu `ToleratedFailurePercentage` atau`ToleratedFailurePercentagePath`, tetapi tidak keduanya dalam definisi *status Peta Terdistribusi* Anda.

**Jumlah kegagalan yang ditoleransi**  
Mendefinisikan jumlah item yang gagal untuk ditoleransi. Map Run Anda gagal jika nilai ini terlampaui.   
Atau, Anda dapat menentukan hitungan sebagai [jalur referensi](amazon-states-language-paths.md#amazon-states-language-reference-paths) ke pasangan kunci-nilai yang ada di masukan *status Peta Terdistribusi* Anda. Jalur ini harus menyelesaikan ke bilangan bulat positif saat runtime. Anda menentukan jalur referensi di `ToleratedFailureCountPath` sub-bidang.  
Misalnya, diberikan input berikut:  

```
{
  "count": 10
}
```
Anda dapat menentukan nomor menggunakan jalur referensi ke input tersebut sebagai berikut:  

```
{
  ...
  "Map": {
    "Type": "Map",
    ...
    "ToleratedFailureCountPath": "$.count"
    ...
  }
}
```
Anda dapat menentukan salah satu `ToleratedFailureCount` atau`ToleratedFailureCountPath`, tetapi tidak keduanya dalam definisi *status Peta Terdistribusi* Anda.

## Pelajari lebih lanjut tentang peta terdistribusi
<a name="dist-map-next-steps"></a>

Untuk terus mempelajari lebih lanjut tentang *status Peta Terdistribusi*, lihat sumber daya berikut:
+ 

**Pengolahan input dan output**  
Untuk mengonfigurasi input yang diterima *status Peta Terdistribusi* dan output yang dihasilkannya, Step Functions menyediakan bidang berikut:
  + [ItemReader (Peta)](input-output-itemreader.md)
  + [ItemsPath (Peta, JSONPath hanya)](input-output-itemspath.md)
  + [ItemSelector (Peta)](input-output-itemselector.md)
  + [ItemBatcher (Peta)](input-output-itembatcher.md)
  + [ResultWriter (Peta)](input-output-resultwriter.md)
  + [Bagaimana Step Functions mem-parsing file CSV masukan](example-csv-parse-dist-map.md)

  Selain bidang ini, Step Functions juga memberi Anda kemampuan untuk menentukan ambang kegagalan yang ditoleransi untuk Peta Terdistribusi. Nilai ini memungkinkan Anda menentukan jumlah maksimum, atau persentase, item gagal sebagai ambang kegagalan untuk [Map Run](concepts-examine-map-run.md). Untuk informasi selengkapnya tentang mengonfigurasi ambang kegagalan yang ditoleransi, lihat. [Menyetel ambang kegagalan untuk status Peta Terdistribusi di Step Functions](#maprun-fail-threshold)
+ 

**Menggunakan status Peta Terdistribusi**  
Lihat tutorial dan contoh proyek berikut untuk memulai menggunakan *status Peta Terdistribusi*.
  + [Salin CSV skala besar menggunakan Peta Terdistribusi](tutorial-map-distributed.md)
  + [Memproses data batch dengan fungsi Lambda di Step Functions](tutorial-itembatcher-param-task.md)
  + [Memproses item individual dengan fungsi Lambda di Step Functions](tutorial-itembatcher-single-item-process.md)
  + [Contoh proyek: Memproses file CSV dengan Peta Terdistribusi](sample-dist-map-csv-process.md)
  + [Contoh proyek: Memproses data dalam bucket Amazon S3 dengan Peta Terdistribusi](sample-dist-map-s3data-process.md)
+ 

**Periksa eksekusi status Peta Terdistribusi**  
Konsol Step Functions menyediakan halaman *Map Run Details*, yang menampilkan semua informasi yang terkait dengan eksekusi *status Peta Terdistribusi*. Untuk informasi tentang cara memeriksa informasi yang ditampilkan di halaman ini, lihat[Melihat Peta Berjalan](concepts-examine-map-run.md).