问题标签 [cassandra-jdbc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2331 浏览

cassandra-2.0 - 使用datastax java驱动程序在cassandra中读取异常期间超时

我正在尝试向 cassandra 集群插入一个包含几列大小为 500MB 的单行,但我遇到了错误。

当我在异常中打印获取错误时,它显示集群中所有节点的读取错误期间超时。

集群详情:

  • 一个数据中心,有 8 个节点,每个节点 16GB RAM
  • 每个节点中的单个硬盘。
  • 所有节点都以 10mbps 带宽和默认延迟连接。

我尝试使用以下命令增加读取时间。

下面是现在使用的 yaml 配置。

  • 内存总空间:4Gb
  • 提交日志段大小:512MB
  • read_request_timeout_in_ms (ms): 10000
  • request_timeout_in_ms(毫秒):10000
  • 并发读取:32
  • 并发写入:32

我在尝试插入 250mb 行时遇到了同样的问题,通过将读取时间设置为 30 秒解决了这个问题。

但是对于 500MB 的行大小,它不起作用。

谁能给我一些想法如何调整 cassandra 以插入包含大量数据的单行。

谢谢。

0 投票
1 回答
2068 浏览

cassandra - InvalidRequestException Keyspace keyspace1 不存在

我正在尝试通过 JDBC 连接到 Datastax 社区版服务器 2.1.2,但无论我尝试做什么,我都会收到以下错误,即使发出一个非常基本的命令,例如select * from system_traces.events;

InvalidRequestException(why:Keyspace 'keyspace1' does not exist)

通过发出相同的命令可以cqlsh正常工作,所以这似乎是一个 JDBC 问题。

有任何想法吗?蒂亚!

0 投票
0 回答
731 浏览

cassandra - Cassandra 批量大小

我有 6 个 Cassandra 节点,主要用于写作(95%)。插入数据的最佳方法是什么 - 单独插入或批量?原因说要使用批次,同时将“批次大小”保持在 5kb 以下以避免节点不稳定:

https://issues.apache.org/jira/browse/CASSANDRA-6487

这些 5kb 是否与查询的大小有关,例如 chars * bytes_per_char 的数量?完全运行单个插入是否有任何性能缺陷?

0 投票
2 回答
414 浏览

cassandra-2.0 - Datstax Cassandra 散装机

我正在尝试使用 JMX BulkLoader 将数据从远程节点 ETL 到 Cassandra 到集群上

https://github.com/PatrickCallaghan/datastax-analytics-example/blob/master/src/main/java/com/datastax/jmxloader/JmxBulkLoader.java

但是,在成功建立 JMX 连接后,似乎无法批量加载。

请注意,批量加载是从远程节点发送到 cassandra 集群的。

似乎它似乎希望在 cassandra 集群的本地运行(即 localhost 到 cassandra 集群)

我在这里有什么遗漏吗。任何人都可以建议

下面的异常

java.lang.IllegalArgumentException:在 org.apache.cassandra.service.StorageService.bulkLoadAsync(StorageService.java:3962) 的 org.apache.cassandra.service.StorageService.bulkLoadInternal(StorageService.java:3970) 的无效目录 /XXXXXXXXX .reflect.GeneratedMethodAccessor21.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at sun.reflect.misc.Trampoline .invoke(MethodUtil.java:75) 在 sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java :606) 在 sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:279) 在 com.sun.jmx.mbeanserver。StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:112) at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:46) at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:237) at com .sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138) 在 com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252) 在 com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor .java:819) 在 com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.PerInterface.invoke(PerInterface.java:138) 在 com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252) 在 com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) 在 com .sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.PerInterface.invoke(PerInterface.java:138) 在 com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252) 在 com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) 在 com .sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.

0 投票
1 回答
276 浏览

java - 用于插入语句的 Cassandra Acessor 注释接口

我正在开发以 cassandra 2.1 作为后端并使用最新驱动程序编写 API 的成熟应用程序。特别想对几乎所有的 CRUD 操作使用 Accessor 注释接口。但是,根据文档,只有选择和更新适用于 JDBI 接口模型,它由 cassandra 2.1.3 驱动程序提供。想知道 INSERT 和 delete 是否有效。任何帮助都非常感谢

0 投票
1 回答
312 浏览

cassandra - Cassandra 主键设计迎合范围查询

我设计了一个列族

prodgroup text, prodid int, status int, , PRIMARY KEY ((prodgroup), prodid, status)

数据模型是为了迎合

  • 从产品组中获取产品列表
  • 获取给定 ID 范围的产品列表
  • 获取特定产品的详细信息
  • 更新产品活动/非活动状态
  • 获取活动或非活动产品列表(从 prodgroup='xyz' 和 prodid > 0 且状态 = 0 的产品中选择 *)

设计工作正常,除了最后一个 query 。除非我修复产品 ID,否则 Cassandra 不允许查询状态。我认为定义一个具有键“PRIMARY KEY((prodgroup), staus, productid)”的超级列族应该可行。希望获得有关其他替代方案的专家建议。

0 投票
1 回答
1736 浏览

java - Cassandra 和 R 通过 JDBC:java.lang.NoClassDefFoundError:无法初始化类 org.apache.cassandra.cql.jdbc.Utils

我正在尝试通过 JDBC 使用 R 访问 Cassandra。不幸的是,即使我cassandra-jdbc-1.2.5.jar正确安装了/usr/share/cassandra/lib/包含该文件的 jar 包,我也会org/apache/cassandra/cql/jdbc/Utils.class收到以下错误:

(使用 cassandra 2.1.2、cassandra JDBC 1.2.5、R 3.1.2、CentOS Linux 版本 7.0.1406)

知道为什么会这样吗?

另外,我打开了这个错误报告:https ://code.google.com/a/apache-extras.org/p/cassandra-jdbc/issues/detail?id=100

0 投票
1 回答
1391 浏览

r - 用于在 R 中访问 Cassandra 数据库的包

我尝试过RCassandraRJDBC,但不幸的是,这些绑定似乎只适用于旧的 Cassandra 1.x。R语言中的 Cassandra 2.x 是否有任何绑定?

0 投票
1 回答
241 浏览

cassandra - Cassandra Cql 架构最佳实践

在得到关于二级索引如何在 Cassandra 中工作的很好的解释之后,在这里我再次提出类似的问题 ?

仅供参考, 操作列的可能值为 1,2 和 3。低基数。

record_link_id高基数。每个条目都可以是唯一的。

根据二级索引在 Cassandra 中的工作原理,user_id是索引的最佳候选者?cassandra 二级索引的最佳选择。

搜索应该基于

  • 时间限制为 100。
  • 操作时间限制为 100。
  • user_id时间限制为 100。
  • record_id和时间限制为 100。

问题

总记录超过 10,000M

哪一个是最好的 -在 operationuser_idrecord_id上创建索引并应用限制 100。

创建一个新的列族,其定义如下

所以,如果我要为operation创建新的 columnfamily ,user_idrecord_id

我必须进行批量查询才能插入这四个列族。

0 投票
1 回答
304 浏览

hector - 如何在 Cassandra 中为新添加的列设置/初始化值

我们在 Cassandra 中有 10+ 百万行,它们都在同一张表下。最近我们计划在现有表中添加一个新列,并且所有行的新列都需要设置为 be true

有没有办法为新添加的列初始化值?我现在在想的是迭代所有行并获取输出文件的所有键,并根据检索到的所有键更新新添加的列值。

请帮忙。我们可以用哪种方式来解决它并不重要,CQL、Java 或 Python。提前致谢。