Details
Description
A large cluster is a valuable shared resource. The current permission system and simple table naming structure does not allow for delegation of authority and safe partitioning within this shared resource.
Use cases:
- create a namespace (like "test") and delegate the grant permission to tables created in that namespace to a user that would manage those tables. Presently, grant is never delegated.
- create simple "test" and "production" namespaces that are trivial for users to switch between. For example, instead of having tables "test_index" and "test_documents" the client would support "index" and "documents" with an API to support switching trivially between the the different environments.
- create a set of tables in a namespace called "latest" This namespace is re-created periodically with a map-reduce job. If code changes inadvertently create a corrupt "latest," users can switch to the set of tables known as "safest" In this way, users can experiment, and provide feedback on incremental improvements, while have a safe fallback.
- two applications hosted on the same cluster that can share a table, which has been "aliased" into their namespace. Namespace-local permissions are ignored, but a (most likely read-only) view of the table is available. This would be helpful for reference tables.
- quotas/priorities. Implement namespace-specific priorities and resource allocations. It is reasonable to run namespace-specific queries and ingest on production equipment. Large cluster resources are always limited, and often the only place where near-production quality software can be run at full scale.
Attachments
Attachments
Issue Links
- is depended upon by
-
ACCUMULO-1712 Remove special characters from path names of metadata tables
- Resolved
-
ACCUMULO-324 System/site constraints and iterators should NOT affect the METADATA table
- Resolved
- is related to
-
ACCUMULO-617 default access for a table
- Resolved
-
ACCUMULO-1865 Implement table namespace clone in MockAccumulo
- Resolved
-
ACCUMULO-2885 User manual does not define what namespaces are or how they work
- Resolved
- relates to
-
ACCUMULO-4035 Spurious NamespacesIT.verifyConstraintInheritance failure
- Resolved
- links to