如何在执行前打印 Mutator 中的列值?
How to print column values in Mutator before execute?
下面是我要插入到 cassandra 中的代码
Set<String> keys = MY_KEYS;
Map<String, String> pairsOfNameValues = MY_MUTATION_BY_NAME_AND_VALUE;
Set<HColumn<String, String>> colums = new HashSet<HColumn<String,String>>();
for (Entry<String, String> pair : pairsOfNameValues.entrySet()) {
colums.add(HFactory.createStringColumn(pair.getKey(), pair.getValue()));
}
Mutator<String> mutator = template.createMutator();
String column_family_name = template.getColumnFamily();
for (String key : keys) {
for (HColumn<String, String> column : colums) {
mutator.addInsertion(key, BASIC_COLUMN_FAMILY, column);
}
}
mutator.execute();
在某些情况下,我不知道有多少列插入了增变器。有没有打印数据before/after的执行方法
我尝试了 Mutationresult.tostring()。它给出了以下响应。
MutationResult took (3750us) for query (n/a) on host:
localhost(127.0.0.1):9160
Mutator to String 也没有给我想要的结果。
请帮忙。
是的,在执行查询之前尝试mutator.getPendingMutationCount()
。
除此之外,您必须手动推动计算要添加到增变器的列的逻辑。 toString() 不会给你想要的东西,因为你应该将 mutator.execute() 绑定到 MutationResult
。例如:
MutationResult mr = mutator.execute();
但是变异结果也不会给你更多。你可以知道这 3 件事(2 真的......)
// the execution time
long getExecutionTimeMicro();
long getExecutionTimeNano();
// host used for the exec.
CassandraHost getHostUsed();
下面是我要插入到 cassandra 中的代码
Set<String> keys = MY_KEYS;
Map<String, String> pairsOfNameValues = MY_MUTATION_BY_NAME_AND_VALUE;
Set<HColumn<String, String>> colums = new HashSet<HColumn<String,String>>();
for (Entry<String, String> pair : pairsOfNameValues.entrySet()) {
colums.add(HFactory.createStringColumn(pair.getKey(), pair.getValue()));
}
Mutator<String> mutator = template.createMutator();
String column_family_name = template.getColumnFamily();
for (String key : keys) {
for (HColumn<String, String> column : colums) {
mutator.addInsertion(key, BASIC_COLUMN_FAMILY, column);
}
}
mutator.execute();
在某些情况下,我不知道有多少列插入了增变器。有没有打印数据before/after的执行方法
我尝试了 Mutationresult.tostring()。它给出了以下响应。
MutationResult took (3750us) for query (n/a) on host: localhost(127.0.0.1):9160
Mutator to String 也没有给我想要的结果。
请帮忙。
是的,在执行查询之前尝试mutator.getPendingMutationCount()
。
除此之外,您必须手动推动计算要添加到增变器的列的逻辑。 toString() 不会给你想要的东西,因为你应该将 mutator.execute() 绑定到 MutationResult
。例如:
MutationResult mr = mutator.execute();
但是变异结果也不会给你更多。你可以知道这 3 件事(2 真的......)
// the execution time
long getExecutionTimeMicro();
long getExecutionTimeNano();
// host used for the exec.
CassandraHost getHostUsed();