Getting Started

Tutorial: Building with CleaveDB

Historical Graph Reads

A relationship can change over time, and an investigation may need to know what was connected before that change. FIND supports AS OF on relationship reads, so CleaveDB can return the connected documents as they were at an earlier time. Use a relative expression such as yesterday for a readable report or a timestamp when the application needs a specific point.

CleaveQLExample · Read a relationship as of yesterday
FIND "friend" OF "users:jane" AS OF "yesterday"

Include dormant conditional bonds

A conditional bond can exist as a candidate before its condition becomes active. Add CANDIDATE when you need to inspect those dormant connections as part of a relationship query. This can help explain which possible relationship is waiting on a condition, rather than showing only the currently active graph.

CleaveQLExample · Inspect candidate relationships
FIND CANDIDATE "cond" OF "users:jane"

Historical reads change the time context of the lookup; candidate traversal changes which conditional bonds are considered. Neither form edits a document or activates a bond. Relationship results are de-duplicated by target document, and documents drained into _rubbish are not returned.