Skip to content

Namespaces

RBAC Requirement

Managing namespaces requires specific roles when RBAC is enabled: creating requires Architect or DataEngineer, deleting requires Architect, and viewing requires Analyst, Architect, or DataEngineer. See OIDC and RBAC Setup for details.

For use-cases built around multiple, smaller graphs, Quine Enterprise has native namespacing support. Each namespace is called a graph and is identified by name in the URL path (e.g., /api/v2/graph/{graphName}/ingests). Compared with running multiple smaller standalone instances of streaming graph, namespaces offer a few advantages. System-level overhead and compilation caches are shared across all graphs, reducing the overall resource footprint. Graphs also provide a natural way to sandbox different use-cases, or to enable multi-tenancy. The backpressuring system can account for all graphs, ensuring that one noisy neighbor doesn't render the system inaccessible to other tenants. Additionally, graphs run within the same JVM and with the same persistor, yielding a reduced burden for deployment.

The default graph named quine is created when the system is started and cannot be deleted. All graph-scoped API operations (ingests, standing queries, Cypher queries, algorithms) require a graph name in the URL path. To use the default graph, specify quine as the graph name (e.g., /api/v2/graph/quine/ingests). Graph names must be between 1 and 16 lowercase alphanumeric characters and must begin with a letter. Quine Enterprise exposes a graph management API:

Graphs also affect metric names. In Quine Enterprise, graph-scoped metrics are prefixed with the graph name (e.g., quine.node.property-counts). Previous versions of Quine omitted this prefix. If you are migrating from an earlier version and have existing monitoring dashboards, see the metrics migration guide for details on updating your queries.