scylladb / scylladb 构建和使用帮助

486 阅读3分钟

Scylla

SlackTwitter

什么是Scylla?

Scylla是实时大数据数据库,与Apache Cassandra和Amazon DynamoDB的API兼容。Scylla采用无共享的方法,增加吞吐量和存储容量,以实现数量级的性能改进并降低硬件成本。

欲了解更多信息,请参见ScyllaDB网站

构建先决条件

Scylla对其构建环境相当挑剔,需要非常新版本的C++20编译器和许多库来构建。文档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服务器,请运行。

$ ./tools/toolchain/dbuild ./build/release/scylla --workdir tmp --smp 1 --developer-mode 1

这将启动一个Scylla节点,分配给它一个CPU核心,数据文件存储在tmp 目录中。需要--developer-mode ,以禁用Scylla在启动时进行的各种检查,以确保机器被配置为最大的性能(与开发工作站无关)。请注意,如果你用冻结的工具链构建Scylla,你需要用dbuild 来运行它。

关于更多的运行选项,请运行:

$ ./tools/toolchain/dbuild ./build/release/scylla --help

测试

参见test.py手册

Scylla的API和兼容性

默认情况下,Scylla与Apache Cassandra及其API--CQL和Thrift兼容。还有对Amazon DynamoDB™的API的支持,需要启用和配置才能使用。关于如何在Scylla中启用DynamoDB™ API的更多信息,以及该功能和Scylla特定扩展的当前兼容性,请参阅AlternatorGetting started with Alternator

文档

文档可以在这里找到。Seastar文档可以在这里找到。用户文档可以在这里找到。

培训

培训材料和在线课程可以在Scylla大学找到。这些课程是免费的,自定进度的,包括实践案例。它们涵盖各种主题,包括Scylla数据建模、管理、架构、基本的NoSQL概念、使用驱动程序进行应用开发、Scylla设置、故障转移、压缩、多数据中心以及Scylla如何与第三方应用程序集成。

对Scylla的贡献

如果您想报告一个错误或提交一个拉动请求或一个补丁,请阅读贡献指南

如果您是一个在Scylla上工作的开发者,请阅读开发者指南

联系我们