2015-11-12 4 views
0

Я пытаюсь использовать драйвер Cassandra и Python для получения данных из базы данных Cassandra.Кассандра и драйвер Python - Получение повторяющихся строк

Это моя cql команда для создания таблицы, и пространство ключей:

CREATE KEYSPACE regression WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1}; 

USE regression; 

CREATE TABLE results (
uuid text, 
jobname text, 
date text, 
block text, 
results text, 
metrics text, 
PRIMARY KEY ((uuid), jobname, date, block)); 

Когда я открываю cql, и введите в select block from results, я получаю следующее:

block 
------------------------ 
      simple_buff 
simple_buff_pre_commit 

Однако, когда я делать то же самое в python:

from cassandra.policies import RetryPolicy 
cluster = Cluster(
    contact_points=['127.0.0.1'], 
    default_retry_policy = RetryPolicy() 
) 
session = cluster.connect('regression') 
results = session.execute("select block from results") 
for result in results: 
    print results 
    print "END" 

Это дает мне:

[Row(block=u'simple_buff'), Row(block=u'simple_buff_pre_commit')] 
END 
[Row(block=u'simple_buff'), Row(block=u'simple_buff_pre_commit')] 
END 

Почему он возвращает строку с двумя пункта по сравнению с CQL клиента, который только возвращает мне две строки с одного элемента? Если я сделаю select * from results в python, он даст мне две копии одной и той же строки дважды.

ответ

1

Из-за этой линии:

print results 

Это должно быть результатом без «с»

print result 
+0

Вот почему ... Иногда я забываю проверить мое правописание. – user1157751