propertyKey
プロパティ・キーを作成する方法。
構文
propertyKey('name').
type().
[ single() | multiple() ].
[ properties(metadata_property).[ add() | drop()] ].
[ ttl ].
[ ifNotExists() ].
[ create() | add() | | drop() | describe() | exists() ]
説明
プロパティ・キーは頂点とエッジに対して作成されます。プロパティ・キーは、いずれかの要素タイプに追加する前に作成する必要があります。データ型を含める必要があります。
注: ほぼ制限なくUnicodeを使用できるようにするために使用する命名規則。現在使用できる文字は、a~z、A~Z、0~9、アンダースコア、ハイフン、およびピリオドのみです。
プロパティ・キーはカーディナリティを指定できるほか、single
(デフォルト)またはmultiple
、properties
(メタプロパティ)、およびエッジのライフサイクルを特定するためのTime To Live(TTL
)を含むことができます。 注意: 複数のカーディナリティ(マルチプロパティ)が、1つのカーディナリティ・プロパティと比べてグラフ探索で取得される速度が遅いのは、マルチプロパティを持つ頂点がデフォルトでプロパティを個別に要求するためです。
例
Text
型の名前 name
を持つプロパティ・キーを作成します。schema.propertyKey('name').Text().create()
注: ほぼ制限なくUnicodeを使用できるようにするために使用する命名規則。現在使用できる文字は、a~z、A~Z、0~9、アンダースコア、ハイフン、およびピリオドのみです。
プロパティ・キーがまだ存在していない場合は、
Integer
型の名前 num_items
でプロパティ・キーを作成します。schema.propertyKey('num_items').Int().ifNotExists().create()
複数のカーディナリティを持つ
Timestamp
型の名前 createDate
でプロパティ・キーを作成します。schema.propertyKey('createDate').Timestamp().multiple().create()
プロパティのメタプロパティを追加します。メタプロパティ、
first_publication
は、最初にプロパティ・キーとして作成する必要があります。schema.propertyKey('createDate').properties('first_publication').add()
60秒のTime To Live(TTL)をプロパティ・キーに対して作成します。TTLを設定すると、設定したTTL値でpropertyKeyを使用して挿入されたすべてのプロパティが期限切れになります。
schema.propertyKey('createDate').ttl(60).create()
注: DSE Graphでは、TTLの設定方法はDSEデータベースとは異なります。DSEデータベースでは、TTLはミューテーション(挿入または更新)ごとに設定されるか、テーブル・スキーマからデフォルト値を継承することができます。DSE Graphでは、TTLが頂点ラベルまたはエッジ・ラベルごとに設定され、すべての頂点またはエッジがTTL設定による影響を受けます。DSE Graphでは、TTLを各頂点またはエッジに対して設定することはできません。
プロパティ・キーが存在するかどうか確認します。
schema.propertyKey('name').exists()
describe()
コマンドを使用してプロパティ・キーのスキーマ作成コマンドを取得します。 schema.propertyKey('name').describe()
drop()
コマンドで、プロパティ・キーを削除します。schema.propertyKey('gender').drop()
メタプロパティ、
first_publication
を削除します。schema.propertyKey('createDate').properties('first_publication').drop()