首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >让游标在pymongo中存活

让游标在pymongo中存活
EN

Stack Overflow用户
提问于 2014-05-01 14:59:00
回答 1查看 1.4K关注 0票数 2

默认情况下,孟戈游标在10分钟的不活动之后就会死掉。我有一个空白光标,我最终想在整个数据库中运行,但是会有超过10分钟的不活动时间。我需要一个办法让这件事活下去--我可以一直叫它。

设置完全关闭的过期时间不是一个选项。如果这个程序崩溃,它将导致游标在数据库内存中徘徊,这是不好的。此外,在我的其他内容中偶尔调用.next()不能工作,因为批处理大小被设置得相当高,以便在经常调用游标的代码的其他部分上获得良好的性能。

我只是定期打电话给cursor.alive,看看它是否向Mongo发送了一个信号,使光标保持活动状态,但这不起作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-01 15:06:41

尝试使用较小的批处理大小。这将导致活动,您不应该按10分钟的超时时间。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for doc in coll.find().batch_size(10):

或者,您可以在调用timeout=False时设置find (这可能导致光标未手动关闭时出现问题):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for doc in coll.find(timeout=False)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23418107

复制
相关文章
在linux中同时探测多台主机是否存活
我们都知道PING可以验证主机是否能够通过网络与另一台计算机或网络设备进行通信。使用 Ping 命令,我们可以向目标主机发送 ICMP Echo 请求,并测试目标主机是否存活。我们可以在 LAN 和 WAN 中 ping 系统。 下面给出了 ping 命令的典型用法。 要ping IP 地址 $ ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8): 56 data bytes 64 bytes from 8.8.8.8: icmp_seq=0 ttl=114 time=53.666
入门笔记
2022/06/02
1.3K0
【DB笔试面试578】在Oracle中,什么是会话游标?会话游标和共享游标的区别有哪些?会话游标分为哪几类?
在Oracle中,什么是会话游标?会话游标和共享游标的区别有哪些?会话游标分为哪几类?
AiDBA宝典
2019/09/29
1.5K0
【DB笔试面试578】在Oracle中,什么是会话游标?会话游标和共享游标的区别有哪些?会话游标分为哪几类?
【DB笔试面试576】在Oracle中,简述Oracle中的游标。
在介绍游标之前先介绍一下Oracle数据库中库缓存(Library Cache)的作用及其组成结构。库缓存是SGA中共享池(Shared Pool)中的一块内存区域,主要作用就是缓存执行过的SQL语句和PL/SQL语句(例如存储过程、函数、包、触发器)及其所对应的解析树(Parse Tree)和执行计划等信息。当同样的SQL语句和PL/SQL语句再次被执行的时候就可以直接利用已经缓存在库缓存中的那些相关对象而无须再次从头开始解析,这样就提高了这些SQL语句和PL/SQL语句在重复执行时的执行效率。库缓存(Library Cache)在SGA中的位置如下图所示:
AiDBA宝典
2019/09/29
1.3K0
【DB笔试面试576】在Oracle中,简述Oracle中的游标。
Python 3 中 PyMongo 的用法
MongoDB存储 在这里我们来看一下Python3下MongoDB的存储操作,在本节开始之前请确保你已经安装好了MongoDB并启动了其服务,另外安装好了Python的PyMongo库。 连接M
崔庆才
2017/07/26
6.3K0
【DB笔试面试577】在Oracle中,游标有哪几类?
游标(Cursor)是Oracle数据库中SQL解析和执行的载体,它可以分为共享游标(Shared Cursor)和会话游标(Session Cursor)。共享游标是指缓存在库缓存(Library Cache)里的一种库缓存对象,其实就是指缓存在库缓存里的SQL语句和匿名PL/SQL块所对应的库缓存对象。共享游标是Oracle缓存在库缓存中的几十种库缓存对象之一,它所对应的库缓存对象句柄的Namespace属性的值是CRSR(也就是Cursor的缩写)。共享游标会存储目标SQL的SQL文本、解析树、该SQL所涉及的对象定义、该SQL所使用的绑定变量类型和长度,以及该SQL的执行计划等信息。共享游标可以细分为父游标(Parent Cursor)和子游标(Child Cursor),可以通过视图V$SQLAREA来查看当前缓存在库缓存(Library Cache)中的父游标,而通过V$SQL来查看缓存在库缓存中的子游标。Oracle设计这种嵌套的Parent Cursor和Child Cursor并存的结构是为了能尽量减少对应的Hash Bucket中库缓存对象句柄链表的长度。
AiDBA宝典
2019/09/29
8110
【DB笔试面试577】在Oracle中,游标有哪几类?
父游标、子游标及共享游标
        游标是数据库领域较为复杂的一个概念,因为游标包含了shared cursor和session cursor。两者有其不同的概念,也有不同的表现形式。共享游标的概念易于与SQL语句中定义的游标相混淆。本文主要描述解析过程中的父游标,子游标以及共享游标,即shared cursor,同时给出了游标(session cursor)的生命周期以及游标的解析过程的描述。   
