5
Tôi có một gia đình cột AllLog
tạo màChèn cột cassandra gia đình với tổng hợp quan trọng
create column family LogData
with column_type = 'Standard'
and comparator = 'CompositeType(org.apache.cassandra.db.marshal.UTF8Type,org.apache.cassandra.db.marshal.UTF8Type)'
and default_validation_class = 'UTF8Type'
and key_validation_class = 'CompositeType(UTF8Type,UTF8Type)';
nhưng khi tôi sử dụng mutator để chèn:
String key0 = "key0";
String key1 = "key1";
Composite compositeKey = new Composite();
compositeKey.addComponent(key0, StringSerializer.get());
compositeKey.addComponent(key1, StringSerializer.get());
// add
mutator.addInsertion(compositeKey, columnFamilyName, HFactory.createColumn("name", "value"));
mutator.execute();
luôn thông qua ngoại lệ:
me.prettyprint.hector.api.exceptions.HInvalidRequestException:
InvalidRequestException(why:Not enough bytes to read value of component 0)
Xin vui lòng một số giúp tôi, sai lầm của tôi ở đâu trong mã này?
vâng tôi biết điều đó, nhưng tôi tự hỏi rằng: có bất kỳ giải pháp nào mà tôi có thể tạo một bảng có khóa tổng hợp và các cột khác sử dụng loại UTF8 ???? tôi thử nó trong cql3 là okie nhưng trong hector, tôi không thể chèn dữ liệu vào bảng như vậy :(:( –
Không chắc chắn những gì bạn đang yêu cầu ở đây ... với lược đồ đã chỉ định, bạn nên cập nhật mã để createColumn sử dụng Tên hỗn hợp, sửa đổi lược đồ để làm cho trình so sánh utf8. – libjack