2012-02-06 54 views
11

Tôi đang nghiên cứu phiên bản Apache Cassandra 0.7.6 với java và Hector, và tôi đã cố tạo một cụm, một không gian phím và chèn một cột trong keyspace này được tạo ra.chèn hàng trên keyspace trong Apache Cassandra + Hector + Java

Bằng cách tìm kiếm các ví dụ, tôi hiểu rằng không gian phím tương đương với cơ sở dữ liệu trong cơ sở dữ liệu Sql và các Cột gia đình tương đương với các bảng. Biết điều này tôi đã cố gắng để tạo ra cấu trúc ví dụ đơn giản của tôi.

Cluster tutorialCluster = HFactory.getOrCreateCluster("TutorialCluster", 
      "127.0.0.1:9160"); 
ConfigurableConsistencyLevel ccl = new ConfigurableConsistencyLevel(); 

ccl.setDefaultReadConsistencyLevel(HConsistencyLevel.ONE); 

Keyspace tutorialKeyspace = HFactory.createKeyspace("Tutorial", tutorialCluster, 
      ccl); 
Mutator<String> mutator = HFactory.createMutator(tutorialKeyspace, 
      stringSerializer); 

mutator.addInsertion("CA Burlingame", "StateCity", HFactory.createColumn(650L, "37.57x122.34", longSerializer, stringSerializer)); 

MutationResult mr = mutator.execute(); 

Nhưng khi tôi cố gắng chạy điều này, với cassandra bắt đầu, nhưng nó trả về ngoại lệ.

Exception in thread "main" me.prettyprint.hector.api.exceptions.HInvalidRequestException: InvalidRequestException(why:Keyspace Tutorial does not exist) 
at me.prettyprint.cassandra.connection.HThriftClient.getCassandra(HThriftClient.java:70) 
at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:226) 

Nhưng tôi đã tạo không gian phím "Hướng dẫn" và được sử dụng trong trình tắt.

Ai đó có thể cho tôi biết điều gì có thể sai?

Cảm ơn trước

Trả lời

6

Các createKeyspace() gọi trong HFactory có nghĩa là tạo một đối tượng hector Keyspace để sử dụng trong nước, nhưng nó không thực sự tạo ra một keyspace trong Cassandra. Đối với điều đó, bạn muốn sử dụng phương thức 'addKeyspace()' và 'addColumnFamily' trên đối tượng cluster thực tế.

https://github.com/rantav/hector/blob/master/core/src/main/java/me/prettyprint/hector/api/Cluster.java#L117

Các vấn đề liên quan