Think of labels as special properties of nodes, that allow a faster lookup than ordinary properties of nodes. They allow you to faster filter or groupby those nodes. Single node can have many labels.
General guidelines for labels:
- We use labels to group entities together -- (:Person),(:Company)
Create constraints/indexes on your entities labels for faster querying
- We use additional labels as a preprocessed way of filtering nodes faster -- (:Person:Expert),(:Company:VIP)
- We can use labels for marking steps in our process -- (:Order:ExportedToElastic),(:Order:Error)