处理查询的系统技术方案

技术编号:38547547 阅读:7 留言:0更新日期:2023-08-22 20:56
本发明专利技术公开了一种处理查询的系统。该处理查询的系统包括:分析服务器,其接收应用编程接口的查询字符串;结构化查询语言生成器,其从所述分析服务器接收所述应用编程接口的查询字符串,并据此生成结构化查询语言;数据分析平台,其从所述结构化查询语言生成器接收所述结构化查询语言,所述数据分析平台运行所述结构化查询语言并根据数据源在其中创建的外部表向所述分析服务器返回查询响应。本发明专利技术:将数据以易于查询的形式,存储在数据湖中,通过统一API的实现方式,提升了API实现的效率;通过让API具备聚合功能,使得API能够返回更多粒度的数据。粒度的数据。粒度的数据。

【技术实现步骤摘要】
处理查询的系统


[0001]本专利技术涉及数据查询。

技术介绍

[0002]通常,各机构仅拥有中等规模的数据量,每个机构仅能够通过应用编程接口(API)获取自己的数据。各机构数据的复杂度很高,希望API返回的数据也是多种多样。当用户希望有一个API返回大粒度统计数据时,如果API没有聚合能力,只能开发一个新的API,需要经历一个开发测试部署周期,需要等待比较长的时间。

技术实现思路

[0003]有鉴于此,本专利技术提出了一种处理查询的系统。
[0004]根据本专利技术的实施例,提供一种处理查询的系统,包括:分析服务器,其接收应用编程接口的查询字符串;结构化查询语言生成器,其从所述分析服务器接收所述应用编程接口的查询字符串,并据此生成含有聚合函数的结构化查询语句;数据分析平台,其从所述结构化查询语言生成器接收所述含有聚合函数的结构化查询语句,所述数据分析平台运行所述含有聚合函数的结构化查询语句并根据数据源在其中创建的外部表向所述分析服务器返回查询响应。
[0005]在一实施例中,该系统还包括数据湖,所述数据湖存储所述数据源。
[0006]在一实施例中,该系统还包括至少一个数据库,其向所述数据湖提供数据。
[0007]本专利技术:将数据以易于查询的形式,存储在数据湖中,通过统一API的实现方式,提升了API实现的效率;通过让API具备聚合功能,使得API能够返回更多粒度的数据。
附图说明
[0008]下面将通过参照附图详细描述本专利技术的优选实施例,使本领域的普通技术人员更清楚本专利技术的上述及其它特征和优点,附图中:
[0009]图1为根据本专利技术的实施例的处理查询的系统的示意性结构框图。
[0010]在上述附图中,所采用的附图标记如下:
[0011]100
ꢀꢀꢀꢀꢀ
处理查询的系统
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
108
ꢀꢀꢀꢀꢀ
数据分析平台
[0012]102
ꢀꢀꢀꢀꢀ
应用
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
110
ꢀꢀꢀꢀꢀ
数据湖
[0013]104
ꢀꢀꢀꢀꢀ
分析服务器
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
112
ꢀꢀꢀꢀꢀ
数据库
[0014]106
ꢀꢀꢀꢀꢀ
结构化查询语言生成器
具体实施方式
[0015]为使本专利技术的目的、技术方案和优点更加清楚,以下举实施例对本专利技术进一步详细说明。
[0016]图1为根据本专利技术的实施例的处理查询的系统100的示意性结构框图。如图1所示,
处理查询的系统100包括分析服务器104、结构化查询语言生成器106和数据分析平台108。
[0017]分析服务器104接收应用编程接口的查询字符串,例如从应用102.
[0018]结构化查询语言生成器106(SQL Builder)从分析服务器104接收应用编程接口的查询字符串,并据此生成结构化查询语言(SQL)。结构化查询语言可以是例如Spark SQL或T

SQL。Spark SQL提供了聚合函数,使用Spark SQL来表达API可以统一API的实现方式,大大的降低了API实现的复杂度,提升了API的实现和维护效率。这是因为API是使用Spark SQL来表达的,所以通过API的查询字符串来控制生成具备聚合功能的Spark SQL,使得API具备聚合能力。在API具有聚合能力的情况下,用户可以基于一个低粒度统计数据API,给出合适的查询字符,马上就能够返回更大粒度的数据,大大地缩短了满足用户需求的时间,极大地提升了用户的满意度。
[0019]数据分析平台108从结构化查询语言生成器106接收含有聚合函数的结构化查询语句。数据分析平台108可以是例如Databricks、Spark或Azure Synapse Analytics Service。Databricks是一个简便快捷的大数据分析平台,提供了强大的数据处理服务。Databricks能够对数据湖执行快速查询。
[0020]数据分析平台108运行含有聚合函数的结构化查询语句并根据数据源在其中创建的外部表向分析服务器104返回查询响应。在本实施例中,系统100还包括数据湖110,数据源存储于数据湖110中。系统100还包括至少一个数据库112,数据库112向数据湖110提供数据。在数据湖110中,可以以Parquet格式存储数据。Parquet存储格式对查询性能的提高已经得到了业界的充分认可。把Spark SQL运行在Databricks中,可以快速查询数据湖110中的Parquet文件,并返回结果。
[0021]本专利技术能够简单高效地实现API,并使得API具备更强大的功能。通过使用Parquet作为单一的数据存储格式,使用Spark SQL作为单一API的表达方式,使得能够简单高效地实现API;在简单高效实现API的基础上,用户可以通过API的查询字符串来生成更加功能强大的Spark SQL语句从而使得API具备更加强大的功能。本专利技术在降低API的开发成本的同时,大大地缩短了满足用户需求的时间,从而可以极大地提升了用户的满意度,占有更大的市场。
[0022]本专利技术:将数据以易于查询的形式,存储在数据湖中,通过统一API的实现方式,提升了API实现的效率;通过让API具备聚合功能,使得API能够返回更多粒度的数据。
[0023]以上所述仅为本专利技术的较佳实施例而已,并不用以限制本专利技术,凡在本专利技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本专利技术的保护范围之内。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种处理查询的系统(100),其特征是,包括:分析服务器(104),其接收应用编程接口的查询字符串;结构化查询语言生成器(106),其从所述分析服务器(104)接收所述应用编程接口的查询字符串,并据此生成含有聚合函数的结构化查询语句;数据分析平台(108),其从所述结构化查询语言生成器(106)接收所述含有聚合函数的结构化查询语句,所述数据分析平...

【专利技术属性】
技术研发人员:涂占乐赵晨张亚南
申请(专利权)人:西门子数字医疗科技上海有限公司
类型:发明
国别省市:

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

1