在cassandra的协议中,没有具体规定查询结果的行数限制。但是对于大的数据集,依然有结果分页的必要。过大的结果集会爆掉服务端或者客户端的内存。

传统的分页方法采用了一点trick,采用了token函数

SELECT * FROM images LIMIT 100;
SELECT * FROM images WHERE token(image_id) > token([Last image ID received]) LIMIT 100;

这种方式会造成一点编程上的麻烦,一般开发中会重新再封装一次分页的方法。在cassandra2.0的java api中,添加了对于分页的支持,如下所示:

Statement stmt = new SimpleStatement("select * FROM raw_weather_data WHERE wsid= '725474:99999' AND year = 2005 AND month = 6");
stmt.setFetchSize(24);
ResultSet rs = session.execute(stmt);
Iterator<Row> iter = rs.iterator();
while (!rs.isFullyFetched()) {
rs.fetchMoreResults();
Row row = iter.next();
System.out.println(row);
}

参考资料

  1. Things You Should Be Doing When Using Cassandra Drivers
  2. Improvements on the driver side with Cassandra 2.0

cassandra分页的更多相关文章

  1. cassandra高级操作之分页的java实现(有项目具体需求)

    接着上篇博客,我们来谈谈java操作cassandra分页,需要注意的是这个分页与我们平时所做的页面分页是不同的,具体有啥不同,大家耐着性子往下看. 上篇博客讲到了cassandra的分页,相信大家会 ...

  2. spring-data-cassanra的简单使用

    之前写了JAVA操作cassandra驱动包,现在来看看spring-data对cassandra的支持.这里是spring-data-cassandra的官方文档:http://docs.sprin ...

  3. Cassandra 有限分页策略

    瀑布式分页 如果你的应用只需要瀑布式的分页,那么,Cassandra可以很好的支持,不过记得要指定好排序顺序. CLUSTERING ORDER BY (add_time DESC); 常见的分页,跳 ...

  4. cassandra高级操作之索引、排序以及分页

    本次就给大家讲讲cassandra的高级操作:索引.排序和分页:处于性能的考虑,cassandra对这些支持都比较简单,所以我们不能希望cassandra完全适用于我们的逻辑,而是应该将我们的逻辑设计 ...

  5. cassandra 3.x官方文档(4)---分区器

    写在前面 cassandra3.x官方文档的非官方翻译.翻译内容水平全依赖本人英文水平和对cassandra的理解.所以强烈建议阅读英文版cassandra 3.x 官方文档.此文档一半是翻译,一半是 ...

  6. 两行代码玩转Spring Data排序和分页

    一:唠嗑 在实际项目中对Spring Data的各种使用相当多,简单的增删改查Spring Data提供了现成的方法,一些复杂的,我们可以在接口方法写And,Not等关键字来搞定,想写原生SQL,CQ ...

  7. Cassandra docker 使用记录

    环境介绍: docker 安装 cassandra 3.11.1 , 然后进入docker 的终端,输入 > cqlsh , 即可使用Cassandra了,详细介绍如下: 查看表空间descri ...

  8. NoSql Cassandra

    我们为什么要使用NOSQL非关系数据库? 随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速.而传统的关系数据库在应付web2.0网站,特别 ...

  9. spark + cassandra +postgres +codis 大数据方案

    1.环境: 1.1.cassandra 集群: 用于日志数据存储 1.2.spark集群: 用户后期的实时计算及批处理 1.3.codis 集群: 用于缓存一些基本数据如IP归属地,IP经纬度等,当日 ...

随机推荐

  1. pandas之数据选择

    pandas中有三种索引方法:.loc,.iloc和[],注意:.ix的用法在0.20.0中已经不建议使用了 import pandas as pd import numpy as np In [5] ...

  2. AXIS 1.4 自定义序列化/反序列化类

    axis1.4的CalendarDeserializer 使用的时区是GMT,导致日期显示不准确 private static SimpleDateFormat zulu = new SimpleDa ...

  3. 小D课堂 - 新版本微服务springcloud+Docker教程_3-03CAP原理、常见面试题

    笔记 3.分布式系统CAP原理常见面试题和注册中心选择         简介:讲解CAP原则在面试中回答和注册中心选择 C A 满足的情况下,P不能满足的原因:             数据同步(C) ...

  4. 性能测试的 Check List (不断更新中)

    1. 开发人员是否提交了测试申请?2. 测试对象是否已经明确?3. 测试范围是否已经明确?4. 本次不被测试的范围是否已经明确?5. 测试目标是否已经明确?6. 何时开始性能测试?7. 何时终止一轮性 ...

  5. pyqt5-实时刷新页面(QApplication.processEvents())

    对于执行很耗时的程序来说,由于PyQt需要等待程序执行完毕才能进行下一步,这个过程表现在界面上就是卡顿,而如果需要执行这个耗时程序时不断的刷新界面.那么就可以使用QApplication.proces ...

  6. maven的基本使用

    安装: 1.下载maven http://maven.apache.org/ 2.将maven包解压并放置到安装目录 3.添加环境变量M2_HOME,path当中添加;%M2_HOME%\bin; 4 ...

  7. WPF 非UI线程更新UI界面的各种方法小结

    转载:https://www.cnblogs.com/bdbw2012/articles/3777594.html 我们知道只有UI线程才能更新UI界面,其他线程访问UI控件被认为是非法的.但是我们在 ...

  8. Laravel6.0 使用 Jwt-auth 实现多用户接口认证

    后台管理员认证 (admins 表) 首先创建数据库和表 (admins),在 routes/api.php 中,写上如下路由并创建对应控制器和方法. Route::namespace('Api')- ...

  9. SQLSERVER去除某一列的重复值并显示所有数据\DISTINCT去重\ISNULL()求SUM()\NOT EXISTS的使用

    进入正题,准备我们的测试数据 1.我们要筛选的数据为去除 GX 列的重复项 并将所有数据展示出来,如图所示: ' 2.这种情况下我们是不可以使用DISTINCT来去重的,我们可以来尝试一下: 首先,单 ...

  10. 【学习笔记】APP页面,随机选择一个选项

    如下页面,一个测评功能,30个题目,每题的答案选项一样: 要实现每题自动随机选择一个答案 方法一:定义一个5个选项的列表,循环30次,然后使用random.shuffle打乱列表顺序,根据列表元素定位 ...