CN112347133A - 一种数据查询方法和装置 - Google Patents
一种数据查询方法和装置 Download PDFInfo
- Publication number
- CN112347133A CN112347133A CN201910734965.6A CN201910734965A CN112347133A CN 112347133 A CN112347133 A CN 112347133A CN 201910734965 A CN201910734965 A CN 201910734965A CN 112347133 A CN112347133 A CN 112347133A
- Authority
- CN
- China
- Prior art keywords
- column
- query
- virtual
- query request
- database
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24561—Intermediate data storage techniques for performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据查询方法和装置,该方法包括:预先针对数据表中指定真实列配置关联的虚拟列,并配置该虚拟列的数据来源;接收针对所述数据表的数据库查询请求;根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换;利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果;根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果。
Description
技术领域
本发明涉及信息处理技术领域,特别涉及一种数据查询方法和装置。
背景技术
运营商的物流实时数据平台中,实时接入了仓储、配送、客服、商家等业务数据,以及库房、站点、配送员等因业务而配置的基础数据,这些数据都存储在Elasticsearch集群(以下简称ES)。
现有技术中,ES不支持数据表之间的关联查询,因此,在配置相关业务的报表时,需要根据数据表之间的关联关系拉取多个数据表的数据到一张大的业务宽表,然后通过查询业务宽表实现相关业务的报表的查询。例如:要定制一仓配实时监控报表,需要将订单表、运单表、履约时效表等数据表的数据拉取到一张大的业务宽表,通过对该业务宽表中进行实时查询得到仓配实时监控报表。
利用业务宽表可以解决ES查询不支持数据表之间的关联查询问题,但是也带来了诸多问题,例如生成业务宽表中的数据表更新时,需要同时更新业务宽表,更新数据量非常大,而且业务宽表关联关系复杂时,生成业务宽表的数据表的关联会增加业务宽表的开发复杂度和数据拉取性能。
发明内容
有鉴于此,本发明的目的在于提供一种数据查询方法和装置,不需要将多个数据表的数据全部拉取到同一业务宽表,可以避免多个数据表的数据全部拉取到同一业务宽表而带来的诸多问题。
为了达到上述目的,本发明提供了如下技术方案:
一种数据查询方法,预先针对数据表中指定真实列配置关联的虚拟列,并配置该虚拟列的数据来源,该方法包括:
接收针对所述数据表的数据库查询请求;
根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换;
利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果;
根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果。
一种数据查询装置,该装置包括:
配置单元,用于预先针对数据表中指定真实列配置关联的虚拟列,并配置该虚拟列的数据来源;
接收单元,用于接收针对所述数据表的数据库查询请求;
转换单元,用于根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换;
查询单元,用于利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果;
处理单元,用于根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果。
一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通过总线相连的存储器;所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序;所述至少一个处理器执行所述一个或多个计算机程序时实现上述数据查询方法中的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现上述数据查询方法。
由上面的技术方案可知,本发明中,通过针对数据表中指定真实列配置关联的虚拟列,并配置该虚拟列的数据来源,根据数据表中真实列和虚拟列的关联关系,对针对数据表的数据库查询请求进行虚拟列到真实列的第一转换;利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果;根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果。可以看出,本发明中,不需要将多个数据表的数据拉取到同一业务宽表,而是通过针对数据表中指定真实列配置虚拟列的方式实现多个数据表的关联查询,因此可以避免多个数据表的数据拉取到同一业务宽表而带来的诸多问题。
附图说明
图1是本发明实施例提供的数据查询方法流程图;
图2是本发明实施例实时平台的架构示意图;
图3是本发明实施例数据查询装置的结构示意图;
图4是本发明实施例电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
参见图1,图1是本发明实施例提供的数据查询方法流程图,如图1所示,该方法主要包括以下步骤:
步骤101、预先针对数据表中指定真实列配置关联的虚拟列,并配置该虚拟列的数据来源。
本发明中,将数据表中实际存在的数据列(具有列名和列值)称为真实列,另外还针对数据表中指定真实列配置关联的虚拟列,从而该真实列与该虚拟列建立起关联关系。具有关联关系的真实列和虚拟列之间具有值对应关系或值转换关系,本发明中,用虚拟列的数据来源来表示该虚拟列关联真实列与该虚拟列之间的值对应关系或值转换关系。
本发明中,通过针对数据表中指定真实列配置关联的虚拟列并配置该虚拟列的数据来源,可以实现用户对不存在于数据表中的数据(即虚拟列)的数据查询,后续会进行详细说明。
本发明实施例中,虚拟列的数据来源有以下几种:数据表、转换函数、正则匹配规则,以下逐一进行介绍:
1)数据表
作为虚拟列的数据来源的数据表中,存储真实列与虚拟列之间的值对应关系。
通常情况下,数据表并不是孤立存在的,而是与一个或多个其它数据表之间存在关联关系,例如,两个数据表中包含一个或多个相同数据列,通过这些相同数据列相互关联,则利用此关联关系,可以实现对这两个数据表的关联查询。然而,由于ES不支持数据表中的关联查询,本发明实施例中,可以通过针对其中一个数据表中的上述一个或多个相同数据列配置关联的虚拟列(此虚拟列是另一数据表中的另外若干(一个或多个)数据列,与上述一个或多个相同数据列之间具有值对应关系),并将另一数据表配置为此虚拟列的数据来源。
以下以表一所示的站点表和表二所示的运单表为例进行说明:
siteId | siteName |
00000001 | 上海虹口站 |
00000002 | 上海杨浦站 |
00000003 | 上海曲阳站 |
00000004 | 济南华强站 |
表一(table1)
运单号(seqNum) | 下单时间 | 预计到达时间(rTime) | siteId |
12345 | 2019-04-29 21:01:41 | 2019-04-30 10:00:00 | 00000001 |
45662 | 2019-04-29 17:30:02 | 2019-04-30 10:00:00 | 00000002 |
76554 | 2019-04-28 23:48:34 | 2019-04-29 15:00:00 | 00000003 |
29898 | 2019-04-28 20:34:25 | 2019-04-29 15:00:00 | 00000004 |
表二(table2)
从表一和表二可以看出,两个表具有相同的真实列“siteId”,可以针对表二中的真实列“siteId”配置关联的虚拟列“siteName”,具体如表三所示,并且配置该虚拟列“siteName”的数据来源为表一。
运单号(seqNum) | 下单时间 | 预计到达时间(rTime) | siteId | siteName(虚拟列) |
12345 | 2019-04-29 21:01:41 | 2019-04-30 10:00:00 | 00000001 | |
45662 | 2019-04-29 17:30:02 | 2019-04-30 10:00:00 | 00000002 | |
76554 | 2019-04-28 23:48:34 | 2019-04-29 15:00:00 | 00000003 | |
29898 | 2019-04-28 20:34:25 | 2019-04-29 15:00:00 | 00000004 |
表三(table3)
本发明中,作为虚拟列的数据来源的数据表既可以是ES中的基础数据表,例如上述表一所示的站点表;也可以是用户自定义的数据表,例如用户自定义运单类型取值及其表示的含义对照表,具体如表四所示:
运单类型 | 含义 |
0 | 初试状态 |
1 | 揽收 |
2 | 妥投 |
3 | 拒收 |
表四(table4)
2)转换函数
转换函数表征真实列与虚拟列之间的值转换关系;
在实际应用中,对于数据表中的某些数据列,用户可能并不需要关注这些数据列的取值,而是需要关注对这些数据列的取值通过转换函数转换后得到的值。对于这种情况,本发明实施例中,可以针对数据表中的这些真实列配置关联的虚拟列,并且配置该虚拟列的数据来源为该转换函数。
以下以表五所示的订单表为例进行说明
表五(table5)
在上述表五所示的订单表中,有一数据列为“address”,“address”的取值中包括完整的配送地址,例如“河北省石家庄市石家庄大学”,但用户可能只对配送地址中的配送省份感兴趣,这种情况下,可以针对真实列“address”配置关联的虚拟列“province”,且配置该虚拟列的数据来源为转换函数:substring(address,0,3)。
在上述表五所示的订单表中,有“price”和“actual_price”两个真实列,前者表示商品价格,后者表示实付金额,如果用户对这两个真实列值不感兴趣,而只对优惠金额感兴趣,则可以针对真实列“price”和“actual_price”配置关联的虚拟列“discount_price”,且配置该虚拟列的数据来源为转换函数:price-actual_price。
3)正则匹配规则
正则匹配规则,表征真实列与虚拟列之间的值转换关系。
在实际应用中,数据表中的某些字段是使用数字表示的,用户很难明白其表达的含义,而用户真正感兴趣的可能正是数字表达的含义,而非数字本身。
例如,数据表中有一时效字段sendpay,使用500位的数字表示,对于用户来说很难明白500位的数字标识的具体含义,但是这500位的数字实际只对应6种配送类别,可以利用正则表达式区分这6种配送类别,具体如表六所示:
正则表达式 | 配送类别 |
1.{0} | 211 |
2.{0} | 次日达 |
9.{0} | 411 |
1.{33}3 | 晚间配送 |
3.{0} | 隔日达 |
4.{0} | 4日达 |
表六(table6)
上述表六实际上是一正则匹配规则,其中的每一行代表一个正则匹配子规则,可以看出,每一正则匹配子规则中包括一个正则表达式和一个配送类别值,其具体含义是:匹配该正则匹配子规则中的正则表达式的所有sendpay取值对应的配送类别为该正则匹配子规则中的配送类别。
以下以表五所示的订单表为例,该订单表中只有真实列“sendpay”,但是对于用户来说,可能并不关注500位的sendpay取值,而是关注该sendpay取值对应的配送类别,那么,就可以针对该订单表中的真实列“sendpay”配置关联的虚拟列“sendpay_name”,且配置该虚拟列“sendpay_name”的数据来源为上述表五所示的正则匹配规则。
从以上关于虚拟列的数据来源的介绍可以看出,本发明中,配置虚拟列的数据来源,实际上就是配置存储有该虚拟列与其关联的真实列之间的值对应关系的数据表信息(例如表名)、配置表征该虚拟列与关联的真实列之间的值转换关系的转换函数、或者配置表征该虚拟列与关联的真实列之间的值转换关系的正则匹配规则。
另外,需要说明的是,本发明实施例中,具有关联关系的真实列和虚拟列的个数可以是一对一(即一个真实列对应一个虚拟列)、一对多(即一个真实列对应多个虚拟列)、多对一(即多个真实列对应一个虚拟列)、或多对多(即多个真实列对应多个虚拟列)的对应关系,无论时何种对应关系,都可以根据虚拟列的数据来源确定真实列值对应的虚拟列值。
本步骤101只需要在初始配置阶段执行一次。
步骤102、接收针对所述数据表的数据库查询请求;
当用户需要查询某数据表中的数据时,可通过查询界面触发针对该数据表数据库查询请求到后台服务设备,后台服务设备接收到该数据库查询请求后,如果确定该数据库查询请求中不包含虚拟列,则按照正常的数据查询流程查询所述数据表即可,如果确定该数据库查询请求中包含虚拟列,则需要执行后续的步骤103至步骤105进行数据查询。
步骤103、根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换。
在实际应用中,由于数据表中并不存储虚拟列值,当数据库查询请求中存在虚拟列时,实际上是无法直接对数据表进行查询的,因此,需要对数据库查询请求进行从虚拟列到真实列的第一转换,经第一转换后的数据库查询请求只包括真实列,因此可以基于经第一转换后的数据库查询请求去查询数据表,得到一中间查询结果,之后就可以基于中间查询结果和虚拟列的数据来源确定最终查询结果。
在实际应用中,数据库查询请求中,一般包括查询目标列和查询条件,例如在针对上述表三(table3)的数据库查询请求“select seqNum siteName from table3 wheresiteId=00000001”中,查询目标列是seqNum和siteName,而查询条件是siteId=00000001,该查询条件中的查询条件列是siteId,该查询条件中的列值是00000001。
本发明实施例中,根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换,具体包括以下步骤:
S11、如果所述数据库查询请求的查询目标列中包括虚拟列,则用该虚拟列关联的真实列替代该虚拟列;
S12、如果所述数据库查询请求的查询条件列中包括虚拟列,则将该虚拟列关联的真实列作为数据库查询请求的查询目标列,并从所述数据库查询请求的查询条件中删除该虚拟列所属的查询条件。
例如在上述数据库查询请求“select seqNum siteName from table3 wheresiteId=00000001”中,siteName为针对table3中的真实列siteId配置的虚拟列,则可以根据上述方法,将上述数据库查询请求进行第一转换得到新的数据库查询请求“selectseqNum siteId from table3 where siteId=00000001”,然后使用新的查询请求查找table3得到一中间查询结果。
在实际应用中,在查询数据表时,对同样的数据列不用查询多次,因此,上述步骤S12中,如果该虚拟列关联的真实列已经是数据库查询请求的查询目标列,则不需要再次将该虚拟列关联的真实列作为数据库查询请求的查询目标列,只需直接从所述数据库查询请求的查询条件中删除该虚拟列所属的查询条件即可。
步骤104、利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果。
由于经第一转换后的数据库查询请求中,查询目标列和查询条件列均为数据表中的真实列,不存在虚拟列,因此,按照正常的数据查询流程查询数据表即可。
步骤105、根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果。
本发明实施例中,根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果,具体包括以下步骤:
S21、针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换;
S22、利用经第二转换后的数据库查询请求对所述中间查询结果进行查询,得到所述数据库查询请求的最终查询结果。
本发明实施例中,虚拟列的数据来源包括数据表、转换函数、和正则匹配规则三种,根据虚拟列的数据来源不同,其对应的对数据库查询请求的第二转换方法也不相同,以下进行具体介绍:
I)虚拟列的数据来源是数据表:
前面已经说过,虚拟列的数据来源是数据表时,作为该虚拟列的数据来源的数据表中,存储有该虚拟列关联的真实列与该虚拟列的值对应关系的数据表。
当虚拟列的数据来源是数据表时,对数据库查询请求的第二转换实际上是将该数据库查询请求转换为针对步骤104中得到的中间查询结果和作为该虚拟列的数据来源的数据表的一个数据库关联查询请求。
本发明实施例中,步骤21所述的针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源是数据表时,将所述数据库查询请求转换为左连接查询请求,且该左连接查询请求满足以下条件:
该左连接查询请求的查询目标列为所述数据库查询请求中的查询目标列;
该左连接查询请求的左表和右表分别为所述中间查询结果和该数据表;
该左连接查询请求的连接条件为:所述中间查询结果中的真实列值和该数据表中的真实列值相等;
该左连接查询请求的查询条件为所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
以上述针对上述表三(table3)的数据库查询请求“select seqNum siteNamefrom table3 where siteId=00000001”为例,将该数据库查询请求进行第一转换后得到的新的数据库查询请求为“select seqNum siteId from table3 where siteId=00000001”,利用该新的数据库查询请求查询表三得到的中间查询结果,具体如表七所示:
运单号(seqNum) | siteId |
12345 | 00000001 |
表七(table7)
将数据库查询请求进行基于虚拟列siteName的数据来源(即表一)的第二转换后,得到的左连接查询请求为:“select seqNum siteName from table7 left join table1on table7.siteId=table1.siteId where table7.siteId=00000001”,该左连接查询请求即为一数据库关联查询请求。利用该数据库关联查询请求对表七和表一进行关联查询即可得到该数据库查询请求的最终查询结果,具体如表八所示:
运单号(seqNum) | siteName |
12345 | 上海虹口站 |
表八(table8)
在实际实现中,由于ES不支持关联查询,因此,如果本发明的技术方案应用在ES中,则所述中间查询结果和虚拟列“siteName”的数据来源表一,均需要事先加载到支持关联查询的嵌入式数据库中,例如H2。
因此,本发明实施例中,在步骤104,利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果之后,还需要进一步将所述中间查询结果存储在支持关联查询的嵌入式数据库中。上述步骤22中,利用经第二转换后的数据库查询请求对所述中间查询结果进行查询之前,还需要进一步执行以下判断操作:如果所述数据库查询请求中存在数据来源是数据表的虚拟列,则将代表该虚拟列的数据来源的数据表加载到支持关联查询的嵌入式数据库中。
II)虚拟列的数据来源是转换函数:
虚拟列的数据来源包括:表征该虚拟列关联的真实列与该虚拟列的值转换关系的转换函数;
当虚拟列的数据来源是转换函数时,对数据库查询请求的第二转换包括对查询目标列和查询条件列中的该虚拟列的转换,主要是将查询目标列和查询条件列中的该虚拟列用其对应的转换函数替换。
本发明实施例中,针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
S31、当该虚拟列的数据来源为转换函数时,如果该虚拟列是所述数据库查询请求的查询目标列,则将该查询目标列转换为如下格式:该转换函数AS该虚拟列名;如果该虚拟列是所述数据库查询请求的查询条件列,则将该查询条件列中的列名转换为该转换函数;
S32、删除所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
以下以表五所示的订单表为例进行举例说明:
假设已经针对表五中的真实列“address”配置了关联的虚拟列“province”,针对真实列“price”和“actual_price”配置了关联的虚拟列“discount_price”,其中,虚拟列“province”的数据来源是转换函数substring(address,0,3),虚拟列“discount_price”的数据来源是转换函数:price-actual_price。
则对于以下针对表五的数据库查询请求“select order_id,province,discount_price from table5 where create_time>‘2019-04-28 00:00:00’and create_time<=‘2019-04-29 00:00:00’”来说,将该数据库查询请求进行第一转换后得到的新的数据库查询请求为“select order_id,address,price,actual_price from table5 where create_time>‘2019-04-28 00:00:00’and create_time<=‘2019-04-29 00:00:00’”,利用该新的数据库查询请求查询表五得到的中间查询结果,具体如表九所示:
表九(table9)
将该数据库查询请求进行基于虚拟列province”和“discount_price”的数据来源(即转换函数substring(address,0,3)和转换函数price-actual_price)的第二转换后,得到的新的数据库查询请求为select order_id,Substring(address,0,3)AS province,Price-actual_price AS discount_price from table9。利用该新的数据库查询请求对表九进行查询即可得到该数据库查询请求的最终查询结果,具体如表十所示:
表十(table10)
III)虚拟列的数据来源是正则匹配规则
虚拟列的数据来源包括:表征该虚拟列关联的真实列与该虚拟列的值转换关系的正则匹配规则;所述正则匹配规则包括至少一个正则匹配子规则;每个正则匹配子规则包括正则表达式及其对应的匹配值。
当虚拟列的数据来源是正则匹配规则时,对数据库查询请求的第二转换包括对查询目标列和查询条件列中的该虚拟列的转换,主要是将查询目标列用基于该正则匹配规则生成的多条件判断语句(case when then语句),将查询条件列中的该虚拟列用该查询条件列中的列值对应的正则表达式替换。
本发明实施例中,针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
S41、当该虚拟列的数据来源为正则匹配规则时,如果该虚拟列是所述数据库查询请求的查询目标列,则将该查询目标列转换为如下格式:“基于该正则匹配规则生成的多条件判断语句AS该虚拟列名”;如果该虚拟列是所述数据库查询请求的一个查询条件中的查询条件列,则确定匹配值为该查询条件中的列值的正则匹配子规则,将该查询条件转换为如下格式:“该虚拟列关联的真实列名该正则匹配子规则中的正则表达式”;
S42、删除所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
以下仍以表五所示的订单表为例进行举例说明:
假设已经针对表五中的真实列“sendpay”配置了关联的虚拟列“sendpay_name”,虚拟列“sendpay_name”的数据来源是上述表六所示的正则匹配规则。
则对于以下针对表五的数据库查询请求“select order_id,sendpay_name fromtable5 where sendpay_name=‘211’”来说,将该数据库查询请求进行第一转换后得到的新的数据库查询请求为“select order_id,sendpay from table5”,利用该新的数据库查询请求查询表五得到的中间查询结果,具体如表十一所示:
表十一(table11)
将该数据库查询请求进行基于虚拟列“sendpay_name”的数据来源(即表六所示的正则匹配规则)的第二转换后,得到的新的数据库查询请求为“select order_id,casewhen sendpay regex‘1.{0}’then‘211’when sendpay regex‘2.{0}’then‘京准达’whensendpay regex‘3.{0}’then‘极速达’else‘’end AS sendpay_name from table11 wheresendpay regex‘1.{0}’”。利用该新的数据库查询请求对表十一进行查询即可得到该数据库查询请求的最终查询结果,具体如表十二所示:
订单号(order_id) | Sendpay_name |
100001 | 211 |
表十二(table12)
以上针对虚拟列的三种数据来源所对应的对数据库查询请求的第二转换方法进行了分别介绍,在实际应用中,数据库查询请求中可能同时多种个虚拟列,这些虚拟列的数据来源可能相同也可能不同,当数据库查询请求中的多个虚拟列有不同数据来源时,只需要分别针对每个虚拟列,对数据库查询请求执行基于该虚拟列的第二转换即可。
例如,用户出发了一个针对上述表五的数据库查询请求“select order_id,sendpay_name,province,discount_price from table5 where create_time>‘2019-04-28 00:00:00’AND create_time<=’2019-04-29 00:00:00’”。后台服务器接收到该数据库查询请求后,在确定其最终查询结果的过程中,需要对其进行第一转换和第二转换,其中,
将该数据库查询请求进行第一转换得到的新的数据库查询请求为“selectorder_id,sendpay,address,price,actual_price from table5 where create_time>‘2019-04-28 00:00:00’AND create_time<=’2019-04-29 00:00:00’”。并假设利用经第一转换后的数据库查询请求查询得到的中间查询结果为mid_result。
将该数据库查询请求进行第二转换得到的新的数据库查询请求为:“selectorder_id,case when sendpay regex‘1.{0}’then‘211’when sendpay regex‘2.{0}’then‘京准达’when sendpay regex‘3.{0}’then‘极速达’else‘’end AS sendpay_name,Substring(address,0,3)AS province,price-actual_price AS discount_price frommid_result”。
以上对本发明实施例提供的数据查询方法进行了详细说明,在实际应用中,可以将该方法应用于图2所示的实时平台中,如图2所示:
实时平台通过kafka实时接入线上生产库数据(包括Mysql、oracle、sql server)。
实时平台中包括后台系统、宽表计算系统、ES、报表计算系统、和报表展示平台。其中,
后台系统包括管理配置中心、数据监控、数据补偿恢复等功能模块,其中的管理配置中心负责根据业务需求配置宽表的关联关系(即用于生成宽表的所有单表之间的关联)。
宽表计算系统包括数据持久化、二次分发、JMQ、实时宽表引擎等用于宽表生成的多个功能模块,宽表计算系统根据宽表的关联关系加工成数据宽表并存储在ES中。
ES中除了存储数据宽表外,还存储各种数据单表。这里,数据宽表和数据单表统称为数据表。为了在实时平台中实现对ES中的数据表内不存在的数据的查询,可以根据需求在存储针对ES内的目标数据表中的指定真实列(例如表五中的sendpay)配置关联的虚拟列sendpay_name,并配置该虚拟列的数据来源,从而可以从表五中查询到sendpay_name。
报表展示平台可以通过查询ES中的目标数据表生成用户所需的监控报表,包括对针对目标数据表中的指定真实列配置的虚拟列的查询。报表展示平台是一个可视化的自定义报表平台,产品业务人员可以通过拖拽相应的字段(中文名)到查询条件区、结果展示区,从而触发对ES中的数据宽表或数据单表的数据库查询请求,后台服务器接收到改数据查询请求后,返回最终查询结果给报表展示平台使其可生成可视化的报表。
报表计算系统也可以通过查询ES中的目标数据表生成用户所需的监控报表,包括对针对目标数据表中的指定真实列配置的虚拟列的查询。报表计算系统可以无可视化界面,通过配置查询sql及一些调度策略来查询ES中的数据宽表或数据单表,并将最终查询结果通过JSF接口返回给用户,由用户自己决定最终查询结果的展示效果。
本发明还提供了数据查询装置,以下结合图3进行详细说明。
参见图3,图3是本发明实施例数据查询装置的结构示意图,如图3所示,该装置包括:
配置单元301,用于预先针对数据表中指定真实列配置关联的虚拟列,并配置该虚拟列的数据来源;
接收单元302,用于接收针对所述数据表的数据库查询请求;
转换单元303,用于根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换;
查询单元304,用于利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果;
处理单元305,用于根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果。
图3所示装置中,
所述转换单元303,根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换,包括:
如果所述数据库查询请求的查询目标列中包括虚拟列,则用该虚拟列关联的真实列替代该虚拟列;
如果所述数据库查询请求的查询条件列中包括虚拟列,则将该虚拟列关联的真实列作为数据库查询请求的查询目标列,并从所述数据库查询请求的查询条件中删除该虚拟列所属的查询条件。
图3所示装置中,
所述处理单元305,根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果,包括:
针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换;
利用经第二转换后的数据库查询请求对所述中间查询结果进行查询,得到所述数据库查询请求的最终查询结果。
图3所示装置中,
虚拟列的数据来源包括:存储有该虚拟列关联的真实列与该虚拟列的值对应关系的数据表;
所述处理单元305,针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源是数据表时,将所述数据库查询请求转换为左连接查询请求,且该左连接查询请求满足以下条件:
该左连接查询请求的查询目标列为所述数据库查询请求中的查询目标列;
该左连接查询请求的左表和右表分别为所述中间查询结果和该数据表;
该左连接查询请求的连接条件为:所述中间查询结果中的真实列值和该数据表中的真实列值相等;
该左连接查询请求的查询条件为所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
图3所示装置中,
所述数据表包括存储于ES集群中的基础数据表和自定义数据表;
所述查询单元304,利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果之后,进一步包括:将所述中间查询结果存储在支持关联查询的嵌入式数据库中;
所述处理单元305,利用经第二转换后的数据库查询请求对所述中间查询结果进行查询,得到所述数据库查询请求的最终查询结果之前,进一步包括:如果所述数据库查询请求中存在数据来源是数据表的虚拟列,则将代表该虚拟列的数据来源的数据表加载到支持关联查询的嵌入式数据库中。
图3所示装置中,
虚拟列的数据来源包括:表征该虚拟列关联的真实列与该虚拟列的值转换关系的转换函数;
所述处理单元305,针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源为转换函数时,如果该虚拟列是所述数据库查询请求的查询目标列,则将该查询目标列转换为如下格式:该转换函数AS该虚拟列名;如果该虚拟列是所述数据库查询请求的查询条件列,则将该查询条件列中的列名转换为该转换函数;
删除所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
图3所示装置中,
虚拟列的数据来源包括:表征该虚拟列关联的真实列与该虚拟列的值转换关系的正则匹配规则;所述正则匹配规则包括至少一个正则匹配子规则;每个正则匹配子规则包括正则表达式及其对应的匹配值;
所述处理单元305,针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源为正则匹配规则时,如果该虚拟列是所述数据库查询请求的查询目标列,则将该查询目标列转换为如下格式:“基于该正则匹配规则生成的多条件判断语句AS该虚拟列名”;如果该虚拟列是所述数据库查询请求的一个查询条件中的查询条件列,则确定匹配值为该查询条件中的列值的正则匹配子规则,将该查询条件转换为如下格式:“该虚拟列关联的真实列名该正则匹配子规则中的正则表达式”;
删除所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
本发明实施例还提供了一种电子设备,如图4所示,电子设备400包括:至少一个处理器401,以及与所述至少一个处理器401通过总线相连的存储器402;所述存储器402存储有可被所述至少一个处理器401执行的一个或多个计算机程序;所述至少一个处理器401执行所述一个或多个计算机程序时实现如图1所示数据查询方法中的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现如图1所示数据查询方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (16)
1.一种数据查询方法,其特征在于,预先针对数据表中指定真实列配置关联的虚拟列,并配置该虚拟列的数据来源,该方法包括:
接收针对所述数据表的数据库查询请求;
根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换;
利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果;
根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果。
2.根据权利要求1所述的方法,其特征在于,
根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换,包括:
如果所述数据库查询请求的查询目标列中包括虚拟列,则用该虚拟列关联的真实列替代该虚拟列;
如果所述数据库查询请求的查询条件列中包括虚拟列,则将该虚拟列关联的真实列作为数据库查询请求的查询目标列,并从所述数据库查询请求的查询条件中删除该虚拟列所属的查询条件。
3.根据权利要求1所述的方法,其特征在于,
根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果,包括:
针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换;
利用经第二转换后的数据库查询请求对所述中间查询结果进行查询,得到所述数据库查询请求的最终查询结果。
4.根据权利要求3所述的方法,其特征在于,
虚拟列的数据来源包括:存储有该虚拟列关联的真实列与该虚拟列的值对应关系的数据表;所述数据表包括存储于ES集群中的基础数据表和自定义数据表;
针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源是数据表时,将所述数据库查询请求转换为左连接查询请求,且该左连接查询请求满足以下条件:
该左连接查询请求的查询目标列为所述数据库查询请求中的查询目标列;
该左连接查询请求的左表和右表分别为所述中间查询结果和该数据表;
该左连接查询请求的连接条件为:所述中间查询结果中的真实列值和该数据表中的真实列值相等;
该左连接查询请求的查询条件为所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
5.根据权利要求4所述的方法,其特征在于,
利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果之后,进一步包括:将所述中间查询结果存储在支持关联查询的嵌入式数据库中;
利用经第二转换后的数据库查询请求对所述中间查询结果进行查询之前,进一步包括:如果所述数据库查询请求中存在数据来源是数据表的虚拟列,则将代表该虚拟列的数据来源的数据表加载到支持关联查询的嵌入式数据库中。
6.根据权利要求3所述的方法,其特征在于,
虚拟列的数据来源包括:表征该虚拟列关联的真实列与该虚拟列的值转换关系的转换函数;
针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源为转换函数时,如果该虚拟列是所述数据库查询请求的查询目标列,则将该查询目标列转换为如下格式:该转换函数AS该虚拟列名;如果该虚拟列是所述数据库查询请求的查询条件列,则将该查询条件列中的列名转换为该转换函数;
删除所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
7.根据权利要求3所述的方法,其特征在于,
虚拟列的数据来源包括:表征该虚拟列关联的真实列与该虚拟列的值转换关系的正则匹配规则;所述正则匹配规则包括至少一个正则匹配子规则;每个正则匹配子规则包括正则表达式及其对应的匹配值;
针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源为正则匹配规则时,如果该虚拟列是所述数据库查询请求的查询目标列,则将该查询目标列转换为如下格式:“基于该正则匹配规则生成的多条件判断语句AS该虚拟列名”;如果该虚拟列是所述数据库查询请求的一个查询条件中的查询条件列,则确定匹配值为该查询条件中的列值的正则匹配子规则,将该查询条件转换为如下格式:“该虚拟列关联的真实列名该正则匹配子规则中的正则表达式”;
删除所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
8.一种数据查询装置,其特征在于,该装置包括:
配置单元,用于预先针对数据表中指定真实列配置关联的虚拟列,并配置该虚拟列的数据来源;
接收单元,用于接收针对所述数据表的数据库查询请求;
转换单元,用于根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换;
查询单元,用于利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果;
处理单元,用于根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果。
9.根据权利要求8所述的装置,其特征在于,
所述转换单元,根据所述数据表中真实列和虚拟列的关联关系,对所述数据库查询请求进行虚拟列到真实列的第一转换,包括:
如果所述数据库查询请求的查询目标列中包括虚拟列,则用该虚拟列关联的真实列替代该虚拟列;
如果所述数据库查询请求的查询条件列中包括虚拟列,则将该虚拟列关联的真实列作为数据库查询请求的查询目标列,并从所述数据库查询请求的查询条件中删除该虚拟列所属的查询条件。
10.根据权利要求9所述的装置,其特征在于,
所述处理单元,根据所述中间查询结果和所述数据库查询请求中各虚拟列的数据来源,确定所述数据库查询请求对应的最终查询结果,包括:
针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换;
利用经第二转换后的数据库查询请求对所述中间查询结果进行查询,得到所述数据库查询请求的最终查询结果。
11.根据权利要求10所述的装置,其特征在于,
虚拟列的数据来源包括:存储有该虚拟列关联的真实列与该虚拟列的值对应关系的数据表;
所述处理单元,针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源是数据表时,将所述数据库查询请求转换为左连接查询请求,且该左连接查询请求满足以下条件:
该左连接查询请求的查询目标列为所述数据库查询请求中的查询目标列;
该左连接查询请求的左表和右表分别为所述中间查询结果和该数据表;
该左连接查询请求的连接条件为:所述中间查询结果中的真实列值和该数据表中的真实列值相等;
该左连接查询请求的查询条件为所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
12.根据权利要求11所述的装置,其特征在于,
所述数据表包括存储于ES集群中的基础数据表和自定义数据表;
所述查询单元,利用经第一转换后的数据库查询请求,查询所述数据表得到中间查询结果之后,进一步包括:将所述中间查询结果存储在支持关联查询的嵌入式数据库中;
所述处理单元,利用经第二转换后的数据库查询请求对所述中间查询结果进行查询,得到所述数据库查询请求的最终查询结果之前,进一步包括:如果所述数据库查询请求中存在数据来源是数据表的虚拟列,则将代表该虚拟列的数据来源的数据表加载到支持关联查询的嵌入式数据库中。
13.根据权利要求10所述的装置,其特征在于,
虚拟列的数据来源包括:表征该虚拟列关联的真实列与该虚拟列的值转换关系的转换函数;
所述处理单元,针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源为转换函数时,如果该虚拟列是所述数据库查询请求的查询目标列,则将该查询目标列转换为如下格式:该转换函数AS该虚拟列名;如果该虚拟列是所述数据库查询请求的查询条件列,则将该查询条件列中的列名转换为该转换函数;
删除所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
14.根据权利要求10所述的装置,其特征在于,
虚拟列的数据来源包括:表征该虚拟列关联的真实列与该虚拟列的值转换关系的正则匹配规则;所述正则匹配规则包括至少一个正则匹配子规则;每个正则匹配子规则包括正则表达式及其对应的匹配值;
所述处理单元,针对所述数据库查询请求的每一虚拟列,对所述数据库查询请求进行基于该虚拟列的数据来源的第二转换,包括:
当该虚拟列的数据来源为正则匹配规则时,如果该虚拟列是所述数据库查询请求的查询目标列,则将该查询目标列转换为如下格式:“基于该正则匹配规则生成的多条件判断语句AS该虚拟列名”;如果该虚拟列是所述数据库查询请求的一个查询条件中的查询条件列,则确定匹配值为该查询条件中的列值的正则匹配子规则,将该查询条件转换为如下格式:“该虚拟列关联的真实列名该正则匹配子规则中的正则表达式”;
删除所述数据库查询请求中查询条件列不是虚拟列的所有查询条件。
15.一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通过总线相连的存储器;所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序;其特征在于,所述至少一个处理器执行所述一个或多个计算机程序时实现权利要求1-7任一权项所述的方法步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910734965.6A CN112347133A (zh) | 2019-08-09 | 2019-08-09 | 一种数据查询方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910734965.6A CN112347133A (zh) | 2019-08-09 | 2019-08-09 | 一种数据查询方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112347133A true CN112347133A (zh) | 2021-02-09 |
Family
ID=74366949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910734965.6A Pending CN112347133A (zh) | 2019-08-09 | 2019-08-09 | 一种数据查询方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112347133A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11741093B1 (en) | 2021-07-21 | 2023-08-29 | T-Mobile Usa, Inc. | Intermediate communication layer to translate a request between a user of a database and the database |
WO2023231615A1 (zh) * | 2022-05-30 | 2023-12-07 | 北京火山引擎科技有限公司 | 一种基于数据湖的物化列创建方法以及数据查询方法 |
WO2024021790A1 (zh) * | 2022-07-27 | 2024-02-01 | 北京火山引擎科技有限公司 | 一种基于数据湖的虚拟列构建方法以及数据查询方法 |
CN117609315A (zh) * | 2024-01-22 | 2024-02-27 | 中债金融估值中心有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
-
2019
- 2019-08-09 CN CN201910734965.6A patent/CN112347133A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11741093B1 (en) | 2021-07-21 | 2023-08-29 | T-Mobile Usa, Inc. | Intermediate communication layer to translate a request between a user of a database and the database |
WO2023231615A1 (zh) * | 2022-05-30 | 2023-12-07 | 北京火山引擎科技有限公司 | 一种基于数据湖的物化列创建方法以及数据查询方法 |
WO2024021790A1 (zh) * | 2022-07-27 | 2024-02-01 | 北京火山引擎科技有限公司 | 一种基于数据湖的虚拟列构建方法以及数据查询方法 |
CN117609315A (zh) * | 2024-01-22 | 2024-02-27 | 中债金融估值中心有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
CN117609315B (zh) * | 2024-01-22 | 2024-04-16 | 中债金融估值中心有限公司 | 一种数据处理方法、装置、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112347133A (zh) | 一种数据查询方法和装置 | |
CA2906669C (en) | Efficiently performing operations on distinct data values | |
US10067954B2 (en) | Use of dynamic dictionary encoding with an associated hash table to support many-to-many joins and aggregations | |
US7917463B2 (en) | System and method for data warehousing and analytics on a distributed file system | |
CN104685498B (zh) | 聚合/分组操作的硬件实现方式:散列表方法 | |
CN104102710A (zh) | 一种海量数据查询方法 | |
WO2021068549A1 (zh) | 一种数据处理方法、平台及系统 | |
CN104376068A (zh) | 一种基于动态报表模板的数据展现系统及方法 | |
US8041731B2 (en) | Efficient evaluation of SQL pivot operations | |
CN105683956A (zh) | 密集分组的维度数据 | |
CN105072160A (zh) | 一种流水号生成方法、装置及服务器 | |
CN103207919A (zh) | 一种MongoDB集群快速查询计算的方法及装置 | |
CN106326243B (zh) | 一种数据处理方法及装置 | |
CN113076729B (zh) | 用于报表导入的方法及系统、可读存储介质及电子设备 | |
WO2019076001A1 (zh) | 信息更新方法和装置 | |
CN104199978A (zh) | 基于NoSQL实现元数据缓存与分析的系统及方法 | |
CN110737747A (zh) | 一种数据操作方法、装置及系统 | |
US20080133543A1 (en) | System and Method for Dynamic and On-Demand Data Transfer and Synchronization Between Isolated Networks | |
CN108733688B (zh) | 数据分析的方法、装置 | |
CN104021216A (zh) | 消息代理服务器及信息发布订阅方法和系统 | |
CN111611267B (zh) | 一种将数据库数据转换为json对象配置可视化图表的方法 | |
CN112130846A (zh) | 一种三微一屏发布引擎系统及发布方法 | |
CN115062028B (zh) | 一种OLTP领域多表join查询的方法 | |
CN112699149B (zh) | 目标数据获取方法、装置和存储介质及电子装置 | |
CN111309932B (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 |