Apache Cassandra
Copyright 2009-2014 The Apache Software Foundation

This product includes software developed by The Apache Software
Foundation (http://www.apache.org/).

Some alternate data structures provided by high-scale-lib from
http://sourceforge.net/projects/high-scale-lib/.
Written by Cliff Click and released as Public Domain.

Some alternate data structures provided by concurrentlinkedhashmap
from http://code.google.com/p/concurrentlinkedhashmap/.
Copyright 2009 Benjamin Manes

Alternative collection types provided by google-collections from
http://code.google.com/p/google-collections/.
Copyright (C) 2007 Google Inc.

JSON (de)serialization provided by jackson (http://jackson.codehaus.org).
Copyright (C) 2010 Tatu Saloranta and others.

Alternative JSON (de)serialization by json-simple from
(http://code.google.com/p/json-simple).
Copyright (C) 2009 Fang Yidong and Chris Nokleberg

This product includes the Jetty HTTP server
(http://jetty.codehaus.org/jetty/).
Copyright 1995-2006 Mort Bay Consulting Pty Ltd

YAML support provided by snakeyaml (http://code.google.com/p/snakeyaml/).
Copyright (c) 2008-2010 Andrey Somov

Compression support provided by snappy-java (http://code.google.com/p/snappy-java/)
Written by Taro L. Saito.

Streaming compression support provided by ning-compress
(https://github.com/ning/compress)
Copyright 2009-2010 Ning, Inc.

Alternative map implementation provided by SnapTree
(https://github.com/nbronson/snaptree)
Written by Nathan G. Bronson et al.

CQL Native transport uses Netty
(https://netty.io/)
Copyright (C) 2011 The Netty Project

LZ4 compression support provided by lz4-java (http://github.com/jpountz/lz4-java)
Written by Adrien Grand.
Contains bindings to the C LZ4 implementation (http://code.google.com/p/lz4/)
Copyright (C) 2011-2012, Yann Collet.

Alternative Disruptor backed thrift server from https://github.com/xedin/disruptor_thrift_server
Written by Pavel Yaskevich.

LMAX Disruptor
(http://lmax-exchange.github.io/disruptor/)
Copyright 2011 LMAX Ltd.
