轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
scylladb/cassandra-stress
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

cassandra-stress Docker 镜像下载 - 轩辕镜像

cassandra-stress 镜像详细信息和使用指南

cassandra-stress 镜像标签列表和版本信息

cassandra-stress 镜像拉取命令和加速下载

cassandra-stress 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

cassandra-stress
scylladb/cassandra-stress

cassandra-stress 镜像详细信息

cassandra-stress 镜像标签列表

cassandra-stress 镜像使用说明

cassandra-stress 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

cassandra-stress是用于对ScyllaDB和Cassandra集群进行基准测试和负载测试的工具,支持测试自定义CQL表和查询以基准测试数据模型。
1 收藏0 次下载activescylladb镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

cassandra-stress 镜像详细说明

cassandra-stress 使用指南

cassandra-stress 配置说明

cassandra-stress 官方文档

Cassandra Stress

cassandra-stress工具用于对ScyllaDB和Cassandra集群进行基准测试和负载测试。该工具还支持测试自定义CQL表和查询,允许用户基准测试其数据模型。本文档重点介绍用户模式,因为这允许测试实际的schema。

安装

本文档撰写时,cassandra-stress的最新版本为3.17.0。请在GitHub发布页面查看最新版本。

ScyllaDB提供了多种安装cassandra-stress的方法,选择最适合您环境的方式:

  1. 使用Docker镜像(官方推荐方式)
  2. 下载预编译二进制文件
  3. 从源码构建
  4. 从源码构建Docker镜像

使用Docker镜像(官方推荐方式)

使用cassandra-stress的推荐和官方方式是通过ScyllaDB提供的Docker镜像,这确保了一致且即用型的环境。

您可以从Docker Hub拉取最新的Docker镜像:

docker pull scylladb/cassandra-stress:latest

latest标签始终与GitHub上的版本标签(如3.17.0)对应。要查看所有可用标签,请访问:

Docker Hub Cassandra-Stress标签

下载后,可直接运行cassandra-stress:

docker run --rm scylladb/cassandra-stress <命令>

如需使用特定版本,将latest替换为所需版本标签:

docker pull scylladb/cassandra-stress:3.17.0
docker run --rm scylladb/cassandra-stress:3.17.0 <命令>

性能优化

在Docker容器中运行时,可能会因容器化开销导致性能损失。为缓解此问题,可使用--network=host选项让容器共享主机网络栈,提升性能:

docker run --rm --network=host --security-opt seccomp=unconfined scylladb/cassandra-stress <命令>

--security-opt seccomp=unconfined允许容器内不受限制的系统调用(主要是ioctl、iopl和clone)。

其他安装方法

下载预编译二进制文件

可直接从GitHub发布页面下载预编译二进制文件。

前提条件:确保系统已安装Java Runtime Environment (JRE) 11或更高版本。

使用curl下载:

curl -LO [***]
curl -LO [***]

使用wget下载:

wget [***]
wget [***]

使用sha256sum验证下载:

sha256sum -c cassandra-stress-3.17.0-bin.tar.gz.sha256

验证成功将显示:

cassandra-stress-3.17.0-bin.tar.gz: OK

从源码构建

从源码构建cassandra-stress需确保安装以下依赖:

  • Java JDK:11或更高版本
  • Apache Ant:构建工具

步骤如下:

  1. 克隆仓库:

    git clone --depth=1 [***]
    
  2. 检出特定版本(3.17.0):

    cd cassandra-stress
    git checkout tags/3.17.0
    
  3. 使用Apache Ant构建二进制文件:

    ant -Drelease=true artifacts
    

编译后的二进制文件位于build目录。

从源码构建Docker镜像

如需Docker化构建,按以下步骤操作:

  1. 克隆仓库:

    git clone --depth=1 [***]
    
  2. 构建Docker镜像:

    cd cassandra-stress
    docker build -t cassandra-stress --compress .
    

    如需使用自定义驱动jar,将jar放入仓库根目录并运行:

    docker build -t cassandra-stress --build-args BUILD_OPTS=-Dlib.override.com.scylladb.scylla-driver-core=/app/<jar文件名>.jar --compress .
    

构建完成后,可本地运行镜像:

docker run --rm cassandra-stress <命令>

使用方法

示例

tools/bin/cassandra-stress write n=1000000 -node 192.168.1.101 # 向指定主机插入100万条数据
tools/bin/cassandra-stress read n=10000000 -node 192.168.1.101 -o read # 100万次读取
tools/bin/cassandra-stress write -node 192.168.1.101,192.168.1.102 n=10000000 # 向两个节点分布插入1000万条数据
tools/bin/cassandra-stress help -pop # 打印人口分布选项的帮助信息

容器中运行时,注意命令行需加引号:

docker run scylladb/cassandra-stress 'cassandra-stress write n=100000 -node 1.2.3.4'

交互式运行容器:

docker run --rm -d --name c-s -it --entrypoint=/bin/bash -i scylladb/cassandra-stress:latest
docker exec -it c-s /bin/bash

