[发明专利]图数据写入方法及装置有效
| 申请号: | 202111224487.8 | 申请日: | 2021-10-21 |
| 公开(公告)号: | CN113672636B | 公开(公告)日: | 2022-03-22 |
| 发明(设计)人: | 戴凯航 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
| 主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/901 |
| 代理公司: | 北京永新同创知识产权代理有限公司 11376 | 代理人: | 林锦辉;刘景峰 |
| 地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据 写入 方法 装置 | ||
本说明书的实施例提供图数据写入方法及装置。响应于接收到第一图数据写请求,基于第一图数据写请求中的目标写入对象的对象标识信息确定各个目标写入对象的对应行锁的行锁索引,所述目标写入对象包括目标写入顶点和/或目标写入边,每个目标写入对象对应一个行锁。基于各个目标写入对象的行锁索引,为第一图数据写请求中的各个目标写入对象加锁。在第一图数据写请求中的各个目标写入对象完成加锁后,执行针对第一图数据写请求的图数据写入。在第一图数据写请求中的各个目标写入对象的图数据写入完成后,对第一图数据写请求持有的行锁进行解锁。在第一图数据写请求持有的所有行锁完成解锁后,将图数据写入结果提供给用户。
技术领域
本说明书实施例通常涉及数据库领域,尤其涉及图数据写入方法及装置。
背景技术
图数据库在写入顶点/边数据时,为了保证数据的准确性,需要对相应的数据资源进行加锁,并且在图数据写入完成后进行解锁。按照这种图数据写入方式,在图数据库的写入出现热点数据时,会阻塞图数据库内的线程池中的大部分写入线程,从而导致数据写入被阻塞,由此造成图数据库的整体写入TPS(Transactions Per Second)大幅下降。此外,由于锁之间存在互斥性,使得热点数据的写请求无法并发执行,从而导致热点数据的写入TPS较低,无法匹配热点数据的写入规模,由此发生大量热点数据写请求失败或超时。
发明内容
鉴于上述,本说明书实施例提供一种图数据写入方法及装置。利用该图数据写入方法及装置,通过为图数据中的每个顶点或每条边设置更细粒度的行锁结构,可以减少顶点/边写入时的锁竞争,由此提升图数据库的整体写入TPS。此外,由于所设置的行锁可以自动增删,由此实现行锁的动态管理,从而可以使用较少内存覆盖保护超大规模的图数据。
根据本说明书实施例的一个方面,提供一种图数据写入方法,包括:响应于接收到用户发起的第一图数据写请求,基于所述第一图数据写请求中的目标写入对象的对象标识信息确定各个目标写入对象的对应行锁的行锁索引,所述目标写入对象包括目标写入顶点和/或目标写入边,每个目标写入对象对应一个行锁;基于各个目标写入对象的行锁索引,为所述第一图数据写请求中的各个目标写入对象加锁;在所述第一图数据请求中的各个目标写入对象完成加锁后,执行针对所述第一图数据写请求的图数据写入;在所述第一图数据写请求中的各个目标写入对象的图数据写入完成后,对所述第一图数据写请求持有的行锁进行解锁;以及在所述第一图数据写请求持有的所有行锁完成解锁后,将图数据写入结果提供给所述用户。
可选地,在上述方面的一个示例中,基于各个目标写入对象的行锁索引,为所述第一图数据写请求中的各个目标写入对象加锁可以包括:基于所述第一图数据写请求中的各个目标写入对象的行锁索引,确定各个目标写入对象的加锁顺序;以及按照所确定的加锁顺序,为所述第一图数据写请求中的各个目标写入对象加锁并将已加锁的行锁信息记录在写请求记录中,所述行锁信息至少包括行锁的行锁索引。
可选地,在上述方面的一个示例中,按照所确定的加锁顺序,为所述第一图数据写请求中的各个目标写入对象加锁可以包括:针对所述第一图数据写请求循环执行下述加锁过程,直到各个目标写入对象完成加锁或者所述第一图数据写请求被放入行锁等待队列:按照所确定的加锁顺序,从所述第一图数据写请求中顺序取出当前未加锁的目标写入对象;针对所取出的目标写入对象,根据该目标写入对象的行锁索引查询所在闩锁中是否存在对应的行锁;在所在闩锁中不存在对应的行锁时,在所在闩锁中为所取出的目标写入对象创建行锁,在所在闩锁中存在对应的行锁时,将所述第一图数据写请求放入该行锁的行锁等待队列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111224487.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





