一种数据库的数据操作方法、装置、设备及介质制造方法及图纸

技术编号:30518799 阅读:29 留言:0更新日期:2021-10-27 23:02
本发明专利技术提供一种数据库的数据操作方法、装置、设备及介质,所述方法包括:SDK Client接收数据更新指令;SDK Client向多媒体服务器发送Protobuf描述文件获取请求,并接收多媒体服务器返回的Protobuf描述文件,其中多媒体服务器预先存储有Protobuf描述文件;SDK Client从Protobuf描述文件中确定数据更新指令所对应的字段编号;SDK Client将数据更新指令、字段编号发送给数据库进行更新。本发明专利技术通过在NOSQL数据库中实现了复杂Schema数据的字段级数据操作,业务可以直接实现字段级数据操作,不仅极大简化了业务侧的数据操作,同时也给业务侧带来了非常明显的效率提升。务侧带来了非常明显的效率提升。务侧带来了非常明显的效率提升。

【技术实现步骤摘要】
一种数据库的数据操作方法、装置、设备及介质


[0001]本专利技术涉及数据库
,特别涉及一种数据库的数据操作方法、装置、设备及介质。

技术介绍

[0002]用于数据存储的数据库主要包括结构化和非结构化类型,结构化类型数据库如Mysql数据库,非结构化类型数据库典型如Key

Value数据库。
[0003]结构化数据库在用于推荐场景的特征数据存储时,提供了结构化的数据存储能力,推荐业务可以基于结构化的数据存储能力实现特征数据的实时读写。但是,结构化数据库虽然可以提供结构化的数据存储能力,极大便利业务侧操作,但却可能存在着诸如结构扩展困难的问题,或者存在扩展困难的问题,如Mysql数据库数据规模增大时,扩展困难。
[0004]非结构化类型数据库Key

Value在用于推荐场景的特征数据存储时,提供基本的KV数据读写能力,用于推荐业务对特征数据的实时读写,由于Key

Value数据库缺乏数据的Schema(数据库中数据的组织和结构)能力,在特征数据复杂的背景下,对于推荐业务,根据相应的业务侧的读写请求,需要服务器处理特征数据结构的编码和解码,对于特征数据的更新需要从数据库中获取原始数据,解码后根据业务侧的读取请求更新原始数据,更新完后编码写回数据库,从而业务侧操作过程复杂,需要额外资源,且存在两次与网络侧的交互。

技术实现思路

