Database Reference
In-Depth Information
11. Architecture
There are many components of Cassandra's architecture. This chapter provides an
overview of some of the major pieces.
Meta Keyspaces
There are a few meta keyspaces in Cassandra. The System Keyspace is the most
common one and the one that exists on all systems. There are special keyspaces
within Cassandra that are used to store metadata about the cluster, users and au-
thentication, and the other keyspaces. In the MySQL world, this would be the
mysql database. In Mongo, this would be the admin database. In Oracle, this
would be the SYSTEM tablespace. An example of another meta keyspace is the
CFS (Cassandra File System) keyspace that is used (among other things) as an ab-
straction layer between a Hadoop connector and Cassandra so that Cassandra can
properly provide Hadoop with the information it needs in the format it needs to
process the data correctly.
The following section focuses on the aforementioned System Keyspace.
System Keyspace
Regardless of the placement strategy used in the cluster or ring as a whole, the Sys-
tem Keyspace is stored using LocalStrategy. The reason for this is that it contains
the local node's view of the ring and therefore should not be replicated elsewhere.
Cassandra stores a few things in the System Keyspace. There are a few Colum-
nFamilys in the System Keyspace that keep track of information that is specific
to the local node. The node-specific types of information are things like Loca-
tionInfo (or where the node sits in the ring in comparison to other nodes). The
Hints ColumnFamily, stored in the System Keyspace, keeps track of Hints that
have been created about writes for this node or received Hints from other nodes.
This is one of the ways that data from around the ring stays in sync.
Information about all keyspaces is stored in the System Keyspace. The In-
dexInfo ColumnFamily keeps track of the indexes that have been created on the
cluster. Index information stored in the IndexInfo ColumnFamily is for all in-
dexes stored in all keyspaces. The Migrations ColumnFamily stores all informa-
tion about schema migrations that take place. Schema migrations are when you
change the schema in some way. These typically happen around ColumnFamily
Search WWH ::




Custom Search