Schema and Ring Topology — Cassandra Driver 3.13.0 documentation (original) (raw)
Schemas¶
class cassandra.metadata.
KeyspaceMetadata
[source]¶
A representation of the schema for a single keyspace.
name
= None¶
The string name of the keyspace.
durable_writes
= True¶
A boolean indicating whether durable writes are enabled for this keyspace or not.
replication_strategy
= None¶
A ReplicationStrategy
subclass object.
tables
= None¶
A map from table names to instances of TableMetadata.
indexes
= None¶
A dict mapping index names to IndexMetadata instances.
user_types
= None¶
A map from user-defined type names to instances of UserType.
New in version 2.1.0.
functions
= None¶
A map from user-defined function signatures to instances of Function.
New in version 2.6.0.
aggregates
= None¶
A map from user-defined aggregate signatures to instances of Aggregate.
New in version 2.6.0.
views
= None¶
A dict mapping view names to MaterializedViewMetadata instances.
Returns a CQL query string that can be used to recreate the entire keyspace, including user-defined types and tables.
Returns a CQL query string that can be used to recreate just this keyspace, not including user-defined types and tables.
class cassandra.metadata.
UserType
[source]¶
A user defined type, as created by CREATE TYPE
statements.
User-defined types were introduced in Cassandra 2.1.
New in version 2.1.0.
keyspace
= None¶
The string name of the keyspace in which this type is defined.
name
= None¶
The name of this type.
field_names
= None¶
An ordered list of the names for each field in this user-defined type.
field_types
= None¶
An ordered list of the types for each field in this user-defined type.
as_cql_query
(formatted=False)[source]¶
Returns a CQL query that can be used to recreate this type. If formatted is set to True
, extra whitespace will be added to make the query more readable.
class cassandra.metadata.
Function
[source]¶
A user defined function, as created by CREATE FUNCTION
statements.
User-defined functions were introduced in Cassandra 2.2
New in version 2.6.0.
keyspace
= None¶
The string name of the keyspace in which this function is defined
name
= None¶
The name of this function
argument_types
= None¶
An ordered list of the types for each argument to the function
argument_names
= None¶
An ordered list of the names of each argument to the function
return_type
= None¶
Return type of the function
language
= None¶
Language of the function body
body
= None¶
Function body string
called_on_null_input
= None¶
Flag indicating whether this function should be called for rows with null values (convenience function to avoid handling nulls explicitly if the result will just be null)
as_cql_query
(formatted=False)[source]¶
Returns a CQL query that can be used to recreate this function. If formatted is set to True
, extra whitespace will be added to make the query more readable.
class cassandra.metadata.
Aggregate
[source]¶
A user defined aggregate function, as created by CREATE AGGREGATE
statements.
Aggregate functions were introduced in Cassandra 2.2
New in version 2.6.0.
keyspace
= None¶
The string name of the keyspace in which this aggregate is defined
name
= None¶
The name of this aggregate
argument_types
= None¶
An ordered list of the types for each argument to the aggregate
state_func
= None¶
Name of a state function
state_type
= None¶
Type of the aggregate state
final_func
= None¶
Name of a final function
initial_condition
= None¶
Initial condition of the aggregate
return_type
= None¶
Return type of the aggregate
as_cql_query
(formatted=False)[source]¶
Returns a CQL query that can be used to recreate this aggregate. If formatted is set to True
, extra whitespace will be added to make the query more readable.
class cassandra.metadata.
TableMetadata
[source]¶
A representation of the schema for a single table.
primary_key
¶
A list of ColumnMetadata representing the components of the primary key for this table.
is_cql_compatible
¶
A boolean indicating if this table can be represented as CQL in export
extensions
= None¶
Metadata describing configuration for table extensions
keyspace_name
= None¶
String name of this Table’s keyspace
name
= None¶
The string name of the table.
partition_key
= None¶
A list of ColumnMetadata instances representing the columns in the partition key for this table. This will always hold at least one column.
clustering_key
= None¶
A list of ColumnMetadata instances representing the columns in the clustering key for this table. These are all of theprimary_key columns that are not in the partition_key.
Note that a table may have no clustering keys, in which case this will be an empty list.
columns
= None¶
A dict mapping column names to ColumnMetadata instances.
indexes
= None¶
A dict mapping index names to IndexMetadata instances.
options
= None¶
A dict mapping table option names to their specific settings for this table.
triggers
= None¶
A dict mapping trigger names to TriggerMetadata
instances.
views
= None¶
A dict mapping view names to MaterializedViewMetadata instances.
Returns a string of CQL queries that can be used to recreate this table along with all indexes on it. The returned string is formatted to be human readable.
as_cql_query
(formatted=False)[source]¶
Returns a CQL query that can be used to recreate this table (index creations are not included). If formatted is set to True
, extra whitespace will be added to make the query human readable.
class cassandra.metadata.
ColumnMetadata
[source]¶
A representation of a single column in a table.
table
= None¶
The TableMetadata this column belongs to.
name
= None¶
The string name of this column.
cql_type
= None¶
The CQL type for the column.
is_static
= False¶
If this column is static (available in Cassandra 2.1+), this will be True
, otherwise False
.
is_reversed
= False¶
If this column is reversed (DESC) as in clustering order
class cassandra.metadata.
IndexMetadata
[source]¶
A representation of a secondary index on a column.
keyspace_name
= None¶
A string name of the keyspace.
table_name
= None¶
A string name of the table this index is on.
name
= None¶
A string name for the index.
kind
= None¶
A string representing the kind of index (COMPOSITE, CUSTOM,…).
index_options
= {}¶
A dict of index options.
Returns a CQL query that can be used to recreate this index.
Returns a CQL query string that can be used to recreate this index.
class cassandra.metadata.
MaterializedViewMetadata
[source]¶
A representation of a materialized view on a table
extensions
= None¶
Metadata describing configuration for table extensions
keyspace_name
= None¶
A string name of the view.
name
= None¶
A string name of the view.
base_table_name
= None¶
A string name of the base table for this view.
partition_key
= None¶
A list of ColumnMetadata instances representing the columns in the partition key for this view. This will always hold at least one column.
clustering_key
= None¶
A list of ColumnMetadata instances representing the columns in the clustering key for this view.
Note that a table may have no clustering keys, in which case this will be an empty list.
columns
= None¶
A dict mapping column names to ColumnMetadata instances.
include_all_columns
= None¶
A flag indicating whether the view was created AS SELECT *
where_clause
= None¶
String WHERE clause for the view select statement. From server metadata
options
= None¶
A dict mapping table option names to their specific settings for this view.
as_cql_query
(formatted=False)[source]¶
Returns a CQL query that can be used to recreate this function. If formatted is set to True
, extra whitespace will be added to make the query more readable.
Tokens and Ring Topology¶
class cassandra.metadata.
TokenMap
[source]¶
Information about the layout of the ring.
token_class
= None¶
A subclass of Token, depending on what partitioner the cluster uses.
ring
= None¶
An ordered list of Token instances in the ring.
token_to_host_owner
= None¶
A map of Token objects to the Host that owns that token.
tokens_to_hosts_by_ks
= None¶
A map of keyspace names to a nested map of Token objects to sets of Host objects.
get_replicas
(keyspace, token)[source]¶
Get a set of Host instances representing all of the replica nodes for a given Token.
class cassandra.metadata.
Token
[source]¶
Abstract class representing a token.
class cassandra.metadata.
Murmur3Token
(token)[source]¶
A token for Murmur3Partitioner
.
token is an int or string representing the token.
class cassandra.metadata.
MD5Token
(token)[source]¶
A token for RandomPartitioner
.
class cassandra.metadata.
BytesToken
(token)[source]¶
A token for ByteOrderedPartitioner
.
classmethod from_string
(token_string)[source]¶
token_string should be the string representation from the server.
cassandra.metadata.
ReplicationStrategy
¶
alias of _ReplicationStrategy
class cassandra.metadata.
SimpleStrategy
(options_map)[source]¶
replication_factor
= None¶
The replication factor for this keyspace.
Returns a string version of these replication options which are suitable for use in a CREATE KEYSPACE statement.
class cassandra.metadata.
NetworkTopologyStrategy
(dc_replication_factors)[source]¶
dc_replication_factors
= None¶
A map of datacenter names to the replication factor for that DC.
Returns a string version of these replication options which are suitable for use in a CREATE KEYSPACE statement.
class cassandra.metadata.
LocalStrategy
(options_map)[source]¶
Returns a string version of these replication options which are suitable for use in a CREATE KEYSPACE statement.