Skip to content

Instantly share code, notes, and snippets.

@tankala
Created September 8, 2018 15:13
Show Gist options
  • Save tankala/abddb228f0f6d88a2e177b7030a9bf37 to your computer and use it in GitHub Desktop.
Save tankala/abddb228f0f6d88a2e177b7030a9bf37 to your computer and use it in GitHub Desktop.
Finding minimum and maximum token range in a Cassandra table and Printing data between certain range.
const cassandra = require('cassandra-driver');
const client = new cassandra.Client({contactPoints: ['127.0.0.1'], keyspace: 'movie_lens'});
const bignum = require('bignum');
//Finding minimum and maximum token range in a Cassandra table
client.execute('select MIN(token(movie_id)), MAX(token(movie_id)) from movies;',
function(err, result) {
let minToken = result.rows[0]['system.min(system.token(movie_id))'];
let maxToken = result.rows[0]['system.max(system.token(movie_id))'];
console.log("Minimum token: " + minToken);
console.log("Maximum token: " + maxToken);
let startToken = bignum(minToken);
let endToken = startToken.add(5000);
printDataInTokenRange(startToken, endToken);
}
);
//Printing data between certain range.
var printDataInTokenRange = function(startToken, endToken) {
client.execute('select * from movies where token(movie_id) >= ' + startToken + ' and token(movie_id) <= ' + endToken,
function(err, result) {
console.log("Getting data between token range from " + startToken + " to " + endToken);
if(err) {
console.log(err);
} else {
console.log(result.rows[0]);
}
client.shutdown();
}
);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment