数据查询方法和数据查询平台

文档序号:1952660 发布日期:2021-12-10 浏览:9次 >En<

阅读说明:本技术 数据查询方法和数据查询平台 (Data query method and data query platform ) 是由 王毅 于 2020-10-23 设计创作,主要内容包括:本公开提供了一种数据查询方法,应用于数据查询平台,所述数据查询平台与业务数据库通信。所述方法包括:在注册阶段基于业务方提供的用户名和密码的组合生成密文串,并将所述密文串反馈给所述业务方;以及在查询阶段基于所述业务方发送的包括所述密文串的查询请求,到所述业务数据库中进行数据查询。本公开还提供了一种数据查询平台、一种电子设备、以及一种计算机可读存储介质。(The disclosure provides a data query method, which is applied to a data query platform, wherein the data query platform is communicated with a service database. The method comprises the following steps: generating a ciphertext string based on the combination of the user name and the password provided by the service party in the registration stage, and feeding the ciphertext string back to the service party; and in the inquiry stage, based on the inquiry request including the ciphertext string sent by the service party, carrying out data inquiry in the service database. The present disclosure also provides a data query platform, an electronic device, and a computer-readable storage medium.)

数据查询方法和数据查询平台

技术领域

本公开涉及互联网信息安全技术领域,更具体地,涉及一种数据查询方法、一种数据查询平台、一种电子设备、以及一种计算机可读存储介质。

背景技术

目前可以通过一些数据查询平台(例如,Apache Kylin)接入数据库等进行数据查询。数据查询平台可以通过配置文件的方式连接数据源和进行数据查询的业务方。这种方式导致数据源信息不安全,使得非常重要的业务方数据很容易被泄露,存在极大的安全隐患。而且,业务方数据信息也不安全,例如业务方的信息、以及查询的数据等内容容易被非法获取。

发明内容

有鉴于此,本公开实施例提供了一种可以提高数据查询过程中用户信息和数据源信息安全性的数据查询方法和数据查询平台,以及一种电子设备和一种计算机可读存储介质。

本公开实施例的一个方面,提供了一种数据查询方法,应用于数据查询平台,所述数据查询平台与业务数据库通信。所述方法包括:在注册阶段基于业务方提供的用户名和密码的组合生成密文串,并将所述密文串反馈给所述业务方;以及在查询阶段基于所述业务方发送的包括所述密文串的查询请求,到所述业务数据库中进行数据查询。

根据本公开的实施例,所述数据查询平台还包括用户信息管理数据库。所述方法还包括利用所述用户信息管理数据库对所述业务方提供的用户名和密码、以及所述密文串进行统一存储和管理。

根据本公开的实施例,所述数据查询平台集成有Kylin服务。所述方法还包括:在注册阶段向所述业务方分配用户交互服务地址。其中,所述用户交互服务地址用于在查询阶段接收所述查询请求,并确定出为所述查询请求中的要查询的项目注册的Kylin服务的真实地址。

根据本公开的实施例,所述方法还包括:在注册阶段针对一个项目注册多个Kylin服务,该多个Kylin服务的部署模式不同。

根据本公开的实施例,所述方法还包括在查询阶段基于一个项目的查询频率和/或查询数据量,将针对该项目注册的多个部署模式不同 Kylin服务进行组合。

根据本公开的实施例,所述部署模式包括:基于任务构建的单任务部署模式;基于任务查询的单任务部署模式;或者基于任务构建和任务查询组合的双任务部署模式。

本公开实施例的另一方面,提供了一种数据查询平台。所述数据查询平台包括数据查询模块和交互服务模块。所述数据查询模块与业务数据库通信,用于在查询阶段基于查询请求从所述业务数据库中进行数据查询。所述交互服务模块与所述数据查询模块通信,用于在注册阶段基于业务方提供的用户名和密码的组合生成密文串,并将所述密文串反馈给所述业务方,以及在查询阶段将所述业务方发送的包括所述密文串的所述查询请求转发给所述数据查询模块,并将所述数据查询模块进行数据查询的结果反馈给所述业务方。

根据本公开的实施例,所述数据查询平台还包括用户信息管理数据库,所述用户信息管理数据库与所述交互服务模块通信连接。所述交互服务模块还用于利用所述用户信息管理数据库对所述业务方提供的用户名和密码、以及所述密文串进行统一存储和管理。

根据本公开的实施例,所述数据查询模块集成有Kylin服务。所述交互服务模块还用于在注册阶段向所述业务方分配用户交互服务地址。其中,所述用户交互服务地址用于在查询阶段接收所述查询请求,并确定出为所述查询请求中的要查询的项目部署的Kylin服务的真实地址。

根据本公开的实施例,所述交互服务模块还用于:在注册阶段针对一个项目注册多个Kylin服务,其中,所述多个Kylin服务的部署模式不同。其中,所述部署模式包括基于任务构建的单任务部署模式、基于任务查询的单任务部署模式、或者基于任务构建和任务查询组合的双任务部署模式。

根据本公开的实施例,所述交互服务模块还用于在查询阶段基于一个项目的查询频率和/或查询数据量,将针对该项目注册的多个 Kylin服务进行组合。

本公开实施例的另一方面,提供了一种电子设备。所述电子设备包括一个或多个存储器、以及一个或多个处理器。所述存储器上存储有计算机可执行指令。所述处理器执行所述指令,以实现如上所述的方法。

本公开实施例的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。

本公开实施例的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。

上述一个或多个实施例具有如下优点或益效果:业务方使用基于用户名和密码的密文串与数据平台进行交互,可以至少部分地解决业务方连接数据查询平台120使用明文的用户名密码且容易被窃取的问题,降低数据查询平台120在使用过程中的安全隐患。

附图说明

通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:

图1示意性示出了根据本公开实施例的数据查询方法和数据查询平台的系统架构;

图2示意性示出了根据本公开一实施例的数据查询方法的流程图;

图3示意性示出了根据本公开另一实施例的数据查询平台的系统架构;

图4示意性示出示出了根据本公开一实施例的数据查询方法在注册阶段的流程图;

图5示意性示出示出了根据本公开一实施例的数据查询方法中在注册阶段注册Kylin信息的类图;

图6示意性示出示出了根据本公开另一实施例的数据查询方法在查询阶段的流程图;

图7示意性示出示出了根据本公开一实施例的数据查询方法中在查询阶段业务方与Kylin连接的类图;

图8示意性示出了根据本公开一实施例的数据查询方法中业务方通过通过JDBC的方式连接Kylin服务的代码示意图;以及

图9示意性示出了适于实现根据本公开实施例的数据查询方法和数据查询平台的计算机系统的方框图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B 和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。

图1示意性示出了根据本公开实施例的数据查询方法和数据查询平台的系统架构100。

如图1所示,该系统架构100包括业务方110、数据查询平台120、以及业务数据库130。数据查询平台120可以分别与业务方110和业务数据库130通信。数据查询平台120可以接收业务方110的查询请求,并基于该查询请求从业务数据库130中查询数据,并反馈给业务方110。

业务方110可以是终端用户,或者也可以是需要进行数据查询的中间服务。

业务数据库130可以是Hbase数据库、或者Hadoop分布式文件系统(HDFS)。

根据本公开的实施例,该数据查询平台120可以包括数据查询模块121和交互服务模块122。数据查询模块121与业务数据库通信,用于在查询阶段基于查询请求从业务数据库中进行数据查询。交互服务模块122与数据查询模块121通信,用于在注册阶段基于业务方110 提供的用户名和密码的组合生成密文串,并将密文串反馈给业务方110,以及在查询阶段将业务方110发送的包括密文串的查询请求转发给数据查询模块121,并将数据查询模块121进行数据查询的结果反馈给业务方110。从而,业务方使用基于用户名和密码的密文串与数据平台进行交互,可以一定程度上解决业务方110连接数据查询平台120 使用明文的用户名密码且容易被窃取的问题,降低数据查询平台120 在使用过程中的安全隐患。

数据查询平台120还可以包括用户信息管理数据库123,用户信息管理数据库123可以与交互服务模块122通信连接。交互服务模块 122还用于利用用户信息管理数据库123对业务方110提供的用户名和密码、以及密文串进行统一存储和管理,清晰化和标准化数据查询平台120的接入流程和维护方案。该用户信息管理数据库123例如可以是MySQL数据库、和/或Etcd数据库。

该数据查询平台120可以是集成有Kylin服务的数据平台。例如,在数据查询模块121中集成有kylin服务。Apache Kylin支持JDBC作为第三种数据源(继Hive,Kafka),从而可以直接集成Kylin和一些 SQL数据库或数据仓库进行数据查询。

由于Kylin提供很多查询数据的API,如果将Kylin服务的真实地址泄露,会导致业务方110的数据很容易被非法获取。根据本公开的实施例,交互服务模块122还用于在注册阶段向业务方110分配用户交互服务地址,其中,该用户交互服务地址用于在查询阶段接收查询请求,并确定出为查询请求中的要查询的项目部署的Kylin服务的真实地址。从而,暴露给业务方110的地址为用户交互服务地址,而非 Kylin服务的真实地址,可以对Kylin服务的真实地址进行保护。防止业务方110重要数据通过Kylin开放的API接口被读取甚至篡改。

更进一步地,在注册阶段交互服务模块122还可以针对一个项目注册多个Kylin服务,其中,多个Kylin服务的部署模式不同。从而在查询阶段,交互服务模块122可以基于一个项目的查询频率和/或查询数据量,将针对该项目注册的多个Kylin服务进行组合。Kylin服务的部署模式例如可以包括基于任务构建的单任务部署模式、基于任务查询的单任务部署模式、或者基于任务构建和任务查询组合的双任务部署模式。以此方式,可以根据业务方110所查询项目的查询频率和查询数据量,通过动态灵活的组合得到不同部署模式的Kylin服务,提高了提高Kylin处理高并发构建任务的能力。需要说明的是,该组合的管理策略可以是动态完成,不需要操作Kylin客户端机器。

图2示意性示出了根据本公开一实施例的数据查询方法的流程图。

如图2所示,该方法可以可以包括操作S210和操作S220。

在操作S210,交互服务模块122在注册阶段基于业务方110提供的用户名和密码的组合生成密文串,并将密文串反馈给业务方110。

在操作S220,在查询阶段基于业务方110发送的包括密文串的查询请求,到业务数据库中进行数据查询。具体地,交互服务模块122 接收到查询请求后,验证查询请求中的密文串。验证通过后将查询请求中的查询信息(例如,要查询的项目project和数据立方cube信息) 转发给数据查询模块121。数据查询模块121根据查询信息到业务数据库130中进行数据查询,并将查询结果反馈给交互服务模块122。之后,交互服务模块122将查询结果反馈给业务方110。从而,业务方110不仅没有用户名和密码的明文,而且使用的密文串是用户名和密码组合后经过再加密生成的,增加了业务方110的信息被被恶意窃取和解密的难度。

图3示意性示出了根据本公开另一实施例的数据查询平台的系统架构300。该系统架构300可以是系统架构100的一个具体实施例。

如图3所示,该系统架构300中数据查询平台包括数据查询模块 321、交互服务模块322、以及MySQL数据库3231和Etcd数据库3232。其中,MySQL数据库3231和Etcd数据库3232为数据查询平台的用户信息管理数据库。在该实施例中同时使用MySQL数据库3231和Etcd数据库3232两种类型不同的数据库,可以提高对用户信息数据的管理安全性。

数据查询模块321集成有Kylin服务,并且与Hbase数据库332 和/或HDFS系统331通信,可以通过Kylin服务进行数据查询。

业务交互服务模块322负责与业务方310的交互,包括进行业务方310的数据注册(例如,通过平台管理员340进行注册),接收业务方310的查询请求,将查询请求中的查询信息转发给数据查询模块321,并将数据查询模块321获得的查询结果反馈给业务业务方310。

平台管理员340可以为业务方310注册用户名、密码、项目project, cube等信息。业务方310通过使用基于用户名和密码的密文串与Kylin 服务建立连接。根据本公开的实施例,在注册阶段为业务方310分配用户交互服务地址。从而业务方310直接访问的是用户交互服务地址,而非真实的Kylin服务地址,从而对Kylin服务的真实地址进行保护。

另外,平台管理员340可以通过对一个project对应多个Kylin服务地址,并配置策略在查询阶段根据不同业务的查询频率和查询数据量,动态灵活控制多个Kylin服务的组合来进行数据查询,从而集成使用Kylin的两种部署模式,可以动态灵活控制Kylin构建任务的模式,提高Kylin处理高并发构建任务的能力。

以下结合图4~图8,对图3的数据查询过程中注册阶段和查询阶段的进行示例性描述。

图4示意性示出示出了根据本公开一实施例的数据查询方法在注册阶段的流程图。

结合图3,如图4所示,根据本公开实施例的数据查询方法在注册阶段的操作流程可以包括操作S410~操作S430。

在操作S410,在注册阶段基于业务方310提供的用户名和密码的组合生成密文串,并将密文串反馈给业务方310。

在操作S420,在注册阶段向业务方310分配用户交互服务地址。其中,用户交互服务地址用于在查询阶段接收查询请求,并确定出为查询请求中的要查询的项目注册的Kylin服务的真实地址。

在操作S430,在注册阶段针对一个项目注册多个Kylin服务,其中,该多个Kylin服务的部署模式不同。其中,部署模式包括:基于任务构建的单任务部署模式;基于任务查询的单任务部署模式;或者基于任务构建和任务查询组合的双任务部署模式。

