cassandra读性能优化:
1、禁用read repair
每次读操作,无论读请求设置读一个节点还是多个节点,cassandra返回给客户端最新的数据后,都会后台对比所有副本的数据并对差异数据进行修复。read repair操作会占用服务器CPU和IO资源,影响读性能。禁用read repair后,cassandra仍可以通过其他方式进行数据一致性检查和修复。

2、使用Leveled compaction,并设定multithreaded_compaction,提高compaction的速度
Leveled compaction能有效减少读操作访问的SSTable数量,有效提升读操作性能。
对于10TB的数据,Leveled compaction最多需要访问7个SSTable。
Leveled compaction代价是会产生更多IO影响服务器性能。
查询性能能提升4-5倍

3、使用压缩
使用压缩,能在内存中存放更多的数据,也能在相同大小SSTable中存放更多数据,使得查询能更快定位数据位置。
查询性能能提升25%--35%

4、调整KeyCache和RowCache
KeyCache:在内存中保存记录的位置,当查询命中Key Cache时,能有效减少一次查询。
RowCache:在内存中保存记录的所有数据,当查询命中Row Cache时,能有效减少2次查询。

当少量数据被频繁访问或查询需要访问所有列时,使用Row Cache能有效提升查询性能,但使用RowCache会影响系统内存。
建议增大KeyCache的内存,减少和避免使用Row Cache。

5、设置JVM Heap的大小

抄自:https://www.cnblogs.com/marysam/archive/2011/12/01/2270494.html

Cassandra基础3的更多相关文章

  1. Cassandra基础2

    ========================================================= gossip协议1.点对点(peer to perr)的网络通信协议,节点间地位相同 ...

  2. Cassandra基础

    Apache Cassandra特性 Apache Cassandra由Facebook基于Amazon的Dynamo及其在Google的Bigtable上的数据模型设计开发的面相列的数据库,实现没有 ...

  3. 使用DataStax Java驱动程序的最佳实践

    引言 如果您想开始建立自己的基于Cassandra的Java程序,欢迎! 也许您已经参加过我们精彩的DataStax Academy课程或开发者大会,又或者仔细阅读过Cassandra Java驱动的 ...

  4. 技术基础 | 监测Apache Cassandra的简明方式——MCAC

    点击这里在GitHub上访问我们,以便深入了解DataStax的开源项目--Apache Cassandra指标收集器(Metric Collector for Apache Cassandra, o ...

  5. 技术基础 | Cassandra RBAC助你打击“虚拟海盗”,让他们对数据“战利品”望而不得

    现如今,我们称虚拟世界里的海盗们为"黑客",他们所追寻的战利品就是在你数据库某处的数据.   而我们能够保证你的数据安全的工具之一,就是"Cassandra基于角色的访问 ...

  6. 技术基础 | Apache Cassandra 4.0基准测试

    Apache Cassandra 4.0已经发布了Beta版,这是第一个支持JDK 11及更高JDK版本的Cassandra版本.   时延对于Apache Cassandra用户来说是个显而易见的关 ...

  7. 技术基础 | 在Apache Cassandra中改变VNodes数量的影响

    Apache Cassandra中num_tokens的默认值在4.0版本中将会有变化!这看起来好像只是在CHANGES.txt文件中做了个小小的改动,但实际上这个改动将会对集群的日常运维有着深远的影 ...

  8. sstable, bigtable,leveldb,cassandra,hbase的lsm基础

    先看懂文献1和2 1. 先了解sstable.SSTable: Sorted String Table [2] [10] WiscKey:  类似myisam, key value分离, 根据ssd优 ...

  9. 技术基础 | 改进版的Apache Cassandra客户端请求路由

    最近我们在客户端的驱动程序中引入了一些变更,这些变更会影响传入的请求在Apache Cassandra集群内的分发方式.   新的默认负载均衡算法即将随驱动程序推出,这些算法将有助于缩短长尾延迟,并提 ...

随机推荐

  1. macOS Sierra 如何打开任何来源

    1.打开应用程序-实用工具-终端: 2.复制以下代码(红色处注意是两个-)到终端中,回车(输入电脑密码): sudo spctl --master-disable 3.打开应用程序-系统偏好设置-安全 ...

  2. 关于js的对象原型继承(二)

    本章讨论使用new一个构造函数来创建一个对象. 前期知识点说明: 1.prototype是函数的一个属性,每个函数都有一个prototype属性.这个属性是一个指针,指向一个对象.它是显示修改对象的原 ...

  3. Android system :灯光系统_HAL_lights

    一.android灯光系统框架: Java: frameworks/base/services/core/java/com/android/server/lights/LightsService.ja ...

  4. SQL-36 创建一个actor_name表,将actor表中的所有first_name以及last_name导入改表。

    题目描述               对于如下表actor,其对应的数据为: actor_id first_name last_name last_update 1 PENELOPE GUINESS ...

  5. DevExpress v18.1新版亮点——Report & Dashboard Server

    用户界面套包DevExpress v18.1日前正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExpress Report Server v18.1 的新功能,快来下载试用新 ...

  6. jdbc中Class.forName(driverName)的作用

    上次面试别人问我jdbc的过程: 我是这样回答的: Class.forName加载驱动 DriverManager.connect(url,username, password)获取连接对象 conn ...

  7. 通过powerdesiner导出sql,通过sql转mysql为oracle

    1.导出sql文件 Database-->generate database-->确定 执行完就可以看到生成的语句了 2.将mysql的PDM转换为oracle File-->rev ...

  8. shell脚本实例-shell 分析系统瓶颈脚本

    #!/usr/bin/bash PS3="Your choice is: [10 for quit]" #检查是那个系统 os_check() { if [ -e /etc/red ...

  9. mysql检查-优化-分析

    Mysql分析.检查.优化表 l 分析表 对表进行分析(分析关键字的分布, 分析存储MyISAM等表中键的分布) MySQL中使用ANALYZE TABLE语句来分析表,该语句的基本语法如下: mys ...

  10. HDU 6124 17多校7 Euler theorem(简单思维题)

    Problem Description HazelFan is given two positive integers a,b, and he wants to calculate amodb. Bu ...