Dear Wiki user, You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for change notification.
The "API" page has been changed by TylerHobbs. http://wiki.apache.org/cassandra/API?action=diff&rev1=21&rev2=22 -------------------------------------------------- ||`EACH_QUORUM` ||Returns the record with the most recent timestamp once a majority of replicas within each datacenter have replied. || ||`ALL` ||Will query all replicas and return the record with the most recent timestamp once all replicas have replied. Any unresponsive replicas will fail the operation. || + '''Note: '''Different language toolkits may have their own Consistency Level defaults as well. To ensure the desired Consistency Level, you should always explicitly set the Consistency Level. === ColumnOrSuperColumn === @@ -142, +143 @@ === KeySlice === - 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` ||`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 for configuring a `ColumnFamily`, but the other operators may be used in conjunction with and `EQ` operator on other non-indexed columns. - ||'''Operator'''||'''Description'''|| + ||'''Operator''' ||'''Description''' || - ||`EQ`|| Equality || + ||`EQ` ||Equality || - ||`GTE`||Greater than or equal to|| + ||`GTE` ||Greater than or equal to || - ||`GT`|| Greater than|| + ||`GT` ||Greater than || - ||`LTE`||Less than or equal to|| + ||`LTE` ||Less than or equal to || - ||`LT`||Less than|| + ||`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 for direct queries, but other `IndexExpression` structs may be created and passed to `IndexClause` || + ||`op` ||`IndexOperator` ||n/a ||Y ||The `IndexOperator` to use. Currently only `EQ` is supported for direct queries, but other `IndexExpression` structs may be created and passed to `IndexClause` || ||`value` ||`binary` ||n/a ||Y ||The value for which to the column || + + + === IndexClause === Defines one or more `IndexExpression`s for `get_indexed_slices`. An `IndexExpression` containing an `EQ` `IndexOperator` must be present. ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || ||`expressions` ||`list<IndexExpression>` ||n/a ||Y ||The list of `IndexExpression` objects which must contain one `EQ` `IndexOperator` among the expressions || - ||`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 || + ||`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 === - A structure representing structural information about the cluster provided by the `describe` utility methods detailed below. ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || ||`start_token` ||`string` ||n/a ||Y ||The first token in the `TokenRange`. || @@ -186, +194 @@ === Mutation === - A `Mutation` encapsulates either a column to insert, or a deletion to execute for a key. Like `ColumnOrSuperColumn`, the two properties are mutually exclusive - you may only set one on a Mutation. ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || ||`column_or_supercolumn` ||`ColumnOrSuperColumn` ||n/a ||N ||The column to insert in to the key. || @@ -196, +203 @@ === Deletion === - A `Deletion` encapsulates an operation that will delete all columns matching the specified `timestamp` and `predicate`. If `super_column` is specified, the `Deletion` will operate on columns within the `SuperColumn` - otherwise it will operate on columns in the top-level of the key. ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || ||`timestamp` ||`i64` ||n/a ||Y ||The timestamp of the column(s) to be deleted. || @@ -207, +213 @@ === AuthenticationRequest === - A structure that encapsulates a request for the connection to be authenticated. The authentication credentials are arbitrary - this structure simply provides a mapping of credential name to credential value. ||'''Attribute''' ||'''Type''' ||'''Default''' ||'''Required''' ||'''Description''' || ||`credentials` ||`map<string, string>` ||n/a ||Y ||A map of named credentials. || @@ -248, +253 @@ === get_range_slices === . `list<KeySlice> get_range_slices(column_parent, predicate, range, consistency_level)` - 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. + 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. Note that when using RandomPartitioner, keys are stored in the order of their MD5 hash, making it impossible to get a meaningful range of keys between two endpoints. === 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. Note: the `IndexClause` must contain one `IndexExpression` with an `EQ` operator on a configured index column. Other `IndexExpression` structs may be added to the `IndexClause` for non-indexed columns to further refine the results of the `EQ` expression. + 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. Note: the `IndexClause` must contain one `IndexExpression` with an `EQ` operator on a configured index column. Other `IndexExpression` structs may be added to the `IndexClause` for non-indexed columns to further refine the results of the `EQ` expression. === insert === . `insert(key, column_path, column, consistency_level)` @@ -273, +278 @@ Remove data from the row specified by `key` at the granularity specified by `column_path`, and the given `timestamp`. Note that all the values in `column_path` besides `column_path.column_family` are truly optional: you can remove the entire row by just specifying the !ColumnFamily, or you can remove a !SuperColumn or a single Column by specifying those levels too. Note that the `timestamp` is needed, so that if the commands are replayed in a different order on different nodes, the same result is produced. === truncate === - . `truncate(string column_family)` Removes all the rows from the given column family. @@ -284, +288 @@ Gets the name of the cluster. === describe_keyspace === - . `KsDef describe_keyspace(string keyspace)` Gets information about the specified keyspace. === describe_keyspaces === - . `list<KsDef> describe_keyspaces()` Gets a list of all the keyspaces configured for the cluster. (Equivalent to calling describe_keyspace(k) for k in keyspaces.) @@ -316, +318 @@ Gets the Thrift API version. === system_add_column_family === - . `string system_add_column_family(CFDef cf_def)` Adds a column family. This method will throw an exception if a column family with the same name is already associated with the keyspace. Returns the new schema version ID. === system_drop_column_family === - . `string system_drop_column_family(ColumnFamily column_family)` Drops a column family. Creates a snapshot and then submits a 'graveyard' compaction during which the abandoned files will be deleted. Returns the new schema version ID. === system_add_keyspace === - . `string system_add_keyspace(KSDef ks_def)` Creates a new keyspace and any column families defined with it. Callers '''are not required''' to first create an empty keyspace and then create column families for it. Returns the new schema version ID. === system_drop_keyspace === - . `string system_drop_keyspace(string keyspace)` Drops a keyspace. Creates a snapshot and then submits a 'graveyard' compaction during which the abandoned files will be deleted. Returns the new schema version ID.
