`

cassandra 查询报错

阅读更多
cluster 的结构如下:
keyspace :{replication_factor:1, class:SimpleStrategy}
[root@edog1 apache-cassandra-2.0.9]# bin/nodetool status
Note: Ownership information does not include topology; for complete information, specify a keyspace
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address        Load       Tokens  Owns   Host ID                               Rack
UN  192.168.1.245  1.98 TB    256     35.2%  3f5395be-b346-404e-8a72-cc6fda5716f8  rack1
UN  192.168.1.205  959.96 GB  256     31.1%  b294b651-3403-4f6f-a253-b7c9c0f2caf5  rack1
UN  192.168.1.254  1.53 TB    256     33.7%  9adf54bc-8727-4463-a205-0a4cbcfa47da  rack1

---------------------------------------------------------------------------------------------------------------------------
报错如下:
Traceback (most recent call last):
  File "python_del_cassandra.py", line 21, in <module>
    d_time = K_devdata.execute(" select dtime from devicestatus where did = '%s' and dtime > %s and dtime < %s order by dtime asc ;" % (devsid,start,end))
  File "/usr/lib64/python2.6/site-packages/cassandra/cluster.py", line 1594, in execute
    result = future.result(timeout)
  File "/usr/lib64/python2.6/site-packages/cassandra/cluster.py", line 3296, in result
    raise self._final_exception
cassandra.Unavailable: code=1000 [Unavailable exception] message="Cannot achieve consistency level ONE" info={'required_replicas': 1, 'alive_replicas': 0, 'consistency': 'ONE'}
上面是select时报的错,
------------------------------------------------------------------------------------------------------------------------
原因:
repliction_factor=1,时,只要有一个节点DN(down)掉的话,就会报这样的错,如果把replication_factor 改为2以上的话就不会报这个错了。
replication_factor 的作用是指,在集群里数据保存的的份数

原文如下:
To directly answer the question, replication factor (RF) controls the number of replicas of each data partition that exist in a cluster or data center (DC). In your case, you have 3 nodes and a RF of 1. That means that when a row is written to your cluster, that it is only stored on 1 node. This also means that your cluster cannot withstand the failure of a single node.

In contrast, consider a RF of 3 on a 3 node cluster. Such a cluster could withstand the failure of 1 or 2 nodes, and still be able to support queries for all of its data.
分享到:
评论

相关推荐

    关于配置完JAVA环境,启动cassandra时各种报错

    sigar替代文件

    DbVisualizer-6.0.12

    它支持包括Oracle、MySQL、PostgreSQL、SQL Server、DB2、SQLite、Apache Cassandra等在内的多种关系型和非关系型数据库。这意味着无论你使用哪种数据库系统,DbVisualizer都能为你提供统一的管理和操作平台。 在...

    kettle连接需要的常用数据库jar包.zip

    它允许用户通过图形化界面设计数据转换流程,支持多种数据库的连接,包括MySQL、Oracle、SQL Server、Greenplum、MongoDB和Cassandra等。这些数据库在不同场景下有着广泛的应用,因此了解如何在Kettle中与它们建立...

    Datax实现增量同步数据到Postgres

    5. **RDBMS Util 插件**:`plugin-rdbms-util-0.0.1-SNAPSHOT.jar` 可能是Datax中的通用关系型数据库工具包,提供了一些通用的数据库操作功能,比如查询、连接管理等,服务于不同类型的RDBMS同步任务。 6. **...

    dbeaver-ce-23.0.0-linux.gtk.x86-64.tar.gz

    它的设计目标是提供一个统一的平台,用于处理多种类型的数据库系统,包括关系型数据库(如MySQL、PostgreSQL)、NoSQL数据库(如MongoDB、Cassandra)以及大数据存储(如Hadoop)。这款工具支持Windows、macOS和...

    Java 数据库主键生成类 IdWorker

    twitter在把存储系统从MySQL迁移到Cassandra的过程中由于Cassandra没有顺序ID生成机制,于是自己开发了一套全局唯一ID生成服务:Snowflake。 1 41位的时间序列(精确到毫秒,41位的长度可以使用69年) 2 10位的机器...

    netty-all-4.1.29.Final.jar最新版导入直接用

    它活跃和成长于用户社区,像大型公司 Facebook 和 Instagram 以及流行 开源项目如 Infinispan, HornetQ, Vert.x, Apache Cassandra 和 Elasticsearch 等,都利用其强大的对于网络抽象的核心代码。 Netty is a NIO ...

    分布式锁1

    为了解决这个问题,可以采用主从复制或分布式数据库,如MySQL的主备模式或分布式数据库如Cassandra,来确保即使主数据库出现问题,也能有备份数据库接管,保持服务的连续性。 2. 锁无失效时间:如果解锁操作失败,...

    spark解析csv文件,存入数据库

    它支持多种数据源,包括HDFS、Cassandra、HBase和本地文件系统等。而在这个文档中,我们将学习如何使用Spark来处理CSV文件。 接下来,我们看到了如何用Java代码创建Spark配置和SparkSession。SparkSession是Spark ...

    大数据面试宝典包含java基础和spring面试题

    ` 这样会报错,因为`1`是int类型,与short相加后结果也是int类型,不能直接赋给short类型。而`s1 += 1;`则不会出错,因为这是自动类型提升并赋值。 ##### 6. Java的`goto` - Java没有传统的`goto`语句,但可以通过`...

Global site tag (gtag.js) - Google Analytics