Leshami
2018/08/14
1.5K0
【DB笔试面试585】在Oracle中,什么是常规游标共享?
游标共享(Cursor Sharing)是指共享游标(Shared Cursor)之间的共享,游标共享可以实现重用存储在子游标(Child Cursor)中的解析树和执行计划而不用从头开始做硬解析,从而提高系统性能。特别对于同一类型的目标SQL更应该实现游标共享,而使用绑定变量就可以实现游标共享。
AiDBA宝典
2019/09/29
8940
ORACLE游标(oracle游标属性)
简单说,退出循环的必要条件:fetch 语句执行成功 + 第一次 fetch 的值返回 null
全栈程序员站长
2022/08/02
1.6K0
ORACLE游标(oracle游标属性)
父游标、子游标及共享游标
游标是数据库领域较为复杂的一个概念,因为游标包含了shared cursor和session cursor。两者有其不同的概念,也有不同的表现形式。 共享游标的概念易于与SQL语句中定义的游标相混淆。本文主要描述解析过程中的父游标,子游标以及共享游标,即shared cursor,同时给出了 游标(session cursor)的生命周期以及游标的解析过程的描述。   
全栈程序员站长
2022/07/15
1.5K0
pymongo中针对指定集合更新validator规则
  在确保pymongo中所使用的用户对目标数据库具有dbAdmin之类的管理权限的前提下(若无权限,可在mongo中执行db.grantRolesToUser("目标用户名", [{ role: "dbAdmin", db: "目标数据库名" }])进行权限添加),利用command()执行collMod命令进行更新,例如:
Feffery
2023/10/18
1130
一日一技:在Pymongo中设置连接超时时间
在使用 pymongo 连接 MongoDB 的时候,如果数据库出现问题,pymongo 默认会等待 20 秒左右才会报连接超时,如下图所示:
青南
2019/10/21
5.2K0
一日一技:在Pymongo中设置连接超时时间
SAP ABAP中的游标用法
*"Native SQL语句不能以句点号结尾; *"不能在EXEC SQL…ENDEXEC间有注释,即不能有星号与双引号的出现; *"参数占位符使用冒号,而不是问号; DATA: ARG1 TYPE STRING VALUE '300'.
matinal
2020/11/27
7520
SAP ABAP中的游标用法
【DB笔试面试587】在Oracle中,常规游标共享和自适应游标共享的联系和区别有哪些?
从严格意义上来说,常规游标共享和自适应游标共享是各自独立的,两者之间没有必然的联系。
AiDBA宝典
2019/09/29
5930
4种方法解决MongoDB游标超时的问题
短短4行代码,读取MongoDB里面的每一行数据,然后传入 parse_data做处理。处理完成以后再读取下一行。逻辑清晰而简单,能有什么问题?只要parse_data(row)不报错,这一段代码就完美无缺。
青南
2019/08/20
4.1K0
4种方法解决MongoDB游标超时的问题
游标
执行结果 1         2       测试看看      xland 2         4       asdfasdf      xland 3         5       asdfasdf      xland 4         6       全文索引全文索引全文索引xland的全文索引      xland 再看一种执行方式
liulun
2022/05/08
5110
游标
游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标充当指针的作用。尽管游标能遍历结果中的所有行,但他一次只指向一行。
ellipse
2019/08/16
6480
游标
Pymongo:update更新数据
导读 Pymongo update用法。 1、现在集合里有3条数据 import pymongo mongo_client = pymongo.MongoClient( host="192.168.0.112", port=27017, username="admin", password="123456" ) mongo_db = mongo_client["db1"] # 读取数据 res = mongo_db.chat.find() for i in res: print(i) #
新码农
2020/12/21
7.7K0
Pymongo:update更新数据
【DB笔试面试586】在Oracle中,什么是自适应游标共享(4)?
从上述计算结果可以看出,现在计算出的可选择率范围为[0.014172,0.017322],在CHILD_NUMBER为5的原有Child Cursor对应的可选择率范围[0.000023,0.052317]之内,所以刚才Oracle在执行上述SQL时(即第8次执行目标SQL)用的就是软解析/软软解析,并且此时重用的就是CHILD_NUMBER为5的Child Cursor中存储的解析树和执行计划。
AiDBA宝典
2019/09/29
5720
Python基础学习_06_数据存储
Python中常用的数据存储的方式有:pickle模块,shelve模块,MySQL数据库,MongoDB数据库,SQLite轻量数据库,Excel表格存储等等。
码农帮派
2020/04/01
1.1K0
Python基础学习_06_数据存储
【DB笔试面试586】在Oracle中,什么是自适应游标共享(3)?
从如下查询结果可以看到目标SQL对应的列VERSION_COUNT的值从之前的5变为了现在的6,列EXECUTIONS的值为7,说明Oracle在第7次执行目标SQL时依然用的是硬解析。从查询结果可以看到,Oracle此时新生成了一个CHILD_NUMBER为5的Child Cursor,并且把存储相同执行计划的CHILD_NUMBER为4的原有Child Cursor标记为非共享。
AiDBA宝典
2019/09/29
3590

相似问题

PyMongo游标迭代

42

连接pymongo游标

20

PyMongo --游标迭代

370

游标迭代在pymongo中的修改

10

迭代在PyMongo中移动游标?

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文