复制如何在Cassandra中运行?如果我有3个机架和3个RF NetworkTopologyStratagy然后将数据复制到所有3个机架?
数据在整个群集中的复制方式究竟如何?我问,因为我们正在设计我们的集群以满足3个机架中有2个机架出现故障的最坏情况,我们不想丢失数据.
我们只有一个带3个机架的数据中心.
如果我使用:
CREATE KEYSPACE "myKeyspaceName"
WITH REPLICATION = {'class' : 'NetworkTopologyStrategy', 'DC1' : 3 }
Run Code Online (Sandbox Code Playgroud)
这会复制到所有三个机架吗?
Cassandra概念性问题:我有一个5节点的集群正在运行.现在所有节点都被引导,每个节点知道的种子节点列表是否重要?如果我计划淘汰种子节点,是否需要更新其他节点的配置并从种子节点列表中删除待退役节点的IP,或者无关紧要,因为所有节点都已完全连接?
我有一个list类型(标签)列的表:
CREATE TABLE "Videos" (
video_id UUID,
title VARCHAR,
tags LIST<VARCHAR>,
PRIMARY KEY (video_id, upload_timestamp)
) WITH CLUSTERING ORDER BY (upload_timestamp DESC);
Run Code Online (Sandbox Code Playgroud)
我有很多行包含列中的各种值tags,即.["outdoor","funny cats","funny mice"].
我想执行一个SELECT查询,该查询将返回列中包含"有趣的猫"的所有行tags.我怎样才能做到这一点?
我一直在使用cassandra-stress工具来评估我的cassandra集群已有一段时间了.
我的问题是我无法理解为我的特定用例生成的结果.
我的架构看起来像这样:
CREATE TABLE Table_test(
ID uuid,
Time timestamp,
Value double,
Date timestamp,
PRIMARY KEY ((ID,Date), Time)
) WITH COMPACT STORAGE;
Run Code Online (Sandbox Code Playgroud)
我已经解析了一个自定义YAML文件和使用的参数信息n=10000,threads=100其余的都是默认选项(cl=one,mode=native cql3,等).Cassandra集群是一个3节点的CentOS VM设置.
自定义yaml文件的一些细节如下:
insert:
partitions: fixed(100)
select: fixed(1)/2
batchtype: UNLOGGED
columnspecs:
-name: Time
size: fixed(1000)
-name: ID
size: uniform(1..100)
-name: Date
size: uniform(1..10)
-name: Value
size: uniform(-100..100)
Run Code Online (Sandbox Code Playgroud)
我到目前为止的观察如下:
n=10000和时间:fixed(1000),插入的行数为1000万.(10000*1000 = 10000000)10000(i.e n),其中一次取100个分区(这意味着100*1000 = 100000个键值对),其中一次处理50000个键值对.(这是因为select: fixed(1)/2~50%)输出消息也确认相同:
使用[100..100]分区和[50000..50000]行(分区中总行数为[100000..100000])生成批次
对于具有上述相同配置的连续运行,我得到的结果如下:
Run Total_ops …Run Code Online (Sandbox Code Playgroud) 有没有办法检查每个字段的 solr 索引大小?
我们有一个 170G 的大索引大小,我们想弄清楚哪个字段填充了索引大小。
在使用spark工作执行Cassandra操作(两个表上的批处理执行 - 插入和更新操作)时,我得到了"所有主机都尝试查询失败 - com.datastax.driver.core.OperationTimedOutException "错误.
集群信息:
Cassandra 2.1.8.621 | DSE 4.7.1
spark-cassandra-connector-java_2.10 version - 1.2.0-rc1 | cassandra-driver-core版本 - 2.1.7
Spark 1.2.1 | Hadoop 2.7.1 => 3个节点
Cassandra 2.1.8 => 5个节点
每个节点有28 gb内存和24个内核
在寻找它的解决方案时,我遇到了一些讨论,其中说你不应该使用BATCHES.虽然我想找到这个错误的根本原因.另外,如何以及从哪里设置/获取"SocketOptions.setReadTimeout",因为此超时限制必须大于Cassandra请求超时(根据标准准则)并避免可能的错误.
是request_timeout_in_ms和SocketOptions.setReadTimeout一样吗?任何人都可以帮我这个吗?
cassandra socket-timeout-exception datastax-enterprise datastax-java-driver
我的代码直接执行准备好的绑定语句,没有任何确切的查询。那么如何获得它试图在 cassandra 数据库中执行的 cql?
例如:
public <T> void save(T entity) {
if (entity != null) {
Statement statement = getEntityMapper(entity).saveQuery(entity);
statement.setConsistencyLevel(consistencyLevelWrite);
mappingManager.getSession().execute(statement);
}
}
Run Code Online (Sandbox Code Playgroud)
我想得到类似INSERT INTO "keyspace"."tableName"("column1","column2") VALUES (value1,value2)
java cassandra datastax-enterprise datastax-java-driver datastax
任何人都可以解释是什么用途
-JVM_OPTS="$JVM_OPTS -Dcassandra.consistent.rangemovement=false"
Run Code Online (Sandbox Code Playgroud)
什么是默认设置以及它如何影响多个节点加入群集?
所有与此相关的是用于cassandra实用程序的Datastax doc
我有一个集群,我正在考虑启用增量修复.如果出现任何问题,我想在每个节点上禁用增量修复.我怎么做?
cassandra datastax-enterprise datastax cassandra-2.1 datastax-startup
似乎在该表上有已定义的物化视图时,无法从表中删除列。例如,假设我们有此表:
> CREATE TABLE healthera.users (
> user_id timeuuid PRIMARY KEY,
> address text,
> birthday int,
> forename text,
> user_password text,
> username text
> );
Run Code Online (Sandbox Code Playgroud)
我们在下面定义实例化视图:
> CREATE MATERIALIZED VIEW users_by_username AS
> SELECT * FROM users
> WHERE user_id IS NOT NULL AND username IS NOT NULL
> PRIMARY KEY (username, user_id);
Run Code Online (Sandbox Code Playgroud)
然后,我们更改用户表并添加一列:
> ALTER TABLE users ADD last_name text;
Run Code Online (Sandbox Code Playgroud)
当我们尝试从用户表中删除此列或任何其他列时,我们会返回此错误:
> ALTER TABLE users DROP last_name ;
> InvalidRequest: Error from server: code=2200 [Invalid query] …Run Code Online (Sandbox Code Playgroud)