基于元数据动态配置的异构数据服务发布与关联查询方法与流程
本发明涉及大数据分析的,具体为基于元数据动态配置的异构数据服务发布与关联查询方法。
背景技术:
1、现有的多数据源管理技术,通常采用静态配置文件(如yaml/properties)或基于特定sdk的代码注入方式来维护数据源连接信息。在发布数据接口时,往往需要开发人员预先在代码中定义实体类(entity)或手动编写复杂的json映射配置,才能实现对数据库表的增删改查或关联查询。
技术实现思路
1、(一)解决的技术问题
2、针对现有技术的不足,本发明提供了基于元数据动态配置的异构数据服务发布与关联查询方法,具备自动接入、一键发布与跨源关联查询的优点,解决了异构数据服务配置繁琐、重复开发及人工编码的问题。
3、(二)技术方案
4、为实现上述目的,本发明提供如下技术方案:基于元数据动态配置的异构数据服务发布与关联查询方法,包括以下步骤:
5、步骤一,采集目标数据库的连接信息并存储至元数据数据库;
6、步骤二,从元数据数据库的数据源配置表中选择目标数据源配置,则自动探查物理表结构,建立数据资源档案,并将其发布为支持增删改查操作的接口;
7、步骤三,筛选代表关键词,并基于用户输入的查询分词与代表关键词进行对齐和组合,输出关联sql;将关联sql解析为语法树,并根据该语法树按数据源边界拆解翻译为本地sql分发执行。
8、优选的,所述步骤一还包括:
9、用户登录时,实时采集键盘和鼠标数据,并构建键盘事件序列和鼠标事件序列,经归一化后提取当前统计特征向量,并与历史模板特征向量计算欧式距离,判定是否通过登录认证。
10、优选的,所述构建键盘事件序列和鼠标事件序列具体包括:
11、计算单次按键的持续时长即释放时刻减去按下时刻,以及相邻两次按键的间隔时长即当前按键的按下时刻减去上一按键的释放时刻,将每一次按键转换为键盘事件,以按键的按下时刻作为开始时间,将全部键盘事件按开始时间升序排列,生成键盘事件序列;
12、采集鼠标每个采样点的坐标和时间戳,根据相邻采样点的位移差和时间差,计算每个采样间隔内鼠标移动的瞬时速度、加速度以及运动方向的角度变化,将每一次采样间隔转换为鼠标事件,以鼠标采样区间的起始时刻作为鼠标事件的开始时间,并将鼠标事件按升序排列,生成鼠标事件序列。
13、优选的,所述将键盘事件序列和鼠标事件序列经归一化后提取当前统计特征向量包括:
14、将键盘的持续时长、间隔时长以及鼠标事件中的位移、瞬时速度、加速度和角度变化特征维度中的任意数值字段,逐字段作为原始特征值,对每个字段的原始特征值,减去该字段在所有历史样本中的均值,再除以该字段在所有历史样本中的标准差,得到归一化后的特征值,将所有归一化后的特征值拼接为当前统计特征向量。
15、将事件类型采用整数编码,例如键盘事件映射为1,鼠标事件映射为0,并对事件序列中所有数值字段进行归一化,包括键盘的持续时长、间隔时长以及鼠标事件中的位移、瞬时速度、加速度和角度变化特征维度。对应表达式如下:
16、
17、其中,x表示原始特征值,例如键盘的持续时长、间隔时长以及鼠标事件中的位移、速度、加速度和角度变化;μ表示任意数值字段在所有历史样本的均值,σ表示任意数值字段在所有历史样本的标准差。
18、优选的,所述当前统计特征向量与历史模板特征向量计算欧式距离具体包括:
19、逐维取当前统计特征向量和历史模板特征向量对应分量的差值并求平方,将所有维度的平方差求和开平方根,计算得到标量距离值,若该标量距离值小于预设阈值则判定认证通过,并以加权融合更新历史模板特征向量,若超过阈值则触发三次重试机制,三次均超出预设阈值则拒绝登录。对应表达式如下:
20、
21、其中,distance表示当前统计特征向量与模板特征向量之间差异大小的数值指标;表示当前统计特征向量;表示模板特征向量;n表示特征向量的固定维度;若距离小于预设阈值则直接通过,并对模板特征向量进行加权融合更新,对应表达式如下:
22、
23、其中α表示保留权重,在本实施例中取值0.8,即模板特征向量保留80%的影响力,当前统计特征向量贡献20%,加权融合后生成新的模板特征向量
24、优选的,所述筛选代表关键词具体包括:
25、将各数据源采集所有物理表的表名、字段名及注释文本作为原始原料,通过分词器将文本拆解为独立关键词,并建立每个关键词到对应数据源档案的映射关系,形成倒排索引;
26、对每个关键词与每个数据源逐一计算tf-idf值,对每个关键词取其在所有数据源上tf-idf值的最大值作为其全局重要分数,预设分数阈值,将全局重要分数不低于该分数阈值的关键词筛选为代表关键词。
27、通过tf-idf计算出每个关键词的重要分数,具体包括:
28、对任意一个关键词j和任意一个数据资源i,计算词频tf,将关键词j在数据资源i所有相关文本中出现的次数,除以该数据资源文本经过分词后得到的总词数,得到该总词数在该数据资源中的局部频率值;对应表达式如下:
29、
30、其中,tf(j,i)表示局部频率值,nj,i表示关键词j在数据资源i的文本中出现的次数;表示数据资源i中所有关键词的总出现次数。统计所有资源的总个数,对于每个关键词,统计该关键词出现在多少个不同的数据资源中,将数据资源的总个数除以一加上该关键词出现的数据资源个数,再将得到的结果取对数,即得到该关键词的逆文档频率值,对应的表达式如下:
31、
32、其中,idf(j)表示关键词j的逆文档频率,n表示数据资源的总数,即所有物理表的数量;dfj表示包含关键词j的数据资源的数量;log在本实施例中取以10为底。将局部频率值tf(j,i)乘以逆文档频率值idf(j)得到关键词j在数据资源i中的tf-idf值。tf-idf值表征关键词j对数据资源i的区分能力与代表性强度。
33、为了从整体上衡量任一关键词j是否具备足够的代表性,对于每个关键词j,取其在所有数据资源i上计算得到的tf-idf(j,i)中的最大值,作为该关键词的全局重要分数,表达式如下:
34、
35、其中,importance(j)表示全局重要分数,该分数反映关键词j在其最能代表的物理表中所能达到的显著程度。预设分数阈值θ,在本实施例中取值为0.3,当importance(j)≥θ时,将该关键词视为代表关键词。通过上述离线处理流程,从各数据源的物理表元数据中筛选具有代表性关键词,为后续在线查询时快速定位候选物理表提供索引依据。
36、优选的,所述查询分词与代表关键词对齐具体包括:
37、用户输入关联查询语句,提取关联查询语句中的关键词并与离线筛选出的代表关键词结合进行对比,将关键词划分为有效关键词集合和未知关键词集合;
38、对于未知关键词集合,通过同义词典或词向量模型生成语义相近的候选拓展词,并与代表关键词集合匹配得到候选替换词列表,交由用户确认替换或保持原词,替换的词并入有效关键词集合参与后续查询,未替换的词则丢弃。
39、优选的,所述有效关键词组合具体包括:
40、基于确认后的有效关键词集合,在倒排索引中执行全and匹配以定位同时包含所有关键词的物理表,若命中则生成单表查询sql,若未命中则枚举子集、合并命中表并补入未覆盖关键词的物理表,从元数据数据库中读取预先采集的表间关联关系,结合该关联关系生成带join的关联查询sql,若表间不存在任何关联关系,则将彼此有关系的表归为同一关联组,按关联组拆分为多个独立查询,若所有子集均无命中则降级为并行独立查询,为每个关键词生成单表查询sql。
41、(三)有益效果
42、与现有技术相比,本发明提供了基于元数据动态配置的异构数据服务发布与关联查询方法,具备以下有益效果:
43、1、该基于元数据动态配置的异构数据服务发布与关联查询方法,通过自动采集多源异构数据库的连接信息并动态创建连接池,结合离线构建的关键词倒排索引与在线意图解析,利用calcite将关联查询按数据源边界拆解为适配各数据库的本地子查询,从而将异构数据源跨源关联查询。
44、2、该基于元数据动态配置的异构数据服务发布与关联查询方法,通过自动探查物理表结构并生成数据资源档案,将任意数据表一键发布为增删改查接口,从而去除传统开发手工编码数据访问层代码的重复劳动。
45、3、该基于元数据动态配置的异构数据服务发布与关联查询方法,通过采集用户登录时的键盘按键节奏与鼠标移动轨迹构建行为特征向量,并将其与历史模板进行比对计算欧氏距离,从而防止密码泄露后他人通过脚本模拟完成认证。
46、4、该基于元数据动态配置的异构数据服务发布与关联查询方法,通过分词与tf-idf离线筛选代表关键词,在线将用户输入的自然查询语句分词后与代表关键词对齐,并借助全and匹配与子集枚举自动定位候选物理表,使得用户能以自然语言完成复杂的关联查询。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com