edgeLabel
How to create an edge label.
Synopsis
schema.edgeLabel('edgeLabel').[ single() | multiple() ].[ connection( outVertex, inVertex) ].[ ttl ].[ properties(property[, property]) ].[ ifNotExists() ].[ create() | add() | describe() | exists() ]
Description
An edge label specifies a type of edge that can be stored in DSE Graph. An edge label can have cardinality specified (default is multiple),, the connections that are defined between two types of vertices, properties that an edge has defined, and a time-to-live (TTL) to determine the lifecycle of an edge.
Examples
Create an edgeLabel
created
:schema.edgeLabel('created').create()
Create an edgeLabel
includedIn
if the edge label doesn't already
exist:schema.edgeLabel('includedIn').ifNotExists().create()
Create an edgeLabel with multiple
cardinality:
schema.edgeLabel('rated').multiple().create()
Add properties to an
edgeLabel:
schema.edgeLabel('rated').properties('rating','last_date').add()
Create an edgeLabel with both a property and a
connection:
schema.edgeLabel('rated').properties('rating').connection('recipe', 'reviewer').add()
Create a time-to-live (TTL) for an edgeLabel of 60 seconds. Setting a TTL will expire all
edges inserted with the edgeLabel at the set TTL
value.
schema.edgeLabel('createDate').ttl(60).create()
refNote: DSE Graph sets TTL differently from Cassandra. Cassandra sets TTL per
mutation (insertion or update) or can inherit a default value from the table schema. DSE
Graph sets TTL per vertex label or edge label, and all vertices or edges will be affected
by the TTL setting. DSE Graph cannot set TTL for an individual vertex or edge.
Check if an edgeLabel exists:
schema.edgeLabel('rated').exists()
Get the schema creation command for an edgeLabel using the
describe()
command:schema.edgeLabel('createDate').describe()