0

私はCassandraが初めてなので。pycassa API を使用して列ファミリーを作成したいと考えています。次のコードを使用して列ファミリーを作成しました。

validators = {'full_name': UTF8_TYPE,
          'email': UTF8_TYPE,
          'state': UTF8_TYPE,
          'gender': UTF8_TYPE,
          'birth_year': LONG_TYPE}

sys.create_column_family('TestKeyspace', 'TestCF', super=False,
          comparator_type=UTF8_TYPE,
          key_validation_class=UTF8_TYPE, 
          column_validation_classes=validators)

Python スクリプトは例外なく正常に実行されています。しかし、cassandra-cli を使用してこの列ファミリーをチェックすると、. 次の例外があります。

UnavailableException()
        at org.apache.cassandra.thrift.Cassandra$get_range_slices_result$get_range_slices_resultStandardScheme.read(Cassandra.java:17439)
        at org.apache.cassandra.thrift.Cassandra$get_range_slices_result$get_range_slices_resultStandardScheme.read(Cassandra.java:17397)
        at org.apache.cassandra.thrift.Cassandra$get_range_slices_result.read(Cassandra.java:17323)
        at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
        at org.apache.cassandra.thrift.Cassandra$Client.recv_get_range_slices(Cassandra.java:802)
        at org.apache.cassandra.thrift.Cassandra$Client.get_range_slices(Cassandra.java:786)
        at org.apache.cassandra.cli.CliClient.executeList(CliClient.java:1520)
        at org.apache.cassandra.cli.CliClient.executeCLIStatement(CliClient.java:285)
        at org.apache.cassandra.cli.CliMain.processStatementInteractive(CliMain.java:201)
        at org.apache.cassandra.cli.CliMain.main(CliMain.java:331)

なぜこのエラーが発生するのかわかりません。誰もが同じための作業コードを持っていますか? 前もって感謝します。

4

1 に答える 1

2

キースペースはどのように作成しましたか?また、そのレプリケーション設定は何ですか? UnavailableExceptionクエリに応答するのに十分なライブ レプリカがないことを意味します。私の推測では、誤ってレプリケーション係数を高く設定しすぎたか、使用NetworkTopologyStrategyしていてレプリケーション設定のデータセンター名がノードの実際のデータセンター名と一致していない可能性があります。

于 2014-02-07T00:52:33.287 に答える