[发明专利]从数据库中读取数据的方法及装置有效
| 申请号: | 201180004080.2 | 申请日: | 2011-03-22 |
| 公开(公告)号: | CN102741843A | 公开(公告)日: | 2012-10-17 |
| 发明(设计)人: | 王震 | 申请(专利权)人: | 青岛海信传媒网络技术有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
| 地址: | 266071 山东省青*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据库 读取 数据 方法 装置 | ||
1.一种从数据库读取数据的方法,其特征在于,包括:
根据缓存节点需要缓存的数据内容,为所述需要缓存的数据内容建立数据读取控制表和创建消息队列,所述数据读取控制表包括缓存节点信息表和缓存节点数据表,所述缓存节点信息表包括缓存节点ID和缓存节点标识,所述缓存节点数据表包括数据表标识、归属缓存节点标识、实际读取对象标识;
当应用程序更新数据库中的数据时,更新数据的数据表对应的触发器,将所述数据表的更新数据信息和所述数据表需要缓存的缓存节点标识,写入到所述数据表对应的消息队列中;
缓存节点从所述缓存节点对应的消息队列中读取所述缓存节点对应的更新数据信息,并根据所述更新数据信息更新所述缓存节点中的数据。
2.根据权利要求1所述的方法,其特征在于,所述根据缓存节点需要缓存的数据内容,为所述需要缓存的数据内容创建消息队列,包括:
根据缓存节点需要缓存的数据内容,为不同类型的所述需要缓存的数据内容建立不同的消息队列。
3.根据权利要求2所述的方法,其特征在于,当所述数据库为Oracle数据库时,所述根据缓存节点需要缓存的数据内容,为不同类型的所述需要缓存的数据内容建立不同的消息队列,包括:
根据缓存节点需要缓存的数据内容,为不同类型的所述需要缓存的数据内容建立不同的数据对象类型;
根据不同的所述数据对象类型分别建立不同的数据队列表;
为每个所述数据队列表创建对应的消息队列。
4.根据权利要求1所述的方法,其特征在于,所述当应用程序更新数据库中的数据时,更新数据的数据表对应的触发器,将所述数据表的更新数据信息和所述数据表需要缓存的缓存节点标识,写入到所述数据表对应的消息队列中,包括:
当应用程序更新数据库中的数据时,更新数据的数据表对应的触发器获取所述数据表的更新数据信息,并根据所述数据表的标识查询所述缓存节点数据表,获取缓存所述数据表的缓存节点标识;
将所述更新数据信息和所述缓存节点标识写入到所述数据表对应的消息队列中。
5.根据权利要求4所述的方法,其特征在于,所述更新数据的数据表对应的触发器将所述更新数据信息写入到所述数据表对应的消息队列中,包括:
确定所述更新数据信息写入到消息队列中的形式;
若所述更新数据信息以更新数据记录标识的形式写入消息队列中,则所述更新数据的数据表对应的触发器读取所述数据表更新数据记录的标识,并将所述更新数据信息以更新数据记录标识的形式写入到所述数据表对应的消息队列中;
若所述更新数据信息以更新数据的形式写入消息队列中,则所述更新数据的数据表对应的触发器读取所述数据表更新数据,并将所述更新数据信息以更新数据的形式直接写入到所述数据表对应的消息队列中。
6.根据权利要求1所述的方法,其特征在于,所述缓存节点从所述缓存节点对应的消息队列中读取所述缓存节点对应的更新数据信息,并根据所述更新数据信息更新所述缓存节点中的数据,包括:
缓存节点根据所述缓存节点的缓存节点ID查询所述缓存节点信息表,获取所述缓存节点的缓存节点标识;
根据所述缓存节点标识读取所述缓存节点对应的消息队列;
若所述缓存节点对应的消息队列中存在所述缓存节点的数据,则从所述缓存节点对应的消息队列中读取所述缓存节点对应的更新数据信息,并根据所述更新数据信息更新所述缓存节点中的数据;
若所述缓存节点对应的消息队列中不存在所述缓存节点的数据,则所述缓存节点读取所述缓存节点对应的消息队列的程序被阻塞。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述从所述对应的消息队列中读取所述缓存节点对应的更新数据信息,根据所述更新数据信息更新所述缓存节点中的数据,包括:
确定所述更新数据信息写入到消息队列中的形式;
当所述更新数据信息以更新数据记录标识的形式写入到所述数据表对应的消息队列中时,从所述对应的消息队列中读取所述缓存节点对应的更新数据记录标识,根据所述更新数据记录标识从数据库中获取所述更新数据记录标识对应的更新数据,并根据所述更新数据更新所述缓存节点中的数据;
当所述更新数据信息以更新数据的形式写入到所述数据表对应的消息队列中时,从所述对应的消息队列中读取所述缓存节点对应的更新数据,并根据所述更新数据更新所述缓存节点中的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛海信传媒网络技术有限公司,未经青岛海信传媒网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180004080.2/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





