apache/cassandra
GitHub: apache/cassandra
Apache Cassandra 是一个高度可扩展的开源分布式数据库,通过线性扩展和容错机制解决大规模数据存储的高可用与性能问题。
Stars: 9885 | Forks: 3988
image:https://img.shields.io/badge/License-Apache%202.0-blue.svg[许可证, link=https://github.com/apache/cassandra/blob/trunk/LICENSE.txt]
image:https://ci-cassandra.apache.org/job/Cassandra-trunk/badge/icon[构建状态, link=https://ci-cassandra.apache.org/job/Cassandra-trunk/]
image:https://img.shields.io/badge/Official-Downloads-brightgreen[官方下载, link=https://cassandra.apache.org/$$_$$/download.html]
image:https://img.shields.io/docker/pulls/$$_$$/cassandra[Docker 拉取量, link=https://hub.docker.com/r/$$_$$/cassandra]
image:https://img.shields.io/badge/Slack-4A154B?style=flat&logo=slack&logoColor=white[Slack, link=https://infra.apache.org/slack.html]
image:https://img.shields.io/badge/Bluesky-0285FF?logo=bluesky&logoColor=fff&color=0285FF[Bluesky, link=https://bsky.app/profile/cassandra.apache.org]
image:https://img.shields.io/badge/-LinkedIn-blue?style=flat-square&logo=Linkedin&logoColor=white&link=https://www.linkedin.com/company/apache-cassandra/[LinkedIn, link=https://www.linkedin.com/company/apache-cassandra/]
image:https://img.shields.io/badge/YouTube-FF0000?style=flat&logo=youtube&logoColor=white[Youtube, link=https://www.youtube.com/c/PlanetCassandra]
## Apache Cassandra
Apache Cassandra 是一个高度可扩展的分区行存储。行被组织成具有所需主键的表中。
https://cwiki.apache.org/confluence/display/CASSANDRA2/Partitioners[分区]意味着 Cassandra 可以透明地向应用程序跨多台机器分布数据。当从集群中添加或移除机器时,Cassandra 会自动重新进行分区。
https://cwiki.apache.org/confluence/display/CASSANDRA2/DataModel[行存储]意味着与关系型数据库一样,Cassandra 按行和列组织数据。Cassandra Query Language (CQL) 是 SQL 的近亲。
有关更多信息,请访问 https://cassandra.apache.org/[Apache Cassandra 网站]。
问题应报告在 https://issues.apache.org/jira/projects/CASSANDRA/issues/[Cassandra Jira] 上。
## 环境要求
- Java:请在 build.xml 中查看支持的版本(搜索属性 "java.supported")。
- Python:用于 `cqlsh`,请查看 `bin/cqlsh`(搜索函数 "is_supported_version")。
## 新手入门
这份简短的指南将引导您启动并运行一个基本的单节点集群,并演示一些简单的读写操作。有关更完整的指南,请参阅 Apache Cassandra 网站上的 https://cassandra.apache.org/doc/latest/cassandra/getting-started/index.html[新手入门指南]。
首先,我们将解压归档文件:
$ tar -zxvf apache-cassandra-$VERSION.tar.gz
$ cd apache-cassandra-$VERSION
之后我们启动服务器。使用 -f 参数运行启动脚本将使 Cassandra 在前台运行并将日志输出到标准输出;可以使用 ctrl-C 停止它。
$ bin/cassandra -f
现在让我们尝试使用 Cassandra Query Language 读写一些数据:
$ bin/cqlsh
命令行客户端是交互式的,因此如果一切正常,您现在应该正坐在提示符前:
## 已连接到 localhost:9160 的 Test Cluster。
[cqlsh 6.3.0 | Cassandra 7.0-SNAPSHOT | CQL spec 3.4.8 | Native protocol v5]
Use HELP for help.
cqlsh>
正如横幅上所说,您可以使用 'help;' 或 '?' 来查看 CQL 提供的功能,玩够了之后可以输入 'quit;' 或 'exit;' 退出。但让我们尝试一些稍微有趣的事情:
## cqlsh> CREATE KEYSPACE schema1
WITH replication = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
cqlsh> USE schema1;
cqlsh:Schema1> CREATE TABLE users (
user_id varchar PRIMARY KEY,
first varchar,
last varchar,
age int
);
cqlsh:Schema1> INSERT INTO users (user_id, first, last, age)
VALUES ('jsmith', 'John', 'Smith', 42);
cqlsh:Schema1> SELECT * FROM users;
user_id | age | first | last
---------+-----+-------+-------
jsmith | 42 | john | smith
cqlsh:Schema1>
如果您的会话看起来与上面的类似,恭喜您,您的单节点集群已经可以运行了!
有关 CQL 支持的更多命令,请参阅 https://cassandra.apache.org/doc/trunk/cassandra/developing/cql/index.html[CQL 参考手册]。一个合理的理解方式是把它看作:“SQL 减去 joins 和子查询,加上集合。”
想知道接下来该去哪里吗?
* 在 https://s.apache.org/slack-invite[ASF Slack] 上的 #cassandra 频道加入我们并提出问题。
* 发送电子邮件至
user-subscribe@cassandra.apache.org 订阅用户邮件列表。
* 发送电子邮件至
dev-subscribe@cassandra.apache.org 订阅开发者邮件列表。
* 访问 Cassandra 网站上的 https://cassandra.apache.org/community/[社区版块],获取更多关于如何参与的信息。
* 访问 Cassandra 网站上的 https://cassandra.apache.org/doc/latest/development/index.html[开发版块],获取更多关于如何做贡献的信息。
标签:Apache Cassandra, JS文件枚举, 分布式数据库, 域名枚举, 逆向工具, 高扩展性