[0005]本专利技术实施例提供一种数据库的数据操作方法、装置、设备及介质,解决现有的Key
>‑
Value数据库中对有结构的Protobuf Schema的数据更新复杂而漫长,且当存在多个业务操作端同时更新相同key时出现并发更新的冲突的问题。
[0006]第一方面,本专利技术实施例提供一种数据库的数据操作方法,该方法包括:
[0007]SDK Client接收数据更新指令;
[0008]SDK Client向多媒体服务器发送Protobuf描述文件获取请求,并接收所述多媒体服务器返回的所述Protobuf描述文件,其中所述多媒体服务器预先存储有Protobuf描述文件;
[0009]SDK Client从所述Protobuf描述文件中确定所述数据更新指令所对应的字段编号;
[0010]SDK Client将所述数据更新指令、字段编号发送给数据库进行更新。
[0011]在一种可能的实施方式中,所述SDK Client从所述Protobuf描述文件中确定所述数据更新指令所对应的字段编号,包括:
[0012]所述SDK Client根据数据更新指令获取数据操作信息;
[0013]所述SDK Client根据数据操作信息,从所述Protobuf描述文件中确定数据操作信息所对应的字段编号。
[0014]本专利技术实施例提供的数据库的数据操作方法,通过SDK Client接收数据更新指令后从多媒体服务器中拉取的Protobuf描述文件中获取字段编号,发送至数据库进行更新,实现了支持Protobuf Schema的数据CRUD(增加(Create)、检索(Retrieve)、更新(Update)和删除(Delete))能力的非关系型数据库。
[0015]在一种可能的实施方式中,所述SDK Client将所述数据更新指令、字段编号发送给数据库进行更新,包括:
[0016]所述SDK Client根据数据更新指令,确定待更新数据的用户所对应的key值以及待更新的数据值value;
[0017]所述SDK Client将所述key值、数据值value和字段编号发送给数据库进行更新。
[0018]本专利技术实施例提供的数据库的数据操作方法,通过SDK Client确定的key值、数据值value可以在数据库精确锁定需要更新的数据。
[0019]在一种可能的实施方式中,所述SDK Client将所述key值、数据值value和字段编号发送给数据库进行更新,包括:
[0020]所述SDK Client将所述key值、数据值value和字段编号发送给数据库,由所述数据库遍历所述key值对应的字段编号,查到所述字段编号时利用所述数据值value进行数据更新。
[0021]本专利技术实施例提供的数据库的数据操作方法,数据库根据接收到的所述key值定位到待更新的数据值value所对应的列表,通过遍历数据库中的字段编号与SDK Client发送的字段编号进行比对,找到需要更新的字段。提高了更新的效率,避免从数据库中取数据,解码,在数据库外完成更新,再编码存储至数据库,减少了数据更新的流程。在一种可能的实施方式中,SDK Client将所述数据更新指令、字段编号发送给数据库进行更新,包括:
[0022]所述SDK Client根据数据更新指令,确定待更新数据的用户所对应的key值;
[0023]所述SDK Client将所述key值和字段编号发送给数据库进行更新。
[0024]本专利技术实施例,本专利技术实施例在进行数据更新时,数据更新指令可以仅包括字段编号,也可以包括字段编号及要更新的数据值value。
[0025]在一种可能的实施方式中,所述SDK Client将所述key值和字段编号发送给数据库进行更新,包括:
[0026]所述SDK Client将所述key值和字段编号发送给数据库,由所述数据库确定所述key值为新key值时,存储新key值并确定所述新key值对应的字段编号,或者遍历所述key值对应的字段编号,查到所述字段编号时删除对应的数据值value或者向SDK返回对应的数据值value。
[0027]本专利技术实施例中数据更新指令仅包括字段编号时,数据更新指令中的数据操作信息包括增加一个字段(字段插入),删除某一字段或查看某一字段的内容。
[0028]在一种可能的实施方式中,SDK Client接收数据更新指令,包括:
[0029]SDK Client接收用户对显示的Protobuf描述文件操作产生的数据更新指令;或者
[0030]SDK Client接收根据业务操作及数据更新条件,判定业务操作符合Protobuf描述文件中任一字段的更新条件时,产生的数据更新指令。
[0031]本专利技术实施例多媒体服务器提供HTTP接口用于UI操作,一方面可以提供与业务相关的UI操作,另一方面,可以提供用于对数据库更新相关的UI操作。多媒体服务器根据UI操
作产生相应的数据更新指令。
[0032]在一种可能的实施方式中,SDK Client将所述数据更新指令、字段编号发送给数据库进行更新之后,还包括:
[0033]SDK Client接收数据库返回的携带更新结果的数据操作响应消息;
[0034]SDK Client将数据操作响应消息返回给所述多媒体服务器。
[0035]本专利技术实施例数据操作响应消息根据数据更新指令中数据操作信息的不同,所携带内容不同本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据库的数据操作方法,其特征在于,所述方法包括:SDK Client接收数据更新指令;SDK Client向多媒体服务器发送Protobuf描述文件获取请求,并接收所述多媒体服务器返回的所述Protobuf描述文件,其中所述多媒体服务器预先存储有Protobuf描述文件;SDK Client从所述Protobuf描述文件中确定所述数据更新指令所对应的字段编号;SDK Client将所述数据更新指令、字段编号发送给数据库进行更新。2.根据权利要求1所述的方法,其特征在于,所述SDK Client从所述Protobuf描述文件中确定所述数据更新指令所对应的字段编号,包括:所述SDK Client根据数据更新指令获取数据操作信息;所述SDK Client根据数据操作信息,从所述Protobuf描述文件中确定数据操作信息所对应的字段编号。3.根据权利要求2所述的方法,其特征在于,所述SDK Client将所述数据更新指令、字段编号发送给数据库进行更新,包括:所述SDK Client根据数据更新指令,确定待更新数据的用户所对应的key值以及待更新的数据值value;所述SDK Client将所述key值、数据值value和字段编号发送给数据库进行更新。4.根据权利要求2所述的方法,其特征在于,SDK Client将所述数据更新指令、字段编号发送给数据库进行更新,包括:所述SDK Client根据数据更新指令,确定待更新数据的用户所对应的key值;所述SDK Client将所述key值和字段编号发送给数据库进行更新。5.根据权利要求1所述的方法,其特征在于,SDK Client接收数据更新指令,包括:SDK Client接收用户对显示的Protobuf描述文件操作产生的数据更新指令;或者SDK Client接收根据业务操作及数据更新条件,判定业务操作符合Protobuf描述文件中任一字段的更新条...

【专利技术属性】
技术研发人员:张磊黄崛柳奇涛骆庚李雪冬吴官林
申请(专利权)人:杭州网易云音乐科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1