Tag: datastax enterprise

“中止”cassandra结果的阅读

我有一个cql,我需要执行和使用node.js驱动程序stream结果。 但是,如果满足某个条件,我需要中止stream式传输。 像这样的东西: client.eachRow(cql, [], { autoPage: true }, function(n, row) { if(applySomeFilterLogic(row) === 'some val') { //abort streaming } else { rows.push(row); } }, function(err, result) { logger.error("server responded with error : %s", err); }); 数据不能用过滤逻辑进行预处理,并保留在cassandra中。 它需要在运行时计算,基于一些数据持久化时不知道的标准。 有没有办法通过node.js驱动程序或cassandra来优雅地实现这一点?

无法连接到scassandra(残桩cassandra)使用datastax驱动程序

我有麻烦连接到cassandra。 我试图连接到s-cassandra(这是一个残桩cassandra可以在这里审查),一个datastax node.js cassandra驱动程序 。 由于某些原因,将“127.0.0.1:8042”作为接触点传递给驱动程序会导致DriverInternalError : (强硬有时它确实随机工作,我还没有弄清楚为什么有时候会这样做,有时我不会..) DriverInternalError我得到: {“name”:“DriverInternalError”, “stack”:“…”, “消息”:“本地数据中心无法确定”, “info”:“代表驱动程序或Cassandra主机中的错误。” } 这就是我从Cassandra Driver日志中看到的: log event: info — Adding host 127.0.0.1:8042 log event: info — Getting first connection log event: info — Connecting to 127.0.0.1:8042 log event: verbose — Socket connected to 127.0.0.1:8042 log event: info — Trying to use protocol version 4 […]

在数据库查询完成之前,Cassandra nodejs eachRow返回

我使用Cassandra与nodejs来获取eachRow大表。 我需要在每一行插入数据,但由于某种原因,它不会等待查询,并在完成之前完成。 client.eachRow(query, [], { prepare: true, autoPage : true, fetchSize: 500 }, function(index, row) { // DB query / insert or update , function(err, result) { // Finish all rows. }); 有什么build议么?

Cassandra Node.js ORM最佳实践

目前,我们正在使用cassandra驱动程序,执行标准查询,并在我们的DAL和BL图层中访问“原始”结果。 我们的应用程序应该支持数百万用户,每个请求的平均剂量为3读取数据库,我们有大约30个模型。 我们正在考虑使用某种ORM库,将模型映射到我们自己的模型中,并且将每个原始数据处理为一个代表性的对象,或者处理每个模型(原始数据)的获取,设置和创build的简单函数。 我们的用例是封装“原始”数据结构的处理,避免代码重复,防止模式结构错误和强制validation。 我们非常想知道对性能的影响,未来的灵活性以及ORM lib / framworks的普及程度。 在这个主题中获得最佳实践(和参考)是有帮助的,因为我们不知道使用ORM层比cassandra有什么影响。