JanusGraph / JanusGraph/janusgraph
Allow for Custom Table Names in Cassandra Backend
- Dominant language
- Java
- Stars
- 5.8k
- Forks
- 1.2k
- Avg merge
- 13h 53m
- Merged PRs (30d)
- 6
Description
**Describe the feature:**
Allow custom table names to be specified for Cassandra.
**Describe a specific use case for the feature:**
When I need to redefine my schema, e.g. adding a property to an already defined vertex label, I need to ensure that no other processes are accessing the database during the schema change. Additionally, I need to populate the database tables with data again (usually a 2+ hour process). This means that the database is unavailable for use for 2+ hours. If we could specify custom table names, we can pre-populate new tables with the data, and then switch over to the new table, avoiding the 2+ hour downtime.
I'd like to use the same keyspace for these "new" tables.
Contributor guide
Research direction
Start by examining how the Cassandra backend currently determines table names and how its configuration is exposed. Define how custom names can use the same keyspace and how switching tables would support schema changes without downtime. Done means users can specify custom Cassandra table names and the existing backend behavior remains available when they do not.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cassandra, java
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100