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. 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 namespaces, reducing the overall resource footprint. Namespaces also provide a natural way to sandbox different use-cases, or to enable multi-tenancy. The backpressuring system can account for all namespaces, ensuring that one noisy neighbor doesn't render the system inaccessible to other tenants. Additionally, namespaced graphs run within the same JVM and with the same persistor, yielding a reduced burden for deployment.

The default namespace is created when the graph is started and cannot be deleted. The default namespace is used for all API calls that do not specify a namespace. To use a different namespace, the namespace query parameter may be set on the API call. Namespace identifiers must be between 1 and 16 alphanumeric characters, must begin with a letter, and are case-insensitive. All ingest, graph algorithm, standing query, debug, and cypher query endpoints support the namespace parameter. Additionally, streaming graph exposes a namespace management API:

Namespaces also affect metric names. In Quine Enterprise, namespace-scoped metrics are prefixed with the namespace name (e.g., default.node.property-counts). This differs from Quine, where namespace prefixes are omitted. If you are migrating from Quine and have existing monitoring dashboards, see the metrics migration guide for details on updating your queries.