Tag: cassandra

在Cassandra node.js驱动程序中使用中等大小的fetchSize时出现帧stream错误

我有一个Cassandra node.js驱动程序的怪异问题。 当我尝试从某些分区中select数据时,出现此错误。 Error: There was an problem while parsing streaming frame, opcode 8 at DriverInternalError.DriverError (C:\Temp\cassandra_test\node_modules\cassandra-driver\lib\errors.js:14:19) at new DriverInternalError (C:\Temp\cassandra_test\node_modules\cassandra-driver\lib\errors.js:68:30) at Parser._transform (C:\Temp\cassandra_test\node_modules\cassandra-driver\lib\streams.js:149:16) at Parser.Transform._read (_stream_transform.js:167:10) at Parser.Transform._write (_stream_transform.js:155:12) at doWrite (_stream_writable.js:307:12) at writeOrBuffer (_stream_writable.js:293:5) at Parser.Writable.write (_stream_writable.js:220:11) at Protocol.ondata (_stream_readable.js:556:20) at emitOne (events.js:96:13) name: 'DriverInternalError', stack: 'Error: There was an problem while parsing […]

在Cassandra使用CQL宽行 – 得到奇怪的错误

我试图在Cassandra中存储一个博客的评论,并提出了这个模式(从这里得到的想法): create table comments ( slug varchar, ts timestamp, value text, primary key (slug,ts)); 使用CQL(我用Helenus驱动程序使用node.js)我试图添加一些数据到它,这是迄今为止: var helenus = require('helenus'), pool = new helenus.ConnectionPool({ hosts: ['localhost:9160'], keyspace: 'blogks' }); pool.on('error', function(err) { console.error(err.name, err.message); }); module.exports.addComment = function(slug, comment,callback){ pool.connect(function(connErr,keyspace){ if(connErr){ callback(connErr); return; } var cql = "INSERT INTO comments (slug,ts,value) VALUES (?, ?, ?);"; pool.cql(cql,[slug,serializeDate(new […]

由node.js返回的Cassandra地图集合Helenus看起来很奇怪

我有一个Cassandra中的CQL3表,如下所示: CREATE TABLE table ( usr text, box text, uidseq map<bigint, text>, PRIMARY KEY (usr, box) ) 我在cqlsh中查询如下所示: select uidseq from table WHERE usr = 'usr' AND box = 'box'; uidseq —————— {1: 'a', 2: 'a'} 看起来不错,直到我运行相同的查询通过Helenus包node.js和JSON.stringify'd返回的结果值,并得到它回来: [0,2,0,8,0,0,0,0,0,0,0,1,0,1,97,0,8,0,0,0,0,0,0,0,2,0,1,97] 我testing了Helenus返回的价值,它作为一个对象返回,所以我不确定我在这里出了什么问题?

在Cassandra中使用用户定义的types和nodejs

我正在尝试在Cassandra中使用用户定义的types和nodejs。 按照文档,我成功地设法在cqlsh中执行( https://www.datastax.com/documentation/cql/3.1/cql/cql_using/cqlUseUDT.html )。 我设法在cqlsh中插入项目,但不能使用cassandra-driver模块。 我明白他们是一些错综复杂的使用JavaScript( http://www.datastax.com/documentation/developer/nodejs-driver/1.0/nodejs-driver/reference/nodejs2Cql3Datatypes.html ),我已经尝试了不同的select提供,但我不能得到它的工作。 这是我的审判和他们的错误信息: var insertQuery = 'INSERT INTO mykeyspace.users (id, name) VALUES (?, ?)' client.execute(insertQuery, ['62c36092-82a1-3a00-93r1-46196ee77204', { firstname: 'paul', lastname: 'jacques'}], {hints: ['uuid', 'map<text, text>']}, function(err) { console.log(err);}) { name: 'ResponseError', message: 'Not enough bytes to read 0th field java.nio.HeapByteBuffer[pos=0 lim=9 cap=9]', info: 'Represents an error message from the […]

如何在Cassandra中使用cqlsh在map <text,boolean>字段中插入自定义types?

我得到这样的错误: field is not of type frozen<map<text, boolean>> 插入自定义types对象的任何示例,其中一个字段的types为frozen<map<text, boolean>> ? 任何想法如何使用nodejs cassandra-driver做到这一点? UPDATE 试图@Olivier Michallat提到。 但是我的答案如下。 任何想法,为什么它是这样而不是一个JOSN? cqlsh:test> create type t(m map<text, boolean>); cqlsh:test> create table foo(k int primary key, v frozen<t>); cqlsh:test> insert into foo(k,v) values (1, {m: {'foo': true}}); cqlsh:test> select * from foo; k | v —+————————————————————————- 1 | \x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x03foo\x00\x00\x00\x01\x01 (1 […]

cassandra当前与节点js的时间戳

在下面的插入查询时,我使用dateof(now())它不起作用。 但新的date('2017-09-01 00:00:00 + 0000')这个工作。 请帮助我。 router.post('/recent_activities', function(req, res, next) { var body =req.body; console.log(body); console.log( body.id + body.setid); var query ="Insert into recent_activities (id,setid,companyid,activity_name,activity_date,activity_by) values (? , ?, ?, ?, ?, ?)" client.execute(query,[body.id,body.setid,body.companyid,body.activity_name, dateof(now()),body.activity_by], function(err, result) { if (err) { throw err; } else { console.log('success!'); } }); res.json({ id:201, message: 'All Success' }); […]

使用Cassandra数据库blob数据显示图像

我正在将图像存储到cassandra db(blob数据),我试图获取数据并显示在我的html页面,但它显示了一些垃圾数据。 我使用cassandra作为数据库,节点js作为后端服务器和cassandara-client来处理cassandra数据库。 完整描述 – 我能够将图像存储到cassandra数据库。 我也从cassandra数据库获取图像数据,但是我不知道数据的格式(base64,binary …等)。 我也可以使用下面的代码将数据写入一个图像文件, var fs = require("fs"); fs.writeFile("file1.png", new Buffer(imgData, "base64"), function(err) {}); 但我不想将数据写入文件。我想直接将数据stream到html中的图像中。我已经使用下面的代码在我的html页面中显示图像 – $.ajax({ url: 'http://10.0.0.1:3000/getMap', type: 'GET', headers: { "accept": "image/jpg", "content-Type": "image/jpg", }, success: function(data) { console.log("Inside success"); $('#mapdiv').html('<img src="data:image/jpg;base64,'+data+'" height="200px" width="500px"/>'); } }); <div id="mapdiv"></div> 但我得到一些垃圾数据里面的div。 在此先感谢Subhra

哪个模块用于使用NodeJs连接到Cassandra?

我希望将Cassandra与Node进行整合,我的模式中的列族利用了广泛的复合键和列支持。 当我浏览NPM时,我可以find许多Cassandra连接器。 (下面按search结果sorting)cassandra connect-cassandra cassandra-orm cassandra-client cassandra-helenus-api 哪些支持复合材料? 我没有看到这些详细的文档,任何指针?

Angularjs控制器显示未定义?

我正在使用angularjs和cassandra在节点应用程序上工作。 当我去页面,如注册页面,然后前端来适当,但它显示错误,控制器是未定义的。 错误:错误:areq错误的参数 这是app.js(主要的jsconfiguration文件) angular.module('app', ['ui.router']) .config(['$urlRouterProvider', '$stateProvider', function($urlRouterProvider, $stateProvider) { $urlRouterProvider.otherwise('/'); $stateProvider .state('home', { url: '/', templateUrl: '/browser/views/home.html' }) .state('register', { url: '/register', templateUrl: '/browser/views/register.html', controller: 'RegisterCtrl' }) .state('login', { url: '/login', templateUrl: '/browser/views/login.html', controller: 'LoginCtrl' }) } ]); 这是register.html文件后跟控制器的path。 <div ng-controller="RegisterCtrl" class="container-fluid"> <div class="row custom-row2"> <div class="col-md-6 col-lg-6 col-sm-6"> <h4 class="sign_up">{{ title }}</h4> […]

Cassandra连接最佳实践

我使用Cassandra的Node JS,我不知道什么是最好的交互方式。 我有多个与Cassandra交互的模块,我想知道它是否更好 为所有模块保持一个连接 为每个模块设置一个连接,或者如果最好的话; 每次有请求连接到Cassandra。 这个Web应用程序使用Cassandra来处理大部分请求。