Take a look at the get_indexed_slices method in the 0.7.0-beta Thrift interface.

-----Original Message-----
From: "Christian Decker" <decker.christ...@gmail.com>
Sent: Thursday, September 30, 2010 4:38am
To: user@cassandra.apache.org
Subject: Re: LongType from user input

I just read through the tickets on Jira, and it appears that indices are
implemented in the 0.7 source tree, but I cannot find any pointer on how to
use them. I'll be trying to create a custom CassandraStorage that loads data
through the indices, anyone else interested?

Regards,
Chris

On Thu, Sep 30, 2010 at 10:56 AM, Aaron Morton <aa...@thelastpickle.com>wrote:

> AFAIK indexes are still in dev. The only example is in the system_tests.py
> in the source tree.
>
> Aaron
>
>
> On 30 Sep 2010, at 20:10, Christian Decker <decker.christ...@gmail.com>
> wrote:
>
> Apparently I have blanked the 0.7 completely out of my memory. I was trying
> to implement application layer indices and ignored the fact that Cassandra
> 0.7 is implementing them by default. I found ticket CASSANDRA-749 about the
> indices and am reading through the code right now, but is there a higher
> level overview and a tutorial on how to get things started with these
> indices (and maybe some inner workings)? This might actually solve all of my
> problems I'm having right now :-)
>
> Regards,
> Chris
>
>
> On Mon, Sep 27, 2010 at 3:45 AM, Aaron Morton < <aa...@thelastpickle.com>
> aa...@thelastpickle.com> wrote:
>
>> The only thing I can think of is that values need to be in the correct
>> byte format when used in indexes in 0.7. Take a look at the types.py module
>> in the pycassa client  <http://github.com/pycassa/pycassa>
>> http://github.com/pycassa/pycassa for an example of which values need to
>> be byte packed.
>>
>> How is your pig function working against cassandra? Is it using the
>> ColumnFamilyRecordReader? . The code in the internal RowIterator for that
>> class has an example calling the cluster to get to the comparators.
>>
>> Aaron
>>
>>
>> On 27 Sep, 2010,at 03:11 AM, Christian Decker <<decker.christ...@gmail.com>
>> decker.christ...@gmail.com> wrote:
>>
>> Hi Aaron,
>>
>> what changes can I expect in the 0.7 release regarding Comparison and
>> Parameters? My problem is mainly that I want to take Strings from stdin (or
>> Pig Scripts for that matter) and convert them in such a way that they are
>> interpreted correctly and converted to the corresponding byte representation
>> to use them in column names and keys.
>>
>> Regards,
>> Chris
>>
>> On Sun, Sep 26, 2010 at 5:20 AM, Aaron Morton < <aa...@thelastpickle.com>
>> aa...@thelastpickle.com> wrote:
>>
>>> Things a changing in v0.7, the row keys are byte arrays.
>>>
>>> Not sure I understand your other concerns.
>>>
>>> Aaron
>>>
>>>
>>> On 25 Sep 2010, at 08:10, Christian Decker <<decker.christ...@gmail.com>
>>> decker.christ...@gmail.com> wrote:
>>>
>>>
>>> Thanks for your quick answer, I think I'll use an affix to sort of cast
>>> the keys, ranges and others from their textual representation (from Pig) to
>>> the desired byte representation, since I just noticed that the keys for the
>>> rows themselfs are always UTF8 interpreted, and since I want to make
>>> key-range as well as slice queries, I'll be better off this way I think.
>>> I'll just add a 'L' for Long and 'U' for UUID (of any kind).
>>>  Or is there a better way that I just can't see from my beginners angle?
>>> :-)thing
>>>
>>> Regards,
>>> Chris
>>>
>>>
>>> On Fri, Sep 24, 2010 at 6:35 PM, Tyler Hobbs < 
>>> <ty...@riptano.com><ty...@riptano.com>
>>> ty...@riptano.com> wrote:
>>>
>>>> Yes, you can use describe_keyspace() and then look through the results.
>>>> It's a little ugly in 0.6, but it works
>>>>
>>>> - Tyler
>>>>
>>>>
>>>>
>>>> On Fri, Sep 24, 2010 at 11:25 AM, Christian Decker 
>>>> <<decker.christ...@gmail.com><decker.christ...@gmail.com>
>>>> decker.christ...@gmail.com> wrote:
>>>>
>>>>> Well I'm writing a loading function for Pig, and as it happens I want
>>>>> to be able to load slices from cassandra which are specified in the pig
>>>>> script (thus the input from stdin) but the ColumnFamily from which to read
>>>>> the data is another parameter and some of the CFs have UTF8, UUID, 
>>>>> TimeUUID
>>>>> or Long types for their keys and columns, so simply converting everything 
>>>>> I
>>>>> get to an 8byte long would break compatibility with the others.
>>>>> Now thinking about it I attacked the whole problem in a weird way,
>>>>> since UUID types won't work either.
>>>>> So let me change my question slightly, is there a way in 0.6 to detect
>>>>> the compareWith type on a running cluster? That way I could convert it to
>>>>> the right type :D
>>>>>
>>>>> Regards,
>>>>> Chris
>>>>>
>>>>>
>>>>> On Fri, Sep 24, 2010 at 6:09 PM, Tyler Hobbs < 
>>>>> <ty...@riptano.com><ty...@riptano.com>
>>>>> ty...@riptano.com> wrote:
>>>>>
>>>>>> I'm not sure I understand why using this with multiple column families
>>>>>> prevents you from converting it.  Could you clarify this?
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Fri, Sep 24, 2010 at 10:56 AM, Christian Decker 
>>>>>> <<decker.christ...@gmail.com><decker.christ...@gmail.com>
>>>>>> decker.christ...@gmail.com> wrote:
>>>>>>
>>>>>>> Hi all,
>>>>>>>
>>>>>>> I'm having quite a dilemma with the CompareWith attribute. The
>>>>>>> Problem is that I have numeric IDs that I'd like to use as row keys, 
>>>>>>> only
>>>>>>> that I also have to offer a possibility to let users input them from std
>>>>>>> input. Since I cannot ask my users to input an 8byte sequence 
>>>>>>> representing
>>>>>>> the ID they'd like, I was about to turn to UTF8, when I remembered that 
>>>>>>> they
>>>>>>> are compared lexicographically, so that 100 actually comes before 2, 
>>>>>>> which
>>>>>>> kills key slices. Also I cannot just code a converter in since this is
>>>>>>> supposed to be a used with multiple columnfamilies, so just converting 
>>>>>>> an
>>>>>>> integer read into 8bytes isn't going to work either.
>>>>>>> Any tricks for this one?
>>>>>>>
>>>>>>> Regards,
>>>>>>> Chris
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>


Reply via email to