命令类型

  • 标准数据的只写、只读和混合工作负载
  • 计数器列的只写和只读工作负载
  • 用户配置的工作负载,对自定义schema运行自定义查询
  • 语法为cassandra-stress <命令> [选项]。如需了解特定命令或选项的更多信息,运行cassandra-stress help

主要命令

  • read:多并发读取 - 集群必须先通过写测试填充数据
  • write:对集群的多并发写入
  • mixed:任意基本命令的交错,具有可配置的比例和分布 - 集群必须先通过写测试填充数据
  • counter_write:计数器的多并发更新
  • counter_read:计数器的多并发读取 - 集群必须先通过counter_write测试填充数据
  • user:用户提供查询的交错,具有可配置的比例和分布。详见<[***]>
  • help:打印命令或选项的帮助信息
  • print:检查分布定义的输出
  • legacy:遗留支持模式

主要选项

  • -pop:人口分布和分区内访问顺序
  • -insert:与批处理和拆分分区更新的各种方法相关的插入特定选项
  • -col:列详细信息,如大小和计数分布、数据生成器、名称、比较器以及是否使用超级列
  • -rate:线程数、速率限制或自动模式(默认自动)
  • -mode:Thrift或CQL及选项
  • -errors:压力测试期间遇到错误时的处理方式
  • -sample:指定用于测量延迟的样本数
  • -schema:复制设置、压缩、压缩策略等
  • -node:要连接的节点
  • -log:进度日志位置和间隔
  • -transport:自定义传输工厂
  • -port:连接Cassandra节点的端口
  • -sendto:指定要发送命令的压力服务器
  • -graph:图表记录指标
  • -tokenrange:令牌范围设置

用户模式

用户模式允许测试自定义schema。从长远来看,这比构建应用后才发现schema无法扩展更节省时间。

配置文件

用户模式需要YAML格式的配置文件。可指定多个YAML文件,此时ops参数中的操作需引用为specname.opname。

配置文件标识符:

specname: staff_activities

测试的keyspace:

keyspace: staff

keyspace的CQL定义(如已存在则可选):

keyspace_definition: |
CREATE KEYSPACE stresscql WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 3};

要测试的表:

table: staff_activities

表的CQL定义(如已存在则可选):

table_definition: |
CREATE TABLE staff_activities (
name text,
when timeuuid,
what text,
PRIMARY KEY(name, when, what)
)

上述表中生成列的可选元信息。min和max仅适用于text和blob类型。distribution字段表示该列在行中的总体唯一分布:

columnspec:
- name: name
  size: uniform(5..10) # 员工姓名长度在5-10字符之间
  population: uniform(1..10) # 从10个可能的员工中选择
- name: when
  cluster: uniform(20..500) # 员工有20到500个事件
- name: what
  size: normal(10..100,50)

支持的分布类型:

指数分布,范围[min..max]:

EXP(min..max)

极值(Weibull)分布,范围[min..max]:

EXTREME(min..max,shape)

高斯/正态分布,mean=(min+max)/2,stdev=(mean-min)/stdvrng:

GAUSSIAN(min..max,stdvrng)

高斯/正态分布,显式定义mean和stdev:

GAUSSIAN(min..max,mean,stdev)

均匀分布,范围[min, max]:

UNIFORM(min..max)

固定分布,始终返回相同值:

FIXED(val)

如前缀为~,则分布反转

所有列的默认值:size: uniform(4..8),population: uniform(1..100B),cluster: fixed(1)

插入分布:

insert:
# 每批插入的分区数
partitions: fixed(1)
# 每个分区更新的行数
select: fixed(1)/500
# 插入使用的批处理类型:UNLOGGED或LOGGED
batchtype: UNLOGGED

当前所有插入均在批处理中完成。

测试期间使用的读取语句:

queries:
   events:
      cql: select *  from staff_activities where name = ?
      fields: samerow
   latest_event:
      cql: select * from staff_activities where name = ?  LIMIT 1
      fields: samerow

运行用户模式测试:

cassandra-stress user profile=./example.yaml duration=1m "ops(insert=1,latest_event=1,events=1)" truncate=once

这将创建schema,然后运行测试1分钟,插入、latest_event查询和events查询的数量相等。此外,测试前会截断表一次。

完整示例可在yaml中找到。

使用多个yaml文件运行用户模式测试:

cassandra-stress user profile=./example.yaml,./example2.yaml duration=1m "ops(ex1.insert=1,ex1.latest_event=1,ex2.insert=2)" truncate=once

这将运行example.yaml和example2.yaml中指定的操作。example.yaml和example2.yaml可引用同一张表,但需确保表定义相同(数据生成规范可不同)。

图表生成

每次压力测试运行均可生成图表。

!image

创建新图表:

cassandra-stress user profile=./stress-example.yaml "ops(insert=1,latest_event=1,events=1)" -graph file=graph.html title="Awesome graph"

向现有图表添加新运行,指向现有文件并添加修订名称:

cassandra-stress user profile=./stress-example.yaml duration=1m "ops(insert=1,latest_event=1,events=1)" -graph file=graph.html title="Awesome graph" revision="Second run"
查看更多 cassandra-stress 相关镜像 →

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.