<commit_before>=Cassandra
The Apache Cassandra Project develops a highly scalable second-generation distributed database, bringing together Dynamo's fully distributed design and Bigtable's ColumnFamily-based data model.

=CQL
Cassandra originally went with a Thrift RPC-based API as a way to provide a common denominator that more idiomatic clients could build upon independently.
However, this worked poorly in practice: raw Thrift is too low-level to use productively, and keeping pace with new API methods to support (for example) indexes in 0.7 or distributed counters in 0.8 is too much for many maintainers to keep pace with.

CQL, the Cassandra Query Language, addresses this by pushing all implementation details to the server; all the client has to know for any operation is how to interpret "resultset" objects.
So adding a feature like counters just requires teaching the CQL parser to understand "column + N" notation; no client-side changes are necessary.

(source:  http://www.datastax.com/dev/blog/what’s-new-in-cassandra-0-8-part-1-cql-the-cassandra-query-language)

=Quick Start

==Establishing a connection

  # Defaults to the system keyspace
  db = CassandraCQL::Database.new('127.0.0.1:9160')
  <commit_msg>README updates<commit_after>=Cassandra
The Apache Cassandra Project (http://cassandra.apache.org) develops a highly scalable second-generation distributed database, bringing together Dynamo's fully distributed design and Bigtable's ColumnFamily-based data model.

=CQL
Cassandra originally went with a Thrift RPC-based API as a way to provide a common denominator that more idiomatic clients could build upon independently.
However, this worked poorly in practice: raw Thrift is too low-level to use productively, and keeping pace with new API methods to support (for example) indexes in 0.7 or distributed counters in 0.8 is too much for many maintainers.

CQL, the Cassandra Query Language, addresses this by pushing all implementation details to the server; all the client has to know for any operation is how to interpret "resultset" objects.
So adding a feature like counters just requires teaching the CQL parser to understand "column + N" notation; no client-side changes are necessary.

(CQL Specification: https://github.com/apache/cassandra/blob/trunk/doc/cql/CQL.textile)

=Quick Start

==Establishing a connection

  # Defaults to the system keyspace
  db = CassandraCQL::Database.new('127.0.0.1:9160')
  
{'fraction_non_alphanumeric': 0.05971370143149284, 'fraction_numerical': 0.012678936605316974, 'mean_word_length': 4.951338199513382, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 1, 'lorem ipsum': 0, 'www.': 1, 'xml': 0}, 'pii_count': 2, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '44286', 'n_tokens_mistral': 663, 'n_tokens_neox': 622, 'n_words': 313}