美文网首页
一款低成本大容量的Redis替代数据库

一款低成本大容量的Redis替代数据库

作者: 开源指北 | 来源:发表于2022-04-26 23:48 被阅读0次

哈喽,大家好,我是指北君
说到开源分布式键值数据库,大部分程序员们第一个想到的是 Redis 。而 Redis 部署在内存上,成本高——特别是大容量的 Redis 的集群部署成本。

那么有没有一个可替代 Redis 的更廉价的部署方案呢?
答案是:Kvrocks,其部署在 SSD ,兼容 Redis 协议。
下面给小伙伴儿们介绍下Kvrocks。

Kvrocks 简介

Kvrocks 是一个分布式键值 NoSQL 数据库,使用 RocksDB 作为存储引擎,兼容 Redis 协议。

与 Redis 相比,Kvrocks 旨在降低内存成本并增加功能。复制和存储的设计灵感来自rocksplicator和blackwidow。
目前线上使用的公司包含: 美图、携程、百度、雪球以及白山云等。

Kvrocks 具有以下主要功能:

  • Redis协议,用户可以使用redis客户端访问kvrocks
  • 命名空间,类似于 redis db,但每个命名空间使用令牌
  • 复制,异步复制使用像 MySQL 这样的 binlog
  • 高可用,支持redis sentinel 在主从失败时进行故障转移
  • 集群模式,集中管理但兼容Redis集群客户端访问

Kvrocks 支持以下平台:

  • centos 6/7
  • ubuntu
  • macosx

Kvrocks 快速使用

要求

  • g++(c++11 需要,版本 >= 4.8)
  • autoconf automake libtool snappy

构建和使用

  1. 安装 snappy
sudo yum install -y epel-release && sudo yum install -y git gcc gcc-c++ make snappy snappy-devel autoconf automake libtool which gtest gtest-devel

sudo apt update
sudo apt-get install gcc g++ make libsnappy-dev autoconf automake libtool

brew install autoconf automake libtool snappy googletest
  1. 构建
$ git clone --recursive https://github.com/kvrockslabs/kvrocks.git
$ cd kvrocks
$make -j4
  1. 运行 kvrocks
$ ./src/kvrocks -c kvrocks.conf

性能表现

硬件

  • CPU:48 核 Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
  • 内存:32 GiB
  • NET:英特尔公司 I350 千兆网络连接
  • 磁盘:2TB NVMe Intel SSD DC P4600

Benchmark Client:多线程redis-benchmark(unstable branch)

  1. 命令的 QPS

kvrocks:worker = 16,基准测试:8 个线程/512 个 conns/128 个有效负载

延迟:99.9% < 10ms

  1. 不同 payload 上的 QPS

kvrocks:worker = 16,基准测试:8 个线程/512 个 conns

延迟:99.9% < 10ms

  1. 不同 worker 上的 QPS

kvrocks:worker = 16,基准测试:8 个线程/512 个 conns/128 个有效负载

延迟:99.9% < 10ms

指北君有话说

Kvrocks 实现了一种兼容 Redis Cluster 客户端的中心化集群管理方案,既节省了硬件费用开销,又能通过中心化的方式让集群管理更简单更轻量。

开源指北,立志做最好的开源分享平台,分享有趣实用的开源项目。
欢迎加入交流群,你可以摸鱼、划水、吐槽、咨询。
还有简历模板、各种技术面试资料等100G的资源等着你领取哦。
公众号回复888马上加入,快来一起来聊一聊吧!

以上就是本次推荐的全部内容,我是指北君,感谢各位的观看。

相关文章

  • 一款低成本大容量的Redis替代数据库

    哈喽,大家好,我是指北君。说到开源分布式键值数据库,大部分程序员们第一个想到的是 Redis 。而 Redis 部...

  • Redis 主从复制

    定义 单个Redis数据库很容易出现单点故障和容量瓶颈问题,Redis支持将主数据库(Master)上的数据复制多...

  • Redis介绍、安装及基本操作

    Redis概述 1.1、Redis介绍 redis是一款基于内存的缓存系统或者数据库。支持持久化。 redis支持...

  • redis-入门

    redis简介 redis是一款开源的高性能的非关系型数据库(NoSQL, Not only sql) redis...

  • 【Redis学习笔记】01 了解 Redis 数据库

    1. Redis 数据库介绍 Redis 是一款由 Salvatore Sanfilippo 使用 ANSI C ...

  • Redis入门

    Redis入门 概念:redis是一款高性能的nosql(非关系型)的数据库。 关系型数据库:mysql、orac...

  • 初识Redis(一):Redis简介及数据类型

    Redis简介 Redis是一款开源免费、高性能的非关系型数据库 非关系型数据库(Not Only SQL): 简...

  • 接触 Redis

    概念 redis 是一款高性能的 NoSQL 系列的非关系型数据库。 redis 命令操作 Redis 教程 re...

  • Redis

    Redis 关系型和非关系数据库比较: redis数据结构 redis列表数据结构 案例 概念: redis是一款...

  • Redis的过期键删除策略和数据逐出策略

    Redis作为一个高性能的内存NoSQL数据库,其容量受到最大内存限制的限制。 在实际生产环境中使用Redis时,...

网友评论

      本文标题:一款低成本大容量的Redis替代数据库

      本文链接:https://www.haomeiwen.com/subject/wkhkyrtx.html