As per datastx documentation here, we cannot delete column from tables defined with COMPACT STORAGE option. What is the reason for this?
In Cassandra, why dropping a column from tables defined with compact storage not allowed?
489 views Asked by Manish Khandelwal At
1
There are 1 answers
Related Questions in CASSANDRA
- how to create a chess board with Queen in the central position and all its moves in assembler code
- Passing arguments to ENTRYPOINT causes the container to start and run indefinitely
- Apache Cassandra Node Driver Connection
- Simulate Cassandra DB timeout
- How to update Cassandra Lucene index with a new column? rebuild or update index?
- Cassandra JDBC connection string for logstash
- Cassandra OversizedMessageException
- dsbulk unload is failing after ran couple of hours with OOM issue
- Cassandra: "Model keyspace not set" and "Connection name doesn't exist in the registry" Errors
- Unable to cqlsh to a cassandra docker container remotely
- Forward pagination with object mapper in java asyn
- Allow filter in cassandra query
- How to fix bytes unrepaired in cassandra
- Can't install Cassandra using RPM packages for RHEL 9
- Why can't get a connection to Cassandra running on Docker from a Spring Boot instace using spring-boot-starter-data-cassandra on first boot?
Related Questions in CQL3
- Can cassandra create table over files stored in S3?
- Cassandra - get the latest value within group
- Cassandra map and column update regarding tombstones
- Cassandra chat app: sorting rooms after last message inserted
- Cassandra need for IN clause in consideration of a messaging application
- CQL query delete if not in list
- In Cassandra, why dropping a column from tables defined with compact storage not allowed?
- Filtering on Primary Key in Cassandra
- Cassandra, Delete if a set contains value
- How to pass to @Query a complete query String?
- CQL: Escape single quote in a map<int,text> attribute
- How can i update the column to a particular value in a cassandra table?
- How to get generated Id after inserting row in Cassandra
- Will auto-pagination work in Cassandra without providing the limit?
- How to properly select partition keys that match an index
Related Questions in CASSANDRA-CLI
- In Cassandra, why dropping a column from tables defined with compact storage not allowed?
- Running Cassandra CLI with SSL Enabled
- unconfigured table schema_columnfamilies
- updating all Cassandra tables starting with a specific name
- No SQL Shema Design/Backup Strategy
- How to get Last 6 Month data comparing with timestamp column using cassandra query?
- Querying in Cassandra, retrieving from a SET of UDT
- cassandra - simple/basic data modeling to retrieve all employees
- Unbalanced Cassandra cluster
- Run cassandra queries from command line
- stubbed cassandra for data storage
- Is it possible to use single table for multiple connections in cassandra
- cassandra 2.2.8: sstableverify - GC overhead limit exceeded
- Cassandra: How to read schemaless columns in cqlsh or why it is not possible?
- Get full qualifying column name in Cassandra
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
This goes back to the original implementation of CQL3, and changes which were made to allow it to abstract a "SQL-like," wide-row structure on top of the original Thrift-based storage engine. Ultimately, managing the schema comes down to whether or not the underlying structure is a table or a column_family.
As an example, I'll create two tables using an old install of Apache Cassandra (2.1.19):
I'll insert one row into each table:
And then I'll look at the tables with the old cassandra-cli tool:
Do you see the empty/"ghost" column value in the first result? That empty column value was CQL3's link between the column values and the table's meta data. If it's not there, then CQL cannot be used to manage a table's columns.
The comparator used for type conversion was all that was really exposed via Thrift. This lack of meta data control/exposure is what allowed Cassandra to be considered "schemaless" in the pre-CQL days. If I run a
describe studentcompfrom within the cassandra-cli, I can see the comparators (validation class) used:But if I try
describe student, I see this:Bascially, tables and column families were different entities forced into the same bucket. Adding
WITH COMPACT STORAGEessentially made a table a column family. With that came the lack of any schema management (adding or removing columns), outside of access to the comparators.Edit 20200905
You might be able to accomplish this. Sylvain Lebresne wrote A Thrift to CQL3 Upgrade Guide which will have some necessary details for you. I also advise reading through the Jira ticket mentioned above (CASSANDRA-4377), as that covers many of the in-depth technical challenges that make this difficult.