图5示意性示出示出了根据本公开一实施例的数据查询方法中在注册阶段注册Kylin信息的类图。

平台管理员340通过registeMasterInfo(String clusterName,StringclusterServerUrl,String token)方法注册Kylin信息,其中clusterName 是业务方310申请接入Kylin服务的集群名称,clusterServerUrl是平台管理员340分配给业务方310的Kylin服务地址,该地址不是Kylin 部署的真实地址,token是用来向zk验证的鉴权码。

平台管理员340注册Kylin工作节点的过程包括以下四步。

第一步:使用token与ZookeeperWatchTask中获取的token做权限校验,如果认证成功则进入第二步注册流程,否则返回注册失败。

第二步:对注册的服务地址ServerUrl(真实的Kylin服务地址) 进行探活。使用ClusterMonitorHandler类中的testPortWithTimes(host, port)方法进行端口探活,如果是存活状态则进入第三步注册流程,否则返回注册失败。第二步的目的在于保证注册的地址是存活可用状态。

第三步:向MySQL数据库中获取Etcd中key值的前缀,用来拼接当前集群目录路径,防止Etcd的key冲突而导致注册失败。

第四步:通过EtcdUtil类中的setValue(path+key,masterInfo)方法注册数据到Etcd。到此,平台管理员340注册Kylin信息就完成了。

图6示意性示出示出了根据本公开另一实施例的数据查询方法在查询阶段的流程图。

结和图3,如图6所示,根据本公开实施例该数据查询方法在查询阶段的操作可以包括操作S610~操作S630。

在操作S610,接收业务方310向用户交互服务地址发送的查询请求,该查询请求包括密文串、以及查询的项目(project)。在一些实施例中还包括查询的数据立方cube。

在操作S620,在密文串通过验证后,基于查询的项目project确定出针对该项目注册的多个Kylin服务的真实服务地址,其中,该多个 Kylin服务的部署模式不同。

在操作S630,基于该项目的查询频率和/或查询数据量,控制针对该项目注册的多个Kylin服务的组合,进行数据查询。

图7示意性示出示出了根据本公开一实施例的数据查询方法中在查询阶段业务方310与Kylin连接的类图。

如图7所示,在查询阶段,业务方310在向Kylin发出请求连接之前需要已申请并获取到了平台管理员340注册的用户名和密码组合后的加密密文,Project和Cube信息。业务方310通过客户端将MD5 (用户名,密码)的密文串首先通过queryKylinJDBCInfo(Stringusername,String password,String project,String cube)方法请求查询Kylin的JDBC连接串的信息。获取到针对查询的project的Kylin服务的真实地址后,提交构建任务。

图8示意性示出了根据本公开一实施例的数据查询方法中业务方 310通过通过JDBC的方式连接Kylin服务的代码示意图。

结合图3和图8,在注册阶段平台管理员340可以通过http get的方式请求以下地址完成注册。在一个实施例中,注册地址例如可以是是:

http://{PowerServerUrl}:{port}/kylin/master/{martName}/{kylinServerUrl}/token。

在查询阶段,业务方310通过获取JDBC的方式来连接Kylin服务。其中如图8所示,kylin_auth_script.getAuthUseName()获取到的是 MD5(用户名,密码)的密文串,kylin_auth_script.getUrl()获取的是 Kylin的真实服务地址。获取完整的Kylin连接信息后通过build接口出发Kylin的构建任务。Kylin信息的查询,重新构建等使用方法和build 过程使用方法类似。

根据本公开的实施例的模块、子模块、单元、子单元(例如,数据查询模块、和交互服务模块)中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

图9示意性示出了适于实现根据本公开实施例的数据查询方法和数据查询平台的计算机系统900的方框图。图9示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如图9所示,根据本公开实施例的计算机系统900包括处理器901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分 908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。处理器901例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器901还可以包括用于缓存用途的板载存储器。处理器901可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

在RAM 903中,存储有系统900操作所需的各种程序和数据。处理器901、ROM 902以及RAM 903通过总线904彼此相连。处理器 901通过执行ROM 902和/或RAM 903中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,程序也可以存储在除ROM 902和RAM 903以外的一个或多个存储器中。处理器901也可以通过执行存储在一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。

根据本公开的实施例,计算机系统900还可以包括输入/输出(I/O) 接口905,输入/输出(I/O)接口905也连接至总线904。计算机系统 900还可以包括连接至I/O接口905的以下部件中的一项或多项:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器 910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。

根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被处理器901执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。

本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。

根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 902和/或RAM 903和/或ROM 902和RAM 903以外的一个或多个存储器。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于差分隐私的数据查询方法、装置、设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!