

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

# Hindari pemeriksaan label node yang berlebihan dengan menggunakan nama hubungan granular
<a name="best-practices-content-5"></a>

 Saat mengoptimalkan kinerja, menggunakan label hubungan yang eksklusif untuk pola simpul memungkinkan penghapusan pemfilteran label pada node. Pertimbangkan model grafik di mana hubungan hanya `likes` digunakan untuk mendefinisikan hubungan antara dua `person` node. Kita bisa menulis query berikut untuk menemukan pola ini: 

```
MATCH (n:person)-[:likes]->(m:person)
RETURN n, m
```

 Pemeriksaan `person` label pada n dan m berlebihan, karena kami mendefinisikan hubungan hanya muncul ketika keduanya bertipe. `person` Untuk mengoptimalkan kinerja, kita dapat menulis kueri sebagai berikut: 

```
MATCH (n)-[:likes]->(m)
RETURN n, m
```

 Pola ini juga dapat diterapkan ketika properti eksklusif untuk label node tunggal. Asumsikan bahwa hanya `person` node yang memiliki properti`email`, oleh karena itu memverifikasi kecocokan `person` label node berlebihan. Menulis kueri ini sebagai: 

```
MATCH (n:person)
WHERE n.email = 'xxx@gmail.com'
RETURN n
```

 Kurang efisien daripada menulis kueri ini sebagai: 

```
MATCH (n)
WHERE n.email = 'xxx@gmail.com'
RETURN n
```

 Anda hanya harus mengadopsi pola ini ketika kinerja penting dan Anda memiliki pemeriksaan dalam proses pemodelan Anda untuk memastikan label tepi ini tidak digunakan kembali untuk pola yang melibatkan label simpul lainnya. Jika Anda kemudian memperkenalkan `email` properti pada label node lain seperti`company`, maka hasilnya akan berbeda antara dua versi kueri ini. 