CN108256046A - 大数据处理框架源数据的统一访问通道的实现方法 - Google Patents
大数据处理框架源数据的统一访问通道的实现方法 Download PDFInfo
- Publication number
- CN108256046A CN108256046A CN201810029082.0A CN201810029082A CN108256046A CN 108256046 A CN108256046 A CN 108256046A CN 201810029082 A CN201810029082 A CN 201810029082A CN 108256046 A CN108256046 A CN 108256046A
- Authority
- CN
- China
- Prior art keywords
- data
- access path
- source
- big data
- channels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种大数据处理框架源数据的统一访问通道的实现方法,其是在任务执行模块中对接了多种大数据处理框架;并在数据获取模块中设置一条统一访问通道,所述统一访问通道对接多种数据源通道;所述任务执行模块通过大数据处理框架接收任务,然后向所述数据获取模块请求源数据;所述数据获取模块收到请求时,由所述统一访问通道根据所匹配数据源通道访问源数据存储介质,获取源数据供所述任务执行模块执行任务使用。本发明将源数据访问按照数据格式进行分类,提供统一的源数据访问通道供大数据平台共用,提高了效率。
Description
技术领域
本发明涉及大数据的访问方法,特别涉及大数据处理框架源数据的统一访问通道的实现方法。
背景技术
大数据处理负责对大数据系统中的数据进行计算(管理和处理)。源数据包括从持久存储中读取的数据或通过消息队列等方式接入到系统中的数据,而计算则是从数据中提取信息的过程。面对DB、SQL、NOSQL、MPP、Search、Streaming、Graph、MachineLearning、ETL等不同的业务及不同场景,现在主流的大数据处理框架有Spark、Flink、Hive、Pig、GraphLab、Cassandra、MongoDB、Impala、Greenplum、HAWQ、Storm、ElasticSearch、Solr、Hbase、MySQL等,每个大数据处理框架也可以作为其他处理框架的数据源来提供数据,每种大数据处理框架背后都支持多种的数据源存储方式及访问方式。以Spark为例支持读取存储于HDFS、本地文件、S3、Hive、Hbase、Tarchyon、RDBMS等存储介质中,这里可以将存储介质分类为传统的关系型数据、NoSQL数据、分布式存储数据、内存分布式存储数据、云平台数据、其他大数据平台框架数据。每种存储方式又可以分为不同的数据存储格式,通用的数据存储格式就有Json、SequenceFile、TextFile、Parquet、CSV、OrcFile、Avro等,还有每种存储介质自己独有的数据存储格式,例如每种RDBMS,NoSQL都是不同的,统计下来常用的不下几十种,在用的有一二百种,以上类型Spark既然支持读取,同样也是支持将数据写入存储,因为Spark也可以作为其他框架的数据源。那么在大数据平台上一个大数据处理框架一次任务可能需要访问多个数据源,要想支持以上所有的数据源的访问,大数据平台上的数据源访问开发就是个浩大的工程,现在比较常用的方式是在一个企业里面限制固定使用几种的数据存储方式及数据存储格式,这种方式解放了一些开发压力,不过应用程序系统的性能及效率也大打折扣,还有一种方式是通过将数据ETL到设定的存储方式与存储格式上来,在进行业务计算,这种方式不但时效性上受到影响,多了一个环节复杂度也提高了,出问题的概率也提高了。
发明内容
本发明要解决的技术问题,在于提供一种大数据处理框架源数据的统一访问通道的实现方法,将源数据访问按照数据格式进行分类,提供统一的源数据访问通道供大数据平台共用,提高了效率。
本发明是这样实现的:一种大数据处理框架源数据的统一访问通道的实现方法,包括:
在任务执行模块中对接了多种大数据处理框架;并在数据获取模块中设置一条统一访问通道,所述统一访问通道对接多种数据源通道;
所述任务执行模块通过大数据处理框架接收任务,然后向所述数据获取模块请求源数据;
所述数据获取模块收到请求时,由所述统一访问通道根据所匹配数据源通道访问源数据存储介质,获取源数据供所述任务执行模块执行任务使用。
进一步的,所述大数据处理框架向所述数据获取模块请求源数据时,只需将具体要访问的RDBMS服务器的IP、用户名和密码以及访问的对象传入所述统一访问通道,由所述统一访问通道根据所匹配数据源通道获取源数据。
进一步的,传入所述统一访问通道的还包括访问方式,若访问方式为并行访问,则所述统一访问通道提供两种访问模式:
(1)提供用于划分并行的字段,并提供这个字段的最大值、最小值和并行度,并自动划分并行访问获取数据;
(2)提供每个并行进行获取源数据的谓词,并自动划分并行访问获取数据。
进一步的,所述任务执行模块中对接的大数据处理框架包括Spark、Flink、Hive、Pig、GraphLab、Cassandra、MongoDB、Impala、Greenplum、HAWQ、Storm、ElasticSearch、Solr、Hbase、MySQL。
进一步的,所述统一访问通道对接的数据源通道种类包括JDBC通道、Json通道、TextFile通道、Parquet通道、SequenceFile通道、CSV通道、OrcFile通道、Avro通道以及其他通道。
进一步的,所述任务执行模块通过大数据处理框架接收任务后,根据大数据处理框架信息和任务信息获取对应的执行参数,再通过执行参数构建框架的任务上下文,然后在任务上下文中向所述数据获取模块请求源数据。
进一步的,所述源数据的数据源为大数据存储框架或者其他存储框架,还或者为大数据处理框架。
本发明具有如下优点:将源数据访问按照数据格式进行分类,提供统一访问通道,通过统一访问通道再访问各种数据源通道,例如JDBC、Json、TextFile、Parquet、SequenceFile、CSV、OrcFile、Avro等数据源通道。此统一访问通道是大数据平台共用的,无需每个大数据处理框架需要数据源的时候针对每个数据源进行独立的实现,独立实现的方式不但有大量的重复性开发还导致程序的臃肿运行效率低下。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法执行流程图。
具体实施方式
请参阅图1所示,本发明大数据处理框架源数据的访问执行整体流程包括大数据处理框架接收任务,请求任务所需参数,构建任务的上下文,请求任务所需源数据,获取源数据,执行任务,然后输出结果,再根据需要进行结果集封装。整体流程相关的模块包括:任务执行模块、参数适配模块、数据获取模块、结果集封装模块。
同样请参阅图1,本发明的大数据处理框架源数据的统一访问通道的实现方法,包括:
在任务执行模块中对接了多种大数据处理框架;包括Spark、Flink、Hive、Pig、GraphLab、Cassandra、MongoDB、Impala、Greenplum、HAWQ、Storm、ElasticSearch、Solr、Hbase、MySQL。每个大数据处理框架,通过消息或者参数设置,对发送过来的任务调度到对应的框架上面执行。
在数据获取模块中设置一条统一访问通道,所述统一访问通道对接多种数据源通道;包括JDBC通道、Json通道、TextFile通道、Parquet通道、SequenceFile通道、CSV通道、OrcFile通道、Avro通道以及其他通道。例如JDBC通道对接的就是所有的能提供JDBC访问接口的RDBMS的数据源的访问。而这里的其他通道是个通用的通道,当根据任务信息匹配不到可用的通道的时候,就通过其他通道,使用原来框架提供的数据源访问接口获取源数据。任务信息的载体都是以JAR包的形式出现,里面包含的任务需要执行在什么大数据环境下(分布式,伪分布式,单机),任务需要的数据源,任务具体的业务逻辑,任务执行结果输出等相关信息。
所述源数据的数据源为大数据存储框架或者其他存储框架,通过数据获取模块获取数据;也可以或者为大数据处理框架,此时大数据处理框架就成了数据源,则需要递归调用大数据平台获取数据源,最后执行对应的任务,输出结果集。
所述任务执行模块通过大数据处理框架接收任务,根据大数据处理框架信息和任务信息获取对应的执行参数,这里的执行参数可以指定具体执行任务的进程需要的资源配置信息,任务执行的并行度,与执行任务的进程的心跳时长,任务执行过程所需的端口的信息,底层JVM的选项等相关信息;再通过执行参数构建框架的任务上下文,然后在任务上下文中向所述数据获取模块请求源数据;此处的上下文可以理解成一个运行在客户端的大数据平台程序,用于连接大数据平台,分配任务到大数据平台的具体节点上执行,根据参数信息,到大数据平台的具体执行节点申请资源,监控任务执行情况,任务的HA,任务结果集的汇总等功能。
所述数据获取模块收到请求时,由所述统一访问通道根据所匹配数据源通道访问源数据存储介质,获取源数据供所述任务执行模块执行任务使用。
所述统一访问通道的技术特点是:例如以前不同的大数据处理框架访问不同的RDBMS需要调用不同的API或者通过大数据处理框架封装好的RDBMS的JDBC协议来获取数据;而本发明中,所述大数据处理框架向所述数据获取模块请求源数据时,只需将具体要访问的RDBMS服务器的IP、用户名和密码以及访问的对象传入所述统一访问通道,由所述统一访问通道根据所匹配数据源通道获取源数据。传入所述统一访问通道的还包括访问方式,若访问方式为并行访问,则所述统一访问通道提供两种访问模式:
(1)提供用于划分并行的字段,并提供这个字段的最大值、最小值和并行度,并自动划分并行访问获取数据;示例代码如下:
"columnname":"id",
"lowerbound":"1",
"upperbound":"50000",
"numpartitions":"6"
(2)提供每个并行进行获取源数据的谓词,并自动划分并行访问获取数据。示例代码如下:
“predicates”:Array[String]("id<=2","id>=4and id<=5"),
“predicates”:Array[String]("id in(2,4,6,8)","id in(1,3,5,7)"),
每个Array元素为一个并行分区。
综上,本发明将源数据访问按照数据格式进行分类,提供统一访问通道,通过统一访问通道再访问各种数据源通道,例如JDBC、Json、TextFile、Parquet、SequenceFile、CSV、OrcFile、Avro等数据源通道。此统一访问通道是大数据平台共用的,无需每个大数据处理框架需要数据源的时候针对每个数据源进行独立的实现,独立实现的方式不但有大量的重复性开发还导致程序的臃肿运行效率低下。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (7)
1.一种大数据处理框架源数据的统一访问通道的实现方法,其特征在于:包括:
在任务执行模块中对接了多种大数据处理框架;并在数据获取模块中设置一条统一访问通道,所述统一访问通道对接多种数据源通道;
所述任务执行模块通过大数据处理框架接收任务,然后向所述数据获取模块请求源数据;
所述数据获取模块收到请求时,由所述统一访问通道根据所匹配数据源通道访问源数据存储介质,获取源数据供所述任务执行模块执行任务使用。
2.根据权利要求1所述的一种大数据处理框架源数据的统一访问通道的实现方法,其特征在于:所述大数据处理框架向所述数据获取模块请求源数据时,只需将具体要访问的RDBMS服务器的IP、用户名和密码以及访问的对象传入所述统一访问通道,由所述统一访问通道根据所匹配数据源通道获取源数据。
3.根据权利要求2所述的一种大数据处理框架源数据的统一访问通道的实现方法,其特征在于:传入所述统一访问通道的还包括访问方式,若访问方式为并行访问,则所述统一访问通道提供两种访问模式:
(1)提供用于划分并行的字段,并提供这个字段的最大值、最小值和并行度,并自动划分并行访问获取数据;
(2)提供每个并行进行获取源数据的谓词,并自动划分并行访问获取数据。
4.根据权利要求1所述的一种大数据处理框架源数据的统一访问通道的实现方法,其特征在于:所述任务执行模块中对接的大数据处理框架包括Spark、Flink、Hive、Pig、GraphLab、Cassandra、MongoDB、Impala、Greenplum、HAWQ、Storm、ElasticSearch、Solr、Hbase、MySQL。
5.根据权利要求1所述的一种大数据处理框架源数据的统一访问通道的实现方法,其特征在于:所述统一访问通道对接的数据源通道种类包括JDBC通道、Json通道、TextFile通道、Parquet通道、SequenceFile通道、CSV通道、OrcFile通道、Avro通道以及其他通道。
6.根据权利要求1所述的一种大数据处理框架源数据的统一访问通道的实现方法,其特征在于:所述任务执行模块通过大数据处理框架接收任务后,根据大数据处理框架信息和任务信息获取对应的执行参数,再通过执行参数构建框架的任务上下文,然后在任务上下文中向所述数据获取模块请求源数据。
7.根据权利要求1或4所述的一种大数据处理框架源数据的统一访问通道的实现方法,其特征在于:所述源数据的数据源为大数据存储框架或者其他存储框架,还或者为大数据处理框架。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810029082.0A CN108256046A (zh) | 2018-01-12 | 2018-01-12 | 大数据处理框架源数据的统一访问通道的实现方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810029082.0A CN108256046A (zh) | 2018-01-12 | 2018-01-12 | 大数据处理框架源数据的统一访问通道的实现方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN108256046A true CN108256046A (zh) | 2018-07-06 |
Family
ID=62727148
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201810029082.0A Pending CN108256046A (zh) | 2018-01-12 | 2018-01-12 | 大数据处理框架源数据的统一访问通道的实现方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN108256046A (zh) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109376154A (zh) * | 2018-10-26 | 2019-02-22 | 杭州玳数科技有限公司 | 数据读取、写入方法及数据读取、写入系统 |
| CN109684399A (zh) * | 2018-12-24 | 2019-04-26 | 成都四方伟业软件股份有限公司 | 数据库访问方法、数据库访问装置和数据分析平台 |
| CN111125013A (zh) * | 2019-12-26 | 2020-05-08 | 北京锐安科技有限公司 | 一种数据入库方法、装置、设备及介质 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101944040A (zh) * | 2010-09-15 | 2011-01-12 | 复旦大学 | 一种基于谓词的自动并行优化方法 |
| WO2015157048A1 (en) * | 2014-04-09 | 2015-10-15 | Microsoft Technology Licensing, Llc | Device policy manager |
| CN105045607A (zh) * | 2015-09-02 | 2015-11-11 | 广东创我科技发展有限公司 | 一种实现多种大数据计算框架统一接口的方法 |
| CN106547766A (zh) * | 2015-09-18 | 2017-03-29 | 华为技术有限公司 | 一种数据访问方法和装置 |
-
2018
- 2018-01-12 CN CN201810029082.0A patent/CN108256046A/zh active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101944040A (zh) * | 2010-09-15 | 2011-01-12 | 复旦大学 | 一种基于谓词的自动并行优化方法 |
| WO2015157048A1 (en) * | 2014-04-09 | 2015-10-15 | Microsoft Technology Licensing, Llc | Device policy manager |
| CN105045607A (zh) * | 2015-09-02 | 2015-11-11 | 广东创我科技发展有限公司 | 一种实现多种大数据计算框架统一接口的方法 |
| CN106547766A (zh) * | 2015-09-18 | 2017-03-29 | 华为技术有限公司 | 一种数据访问方法和装置 |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109376154A (zh) * | 2018-10-26 | 2019-02-22 | 杭州玳数科技有限公司 | 数据读取、写入方法及数据读取、写入系统 |
| CN109684399A (zh) * | 2018-12-24 | 2019-04-26 | 成都四方伟业软件股份有限公司 | 数据库访问方法、数据库访问装置和数据分析平台 |
| CN111125013A (zh) * | 2019-12-26 | 2020-05-08 | 北京锐安科技有限公司 | 一种数据入库方法、装置、设备及介质 |
| CN111125013B (zh) * | 2019-12-26 | 2023-03-17 | 北京锐安科技有限公司 | 一种数据入库方法、装置、设备及介质 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11429893B1 (en) | Massively parallel real-time database-integrated machine learning inference engine | |
| US10225375B2 (en) | Networked device management data collection | |
| JP6581108B2 (ja) | 複数ソースからのデータの処理 | |
| US9152669B2 (en) | System and method for distributed SQL join processing in shared-nothing relational database clusters using stationary tables | |
| US12298959B2 (en) | Systems and methods for providing custom objects for a multi-tenant platform with microservices architecture | |
| US11176128B2 (en) | Multiple access path selection by machine learning | |
| US11394794B2 (en) | Fast ingestion of records in a database using data locality and queuing | |
| US20180329644A1 (en) | Data Pipeline Architecture for Analytics Processing Stack | |
| US10778707B1 (en) | Outlier detection for streaming data using locality sensitive hashing | |
| US9576026B2 (en) | System and method for distributed SQL join processing in shared-nothing relational database clusters using self directed data streams | |
| CN109906595A (zh) | 用于跨不同类型的处理硬件执行密码操作的系统和方法 | |
| US20190034833A1 (en) | Model Training Method and Apparatus | |
| US11216454B1 (en) | User defined functions for database query languages based on call-back functions | |
| US11876875B2 (en) | Scalable fine-grained resource count metrics for cloud-based data catalog service | |
| CN108256046A (zh) | 大数据处理框架源数据的统一访问通道的实现方法 | |
| US11061964B2 (en) | Techniques for processing relational data with a user-defined function (UDF) | |
| US12069100B2 (en) | Systems and methods for graph-based access control | |
| US20170083384A1 (en) | Systems for parallel processing of datasets with dynamic skew compensation | |
| US20180129712A1 (en) | Data provenance and data pedigree tracking | |
| US20140365612A1 (en) | Monitoring similar data in stream computing | |
| CN107291770A (zh) | 一种分布式系统中海量数据的查询方法及装置 | |
| CN107169143A (zh) | 一种高效的海量舆情数据信息集群匹配方法 | |
| JP2023014431A (ja) | 安全な照会処理のための方法、コンピュータプログラム、およびコンピュータシステム(グラフストアにおける安全な照会処理) | |
| US20200379829A1 (en) | Systems and methods for extending the data model of a monolithic database through a microservice for a multi-tenant platform | |
| CN117708219A (zh) | 用于物联网数据的处理方法、处理装置及存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination |