(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210641383.5
(22)申请日 2022.06.08
(71)申请人 中债金科信息技 术有限公司
地址 101118 北京市通州区宋庄镇 壁富路
与徐尹路交叉口(汇天云端产业园8号
楼)
(72)发明人 朱浩 毕晓晗 唐华云 王一平
刘文林 黄烁 刘悦
(74)专利代理 机构 北京集佳知识产权代理有限
公司 11227
专利代理师 郭化雨
(51)Int.Cl.
G06F 3/06(2006.01)
G06F 16/2455(2019.01)
(54)发明名称
一种面向应用观测的流式存 储方法及装置
(57)摘要
本申请公开了一种面向应用的流式存储方
法及装置, 可 以获取待存储数据流, 并将待存储
数据流包括的每个流存储至内存, 内存包括块缓
存、 可变内存表和不可变内存表。 待存储流在内
存中的流转顺序依次为块 缓存。 可变内存表和不
可变内存表, 待存储数据流包括日志、 指标或者
调用日志中的其中一项或者多项; 将不可变内存
表中的数据刷到存储介质, 并形成至少一个
Segment存储于第一存储区域; 将至少一个段
(Segment)中每个段分别对应的存储区域的地
址、 每个段对应的键Key、 以及每个段对应的段标
识, 存储至存储介质中的第二存储区域中。 该方
案可以避免重复写入的问题, 并且 可以支持顺序
读取数据, 从而提升 了存储介质的访问性能。
权利要求书3页 说明书10页 附图5页
CN 114879915 A
2022.08.09
CN 114879915 A
1.一种面向应用观测的流式存 储方法, 其特 征在于, 所述方法包括:
获取待存储数据流, 并将所述待存储数据流包括的每个流存储至内存, 所述内存包括
块缓存block cache、 可变内存表A ctive Memtable和不可变内存表I mmutable Memtable所
述待存储流在内存中的流转顺序依次为block cache、 Active Memtable、 Immutable
Memtable, 所述待存储数据流包括日志log、 指标Metrics或者调用日志Traces中的其中一
项或者多 项;
将所述Immutable Memtable的数据刷到存储介质, 并形成至少一个Segment存储于第
一存储区域;
将所述至少一个Segment中每个Segment分别对应的存储区域的地址、 所述每个
Segment对应的键Key、 以及所述每个Segment对应的Segment标识, 存储至所述存储介质中
的第二存 储区域中。
2.根据权利要求1所述的方法, 其特 征在于,
所述第一存 储区域采用分层、 分片结构;
所述分层是指将第一存储区域划分为多个级Level, Level级数与该Level存储的数据
的热度反相关, 所述至少一个Segment存储在所述多个Level中的至少一个Level中; 不同
Level级采用不同的存储介质, Lev el级数与存储介质的价格 反相关, 以实现持久化存储、 长
期存储在不影响查询性能的前提下的混合部署;
所述分片是指不同存储数据流Stream的数据以段Segment为单位分布在不同Level, 一
个Stream包含多个Segment, 每个Level中包括一个Stream对应的多个Segment, 其中, 一个
或多个存储 数据流Stream形成了独立的对象集合Schema, 不同Schema对应不同维度的观测
数据, 所述Sc hema由用户定义。
3.根据权利要求1所述的方法, 其特征在于, 所述Key还用于指示所述待存储数据流的
版本。
4.根据权利要求3所述的方法, 其特 征在于, 所述待存 储数据流的版本信息, 包括:
所述Key产生的时间戳;
针对Update操作, 数据因具备最新的版本信息使得在Segment下沉过程中, 通过所述
Key版本合并完成旧版本数据的删除;
针对Delete操作, 则是通过将版本信息定义为无效信息system unvalid, 使得在第二
存储区域中的标识更新, 完成了数据的逻辑删除。
5.根据权利 要求1所述的方法, 其特征在于, 所述将所述待存储数据流Stream包括的每
个流存储至内存, 包括:
将所述待存储数据流和无效数据存储至 内存中的第 一缓存行中, 所述内存中的第 一缓
存行所能容纳的数据量大于所述待缓存数据流对应的数据量, 所述待存储 数据流对应的数
量和所述无效数据的数据流之和, 等于所述第一缓存行 所能容纳的数据量。
6.根据权利要求1所述的方法, 其特征在于, 所述待存储数据流中包括所述待存储数据
流的数据来源。
7.根据权利要求1所述的方法, 其特 征在于, 所述待存 储数据流, 通过如下 方式获得:
采集原始数据;
为所述原 始数据添加数据来源;权 利 要 求 书 1/3 页
2
CN 114879915 A
2根据所述原 始数据和所述原 始数据的数据来源, 得到所述待存 储数据流。
8.根据权利要求7所述的方法, 其特征在于, 所述原始数据包括以下任意一项或者多
项:
log、 Metrics或者Traces。
9.根据权利要求1所述的方法, 其特 征在于, 所述待存 储数据流对应的数据来源, 包括:
log、 Metrics以及Traces中的其中一项或者多 项。
10.根据权利要求1所述的方法, 其特 征在于, 所述方法还 包括:
接收数据查询请求, 所述数据查询请求中包括 查询关键 字;
以所述查询关键字为索引查询所述第 二存储区域, 得到所述查询关键字对应的存储地
址和segment标识;
以所述存 储地址和segment标识为索引, 查找所述第一存 储区域, 得到查询结果;
输出所述查询结果。
11.一种面向应用观测的流式存 储装置, 其特 征在于, 所述装置包括:
获取单元, 用于获取待存 储数据流;
第一存储单元, 用于将所述待存储数据流包括的每个流存储至内存, 所述内存包括块
缓存block cache、 可变内存表A ctive Memtable和不可变内存表I mmutable Memtable所述
待存储流在内存中的流转顺序依次为block cache、 Active Memtable、 Immutable
Memtable, 所述待存储数据流包括日志log、 指标Metrics或者调用日志Traces中的其中一
项或者多 项;
第二存储单元, 用于将所述Immutable Memtable的数据刷 到存储介质, 并形成至少 一
个Segment存 储于第一存 储区域;
第三存储单元, 用于将所述至少一个Segment中每个Segment分别对应的存储区域的地
址、 所述每个Segment对应的键Key、 以及所述每个Segment对应的Segment标识, 存储至所述
存储介质中的第二存 储区域中。
12.根据权利要求1 1所述的装置, 其特 征在于,
所述第一存 储区域采用分层、 分片结构;
所述分层是指将第一存储区域划分为多个级Level, Level级数与该Level存储的数据
的热度反相关, 所述至少一个Segment存储在所述多个Level中的至少一个Level中; 不同
Level级采用不同的存储介质, Lev el级数与存储介质的价格 反相关, 以实现持久化存储、 长
期存储在不影响查询性能的前提下的混合部署;
所述分片是指不同存储数据流Stream的数据以段Segment为单位分布在不同Level, 一
个Stream包含多个Segment, 每个Level中包括一个Stream对应的多个Segment, 其中, 一个
或多个存储 数据流Stream形成了独立的对象集合Schema, 不同Schema对应不同维度的观测
数据, 所述Sc hema由用户定义。
13.根据权利要求1所述的装置, 其特征在于, 所述Key还用于指示所述待存储数据流的
版本。
14.根据权利要求3所述的装置, 其特 征在于, 所述待存 储数据流的版本信息, 包括:
所述Key产生的时间戳;
针对Update操作, 数据因具备最新的版本信息使得在Segment下沉过程中, 通过所述权 利 要 求 书 2/3 页
3
CN 114879915 A
3
专利 一种面向应用观测的流式存储方法及装置
文档预览
中文文档
19 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共19页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 00:12:36上传分享