ืงืจื ืชืืื ืช Apache ืืฆืืื ืืช ืืฉืืจืืจ ืฉื ื-DBMS ืืืืืืจ Apache Cassandra 4.0, ืืฉืืื ืืืืืงืช ืืขืจืืืช noSQL ืื ืืขื ืืืฆืืจ ืืืกืื ืืืจืื ืืืืื ืืืืชืจ ืฉื ืืืืืืช ืืืืจืืช ืฉื ื ืชืื ืื ืืืืืืกื ืื ืืฆืืจื ืฉื ืืขืจื ืืกืืฆืืืืืื (hash). ืืืืืืจื ืฉื Cassandra 4.0 ื ืืฉืืช ืืืื ื ืืืืฉืื ืืืฆืืจ ืืืืจ ื ืืกืชื ืืชืฉืชืืืช ืฉื ืืืืื, ืืคื, DataStax, Instaclustr, iland ื-Netflix ืขื ืืฉืืืืืช ืฉื ืืืชืจ ื-1000 ืฆืืชืื. ืงืื ืืคืจืืืงื ืืชืื ื-Java ืืืืคืฅ ืชืืช ืจืืฉืืื Apache 2.0.
ื- Cassandra DBMS ืคืืชื ืืืงืืจ ืขื ืืื ืคืืืกืืืง ืืืฉื ืช 2009 ืืืขืืจ ืืืกืืช ืงืจื ืืคืืฆ'ื. ืคืชืจืื ืืช ืชืขืฉืืืชืืื ืืืืืกืกืื ืขื ืงืกื ืืจื ื ืคืจืกื ืืฉืืจืืชื ืืฉืื ืฉื ืืืจืืช ืืื ืืคื, ืืืืื, CERN, ืกืืกืงื, ืืื, HP, Comcast, ืืืกื ื, eBay, Huawei, Netflix, Sony, Rackspace, Reddit ืืืืืืืจ. ืืืืืื, ืชืฉืชืืช ืืืืกืื ืืืืกืกืช Apache Cassandra ืฉื ืคืจืกื ืขื ืืื ืืคื ืืืืืช ืืืชืจ ืืืืฃ ืืฉืืืืืช, ืืืื 160 ืืืฃ ืฆืืชืื ืืืืกืื ืฉื ืืืชืจ ื-100 ืคืื-ืืืื ืฉื ื ืชืื ืื. Huawei ืืฉืชืืฉืช ืืืืชืจ ื-300 ืืฉืืืืืช Apache Cassandra, ืืืืืืื 30 ืืืฃ ืฆืืชืื, ืื ืืคืืืงืก ืืฉืชืืฉืช ืืืืชืจ ื-100 ืืฉืืืืืช, ืืืืกืื 10 ืืืฃ ืฆืืชืื ืืืขืืืื ืืืชืจ ืืืจืืืืื ืืงืฉืืช ืืืื.
ื- Cassandra DBMS ืืฉืื ืืขืจืืช Hash ืืืคืฆืช ืืืื ืฉื Dynamo, ืืืกืคืงืช ืืืจืืืืช ืืืขื ืืื ืืืจืืช ืืื ืฉื ืคื ืื ืชืื ืื ืืื. Cassandra ืืฉืชืืฉืช ืืืืื ืืืกืื ื ืชืื ืื ืืืืืกืก ืขื ืืฉืคืืช ืขืืืืื (ColumnFamily), ืืฉืื ื ืืืขืจืืืช ืืื memcachedb, ืืืืืกื ืืช ื ืชืื ืื ืจืง ืืฉืจืฉืจืช ืืคืชื/ืขืจื, ืืืืืืช ืืืจืื ืืืกืื ืฉื hashes ืืืื ืจืืืช ืฉื ืงืื ืื. ืืื ืืคืฉื ืืช ืืืื ืืจืืงืฆืื ืขื ืืกื ืื ืชืื ืื, ื ืชืืืช ืฉืคืช ืืฉืืืืชืืช ืืืืื ืืช CQL (Cassandra Query Language), ืฉืืืืืจื ืืช SQL, ืื ืืืคืืชืช ืืคืื ืงืฆืืื ืืืืช. ืืชืืื ืืช ืืืืืืช ืชืืืื ืืืจืืื ืฉืืืช ืืืฉืคืืืช ืขืืืืืช, ืืืฆืืจืช ืืื ืืงืกืื ืืืืฆืขืืช ืืืืืื "CREATE INDEX".
ื-DBMS ืืืคืฉืจ ืื ืืืฆืืจ ืืืกืื ืขืืื ืืคื ื ืืฉืืื: ื ืชืื ืื ืืืืฆืืื ืืืกื ืื ืชืื ืื ืืฉืืืคืืื ืืืืืืืืช ืืืกืคืจ ืฆืืชืื ืฉื ืจืฉืช ืืืืืจืช, ืฉืืืืืื ืืืฉืชืจืข ืขื ืคื ื ืืจืืื ื ืชืื ืื ืฉืื ืื. ืืืฉืจ ืฆืืืช ื ืืฉื, ืืคืื ืงืฆืืืช ืฉืื ื ืงืืืืช ืชืื ืืื ืชื ืืขื ืขื ืืื ืฆืืชืื ืืืจืื. ืืืกืคืช ืฆืืชืื ืืืฉืื ืืืฉืืื ืืขืืืื ืืจืกืช ืืงืกื ืืจื ื ืขืฉืื ืชืื ืืื ืชื ืืขื, ืืื ืืชืขืจืืืช ืืื ืืช ื ืืกืคืช ืื ืืืืจื ืืืืฉ ืฉื ืฆืืชืื ืืืจืื. ืื ืืื ืืชืงื ืื ืขื ืชืืืื ื-CQL ืืืื ืื ืขืืืจ Python, Java (JDBC/DBAPI2), Ruby, PHP, C++ ื-JavaScript (Node.js).
ืืืืืฉืื ืขืืงืจืืื:
- ืืืฆืืขืื ืืฉืืคืจืื ืืืืจืืืืช. ืืืขืืืืช ืฉื ืืืืืคื ื ืชืื ืื ืืคืืจืื SSTable (Sorted Strings Table) ืืื ืฆืืชืื ืฉืืคืจื. ืคืจืืืืงืื ืืืืืขืืช ืฉื Internode ืขืืจ ืืืคืืืืืืฆืื. ืืืืจืืช ืืขืืจืช ืืจืื ืื ืชืื ืื ืืื ืฆืืชืื ืืืื ืขื ืคื 5 (ืืขืืงืจ ืขืงื ืืฉืืืืฉ ืืืื ืืงืช Zero Copy ืืืขืืจืช SSTables ืฉืืืื), ืืชืคืืงืช ืคืขืืืืช ืืงืจืืื ืืืืชืืื ืืืื ื-25%. ืชืืืื ืืืชืืืฉืฉืืช ืืืฆืืืจ ืขืืจ ืืืคืืืืืืฆืื. ืืฉืืืืช ืขืงื ืืคืกืงืช ืืืกืืฃ ืืืฉืคื ืืฆืืืฆืืืช ืืืกืคืจ ืืืคืืืช ืฉื ืืืช.
- ื ืืกืคื ืชืืืื ืืืืื ืืืงืืจืช ืืืืคืฉืจ ืื ืืขืงืื ืืืจ ืคืขืืืืช ืืืืืช ืืฉืชืืฉืื ืืื ืฉืืืืชืืช CQL ืฉืืืฆืขื.
- ื ืืกืคื ืืช ืืืืืืช ืืฉืืืจ ืขื ืืืื ืืงืฉืืช ืืื ืืจื ืืื, ืืืืคืฉืจ ืื ืืฉืืืจ ืืช ืื ืชืขืืืจืช ืืืงืฉืืช ืืืชืืืื. ืื ืืืื, ืืคืงืืืืช "nodetool enablefullquerylog|disablefullquerylog|resetfullquerylog" ืืืฆืขืืช, ืืืื ืืฉืืจืืช fqltool ืืกืืคืง ืื ืืชืื ืืืื. ื ืืชื ืืช ืคืงืืืืช ืืืืจืช ืืืืื ืืฆืืจื ืงืจืื (Dump), ืืฉืืืืช ืคืจืืกืืช ืคืขืืืืช (Compare) ืืืืฆืืข ืืืืฉ (Replay) ืืฆืืจื ื ืืชืื ืืฉืืืืจ ืืชื ืืื ืืืืืืื ืืขืืืก ืืืืืชื.
- ื ืืกืคื ืชืืืื ืืืืืืืช ืืืจืืืืืืืช ืฉืื ืืฉืงืคืืช ื ืชืื ืื ืืืืืืกื ืื ื-SSTables, ืืื ืคืื ืืืืข ืืจื ื-API (ืืืื ืืืฆืืขืื, ืืืืข ืืืืจืืช, ืชืืื ืืืืื, ืืืืข ืขื ืืงืืืืช ืืืืืจืื ืืื').
- ืืืขืืืืช ืฉื ืืืกืื ื ืชืื ืื ืืืืก ืฉืืคืจื, ืชืื ืืคืืชืช ืฆืจืืืช ืฉืื ืืืกืง ืืฉืืคืืจ ืืืฆืืขื ืืงืจืืื.
- ื ืชืื ืื ืืงืฉืืจืื ืืืจืื ืืืคืชืืืช ืฉื ืืืขืจืืช (system.*) ืืืืงืืื ืืขืช ืืกืคืจืืื ืืจืืฉืื ื ืืืจืืจืช ืืืื ืืืงืื ืืืืืช ืืืคืฆืื ืขื ืคื ื ืื ืกืคืจืืืช ืื ืชืื ืื, ืื ืฉืืืคืฉืจ ืืฆืืืช ืืืืฉืืจ ืคืขืื ืื ืืื ืืืืืกืงืื ืื ืืกืคืื ื ืืฉื.
- ื ืืกืคื ืชืืืื ื ืืกืืื ืืช ืขืืืจ ืฉืืคืื ืืืืฃ ืืงืืืจืื ืืื. ืืขืชืงืื ืืื ืืื ืืื ื ืืืืกื ืื ืืช ืื ืื ืชืื ืื ืืืฉืชืืฉืื ืืฉืืืืจ ืืฆืืืจ ืืื ืืืืืช ืขืงืืืื ืขื ืืขืชืงืื ืืืืื. ืื ืืื ืื ืงืืื ืืืืฉืืื ืืืคืืืืืืฆืื ืฉื ืืชืืื ืฉืื ืื ืืชืืฆืขืืช ืืชืืื ืืขืชืงืื ืืื ืืื ืขื ืฉืงืืืฆื ืืกืคืงืช ืฉื ืืขืชืงืื ืืืืื ืืืื ื.
- ื ืืกืคื ืชืืืื ื ืืกืืื ืืช ืขืืืจ Java 11.
- ื ืืกืคื ืืคืฉืจืืช ื ืืกืืื ืืช ืืืฉืืืืช ืื ืขืฆื ืืจืงื. ืืืืืื, ืืคืขืืช ืืืคืฉืจืืช ืืืฉืืื ืื 3 ืฆืืชืื ืฉืื ืฉื ื ืืขืชืงืื ืืืื ืืืื ืืืืฉื, ืชืืจืื ืืขืืืื ืฉื ืืขืืชืง ืืืขืืคืฉ ืืืืฆืขืืช ืคืขืืืช ืืขืชืงื ืืืช ืืืื ืฉื ืืขืชืง ืื ืืืื.
- ื ืืกืคื ืคืื ืงืฆืืืช ืืืฉืืช currentTimestamp, currentDate, currentTime ื-currentTimeUUID.
- ื ืืกืคื ืชืืืื ืืคืขืืืืช ืืจืืชืืืืืช ืืฉืืืืชืืช CQL.
- ืืกืืคืงืช ืืืืืืช ืืืฆืข ืคืขืืืืช ืืจืืชืืืืืช ืืื ื ืชืื ืื ืืกืืืื "ืืืชืืช ืืื"/"ืชืืจืื" ื"ืืฉื".
- ื ืืกืฃ ืืฆื ืืชืฆืืื ืืงืืืื ืฉื ืืจืื ื ืชืื ืื ืื ืืจืฉืื ืืฉืืืืจ (ืชืืงืื nodetool โืชืฆืืื ืืงืืืื) ืืืืืืช ืืืืืง ืืช ืชืงืื ืืช ืื ืชืื ืื ืืืฉืืืืจืื (ืชืืงืื nodetool โvalidate).
- ืืฉืืืืชืืช SELECT ืืฉ ืืขืช ืืช ืืืืืืช ืืขืื ืจืืืื Map ื-Set.
- ื ืืกืคื ืชืืืื ืืืงืืื ืืฉืื ืืื ืืื ืืจืืฉืื ื ืฉื ืชืฆืืืืช ืฉืืชืืืฉื (cassandra.yaml:concurrent_materialized_view_builders).
- ืืคืงืืื "nodetool cfstats" ืืืกืืคื ืชืืืื ืืืืื ืืคื ืืืืื ืืกืืืืื ืืืืืืช ืืกืคืจ ืืฉืืจืืช ืืืืฆืืืช.
- ืืืืจืืช ืืกืืคืงืืช ืืื ืืืืืื ืืช ืืืืืืจ ืฉื ืืืฉืชืืฉ ืืืจืืื ื ืชืื ืื ืืกืืืืื ืืืื.
- ื ืืกืคื ืืืืืืช ืืืืืื ืืช ืืืื ืื ืกืืืืืช (ืืืืืช ืืงืฆื) ืฉื ืคืขืืืืช ืืฆืืจืช ืืกืืืงื ืฉื ืชืืื ืช ืืฆื.
- cqlsh ื-cqlshlib ืชืืืืื ืืขืช ื-Python 3 (Python 2.7 ืขืืืื ื ืชืื).
- ืืชืืืื ืืคืืืคืืจืืช Windows ืืืคืกืงื. ืืื ืืืคืขืื ืืช Cassandra ืขื Windows, ืืืืืฅ ืืืฉืชืืฉ ืืกืืืืืช ืืื ืืงืก ืฉื ืืฆืจื ืขื ืืกืืก ืชืช-ืืขืจืืช WSL2 (Windows Subsystem for Linux 2) ืื ืืขืจืืืช ืืืจืืืืืืืฆืื.
ืืงืืจ: OpenNet.ru