incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aaron morton <aa...@thelastpickle.com>
Subject Re: Deletes, null values
Date Tue, 30 Apr 2013 05:38:21 GMT
> I thought that C* had no null values... I use a lot of CF in which only the columns name
are filled up and I request a range of column to see which references (like 1228#16866) exists.
So I would like those column to simply disappear from the table.
Cassandra does not store null values. 

The output form cqlsh is showing you the values for the columns you requests and using null
to indicate there was no value. 

Cheers

-----------------
Aaron Morton
Freelance Cassandra Consultant
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 30/04/2013, at 3:52 AM, Alain RODRIGUEZ <arodrime@gmail.com> wrote:

> I created it almost a year ago with cassandra-cli. Now show_schema returns:
> 
> create column family myCF
>   with column_type = 'Standard'
>   and comparator = 'UTF8Type'
>   and default_validation_class = 'UTF8Type'
>   and key_validation_class = 'UTF8Type'
>   and read_repair_chance = 0.1
>   and dclocal_read_repair_chance = 0.0
>   and populate_io_cache_on_flush = false
>   and gc_grace = 864000
>   and min_compaction_threshold = 4
>   and max_compaction_threshold = 12
>   and replicate_on_write = true
>   and compaction_strategy = 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy'
>   and caching = 'KEYS_ONLY'
>   and bloom_filter_fp_chance = 0.01
>   and compression_options = {'sstable_compression' : 'org.apache.cassandra.io.compress.SnappyCompressor'};
> 
> "The output looks correct to me. CQL table return values, including null, for all of
the selected columns."
> 
> I thought that C* had no null values... I use a lot of CF in which only the columns name
are filled up and I request a range of column to see which references (like 1228#16866) exists.
So I would like those column to simply disappear from the table.
> 
> Alain
> 
> 
> 
> 2013/4/28 aaron morton <aaron@thelastpickle.com>
> What's your table definition ? 
> 
>>> select '1228#16857','1228#16866','1228#16875','1237#16544','1237#16553'
>>> from myCF where key = 'all';
> 
> The output looks correct to me. CQL table return values, including null, for all of the
selected columns.
> 
> Cheers
> 
> -----------------
> Aaron Morton
> Freelance Cassandra Consultant
> New Zealand
> 
> @aaronmorton
> http://www.thelastpickle.com
> 
> On 27/04/2013, at 12:48 AM, Sorin Manolache <sorinm@gmail.com> wrote:
> 
>> On 2013-04-26 11:55, Alain RODRIGUEZ wrote:
>>> Of course:
>>> 
>>> From CQL 2 (cqlsh -2):
>>> 
>>> delete '183#16684','183#16714','183#16717' from myCF where key = 'all';
>>> 
>>> And selecting this data as follow gives me the result above:
>>> 
>>> select '1228#16857','1228#16866','1228#16875','1237#16544','1237#16553'
>>> from myCF where key = 'all';
>>> 
>>> From thrift (phpCassa client):
>>> 
>>> $pool = new
>>> ConnectionPool('myKeyspace',array('192.168.100.201'),6,0,30000,30000);
>>> $my_cf= new ColumnFamily($pool, 'myCF', true, true,
>>> ConsistencyLevel::QUORUM, ConsistencyLevel::QUORUM);
>>> $my_cf->remove('all', array('1228#16857','1228#16866','1228#16875'));
>>> 
>> 
>> I see. I'm sorry, I know nothing about phpCassa. I use batch_mutation with deletions
and it works. But I guess phpCassa must use the same thrift primitives.
>> 
>> Sorin
>> 
>> 
>>> 
>>> 
>>> 2013/4/25 Sorin Manolache <sorinm@gmail.com <mailto:sorinm@gmail.com>>
>>> 
>>>    On 2013-04-25 11:48, Alain RODRIGUEZ wrote:
>>> 
>>>        Hi, I tried to delete some columns using cql2 as well as thrift on
>>>        C*1.2.2 and instead of being unreachable, deleted columns have a
>>>        null value.
>>> 
>>>        I am using no value in this CF, the only information I use is the
>>>        existence of the column. So when I select all the column for a
>>>        given key
>>>        I have the following returned:
>>> 
>>>           1228#16857 | 1228#16866 | 1228#16875 | 1237#16544 | 1237#16553
>>>        -------------------+----------__--------+------------------+--__-----------------+------------__------
>>>                       null |              null |             null |
>>>                  |
>>> 
>>> 
>>>        This is quite annoying since my app thinks that I have 5 columns
>>>        there
>>>        when I should have 2 only.
>>> 
>>>        I first thought that this was a visible marker of tombstones but
>>>        they
>>>        didn't vanish after a major compaction.
>>> 
>>>        How can I get rid of these null/ghost columns and why does it
>>>        happen ?
>>> 
>>> 
>>>    I do something similar but I don't see null values. Could you please
>>>    post the code where you delete the columns?
>>> 
>>>    Sorin
>>> 
>>> 
>> 
> 
> 


Mime
View raw message