1.什么是二级索引? 我们前面已经介绍过Cassandra之中有各种Key,比如Primary Key, Cluster Key 等等。如果您对这部分概念并不熟悉,可以参考之前的文章:[Cassandra教程] (四)使用Key的正确姿势  对于Cassandra来说,一级索引就是Primary Key. 因为查询的时候,可以直接根据Key算出token然后直接获取对应的记录。 而二级索引,作为辅助索引就是为了找到一级索引。然后再通过一级索引找到真正的值 原文链接:http://www.flyml.net/2016…

2016年09月16日 0条评论 19866点热度 6人点赞 阅读全文

搜索,一个数据库无法绕过的话题。之前我们已经知道,在Cassandra之中并没类似MySQL的like查询。 要想完成一致的实现like查询,估计就要上Spark进行全表扫描,将like操作放到Spark App来实现。 如果想实现一个不一样(而不是不同)的like查询,可以使用Lucene进行搜索。有两种现成的实现方案: DSE(付费企业版)集成的solr 开源免费的Lucene插件   我们主要使用的是第二个lucene插件。 项目地址:https://github.com/Stratio/cassa…

2016年09月16日 0条评论 12565点热度 2人点赞 阅读全文

1、为什么需要这个? 在向Cassandra中插入一些数据之后,往往想知道插入了多少条记录,这个时候可以通过select count(*) from test_table来进行查询。 当数据比较少的时候,该cql语句能正确得到查询结果,但是当插入的记录条数比较多的时候,非常容易导致超时。在命令行中有下面的提示 OperationTimedOut: errors={}, last_host=127.0.0.1 原文链接: http://http://www.flyml.net/2016/09/13/cassandra…

2016年09月13日 2条评论 32489点热度 1人点赞 阅读全文

今天,也就是2016年9月12日,博客的域名刚刚满月,博客的创建再过2-3天也满月了。 在这短短的一个月之中,已经原创了不少(大约31篇)文章。 有一些是很水的文章,有一些应该说还是有一些干货在里面。总结了自己之前的一些工具、类库等的使用经验与踩坑经历。主要想写一些前沿技术相关的文章,比如机器学习、数据挖掘以及大数据处理。 一开始写的Spark,后来也是根据公司需要以及自己的知识掌握,主要写的是Cassandra相关的文章。 博客主要也是在geek.csdb.net与toutiao.io 上面做宣传。 Spark的…

2016年09月12日 2条评论 19083点热度 8人点赞 阅读全文

0. 引言 在传统的RDBMS 之中, 我们为了提高查询或者SQL效率,都会用到各种Statement. 比如JDBC之中常用的PreparedStatement. Statement的使用在Cassandra会更加广泛。 并且除了PreparedStatement,还有好几种其他的Statement.如下: SimpleStatement BoundStatement / PreparedStatement BuiltStatement BatchStatement 原文链接:http://www.flyml.n…

2016年09月11日 0条评论 14243点热度 5人点赞 阅读全文

原文:《It’s Tough Being Over 40 in Silicon Valley》 (可能需要翻墙) 这是一篇在微博上面看得到的文章,原文太长,可以看看湾区日报BayArea的 概括: 老了后如何在年龄歧视的就业环境下生存:法律武器、穿得年轻、泡论坛恶补新新人类的语言、编程学校学做app、整容。在大公司工作十年后被裁,突然发现自己掌握的技术已落后市场上流行的技术6个世代 与简评: 实际上,不管是哪个地方,如果不终身学习、与时俱进,都会被淘汰掉。永远都能举出年龄大依然混得很好的一线工程师的案例,也能举出年…

2016年09月09日 2条评论 19160点热度 0人点赞 阅读全文

0.引言 在MySQL之中,我们经常使用的一个查询语句就是 where in。 在Cassandra之中也有这个查询语句。但是如果我们在where in 之中的需要查询的条件比较多的时候,我们就需要使用Cassandra 提供的异步 IO API (async io)接口。 在本文之中,我们将回答下面3个问题: 1.什么是异步IO 2. 为什么需要使用异步IO替换where in 3. 异步IO 性能如何 原文链接:http://www.flyml.net/2016/09/09/cassandra-tutorial…

2016年09月09日 2条评论 15722点热度 0人点赞 阅读全文

上一篇文章《Java API 简单例子》之中,我们介绍了使用Java API 对Cassandra的简单操作。 本节将开始稍微深入的介绍一些进阶操作。本节将介绍数据库必须要知道的一个概念:数据库连接池(Connection Pool) 文章来源:http://www.flyml.net/2016/09/09/cassandra-tutorial-java-api-connection-pool/ 数据库连接池的原理: 连接复用。通过建立一个数据库连接池以及一套连接使用、分配、管理策略,使得该连接池中的连接可以得到高…

2016年09月09日 0条评论 16445点热度 4人点赞 阅读全文

本文将简单介绍一些在Cassandra之中如何使用Java对数据进行操作的简单例子。包括了简单的CRUD。更深入一些的内容,将在后面逐个进行讲解。 本文代码源自:https://github.com/datastax/java-driver/blob/3.0/driver-examples/src/main/java/com/datastax/driver/examples/basic/CreateAndPopulateKeyspace.java 后来根据官方的例子做了一些说明,同时对其进行了一些补完。主要内容还请…

2016年09月08日 3条评论 21443点热度 1人点赞 阅读全文

Cassandra 自带了多个集群或数据管理工具,本文接下来简要介绍一下,欲知详情还是推荐大家自己啃一遍英文文档。下面是本文将会介绍到的工具: nodetool utility CQL shell cassandra utility cassandra-stress tool SSTable utilities 一、Nodetool nodetool 是一个进行集群管理的利器,功能强大繁杂,通过命令行方式操作,标准使用方式如下: [crayon-6606d3ff13b0b129000635/] 下面是一个常用opt…

2016年09月06日 2条评论 24519点热度 3人点赞 阅读全文