Tüm Ürünler
Search
Belge Merkezi

CloudFlow:Distributed mode

Son Güncelleme:Oct 06, 2026

Dağıtılmış mod, bir Map durumunun her yinelemesini bağımsız bir alt iş akışı çalıştırması olarak yürütür. Bu sayede büyük veri işleme ve paralel hesaplama için uygun olan yüksek eşzamanlılıkta paralel işleme mümkün olur.

Tek bir Map durumu iş yükünüzü sıralı olarak işleyemediğinde dağıtılmış modu kullanın. Dağıtılmış mod, işi kendi yaşam döngüsüne sahip eşzamanlı alt iş akışı çalıştırmalarına yayar ve satır içi girişten veya Object Storage Service (OSS) paketlerinden gelen verileri paralel olarak işleyebilir.

Temel kavramlar

Terim Tanım
Dağıtılmış mod Alt iş akışı çalıştırmaları aracılığıyla büyük miktardaki veriyi eşzamanlı olarak işleyen bir Map durumu işleme modudur. OSS paketlerindeki nesneler kaynak veri olarak kullanılabilir.
Alt iş akışı çalıştırması Dağıtılmış bir Map durumunun tek bir yinelemesidir. Tanım Processor alanından gelir ve her alt iş akışı girdi olarak bir öğe (veya bir toplu iş) alır. Alt iş akışları standart modda veya express modda çalışabilir. Ayrıntılar için bkz. Standart mod ve express mod.
Hata toleransı ilkesi Bir alt iş akışı çalıştırması başarısız olduğunda Map durumu başarısızlıkla sonlanır. Birden çok öğe içeren Map durumları için, bireysel alt iş akışı çalıştırmaları başarısız olduğunda Map durumunun kalan öğeleri işlemeye devam etmesini sağlayan hata toleransı ilkelerini yapılandırabilirsiniz.

