# ラベルの設定

+ **`region`**という特別なラベルキーを使用して、データのジオロケーション配置機能を容易にするために使用されます

![`smart`](LabelConfiguration_aa_003_20220509.png)

```7
tikv_servers:
  - host: 10.63.10.30
    config:
      server.labels: { dc: "1", ~!@zone: "1"@!~, rack: "1", host: "1" }
  - host: 10.64.10.31
    config:
      server.labels: { dc: "2", zone: "2", rack: "3", host: "6" }
  - host: 10.65.10.32
    config:
      server.labels: { dc: "3", zone: "3", rack: "5", host: "9" }
```

------------------------------------------------------------
上記で、皆さんはラベルの概念と機能を理解しました。次に、ラベルの設定方法を見ていきましょう。
最初に、PDノード内で、ラベルのフォーマット情報である、つまりソース情報を特定する必要があります。以下のようになります：

```
[replication]                     
location-labels = ["dc", "zone", "rack", "host"] 
```

`dc`、`rack`、`host`はそれぞれデータセンター、ラックまたはフレーム、ホストを表しており、物理的な場所やデバイスであり、とても理解しやすいものです。
しかし、「ゾーン」という概念は実際には、レプリカを分離する最小の場所を表すために使われる論理的な概念です。その数量は常にレプリカと一致しています。例えば、デフォルトの3つのレプリカがある場合、3つのデータセンター（DC）がある場合は、3つのゾーンを設定し、それぞれのゾーンがデータセンター（DC）に対応し、レプリカも異なるゾーンに配置されます。1つのデータセンターしかないが、3つのラックがある場合も、3つのゾーンを設定し、それぞれのゾーンがラックに対応し、レプリカも異なるゾーンに配置されます。
2番目に、TiKVの設定を見てみましょう。TiKVの設定では、

```
tikv_servers:
  - host: 10.63.10.30
    config:
      server.labels: { dc: "1", zone: "1", rack: "1", host: "1" }
  - host: 10.64.10.31
    config:
      server.labels: { dc: "2", zone: "2", rack: "3", host: "6" }
  - host: 10.65.10.32
    config:
      server.labels: { dc: "3", zone: "3", rack: "5", host: "9" }
```

DC1データセンターのラック1キャビネットにある10.63.10.30ホスト、ホスト番号は1、ゾーン番号は1です。
DC2データセンターのラック3キャビネットにある10.64.10.31ホスト、ホスト番号は6、ゾーン番号は2です。
DC3データセンターのラック5キャビネットにある10.65.10.32ホスト、ホスト番号は9、ゾーン番号は3です。

PDが3つのホストの位置を認識したとき、Regionの3つのレプリカを3つのホストに配置することで、最高の可用性を実現します。

特別なラベルキー、`region`が、データのジオロケーション配置機能を容易にするために使用されます。それは、TiDB v6.0の新機能のユニット8で議論されます。

