Dear Wiki user, You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for change notification.
The "API07" page has been changed by zznate. The comment on this change is: Added get_indexed_slices and related structs. Changed string to byte in a couple of places. http://wiki.apache.org/cassandra/API07?action=diff&rev1=5&rev2=6 -------------------------------------------------- The semantics of start keys and tokens are slightly different. Keys are start-inclusive; tokens are start-exclusive. Token ranges may also wrap -- that is, the end token may be less than the start one. Thus, a range from keyX to keyX is a one-element range, but a range from tokenY to tokenY is the full ring. ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || - ||`start_key` ||`string` ||n/a ||N ||The first key in the inclusive `KeyRange`. || + ||`start_key` ||`binary` ||n/a ||N ||The first key in the inclusive `KeyRange`. || - ||`end_key` ||`string` ||n/a ||N ||The last key in the inclusive `KeyRange`. || + ||`end_key` ||`binary` ||n/a ||N ||The last key in the inclusive `KeyRange`. || ||`start_token` ||`string` ||n/a ||N ||The first token in the exclusive `KeyRange`. || ||`end_token` ||`string` ||n/a ||N ||The last token in the exclusive `KeyRange`. || ||`count` ||`i32` ||100 ||Y ||The total number of keys to permit in the `KeyRange`. || @@ -141, +141 @@ A `KeySlice` encapsulates a mapping of a key to the slice of columns for it as returned by the get_range_slices operation. Normally, when slicing a single key, a `list<ColumnOrSuperColumn>` of the slice would be returned. When slicing multiple or a range of keys, a `list<KeySlice>` is instead returned so that each slice can be mapped to their key. ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || - ||`key` ||`string` ||n/a ||Y ||The key for the slice. || + ||`key` ||`binary` ||n/a ||Y ||The key for the slice. || ||`columns` ||`list<ColumnOrSuperColumn>` ||n/a ||Y ||The columns in the slice. || + === IndexOperator === + An enum that details the type of operator to use in an `IndexExpression`. Currently, on `EQ` is supported. + ||'''Operator'''||'''Description'''|| + ||`EQ`|| Equality || + ||`GTE`||Greater than or equal to|| + ||`GT`|| Greater than|| + ||`LTE`||Less than or equal to|| + ||`LT`||Less than|| + + + === IndexExpression === + A struct that defines the `IndexOperator` to use against a column for a lookup value. Used only by the `IndexClause` in the `get_indexed_slices` method. + ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || + ||`column_name` ||`binary` ||n/a ||Y ||The column name to against which the operator and value will be applied || + ||`op` ||`IndexOperator` ||n/a ||Y || The `IndexOperator` to use (currently only `EQ` is supported) || + ||`value` ||`binary` ||n/a ||Y ||The value for which to the column || + + === IndexClause === + Defines one or more `IndexExpression`s for `get_indexed_slices` + ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || + ||`expressions` ||`list<IndexExpression>` ||n/a ||Y ||The column name to against which the operator and value will be applied || + ||`start_key` ||`binary` ||n/a ||Y || Start the index query at the specified key - can be set to `''`, i.e., an empty byte array, to start with the first key || + ||`count` ||`integer` ||100 ||Y ||The number of results to which the index query will be constrained || === TokenRange === @@ -223, +246 @@ Replaces `get_range_slice`. Returns a list of slices for the keys within the specified `KeyRange`. Unlike get_key_range, this applies the given predicate to all keys in the range, not just those with undeleted matching data. This method is only allowed when using an order-preserving partitioner. + === get_indexed_slices === + . `list<KeySlice> get_indexed_slices(column_parent, index_clause, predicate, consistency_level)` + + Like `get_range_slices`, returns a list of slices, but uses `IndexClause` instead of `KeyRange`. To use this method, the underlying `ColumnFamily` of the `ColumnParent` must have been configured with a column_metadata attribute, specifying at least the name and index_type attributes. See `CfDef` and `ColumnDef` above for the list of attributes. + === insert === . `insert(key, column_path, value, timestamp, consistency_level)`
