

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

# Perbarui aset dan model
<a name="update-assets-and-models"></a>

Anda dapat memperbarui aset, model aset, model komponen, dan antarmuka AWS IoT SiteWise untuk mengubah nama dan definisinya. Operasi pembaruan ini asinkron dan membutuhkan waktu untuk menyebar. AWS IoT SiteWise Periksa status aset atau model sebelum Anda membuat perubahan tambahan. Anda harus menunggu hingga perubahan menyebar sebelum Anda dapat terus menggunakan aset atau model yang diperbarui.

**Topics**
+ [Perbarui aset di AWS IoT SiteWise](update-assets.md)
+ [Perbarui model aset, model komponen, dan antarmuka](update-asset-models.md)
+ [Perbarui model komposit khusus (komponen)](update-custom-composite-models.md)
+ [Penguncian optimis untuk penulisan model aset](opt-locking-for-model.md)

# Perbarui aset di AWS IoT SiteWise
<a name="update-assets"></a>

Anda dapat menggunakan AWS IoT SiteWise konsol atau API untuk memperbarui nama aset.

Saat Anda memperbarui aset, status aset adalah `UPDATING` hingga perubahan menyebar. Untuk informasi selengkapnya, lihat [Status aset dan model](asset-and-model-states.md).

**Topics**
+ [Memperbarui aset (konsol)](#update-asset-console)
+ [Memperbarui aset (AWS CLI)](#update-asset-cli)

## Memperbarui aset (konsol)
<a name="update-asset-console"></a>

Anda dapat menggunakan AWS IoT SiteWise konsol untuk memperbarui detail aset.

**Untuk memperbarui aset (konsol)**

1. <a name="sitewise-open-console"></a>Navigasikan ke [konsol AWS IoT SiteWise](https://console.aws.amazon.com/iotsitewise/) tersebut.

1. <a name="sitewise-choose-assets"></a>Di panel navigasi, pilih **Aset**.

1. Pilih aset yang akan diperbarui.
**Tip**  <a name="sitewise-expand-asset-hierarchy"></a>
Anda dapat memilih ikon panah untuk memperluas hierarki aset untuk menemukan aset Anda.

1. Pilih **Edit**.

1. Perbarui **Nama** aset.

1. (Opsional) Di halaman ini, perbarui informasi lain untuk aset tersebut. Untuk informasi selengkapnya, lihat berikut ini:
   + [Mengelola aliran data untuk AWS IoT SiteWise](manage-data-streams.md)
   + [Perbarui nilai atribut](update-attribute-values.md)
   + [Berinteraksi dengan AWS layanan lain](interact-with-other-services.md)

1. Pilih **Simpan**.

## Memperbarui aset (AWS CLI)
<a name="update-asset-cli"></a>

Anda dapat menggunakan AWS Command Line Interface (AWS CLI) untuk memperbarui nama aset.

Gunakan [UpdateAsset](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAsset.html)operasi untuk memperbarui aset. Tentukan parameter berikut:
+ `assetId`— ID aset. Ini adalah ID aktual dalam format UUID, atau `externalId:myExternalId` jika memilikinya. Untuk informasi selengkapnya, lihat [Referensi objek dengan eksternal IDs](object-ids.md#external-id-references) di *AWS IoT SiteWise Panduan Pengguna*.
+ `assetName`- Nama baru aset.

**Untuk memperbarui nama aset (AWS CLI)**
+ Jalankan perintah berikut untuk memperbarui nama aset. Ganti *asset-id* dengan ID atau ID eksternal aset. Perbarui *asset-name* dengan nama baru untuk aset tersebut.

  ```
  aws iotsitewise update-asset \
    --asset-id asset-id \
    --asset-name asset-name
  ```

# Perbarui model aset, model komponen, dan antarmuka
<a name="update-asset-models"></a>

Gunakan AWS IoT SiteWise konsol atau API untuk memperbarui model aset, model komponen, atau antarmuka.

Anda tidak dapat mengubah tipe atau tipe data properti yang ada, atau jendela metrik yang ada. Anda juga tidak dapat mengubah jenis model dari model aset ke model komponen atau antarmuka, atau sebaliknya.

**penting**  
Jika Anda menghapus properti dari model aset atau model komponen, AWS IoT SiteWise menghapus semua data sebelumnya untuk properti tersebut. Untuk model komponen, ini memengaruhi **semua model aset yang menggunakan model komponen tersebut**, jadi berhati-hatilah untuk memahami seberapa luas perubahan Anda dapat diterapkan.
Jika Anda menghapus definisi hierarki dari model aset, AWS IoT SiteWise lepaskan semua aset dalam hierarki tersebut.

Saat Anda memperbarui model aset, setiap aset berdasarkan model tersebut mencerminkan perubahan apa pun yang Anda buat pada model yang mendasarinya. Sampai perubahan menyebar, setiap aset memiliki `UPDATING` negara. Anda harus menunggu sampai aset tersebut kembali ke `ACTIVE` negara sebelum Anda berinteraksi dengan mereka. Selama waktu ini, status model aset yang diperbarui akan menjadi`PROPAGATING`.

Saat Anda memperbarui model komponen, setiap model aset yang menggabungkan model komponen tersebut mencerminkan perubahan. Sampai perubahan model komponen menyebar, setiap model aset yang terpengaruh memiliki `UPDATING` status, diikuti oleh `PROPAGATING` saat memperbarui aset terkait, seperti yang dijelaskan dalam paragraf sebelumnya. Anda harus menunggu sampai model aset tersebut kembali ke `ACTIVE` keadaan sebelum Anda berinteraksi dengannya. Selama waktu ini, status model komponen yang diperbarui akan menjadi`PROPAGATING`.

Untuk informasi selengkapnya, lihat [Status aset dan model](asset-and-model-states.md).

**Topics**
+ [Memperbarui model aset, model komponen, atau antarmuka (konsol)](#update-asset-model-console)
+ [Memperbarui model aset, model komponen, atau antarmuka (AWS CLI)](#update-asset-model-cli)

## Memperbarui model aset, model komponen, atau antarmuka (konsol)
<a name="update-asset-model-console"></a>

Anda dapat menggunakan AWS IoT SiteWise konsol untuk memperbarui model aset, model komponen, atau antarmuka.

**Untuk memperbarui model aset, model komponen, atau antarmuka (konsol)**

1. <a name="sitewise-open-console"></a>Navigasikan ke [konsol AWS IoT SiteWise](https://console.aws.amazon.com/iotsitewise/) tersebut.

1. <a name="sitewise-choose-models"></a>Di panel navigasi, pilih **Model**.

1. Pilih model aset, model komponen, atau antarmuka yang akan diperbarui.

1. Pilih **Edit**.

1. Pada halaman **Edit model**, lakukan salah satu hal berikut:
   + Dalam **detail Model**, ubah **Nama** model.
   + Ubah salah satu **definisi Atribut**. Anda tidak dapat mengubah **tipe Data** dari atribut yang ada. Untuk informasi selengkapnya, lihat [Tentukan data statis (atribut)](attributes.md).
   + Ubah salah satu **definisi Pengukuran**. Anda tidak dapat mengubah **tipe Data** pengukuran yang ada. Untuk informasi selengkapnya, lihat [Tentukan aliran data dari peralatan (pengukuran)](measurements.md).
   + Ubah salah satu **definisi Transform**. Untuk informasi selengkapnya, lihat [Mengubah data (mengubah)](transforms.md).
   + Ubah salah satu **definisi Metrik**. Anda tidak dapat mengubah **Interval waktu** metrik yang ada. Untuk informasi selengkapnya, lihat [Data agregat dari properti dan aset lainnya (metrik)](metrics.md).
   + (Hanya model aset) Ubah salah satu **definisi Hierarki**. Anda tidak dapat mengubah **model Hierarki hierarki** yang ada. Untuk informasi selengkapnya, lihat [Tentukan hierarki model aset](define-asset-hierarchies.md).

1. Pilih **Simpan**.

**catatan**  
 Permintaan pembaruan yang dibuat di konsol ditolak, jika pengguna lain berhasil memperbarui model aset sejak Anda terakhir membuka halaman **Edit model**. Konsol meminta pengguna untuk **Menyegarkan** halaman **Edit model**, untuk mengambil model yang diperbarui. Anda harus melakukan pembaruan lagi, dan coba lagi penyimpanan Anda. Lihat [Penguncian optimis untuk penulisan model aset](opt-locking-for-model.md) untuk detail selengkapnya. 

## Memperbarui model aset, model komponen, atau antarmuka (AWS CLI)
<a name="update-asset-model-cli"></a>

Gunakan AWS Command Line Interface (AWS CLI) untuk memperbarui model aset, model komponen, atau antarmuka.

Gunakan [UpdateAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html)API untuk memperbarui nama, deskripsi, dan properti model aset, model komponen, atau antarmuka. Hanya untuk model aset, Anda dapat memperbarui hierarki. Untuk antarmuka, Anda dapat memperbarui properti dan hierarki. Tentukan parameter berikut:
+ `assetModelId`— ID aset. Ini adalah ID aktual dalam format UUID, atau `externalId:myExternalId` jika memilikinya. Untuk informasi selengkapnya, lihat [Referensi objek dengan eksternal IDs](object-ids.md#external-id-references) di *AWS IoT SiteWise Panduan Pengguna*.

Tentukan model yang diperbarui dalam muatan. Untuk mempelajari tentang format yang diharapkan dari model aset atau model komponen, lihat[Buat model aset di AWS IoT SiteWise](create-asset-models.md). 

**Awas**  
[UpdateAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html)API menimpa model yang ada dengan model yang Anda berikan di payload. Untuk menghindari penghapusan properti atau hierarki model Anda, Anda harus menyertakan properti IDs dan definisinya dalam payload model yang diperbarui. Untuk mempelajari cara menanyakan struktur model yang ada, lihat [DescribeAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html)operasinya.

**catatan**  
Prosedur berikut hanya dapat memperbarui model komposit tipe`AWS/ALARM`. Jika Anda ingin memperbarui model `CUSTOM` komposit, gunakan [UpdateAssetModelCompositeModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModelCompositeModel.html)sebagai gantinya. Untuk informasi selengkapnya, lihat [Perbarui model komposit khusus (komponen)](update-custom-composite-models.md).

**Untuk memperbarui model aset atau model komponen (AWS CLI)**

1. Jalankan perintah berikut untuk mengambil definisi model yang ada. Ganti *asset-model-id* dengan ID atau ID eksternal model aset atau model komponen untuk diperbarui.

   ```
   aws iotsitewise describe-asset-model --asset-model-id asset-model-id
   ```

   Perintah di atas mengembalikan definisi model yang sesuai dengan versi terbaru model.

    Untuk kasus penggunaan di mana model aset berada dalam `FAILED` status, ambil definisi model yang valid yang sesuai dengan versi aktifnya untuk membuat permintaan pembaruan Anda. Lihat [Versi model aset](model-active-version.md) untuk detail. Jalankan perintah berikut untuk mengambil definisi model aktif:

   ```
   aws iotsitewise describe-asset-model --asset-model-id asset-model-id --asset-model-version ACTIVE 
   ```

   Operasi mengembalikan respons yang berisi detail model. Responsnya memiliki struktur sebagai berikut.

   ```
   {
       "assetModelId": "String",
       "assetModelArn": "String",
       "assetModelName": "String",
       "assetModelDescription": "String",
       "assetModelProperties": Array of AssetModelProperty,
       "assetModelHierarchies": Array of AssetModelHierarchyDefinition,
       "assetModelCompositeModels": Array of AssetModelCompositeModel,
       "assetModelCompositeModelSummaries": Array of AssetModelCompositeModelSummary,
       "assetModelCreationDate": "String",
       "assetModelLastUpdateDate": "String",
       "assetModelStatus": {
         "state": "String",
         "error": {
           "code": "String",
           "message": "String"
         },
       "assetModelType": "String"
       },
       "assetModelVersion": "String",
       "eTag": "String"
   }
   ```

   Untuk informasi lebih lanjut, lihat [DescribeAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html)operasi.

1. Buat file bernama `update-asset-model.json` dan salin respons perintah sebelumnya ke dalam file.

1. Hapus pasangan nilai kunci berikut dari objek JSON di `update-asset-model.json`:
   + `assetModelId`
   + `assetModelArn`
   + `assetModelCompositeModelSummaries`
   + `assetModelCreationDate`
   + `assetModelLastUpdateDate`
   + `assetModelStatus`
   + `assetModelType`
   + `assetModelVersion`
   + `eTag`

   [UpdateAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html)Operasi mengharapkan muatan dengan struktur berikut:

   ```
   {
     "assetModelName": "String",
     "assetModelDescription": "String",
     "assetModelProperties": Array of AssetModelProperty,
     "assetModelHierarchies": Array of AssetModelHierarchyDefinition,
     "assetModelCompositeModels": Array of AssetModelCompositeModel
   }
   ```

1. Pada `update-asset-model.json`, lakukan langkah-langkah berikut:
   + Ubah nama model aset (`assetModelName`).
   + Mengubah, menambah, atau menghapus deskripsi model aset (`assetModelDescription`).
   + Mengubah, menambah, atau menghapus properti model aset (`assetModelProperties`). Anda tidak dapat mengubah properti `dataType` yang ada atau metrik `window` yang ada. Untuk informasi selengkapnya, lihat [Tentukan properti data](asset-properties.md).
   + Mengubah, menambah, atau menghapus salah satu hierarki model aset (`assetModelHierarchies`). Anda tidak dapat mengubah hierarki `childAssetModelId` yang ada. Untuk informasi selengkapnya, lihat [Tentukan hierarki model aset](define-asset-hierarchies.md).
   + Mengubah, menambah, atau menghapus salah satu model komposit model aset tipe `AWS/ALARM` (`assetModelCompositeModels`). Alarm memantau properti lain sehingga Anda dapat mengidentifikasi kapan peralatan atau proses memerlukan perhatian. Setiap definisi alarm adalah model komposit yang menstandarisasi serangkaian properti yang digunakan alarm. Untuk informasi selengkapnya, lihat [Pantau data dengan alarm di AWS IoT SiteWise](industrial-alarms.md) dan [Tentukan alarm pada model aset di AWS IoT SiteWise](define-alarms.md).

1. Jalankan perintah berikut untuk memperbarui model aset dengan definisi yang disimpan di`update-asset-model.json`. Ganti *asset-model-id* dengan ID model aset:

   ```
   aws iotsitewise update-asset-model \
     --asset-model-id asset-model-id \
     --cli-input-json file://model-payload.json
   ```

**penting**  
 Ketika beberapa pengguna memperbarui model aset pada saat yang sama, perubahan pengguna mungkin secara tidak sengaja ditimpa oleh pengguna lain. Untuk mencegah hal ini, Anda harus menentukan permintaan pembaruan bersyarat. Lihat [Penguncian optimis untuk penulisan model aset](opt-locking-for-model.md). 

# Perbarui model komposit khusus (komponen)
<a name="update-custom-composite-models"></a>

Anda dapat menggunakan AWS IoT SiteWise API untuk memperbarui model komposit khusus, atau AWS IoT SiteWise konsol untuk memperbarui komponen.

**Topics**
+ [Perbarui komponen (konsol)](#update-custom-composite-model-console)
+ [Perbarui model komposit khusus (AWS CLI)](#update-custom-composite-model-cli)

## Perbarui komponen (konsol)
<a name="update-custom-composite-model-console"></a>

Anda dapat menggunakan AWS IoT SiteWise konsol untuk memperbarui komponen.

**Untuk memperbarui komponen (konsol)**

1. <a name="sitewise-open-console"></a>Navigasikan ke [konsol AWS IoT SiteWise](https://console.aws.amazon.com/iotsitewise/) tersebut.

1. <a name="sitewise-choose-models"></a>Di panel navigasi, pilih **Model**.

1. Pilih model aset di mana komponennya berada.

1. Pada tab **Properties**, pilih **Components**.

1. Pilih komponen yang ingin Anda perbarui.

1. Pilih **Edit**.

1. Pada halaman **Edit komponen**, lakukan salah satu hal berikut:
   + Dalam **detail Model**, ubah **Nama** model.
   + Ubah salah satu **definisi Atribut**. Anda tidak dapat mengubah **tipe Data** dari atribut yang ada. Untuk informasi selengkapnya, lihat [Tentukan data statis (atribut)](attributes.md).
   + Ubah salah satu **definisi Pengukuran**. Anda tidak dapat mengubah **tipe Data** pengukuran yang ada. Untuk informasi selengkapnya, lihat [Tentukan aliran data dari peralatan (pengukuran)](measurements.md).
   + Ubah salah satu **definisi Transform**. Untuk informasi selengkapnya, lihat [Mengubah data (mengubah)](transforms.md).
   + Ubah salah satu **definisi Metrik**. Anda tidak dapat mengubah **Interval waktu** metrik yang ada. Untuk informasi selengkapnya, lihat [Data agregat dari properti dan aset lainnya (metrik)](metrics.md).

1. Pilih **Simpan**.

## Perbarui model komposit khusus (AWS CLI)
<a name="update-custom-composite-model-cli"></a>

Gunakan AWS Command Line Interface (AWS CLI) untuk memperbarui model komposit kustom.

Untuk memperbarui nama atau deskripsi, gunakan [UpdateAssetModelCompositeModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModelCompositeModel.html)operasi. Hanya untuk model komposit khusus sebaris, Anda juga dapat memperbarui properti. Anda tidak dapat memperbarui properti model komposit component-model-based kustom, karena model komponen yang direferensikan menyediakan properti terkait.

**penting**  
Jika Anda menghapus properti dari model komposit kustom, AWS IoT SiteWise menghapus semua data sebelumnya untuk properti tersebut. Anda tidak dapat mengubah tipe atau tipe data properti yang ada.  
Untuk mengganti properti model komposit yang ada dengan yang baru dengan yang sama`name`, lakukan hal berikut:  
Kirim `UpdateAssetModelCompositeModel` permintaan dengan seluruh properti yang ada dihapus.
Kirim `UpdateAssetModelCompositeModel` permintaan kedua yang mencakup properti baru. Properti aset baru akan `name` sama dengan yang sebelumnya dan AWS IoT SiteWise akan menghasilkan unik baru`id`.

**Untuk memperbarui model komposit kustom (AWS CLI)**

1. Untuk mengambil definisi model komposit yang ada, jalankan perintah berikut. Ganti *composite-model-id* dengan ID atau ID eksternal model komposit khusus untuk diperbarui, dan *asset-model-id* dengan model aset yang terkait dengan model komposit khusus. Untuk informasi selengkapnya, silakan lihat *Panduan Pengguna AWS IoT SiteWise *.

   1. Jalankan perintah di bawah ini:

      ```
      aws iotsitewise describe-asset-model-composite-model \
      --asset-model-composite-model-id composite-model-id \
      --asset-model-id asset-model-id
      ```

   1.  Perintah di atas mengembalikan definisi model komposit yang sesuai dengan versi terbaru model terkait. Untuk kasus penggunaan di mana model aset berada dalam `FAILED` status, ambil definisi model yang valid yang sesuai dengan versi aktifnya untuk membuat permintaan pembaruan Anda. Lihat [Versi model aset](model-active-version.md) untuk detail. 

   1. Jalankan perintah berikut untuk mengambil definisi model aktif:

      ```
      aws iotsitewise describe-asset-model-composite-model \
      --asset-model-composite-model-id composite-model-id \
      --asset-model-id asset-model-id \
      --asset-model-version ACTIVE
      ```

   1. Untuk informasi lebih lanjut, lihat [DescribeAssetModelCompositeModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModelCompositeModel.html)operasi.

1. Buat file bernama`update-custom-composite-model.json`, lalu salin respons perintah sebelumnya ke dalam file.

1. Hapus setiap pasangan kunci-nilai dari objek JSON `update-custom-composite-model.json` kecuali untuk bidang berikut:
   + `assetModelCompositeModelName`
   + `assetModelCompositeModelDescription`(jika ada)
   + `assetModelCompositeModelProperties`(jika ada)

1. Pada `update-custom-composite-model.json`, lakukan langkah-langkah berikut:
   + Ubah nilai`assetModelCompositeModelName`.
   + Tambah atau hapus`assetModelCompositeModelDescription`, atau ubah nilainya.
   + Hanya untuk model komposit kustom sebaris: Ubah, tambahkan, atau hapus properti model aset apa pun di`assetModelCompositeModelProperties`.

   Untuk informasi selengkapnya tentang format yang diperlukan untuk file ini, lihat sintaks permintaan untuk [UpdateAssetModelCompositeModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModelCompositeModel.html).

1. Jalankan perintah berikut untuk memperbarui model komposit kustom dengan definisi yang disimpan di`update-custom-composite-model.json`. Ganti *composite-model-id* dengan ID model komposit, dan *asset-model-id* dengan ID model aset yang ada di dalamnya.

   ```
   aws iotsitewise update-asset-model-composite-model \
   --asset-model-composite-model-id composite-model-id \
   --asset-model-id asset-model-id \
   --cli-input-json file://update-custom-composite-model.json
   ```

**penting**  
 Ketika beberapa pengguna memperbarui model aset pada saat yang sama, perubahan pengguna mungkin secara tidak sengaja ditimpa oleh pengguna lain. Untuk mencegah hal ini, Anda harus menentukan permintaan pembaruan bersyarat. Lihat [Penguncian optimis untuk penulisan model aset](opt-locking-for-model.md). 

# Penguncian optimis untuk penulisan model aset
<a name="opt-locking-for-model"></a>

 Saat memperbarui model aset, pengguna melakukan hal berikut: 

1. Baca definisi model aset saat ini.

1. Edit definisi model aset dengan perubahan yang diperlukan.

1. Perbarui model aset dengan definisi baru.

 Dalam skenario dengan dua pengguna memperbarui model, berikut ini dimungkinkan: 
+ Pengguna A membaca definisi model aset X.
+ Pengguna B membaca definisi model aset X dan melakukan perubahan, memodifikasi definisi X.
+ Pengguna A melakukan dan menimpa perubahan yang dibuat oleh pengguna B untuk model aset X, tanpa memverifikasi atau memasukkan perubahan Pengguna B.

 Penguncian optimis adalah mekanisme yang digunakan oleh AWS IoT SiteWise untuk mencegah penimpaan yang tidak disengaja seperti skenario di atas. Penguncian optimis adalah strategi untuk memastikan versi model aset saat ini diperbarui atau dihapus, sama dengan versi saat ini di AWS IoT SiteWise. Ini melindungi penulisan model aset agar tidak ditimpa oleh pembaruan yang tidak disengaja. 

Ikuti langkah-langkah ini untuk melakukan penulisan model aset dengan penguncian optimis:

**Topics**
+ [Melakukan penulisan model aset dengan kunci optimis (konsol)](#opt-locking-for-model-console)
+ [Melakukan penulisan model aset dengan optimistic lock ()AWS CLI](#opt-locking-for-model-cli)

## Melakukan penulisan model aset dengan kunci optimis (konsol)
<a name="opt-locking-for-model-console"></a>

Prosedur di bawah ini menjelaskan cara melakukan penulisan model aset dengan kunci optimis pada versi aktif model aset di konsol.

1. <a name="sitewise-open-console"></a>Navigasikan ke [konsol AWS IoT SiteWise](https://console.aws.amazon.com/iotsitewise/) tersebut.

1. <a name="sitewise-choose-models"></a>Di panel navigasi, pilih **Model**.

1. Pilih model aset atau model komponen yang akan diperbarui.

1. Pilih **Edit**.

1. Buat perubahan pada halaman **Edit model**.

1. Pilih **Simpan**.
**catatan**  
Terkadang, satu atau lebih pembaruan model yang berhasil terjadi antara saat pengguna mulai mengedit model, dan menyimpan pengeditan yang dibuat ke model.  
Untuk memastikan pengguna tidak sengaja menimpa pembaruan baru yang berhasil, tulisan pengguna ditolak. Konsol menonaktifkan tombol **Simpan**, dan meminta pengguna untuk menyegarkan halaman **Edit model**. Pengguna harus memperbarui versi aktif baru dari model lagi. Pengguna harus melakukan langkah-langkah tambahan berikut: 

1. Pilih**Refresh**.

1. Ikuti langkah 5 dan 6 lagi.

## Melakukan penulisan model aset dengan optimistic lock ()AWS CLI
<a name="opt-locking-for-model-cli"></a>

Prosedur di bawah ini menjelaskan cara melakukan penulisan model aset dengan penguncian optimis di. AWS CLI

1. **Ambil yang ETag terkait dengan definisi model saat ini**

    `ETag`adalah token unik yang dihasilkan untuk setiap representasi baru dari model aset. Panggil [DescribeAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html)API untuk mengambil definisi model aset saat ini, dan terkait `ETag` dari respons. 

    Selama pembaruan bersamaan, pengguna melakukan pembaruan yang berhasil (model dalam `ACTIVE` status), atau pembaruan yang gagal (model dalam `FAILED` status). Untuk memastikan bahwa pengguna tidak sengaja menimpa pembaruan yang berhasil, Anda harus mengambil versi aktif model aset dari[Versi model aset](model-active-version.md), dan mendapatkan nilainya. `ETag` 

   Jalankan perintah berikut:

   ```
   aws iotsitewise describe-asset-model --asset-model-id asset-model-id \
   --asset-model-version ACTIVE
   ```

    Respons mengembalikan struktur berikut: 

   ```
   {
     "assetModelId": "String",
     "assetModelArn": "String",
     "assetModelName": "String",
     ...
     "eTag": "String"
   }
   ```
**catatan**  
 Anda harus mengambil versi terbaru dari model aset dan itu `ETag` agar tidak menimpa pembaruan apa pun. 

1. **Lakukan operasi UPDATE dan DELETE dengan kondisi tulis**

   Model aset berikut APIs mendukung penguncian optimis:
   + [UpdateAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModel.html)
   + [DeleteAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DeleteAssetModel.html)
   + [CreateAssetModelCompositeModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModelCompositeModel.html)
   + [UpdateAssetModelCompositeModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetModelCompositeModel.html)
   + [DeleteAssetModelCompositeModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DeleteAssetModelCompositeModel.html)
**catatan**  
 Skenario di bawah ini menggunakan `UpdateAssetModel` API sebagai referensi. Ketentuan berlaku untuk semua operasi yang tercantum di atas. 

   Skenario di bawah ini menjelaskan kondisi penulisan yang berbeda tergantung pada persyaratan kontrol konkurensi:
   +  Jalankan perintah berikut agar tidak menimpa pembaruan yang berhasil. Versi aktif baru tidak boleh ada, karena versi aktif baca terakhir. Ganti `e-tag` dengan yang `ETag` dikembalikan dalam operasi API yang digunakan dalam pembacaan versi aktif. 

     ```
     aws iotsitewise update-asset-model \
       --asset-model-id asset-model-id \
       --if-match e-tag \
       --match-for-version-type ACTIVE \
       --cli-input-json file://model-payload.json
     ```
   +  Ketika pembuatan model gagal, versi aktif belum ada untuknya, karena dalam `FAILED` keadaan. Masih dimungkinkan untuk menimpa versi aktif baru yang ada, sebelum perubahan Anda dilakukan. Jalankan perintah berikut untuk tidak menimpa versi aktif baru, ketika versi aktif tidak ada selama pembacaan terakhir Anda.

     ```
     aws iotsitewise update-asset-model \
       --asset-model-id asset-model-id \
       --if-none-match "*" \
       --match-for-version-type ACTIVE \
       --cli-input-json file://model-payload.json
     ```
   +  Jalankan perintah berikut untuk menghindari penimpaan pembaruan yang berhasil atau tidak berhasil. Perintah ini mendefinisikan kondisi tulis yang memastikan bahwa versi terbaru tidak dibuat sejak versi terbaru Anda dibaca terakhir. Ganti `e-tag` dengan yang `ETag` dikembalikan dalam operasi API yang digunakan dalam pembacaan versi aktif.

     ```
     aws iotsitewise update-asset-model \
       --asset-model-id asset-model-id \
       --if-match eTag \
       --match-for-version-type LATEST \
       --cli-input-json file://model-payload.json
     ```

     Jika kondisi tulis dievaluasi`FALSE`, permintaan tulis gagal dengan. `PreconditionFailedException`