You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: Readme.markdown
+44-34
Original file line number
Diff line number
Diff line change
@@ -1,19 +1,23 @@
1
1
Astyanax
2
2
========
3
-
Astyanax is a high level Java client for [Apache Cassandra](http://cassandra.apache.org).
4
-
Apache Cassandra is a highly available column oriented database.
5
3
6
-
Astyanax is currently in use at [Netflix](http://movies.netflix.com), but is being [retired](https://medium.com/netflix-techblog/astyanax-retiring-an-old-friend-6cca1de9ac4).
7
-
Astyanax is no longer under active development, but may receive dependency updates to ease migration away from Astyanax.
4
+
Deprecation
5
+
-----------
6
+
Astyanax has been [retired](https://medium.com/netflix-techblog/astyanax-retiring-an-old-friend-6cca1de9ac4) and is no
7
+
longer under active development but may receive dependency updates to ease migration away from Astyanax.
8
8
9
9
In place of Astyanax consider using [DataStax Java Driver for Apache Cassandra](https://github.com/datastax/java-driver)
10
-
which is under active development and encapsulates a lot of lessons learned from Astyanax. The DataStax driver supports
11
-
only CQL protocol because Apache Cassandra 4.x drops the Thrift protocol. Switching to the DataStax driver requires
12
-
using CQL queries, but you'll still be able to access legacy column families via the CQL "with compact storage" option.
10
+
which is under active development and encapsulates a lot of lessons learned from Astyanax. Since the DataStax driver
11
+
supports only CQL protocol (because Apache Cassandra 4.x will drop the Thrift protocol), you’ll have to update all of
12
+
your Thrift-based queries to CQL queries.
13
+
14
+
You have the option to continue accessing legacy column families via the CQL “with compact storage” option. However in
15
+
most (all?) use cases the legacy compact storage option actually takes more space than the new default CQL storage
16
+
option, so you’re really better off also migrating your data to the new default storage option.
13
17
14
18
This version of Astyanax shades its dependency on cassandra-all so you can optionally select any version
15
19
of cassandra-unit you like for unit/integration testing with different versions of Cassandra. When upgrading to this
16
-
verion of Astyanax you may need to:
20
+
version of Astyanax you may need to:
17
21
* Explicitly add any cassandra-all transitive dependencies you previously silently depended on via Astayanax transitives.
18
22
* If you were using internal features of Astyanax that (unintentionally) publicly exposed cassandra-all classes,
19
23
you must either:
@@ -22,6 +26,38 @@ you must either:
22
26
* Option C: Switch your objects from "org.apache.cassandra" to the shaded "com.netflix.astyanax.shaded.org.apache.cassandra"
23
27
package Astyanax now depends on.
24
28
29
+
Overview
30
+
--------
31
+
Astyanax is a high level Java client for [Apache Cassandra](http://cassandra.apache.org).
32
+
Apache Cassandra is a highly available column oriented database.
33
+
34
+
Features
35
+
--------
36
+
A quick overview can be found at the [Netflix Tech Blog](http://techblog.netflix.com/2012/01/announcing-astyanax.html). Some features provided by this client:
37
+
38
+
* High level, simple object oriented interface to Cassandra.
39
+
* Fail-over behavior on the client side.
40
+
* Connection pool abstraction. Implementation of a round robin connection pool.
41
+
* Monitoring abstraction to get event notification from the connection pool.
42
+
* Complete encapsulation of the underlying Thrift API and structs.
43
+
* Automatic retry of downed hosts.
44
+
* Automatic discovery of additional hosts in the cluster.
45
+
* Suspension of hosts for a short period of time after several timeouts.
46
+
* Annotations to simplify use of composite columns.
47
+
48
+
49
+
Documentation
50
+
-------------
51
+
Detailed documentation of Astyanax's features and usage can be found on the [wiki](https://github.com/Netflix/astyanax/wiki) and the [getting started guide](https://github.com/Netflix/astyanax/wiki/Getting-Started).
52
+
53
+
IntelliJ: currently (June 2018) IntelliJ has a bug which renders an "unfound" error for packages relocated via another
54
+
module in the same project (e.g. shaded classes from astyanax-cassandra-all-shaded).
55
+
This affects *only* the Astyanax project itself within IntelliJ; Astyanax still builds perfectly fine via Gradle.
56
+
Astyanax users are unaffected. For more details see:
|com.netflix.astyanax|astyanax-recipes|Optional implementations of some common patterns. Use at your own risk; some of these are popular but not well-suite for Cassandra for many use cases (looking at you, AllRowsReader).|
52
88
53
-
Features
54
-
--------
55
-
A quick overview can be found at the [Netflix Tech Blog](http://techblog.netflix.com/2012/01/announcing-astyanax.html). Some features provided by this client:
56
-
57
-
* High level, simple object oriented interface to Cassandra.
58
-
* Fail-over behavior on the client side.
59
-
* Connection pool abstraction. Implementation of a round robin connection pool.
60
-
* Monitoring abstraction to get event notification from the connection pool.
61
-
* Complete encapsulation of the underlying Thrift API and structs.
62
-
* Automatic retry of downed hosts.
63
-
* Automatic discovery of additional hosts in the cluster.
64
-
* Suspension of hosts for a short period of time after several timeouts.
65
-
* Annotations to simplify use of composite columns.
66
-
67
-
68
-
Documentation
69
-
-------------
70
-
Detailed documentation of Astyanax's features and usage can be found on the [wiki](https://github.com/Netflix/astyanax/wiki) and the [getting started guide](https://github.com/Netflix/astyanax/wiki/Getting-Started).
71
-
72
-
IntelliJ: currently (June 2018) IntelliJ has a bug which renders an "unfound" error for packages relocated via another
73
-
module in the same project (e.g. shaded classes from astyanax-cassandra-all-shaded).
74
-
This affects *only* the Astyanax project itself within IntelliJ; Astyanax still builds perfectly fine via Gradle.
75
-
Astyanax users are unaffected. For more details see:
0 commit comments