Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Fetch descendantsOmit DescendantsDirect DescendantsAll Descendants
Query

//openroadm-device[@device-id="C201-7-1A-14"]

Graph

Time ComplexityLinear on total number of fragments in databaseLinear on total number of fragments in databaseLinear on total number of fragments in database
CommentsThese operations are as fast as reading with getDataNodes API.

Query one device out of many using descendant cps path

...

Fetch descendantsOmit DescendantsDirect DescendantsAll Descendants
Query//openroadm-device[@device-id="C201-7-1A-14"]
Graph

Time ComplexityLinear on total number of fragments in databaseLinear on total number of fragments in databaseLinear on total number of fragments in database
CommentsThese operations are as fast as reading with getDataNodes API.

Query all devices using absolute cps path

...

Fetch descendantsOmit DescendantsDirect DescendantsAll Descendants
Query

/openroadm-devices/openroadm-device[@status="success"]

Graph

Time ComplexityLinear on the amount of fragments returned from queryLinear on the amount of fragments returned from queryLinear on the amount of fragments returned from query
CommentsThis operation is around half the speed as getDataNodes.This operation is around half the speed as getDataNodes.This has same speed as reading with getDataNodes.

Query all devices using descendant cps path

...

Fetch descendantsOmit DescendantsDirect DescendantsAll Descendants
Query//openroadm-device[@ne-state="inservice"]
Graph

Time ComplexityLinear on the amount of fragments returned from queryLinear on the amount of fragments returned from queryLinear on the amount of fragments returned from query
CommentsThis operation is around half the speed as getDataNodes.This operation is around half the speed as getDataNodes.This has same speed as reading with getDataNodes.

Commentary

Suggested improvement: For absolute cps path queries, the complexity can be reduced to best-case constant time (so it is no longer linear on the total number of fragments in the database).

...