[发明专利]一种数据采集方法、系统、装置、电子设备及存储介质在审
申请号: | 202010093384.1 | 申请日: | 2020-02-14 |
公开(公告)号: | CN111382156A | 公开(公告)日: | 2020-07-07 |
发明(设计)人: | 苗泽;宋凯华;索寒生;陈海龙;姜霄 | 申请(专利权)人: | 石化盈科信息技术有限责任公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2458;G06F16/27 |
代理公司: | 北京聿宏知识产权代理有限公司 11372 | 代理人: | 吴大建;张杰 |
地址: | 100007 北京市东城区东*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 采集 方法 系统 装置 电子设备 存储 介质 | ||
本发明提供一种数据采集方法、系统、装置、电子设备及存储介质,用于采集以分库分表存储数据的业务系统数据库中数据,该方法包括:接收查询请求;将所述查询请求分解为分布在若干工作节点的任务,每个所述任务处理一个或者多个分片;所述若干工作节点与业务系统数据库的所有分库连接;将每个所述任务下发至对应工作节点的内存中执行;从所述若干工作节点的内存获取查询结果。通过分布式内存计算方式,实现并发请求查询所需的所有业务数据库分库,将大批量数据采集的查询压力分摊到所有分库中,能有效解决单点访问分库分表中间件的导致资源消耗过大的问题。同时基于并发访问也极大的提高了分库分表数据的采集速度,更快为大数据分析平台提供数据。
技术领域
本发明属于大数据技术领域,具体是一种数据采集方法、系统、装置、电子设备及存储介质。
背景技术
由于关系型数据库单机的性能有限,在存储容量、并发连接数、计算处理能力上都容易成为瓶颈,尤其是单表的数据量超过千万级以上,会导致查询效率受到影响,即使添加从库、优化表索引,很多操作的性能也会下降严重。为了解决这个问题,很多业务系统按照数据表水平切分(水平分表)等方式实现分库分表存储数据,减轻了数据库的负担,提升了查询效率。但是采用分库分表方式存储数据会导致大数据平台采集业务系统数据十分困难,当业务系统规模庞大时,一张数据量较大的表(例如交易流水表)需要分布到几十甚至上百的数据库中,同时大数据平台在采集数据时请求量非常庞大,为了避免给业务系统产生压力,不能直接访问分库分表中间件请求数据,只能直连分库直接去分表请求数据。
分库分表有两种方式,即水平分表和垂直分表。垂直分表在日常开发和设计中比较常见,通俗的说法叫做“大表拆小表”,垂直拆分是基于关系型数据库中的“列”(字段)进行的。通常情况下,某个表中的字段比较多,可以新建立一张“扩展表”,将不经常使用或者长度较大的字段拆分出去放到“扩展表”中,最常见的方式就是通过主键或者时间等字段进行Hash和取模后拆分。垂直分表如图1所示,将不同模块的数据分库存储,模块间不相互关联查询,如果有,就必须通过数据冗余或应用层二次加工来解决,这种方法业务和数据结构最清晰,但若不能杜绝跨库关联查询,则此方法不通。水平分表也称为横向分表,是将表中不同的数据行按照一定规律分布到不同的数据库表中(这些表保存在同一个数据库中),从而降低单表数据量,优化查询性能,横向分表如图2所示,相对于垂直分表,横向分表是按照表内某个字段的某种规则来将数据分散存储于不同的数据库(或不同的表),也就是按数据行来切分数据。
现有的分库分表存储方式的数据采集基本是采用查询分库分表中间件的方式,中间件模式通过统一的全局数据模型来访问异构的数据库、遗留系统、Web资源等。中间件位于异构数据源系统(数据层)和应用程序(应用层)之间,向下协调各数据源系统,向上为访问集成数据的应用提供统一数据模式和数据访问的通用接口。各数据源的应用仍然完成它们的任务,中间件系统则主要集中为异构数据源提供一个高层次检索服务。中间件模式是比较流行的数据集成方法,它通过在中间层提供一个统一的数据逻辑视图来隐藏底层的数据细节,使得用户可以把集成数据源看为一个统一的整体。这种模型下的关键问题是如何构造这个逻辑视图并使得不同数据源之间能映射到这个中间层。
当分库分表中间件收到一个SQL查询请求时,会先解析这个SQL请求,查找涉及到的表,然后看此表的定义,如果有分片规则,则获取到SQL里分片字段的值,并匹配分片函数,得到该SQL对应的分片列表,然后将SQL发往这些分片的分库去执行,最后收集和处理所有分片返回的结果数据,并输出回中间件,返回给查询采集客户端。
由于中间件资源有限,所有分库数据的查询、计算都会在中间件里进行,业务系统正常的业务运行都依赖分库分表中间件,所以大批量采集数据导致中间件资源占用过大,会影响业务系统的稳定性。同时,采用查询分库分表中间件的方式,由于需要所有分库数据先汇聚到中间件,导致外部数据平台在采集数据只能单线程连接中间件,采集速度受到影响,在采集大批量数据时往往需要耗费非常多时间,导致后续数据分析业务无法按时进行。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于石化盈科信息技术有限责任公司,未经石化盈科信息技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010093384.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电力调度文本的处理方法及系统
- 下一篇:天线的制造方法、天线及终端设备
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置