cassandra 3.X asyn写入,之后进行读取,但不重做行,但命令提示符仅返回一次-Python驱动程序

时间:2019-02-27 12:23:47

标签: python cassandra-3.0

我在使用where子句进行异步写入和读取时遇到问题。但是,如果我确实执行同步,那一切都会好起来的。

我将会话超时设置了很大的间隔,但是没有运气。我还是会尝试。

1.Python命令提示符-这是一个用于读写的单个全局会话对象。

情况1:从test.dummytable中选择*; #这是一个准备陈述,如脚本中和一个会话对象下一样

>>> CQLStrcnt="select * from test.dummytbl;
>>> nRows=session.execute(CQLStrcnt)
for rows in nRows:
...     print rows

第一次:#注意-输出所有行

Row(key = u'key8557',col1 = u'a',col2 = u'b',msg = [u'Bye',u'and',u'不返回行集']) Row(key = u'key7597',col1 = u'a',col2 = u'b',msg = [u'Bye',u'and',u'这段代码速度更快,但选择时不返回行组']) Row(key = u'key11352',col1 = u'a',col2 = u'b',msg = [u'Bye',u'and',u'这段代码速度更快,但select不会返回行组']) Row(key = u'key6802',col1 = u'a',col2 = u'b',msg = [u'Bye',u'and',u'这段代码速度更快,但选择时不返回行组']) ......

第二次:#注意-输出无,并且无声显示

>>>>>for rows in nRows:
...     print rows

情况2:select * from test.dummytbl where key='key11961';

>>> CQLStrcnt="select * from test.dummytbl where key='key11961';
nRows=session.execute(CQLStrcnt)
for rows in nRows:
...     print rows

第一次:#注意-输出特定行 Row(key = u'key11961',col1 = u'a',col2 = u'b',msg = [u'Bye',u'and',u'这段代码速度更快,但select不会返回行设置”]

第二次:#注意-输出无,并且无声显示

>>>>> for rows in nRows:
...     print rows
  1. Python脚本:它悄然出现

........ .................

`  准备= session.prepare(“”“         插入哑元(key,col1,col2,msg)         值(?,?,?,?)         “””)

log.info("Setting consitency for at least one respons ...... on batch-prepare")
batch=BatchStatement(consistency_level=ConsistencyLevel.ONE)

pStatment=""
for i in range(15000):
    batch.add(prepared,("key%d" % i,'a','b',['Bye','and','This piece of code is faster but select does not retur row set']) )

pStatment=session.execute_async(batch)

`

........ .................

CQLStrcnt="select * from test.dummytbl;
nRows=session.execute(CQLStrcnt)
for rows in nRows:
print rows

需要这些家伙的帮助。

0 个答案:

没有答案