Nasıl çalışır

  1. Map durumu girişi alır ve ItemsPath kullanarak bir öğe dizisi çıkarır (veya ItemReader kullanarak OSS veri kaynağından öğeleri okur).

  2. ItemConstructor yapılandırıldıysa her öğe dönüştürülür.

  3. ItemBatcher yapılandırıldıysa öğeler toplu işlere gruplanır.

  4. Her öğe veya toplu iş, Processor ile tanımlanan ve ProcessorConfig tarafından belirtilen modda çalışan bir alt iş akışı çalıştırmasına aktarılır.

  5. Tüm alt iş akışı çalıştırmaları tamamlandıktan sonra Map durumu sonuçları bir JSON dizisinde toplar (veya ResultWriter kullanarak bunları OSS'ye yazar).

Önemli

ItemsPath, ItemConstructor ve ItemBatcher aynı anda yapılandırıldığında şu sırayla çalışır: ItemsPath, ardından ItemConstructor, ardından ItemBatcher.

Temel örnek

Aşağıdaki iş akışı, öğeleri $Input.Items konumundan okuyan ve her öğeyi Express modda bir Pass durumundan geçiren dağıtılmış bir Map durumu tanımlar:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    ItemsPath: $Input.Items
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    End: true

Durum makinesi girişi:

{
  "Items": [
    {"key_1":"value_1"},
    {"key_2":"value_2"},
    {"key_3":"value_3"}
  ]
}

Bu işlem, aşağıdaki tanımı çalıştıran üç alt iş akışı çalıştırması oluşturur:

Type: StateMachine
Name: Map
SpecVersion: v1
StartAt: Pass
States:
  - Type: Pass
    Name: Pass
    End: true

Alt iş akışı girişleri:

// Sub-workflow 1
{"key_1":"value_1"}

// Sub-workflow 2
{"key_2":"value_2"}

// Sub-workflow 3
{"key_3":"value_3"}

Tüm alt iş akışları tamamlandıktan sonra Map durumu çıktısı, tüm alt iş akışı çıktılarından oluşan bir JSON dizisidir:

{
    "Items": [
        {
            "key_1": "value_1"
        },
        {
            "key_2": "value_2"
        },
        {
            "key_3": "value_3"
        }
    ]
}

Alan referansı

Dağıtılmış mod Map durumunda kullanılabilen tüm alanlar:

Alan Tür Zorunlu Açıklama Örnek
Name string Evet Durumun adı. my-state-name
Description string Hayır Durumun açıklaması. describe it here
Type string Evet Durumun türü. Map
InputConstructor map[string]any Hayır Giriş oluşturucu. Bkz. Girişler ve çıktılar.
ItemsPath string Evet Girişten bir dizi çıkarmak için kullanılan ifade. Bkz. ItemsPath.
ItemBatcher ItemBatcher Hayır Birden çok öğeyi alt iş akışı girişi olarak bir toplu işte birleştirir. Bkz. ItemBatcher.
ItemReader ItemReader Hayır Verileri OSS paketlerinden okur. Bkz. ItemReader.
ItemConstructor ItemConstructor Hayır Öğeleri, orijinal giriş değerlerine başvurmak için $Item kullanarak dönüştürür. Bkz. ItemConstructor.
ResultWriter ResultWriter Hayır Alt iş akışı sonuçlarını belirtilen bir OSS paketine yazar. Bkz. ResultWriter.
MaxConcuccency int Hayır Eşzamanlı alt iş akışı çalıştırmasının maksimum sayısı. 40
MaxItems MaxItems Hayır Map durumunun işlediği maksimum öğe sayısı. Bkz. MaxItems.
ToleratedFailurePercentage ToleratedFailurePercentage Hayır Tolere edilecek başarısız alt iş akışı çalıştırma yüzdesi. Bkz. ToleratedFailurePercentage.
ToleratedFailureCount ToleratedFailureCount Hayır Tolere edilecek başarısız alt iş akışı çalıştırma sayısı. Bkz. ToleratedFailureCount.
Processor Processor Evet Alt iş akışını tanımlayan Map işlemcisi. Bkz. Processor.
ProcessorConfig ProcessorConfig Evet İşlemci yapılandırması. Bkz. ProcessorConfig.
OutputConstructor map[string]any Hayır Çıkış oluşturucu. Bkz. OutputConstructor.
Next string Hayır Bu durum tamamlandıktan sonra çalıştırılacak sonraki durum. End true ise boş bırakın. my-next-state
End bool Hayır Bu durumun geçerli kapsamın son durumu olup olmadığını belirtir. true
Retry Retry Hayır Hata yeniden deneme ilkesi. Bkz. Hata işleme.
Catch Catch Hayır Hata yakalama ilkesi. Bkz. Hata işleme.

Alan ayrıntıları

ItemsPath

Map durumunun girişinden bir dizi çıkarır. Dizideki her öğe, bir alt iş akışı çalıştırması için giriş haline gelir. Verilere $Context veya $Input değişkenleriyle başvurun:

$Input.FieldA

Processor

Her öğeyi veya toplu işi işleyen alt iş akışını tanımlar.

Alan Tür Zorunlu Açıklama Örnek
States array Evet Alt iş akışındaki durumlar. Aşağıdaki örneğe bakın.
StartAt string Evet Çalıştırılacak ilk durum. my start task
Processor:
   StartAt: Pass1
   States:
     - Type: Pass
       Name: Pass1
       End: true

ProcessorConfig

Alt iş akışları için yürütme modunu belirtir.

Alan Tür Zorunlu Açıklama Örnek
ExecutionMode string Evet Alt iş akışları için yürütme modu. Express

ItemReader

Daha büyük boyuttaki girişleri destekleyerek giriş verilerini OSS paketlerinden okur.

Alan Tür Zorunlu Açıklama Örnek
SourceType string Evet Veri kaynağı türü. Geçerli değerler: OSS_CSV, OSS_JSON_LIST, OSS_OBJECTS, OSS_INVENTORY_FILES. OSS_CSV
SourceParameters SourceParameters Hayır Veri kaynağı konumu parametreleri. Bkz. SourceParameters.
ReaderConfig ReaderConfig Hayır Okuyucu yapılandırması. Bkz. ReaderConfig.

SourceParameters

Alan Tür Zorunlu Açıklama Örnek
Bucket string Hayır OSS paket adı. example-bucket
ObjectName string Hayır Nesne adı. object_name_1
Prefix string Hayır Nesne adı ön eki filtresi. Boş bırakılırsa eşleşen tüm nesneler döndürülür. example-prefix

ReaderConfig

Alan Tür Zorunlu Açıklama Örnek
CSVHeaders []string Hayır CSV dosyasının ilk satırındaki sütun başlıkları. ColA,ColB,ColC

OSS'ten CSV dosyalarını okuma

Bir OSS paketinde depolanan bir CSV dosyasından veri okuyun. Bu örnekte, example-object.csv dosyası example-bucket paketinde depolanmıştır:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    ItemReader:
      SourceType: OSS_CSV
      SourceParameters:
        Bucket: example-bucket
        ObjectName: example-object.csv
    End: true

CSV dosya içeriği:

ColA,ColB,ColC
col_a_1,col_b_1,col_c_1

Her satır alt iş akışı girişi haline gelir:

{
  "ColA": "col_a_1",
  "ColB": "col_b_1",
  "ColC": "col_c_1"
}

OSS'ten JSON dizilerini okuma

Önemli

JSON dosyası bir JSON dizisi içermelidir.

example-bucket paketindeki example-object.json dosyasından bir JSON dizisi okuyun:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    ItemReader:
      SourceType: OSS_JSON_LIST
      SourceParameters:
        Bucket: example-bucket
        ObjectName: example-object.json
    End: true

JSON dosya içeriği:

[
  {
    "key_1": "value_1"
  }
]

Her öğe alt iş akışı girişi haline gelir:

{
  "key_1": "value_1"
}

OSS'ten nesneleri okuma

Belirli bir ön eke sahip nesneleri listeleyin ve meta verilerini alt iş akışı girişi olarak iletin. Bu örnek, example-bucket paketinden example-prefix ön ekine sahip nesneleri okur:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    ItemReader:
      SourceType: OSS_OBJECTS
      SourceParameters:
        Bucket: example-bucket
        Prefix: example-prefix
    End: true

Verilen paket yapısı:

example-bucket
   └── example-prefix/object_1

Her nesnenin meta verisi alt iş akışı girişi haline gelir:

{
  "XMLName": {
    "Space": "",
    "Local": "Contents"
  },
  "Key": "example-prefix/object_1",
  "Type": "Normal",
  "Size": 268435,
  "ETag": "\"50B06D6680D86F04138HSN612EF5DEC6\"",
  "Owner": {
    "XMLName": {
      "Space": "",
      "Local": ""
    },
    "ID": "",
    "DisplayName": ""
  },
  "LastModified": "2024-01-01T01:01:01Z",
  "StorageClass": "Standard",
  "RestoreInfo": ""
}

OSS envanter dosyalarını okuma

Bir OSS envanter manifestosundan öğeleri okuyun. Bu örnek, example-bucket paketinden inventory/2024-01-01T01-01Z/manifest.json dosyasını okur:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    ItemReader:
      SourceType: OSS_INVENTORY_FILES
      SourceParameters:
        Bucket: example-bucket
        ObjectName: inventory/2024-01-01T01-01Z/manifest.json
    ItemConstructor:
      Key.$: $Item.Key
    End: true

Envanter dosyası içeriği:

"example-bucket","object_name_1"
"example-bucket","object_name_2"

İlk alt iş akışı girişi:

{
  "Bucket": "example-bucket",
  "Key": "object_name_1"
}

ItemBatcher

Birden çok öğeyi toplu işlere gruplar. Her toplu iş, tek bir alt iş akışı çalıştırması için giriş haline gelir.

Alan Tür Zorunlu Açıklama Örnek
MaxItemsPerBatch int Hayır Toplu iş başına maksimum öğe sayısı. Bkz. örnek.
MaxInputBytesPerBatch int Hayır Toplu iş başına maksimum bayt sayısı. Birim: bayt. Bkz. örnek.
BatchInput map[string]any Hayır Her toplu işin girişine dahil edilecek ek veriler. Bkz. örnek.

Öğe sayısına göre toplu iş oluşturma

Her toplu işe kaç öğenin gideceğini kontrol etmek için MaxItemsPerBatch ayarlayın:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    ItemsPath: $Input.Items
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    ItemBatcher:
      MaxItemsPerBatch: 2
    End: true

Durum makinesi girişi:

{
  "Items": [
    {"key_1":"value_1"},
    {"key_2":"value_2"},
    {"key_3":"value_3"},
    {"key_4":"value_4"},
    {"key_5":"value_5"}
  ]
}

Bu işlem üç alt iş akışı çalıştırması üretir:

// Sub-workflow 1
{
  "Items": [
    {"key_1":"value_1"},
    {"key_2":"value_2"}
  ]
}

// Sub-workflow 2
{
  "Items": [
    {"key_1":"value_3"},
    {"key_2":"value_4"}
  ]
}

// Sub-workflow 3
{
  "Items": [
    {"key_1":"value_5"}
  ]
}

Bayt boyutuna göre toplu iş oluşturma

Her toplu işin boyutunu bayt cinsinden sınırlamak için MaxInputBytesPerBatch ayarlayın.

Önemli
  • ItemBatcher, her toplu işe meta veri anahtarları ekler. Toplam toplu iş boyutu bu ek anahtarları içerir.

  • MaxInputBytesPerBatch birimi bayttır.

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    ItemsPath: $Input.Items
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    ItemBatcher:
      MaxInputBytesPerBatch: 50
    End: true

Durum makinesi girişi:

{
  "Items":[
    {"Key":1},
    {"key":2},
    {"Key":3},
    {"Key":4},
    {"Key":5}
  ]
}

Bu işlem üç alt iş akışı çalıştırması üretir:

// Sub-workflow 1
{
  "Items":[
    {"Key":1},
    {"key":2}
  ]
}

// Sub-workflow 2
{
  "Items":[
    {"Key":3},
    {"key":4}
  ]
}

// Sub-workflow 3
{
  "Items":[
    {"Key":5}
  ]
}

Toplu işlere ortak veri ekleme

Her toplu işe durum makinesi girişinden ek veriler dahil etmek için BatchInput kullanın:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    ItemsPath: $Input.Items
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    ItemBatcher:
      MaxInputBytesPerBatch: 70
      BatchInput:
        InputKey.$: $Input.Key
    End: true

Durum makinesi girişi:

{
  "Key":"value",
  "Items":[
    {"Key":1},
    {"key":2},
    {"Key":3},
    {"Key":4},
    {"Key":5}
  ]
}

Her alt iş akışı, hem BatchInput verilerini hem de toplu işe alınmış öğeleri alır:

// Sub-workflow 1
{
  "BatchInput":{
    "InputKey":"value"
  },
  "Items":[
    {"Key":1},
    {"key":2}
  ]
}

// Sub-workflow 2
{
  "BatchInput":{
    "InputKey":"value"
  },
  "Items":[
    {"Key":3},
    {"key":4}
  ]
}

// Sub-workflow 3
{
  "BatchInput":{
    "InputKey":"value"
  },
  "Items":[
    {"Key":5}
  ]
}

ItemConstructor

Bir alt iş akışı çalıştırmasına aktarılmadan önce her öğeyi dönüştürür. Orijinal öğeye başvurmak için $Item ve durum makinesi girişine başvurmak için $Input kullanın:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    ItemsPath: $Input.Items
    Processor:
      StartAt: Pass
      States:
        - Type: Pass
          Name: Pass
          End: true
    ItemBatcher:
      MaxInputBytesPerBatch: 200
      BatchInput:
        InputKey.$: $Input.Key
    ItemConstructor:
      ConstructedKey.$: $Item.Key
      InputKey.$: $Input.Key
    End: true

Durum makinesi girişi:

{
  "Key":"value",
  "Items":[
    {"Key":1},
    {"Key":2},
    {"Key":3},
    {"Key":4},
    {"Key":5}
  ]
}

Toplu işe almadan önce her öğe ItemConstructor tarafından dönüştürülür:

// Sub-workflow 1
{
  "BatchInput": {
    "InputKey": "value"
  },
  "Items": [
    {
      "InputKey": "value",
      "ConstructedKey": 1
    },
    {
      "InputKey": "value",
      "ConstructedKey": 2
    },
    {
      "InputKey": "value",
      "ConstructedKey": 3
    }
  ]
}

// Sub-workflow 2
{
  "BatchInput": {
    "InputKey": "value"
  },
  "Items": [
    {
      "InputKey": "value",
      "ConstructedKey": 4
    },
    {
      "InputKey": "value",
      "ConstructedKey": 5
    }
  ]
}

ResultWriter

Alt iş akışı sonuçlarını bir OSS paketine yazar. Tüm alt iş akışı çalıştırmalarının birleşik çıktısı durum çıktısı boyutu sınırını aşabileceğinde ResultWriter'ı yapılandırın.

Alan Tür Zorunlu Açıklama Örnek
Parameters Parameters Evet Sonuçlar için OSS hedefi. Aşağıya bakın.

Parameters

Alan Tür Zorunlu Açıklama Örnek
Bucket string Evet Hedef OSS paketi. example-bucket
Prefix string Evet Sonuç dosyaları için nesne adı ön eki. example-prefix/
Not

Durum girişlerinin ve çıktılarının boyut sınırları vardır. Çok sayıda öğe içeren Map durumlarında birleşik çıktı bu sınırı aşabilir. Bunun yerine sonuçları OSS'de depolamak için ResultWriter'ı yapılandırın.

Aşağıdaki örnek, ResultWriter'ı hata toleransı ile birleştirir. Map durumu %30'a kadar başarısızlığı tolere eder ve tüm sonuçları (başarılı ve başarısız) OSS'ye yazar:

Type: StateMachine
Name: MyWorkflow
SpecVersion: v1
StartAt: Map
States:
  - Type: Map
    Name: Map
    ProcessorConfig:
      ExecutionMode: Express
    ItemsPath: $Input.Items
    ItemConstructor:
      Key.$: $Item.Key
      FailedValue.$: $Input.FailedValue
    ToleratedFailurePercentage: 30
    Processor:
      StartAt: Choice
      States:
        - Type: Choice
          Name: Choice
          Branches:
            - Condition: $Input.Key > $Input.FailedValue
              Next: Fail
          Default: Succeed
        - Type: Succeed
          Name: Succeed
          End: true
        - Type: Fail
          Name: Fail
          Code: MockError
          End: true
    ResultWriter:
      Parameters:
        Bucket: example-bucket
        Prefix: example-prefix/
    End: true

Durum makinesi girişi:

{
  "FailedValue": 4,
  "Items": [
    {"Key": 1},
    {"Key": 2},
    {"Key": 3},
    {"Key": 4},
    {"Key": 5}
  ]
}

Sonuç dosyası yapısı

ResultWriter, belirtilen OSS konumunda üç tür dosya üretir:

manifest.json (example-prefix/map-run-name/manifest.json):

{
    "DestinationBucket": "example-bucket",
    "MapRunName": "map-run-name",
    "ResultFiles": {
        "FAILED": [
            {
                "ObjectName": "example-prefix/map-run-name/FAILED_0.json",
                "Size": 262
            }
        ],
        "SUCCEED": [
            {
                "ObjectName": "example-prefix/map-run-name/SUCCEED_0.json",
                "Size": 1057
            }
        ]
    }
}

FAILED_0.json (example-prefix/map-run-name/FAILED_0.json):

[
    {
        "ExecutionName": "execution-name-5",
        "FlowName": "example",
        "Input": "{\"FailedValue\":4,\"Key\":5}",
        "Output": "{\"ErrorCode\":\"MockError\"}",
        "Status": "Failed",
        "StartedTime": "rfc3339-format-time-string",
        "StoppedTime": "rfc3339-format-time-string"
    }
]

SUCCEED_0.json (example-prefix/map-run-name/SUCCEED_0.json):

[
    {
        "ExecutionName": "execution-name-1",
        "FlowName": "example",
        "Input": "{\"FailedValue\":4,\"Key\":1}",
        "Output": "{\"FailedValue\":4,\"Key\":1}",
        "Status": "Succeeded",
        "StartedTime": "rfc3339-format-time-string",
        "StoppedTime": "rfc3339-format-time-string"
    },
    {
        "ExecutionName": "execution-name-2",
        "FlowName": "example",
        "Input": "{\"FailedValue\":4,\"Key\":2}",
        "Output": "{\"FailedValue\":4,\"Key\":2}",
        "Status": "Succeeded",
        "StartedTime": "rfc3339-format-time-string",
        "StoppedTime": "rfc3339-format-time-string"
    },
    {
        "ExecutionName": "execution-name-3",
        "FlowName": "example",
        "Input": "{\"FailedValue\":4,\"Key\":3}",
        "Output": "{\"FailedValue\":4,\"Key\":3}",
        "Status": "Succeeded",
        "StartedTime": "rfc3339-format-time-string",
        "StoppedTime": "rfc3339-format-time-string"
    },
    {
        "ExecutionName": "execution-name-4",
        "FlowName": "example",
        "Input": "{\"FailedValue\":4,\"Key\":4}",
        "Output": "{\"FailedValue\":4,\"Key\":4}",
        "Status": "Succeeded",
        "StartedTime": "rfc3339-format-time-string",
        "StoppedTime": "rfc3339-format-time-string"
    }
]

MaxItems

Map durumunun işlediği öğe sayısını sınırlar. Veri kaynağı MaxItems değerinden daha fazla öğe içeriyorsa yalnızca ilk MaxItems öğe işlenir.

Örneğin, bir OSS paketi 10.000 nesne içeriyorsa ve MaxItems değeri 1.000 olarak ayarlanırsa Map durumu yalnızca 1.000 nesneyi işler.

MaxConcurrency

Eşzamanlı olarak çalışan alt iş akışı çalıştırma sayısını sınırlar. Örneğin, Map durumu 10.000 öğeyi işliyorsa ve MaxConcurrency değeri 100 olarak ayarlanırsa aynı anda en fazla 100 alt iş akışı çalışır.

ToleratedFailurePercentage

Map durumunun kendisi başarısız olmadan önce başarısız olabilecek alt iş akışı çalıştırma yüzdesini ayarlar. Örneğin, 10.000 öğe ve ToleratedFailurePercentage değeri 10 olarak ayarlandığında Map durumu en fazla 1.000 başarısızlığı tolere eder.

ToleratedFailureCount

Map durumunun kendisi başarısız olmadan önce başarısız olabilecek alt iş akışı çalıştırma sayısını ayarlar. Örneğin, 10.000 öğe ve ToleratedFailureCount değeri 10 olarak ayarlandığında Map durumu en fazla 10 başarısızlığı tolere eder.

Kota sınırları

Aşağıdaki tabloda dağıtılmış mod için varsayılan kota sınırları listelenmiştir. Daha yüksek bir kota talep etmek için destek talebi gönderin.

Kota adı Açıklama Varsayılan değer
MaxOpenMapRun Hesap ve bölge başına eşzamanlı olarak çalışan maksimum dağıtılmış Map durumu sayısı 10
MaxConcurrency MapRun başına eşzamanlı alt iş akışı çalıştırmasının maksimum sayısı 300
MaxItems MapRun başına maksimum öğe sayısı 10.000

Gerekli izinler

Dağıtılmış modda Map durumlarını çalıştırmak için aşağıdaki OSS izinleri gerekir. Bu eylemleri bir rol ilkesinde tanımlayın. Ayrıntılar için bkz. İlke oluşturma.

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "oss:HeadObject",
                "oss:GetObjectMeta",
                "oss:GetObject",
                "oss:PutObject",
                "oss:ListObjectsV2",
                "oss:ListObjects",
                "oss:InitiateMultipartUpload",
                "oss:UploadPart",
                "oss:CompleteMultipartUpload",
                "oss:AbortMultipartUpload",
                "oss:ListMultipartUploads",
                "oss:ListParts"
            ],
            "Resource": "*"
        }
    ]
}