Scylla
什么是Scylla?
Scylla是与Apache Cassandra和Amazon DynamoDB API兼容的实时大数据数据库。 Scylla采用了一种共享的方法,可以增加吞吐量和存储能力,以实现刻板级的性能改善并降低硬件成本。
建立先决条件
Scylla对其构建环境相当挑剔,需要C ++ 23编译器的最新版本以及许多要构建的库。文档hacking.md包含有关构建和开发Scylla的详细信息,但是为了在任何构建机器上快速构建Scylla构建,Scylla提供了冷冻工具链,这是一个预先配置的Docker映像,其中包括所有必需的编译器,库,库和构建工具的最新版本。使用冷冻工具链可让您避免更改构建计算机中的任何内容以满足Scylla的要求 – 您只需要满足冷冻工具链的先决条件(主要是可用的是Docker或Podman)即可。
建筑Scylla
用冷冻工具链dbuild建造Scylla很容易:
$ git submodule update --init --force --recursive $ ./tools/toolchain/dbuild ./configure.py $ ./tools/toolchain/dbuild ninja build/release/scylla
有关更多信息,请参阅:
- 开发人员文档以获取有关建筑Scylla的更多信息。
- 构建有关如何构建Scylla二进制文件,测试和软件包的文档。
- Docker Image构建文档,以获取有关如何构建Docker图像的信息。
运行Scylla
要启动Scylla服务器,请运行:
$ ./tools/toolchain/dbuild ./build/release/scylla --workdir tmp --smp 1 --developer-mode 1
这将启动一个Scylla节点,其中一个分配给它的CPU核心以及存储在TMP目录中的数据文件。需要 – 开发器模式来禁用Scylla在启动时性能,以确保配置机器以获得最大的性能(与开发工作站无关)。请注意,如果您使用冷冻工具链构建scylla,则需要使用scylla。
有关更多运行选项,请运行:
$ ./tools/toolchain/dbuild ./build/release/scylla --help
测试
请参阅test.py手册。
Scylla API和兼容性
默认情况下,Scylla与Apache Cassandra及其API -CQL兼容。还支持Amazon DynamoDB™的API,需要启用和配置才能使用。有关如何在Scylla中启用DynamoDB™API的更多信息,以及此功能的当前兼容性以及Scylla特定的扩展,请参见交流发电机并开始使用交流发电机。
文档
文档可以在这里找到。 Seastar文档可以在这里找到。用户文档可以在此处找到。
训练
可以在Scylla大学找到培训材料和在线课程。这些课程是免费的,自节奏的,包括动手实例。它们涵盖了各种主题,包括Scylla数据建模,管理,体系结构,基本NOSQL概念,使用驱动程序进行应用程序开发,Scylla设置,故障转移,压实,多名化,以及Scylla与第三方应用程序的集成方式。
为Scylla做出贡献
如果要报告错误或提交拉动请求或补丁,请阅读贡献指南。
如果您是从事Scylla的开发人员,请阅读开发人员指南。
接触
- 社区论坛和Slack频道供用户讨论scylladb的配置,管理和操作。
- 开发人员邮寄列表是针对有兴趣遵循scylladb开发的开发人员和人们讨论技术主题的。
