CN112769777B - 基于云平台的数据整合方法、装置及电子设备 - Google Patents

基于云平台的数据整合方法、装置及电子设备 Download PDF

Info

Publication number
CN112769777B
CN112769777B CN202011578953.8A CN202011578953A CN112769777B CN 112769777 B CN112769777 B CN 112769777B CN 202011578953 A CN202011578953 A CN 202011578953A CN 112769777 B CN112769777 B CN 112769777B
Authority
CN
China
Prior art keywords
data
cloud database
production domain
cloud
domain
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.)
Active
Application number
CN202011578953.8A
Other languages
English (en)
Other versions
CN112769777A (zh
Inventor
刘志强
张彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Blue Cloud Network Technology Co ltd
Original Assignee
Shanghai Blue Cloud Network Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Blue Cloud Network Technology Co ltd filed Critical Shanghai Blue Cloud Network Technology Co ltd
Priority to CN202011578953.8A priority Critical patent/CN112769777B/zh
Publication of CN112769777A publication Critical patent/CN112769777A/zh
Application granted granted Critical
Publication of CN112769777B publication Critical patent/CN112769777B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display

Abstract

本发明公开了一种基于云平台的数据整合方法,以解决相关技术中跨数据生产域的数据整合过程效率较低的问题。方法包括:获取待进行跨域数据整合的各数据生产域的第一IP地址;将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限;分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据;数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据。本发明还公开一种基于云平台的数据整合装置、电子设备及计算机可读存储介质。

Description

基于云平台的数据整合方法、装置及电子设备
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于云平台的数据整合方法、装置及电子设备。
背景技术
跨数据生产域的数据整合(简称跨域数据整合)对于企业整合业务数据,分析业务趋势具有重要作用。其中,数据生产域是指用于实现数据核心业务和服务的网络安全域。
然而,由于实际生产环境中,不同数据生产域通常是彼此隔离的,因此,现有技术中,跨域数据整合的实现方式,通常是人为地收集不同数据生产域的数据,然后将收集的数据拷贝到域外数据库进行整合。这样,由于跨域数据整合过程中完全依赖于人为导入数据,因此,容易导致数据整合的效率较低。
发明内容
本发明实施例提供一种基于云平台的数据整合方法,用以解决现有技术中跨数据生产域的数据整合过程效率较低的问题。
本发明实施例还提供一种基于云平台的数据整合装置,一种电子设备,以及一种计算机可读存储介质。
本发明实施例采用下述技术方案:
一种基于云平台的数据整合方法,包括:
获取待进行跨域数据整合的各数据生产域的第一IP地址;
将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;
将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限;
分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据;数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据。
可选的,在将获取的各第一IP地址添加至预先创建的数据库的防火墙白名单之前,方法还包括:基于云平台创建云端数据库;
其中,基于云平台创建云端数据库,包括:
接收云端数据库的创建请求;其中,创建请求中包括云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息;
基于创建请求中的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息创建云端数据库。
可选的,预设配置文件包括云端数据库的名称和连接地址;分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据,包括:
基于云端数据库的名称和连接地址,通过预设命令行建立各数据生产域与云端数据库的通信连接关系;
分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限和通信连接关系从各数据生产域中获取待整合的数据。
可选的,方法还包括:
获取云端数据库的名称和连接地址;
将名称和连接地址发送至预设的展示工具,以便展示工具和云端数据库建立连接关系,对云端数据库的数据进行展示。
可选的,云端数据库包括数据更新模块,方法还包括:
当监测到各数据生产域的数据发生变更时,向更新模块发送更新消息,以便更新模块响应于更新消息,基于数据生产域的数据变更信息更新云端数据库。
一种基于云平台的数据整合装置,包括获取模块、第一处理模块、第二处理模块和运行模块,其中:
获取模块,用于获取待进行跨域数据整合的各数据生产域的第一IP地址;
第一处理模块,用于将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;
第二处理模块,用于将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限;
运行模块,用于分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据;数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据。
可选的,装置还包括:创建模块,用于基于云平台创建云端数据库;
其中,创建模块,具体用于:
接收云端数据库的创建请求;其中,创建请求中包括云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息;
基于创建请求中的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息创建云端数据库。
可选的,预设配置文件包括云端数据库的名称和连接地址;运行模块,用于:
基于云端数据库的名称和连接地址,通过预设命令行建立各数据生产域与云端数据库的通信连接关系;
分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限和通信连接关系从各数据生产域中获取待整合的数据。
可选的,装置还包括:
名称地址获取模块,用于获取云端数据库的名称和连接地址;
发送模块,用于将名称和连接地址发送至预设的展示工具,以便展示工具和云端数据库建立连接关系,对云端数据库的数据进行展示。
可选的,装置还包括:数据更新模块,用于当监测到各数据生产域的数据发生变更时,向更新模块发送更新消息,以便更新模块响应于更新消息,基于数据生产域的数据变更信息更新云端数据库。
一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的基于云平台的数据整合方法的步骤。
一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的基于云平台的数据整合方法的步骤。
本发明实施例采用的上述至少一个技术方案能够达到以下有益效果:
采用本发明实施例提供的方法,通过获取待进行跨域数据整合的各数据生产域的第一IP地址;将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限;分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据;数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据,相对于现有技术而言,由于该跨数据生产域的数据整合过程完全不需要依赖人为操作实现,属于全自动化过程,因此,可以提高数据整合效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例提供的一种基于云平台的数据整合方法的实现流程示意图;
图2为本发明实施例提供的一种基于云平台创建云端数据库方法的实现流程示意图;
图2a为本发明实施例提供的一种基于云平台创建云端数据库的界面示意图;
图2b为本发明实施例提供的一种对云端数据库的计算和存储资源等信息进行设置的界面示意图;
图3为本发明实施例提供的一种将各数据生产域的数据导入至云端数据库的方法的实现流程示意图;
图4a为本发明实施例提供的一种对云端数据库的数据进行展示的报表视图的示意图;
图4b为本发明实施例提供的一种对云端数据库的数据进行展示的报表视图的示意图;
图4c为本发明实施例提供的一种对云端数据库的数据进行展示的报表视图的示意图;
图4d为本发明实施例提供的一种对云端数据库的数据进行展示的报表视图的示意图;
图5为本发明实施例提供一种基于云平台的数据整合装置的具体结构示意图;
图6为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下结合附图,详细说明本发明各实施例提供的技术方案。
实施例1
为解决现有技术中数据整合效率较低的问题,本发明实施例提供一种基于云平台的数据整合方法。
该方法的执行主体,可以是各种类型的计算设备,或者,可以是安装于计算设备上的应用程序或应用(Application,APP)。所述的计算设备,比如可以是手机、平板电脑、智能可穿戴设备等用户终端,也可以是服务器等。
为便于描述,本发明实施例以该方法的执行主体为云平台服务器为例,对该方法进行介绍。本领域技术人员可以理解,本发明实施例以该云平台服务器为例对方法进行介绍,仅是一种示例性说明,并不对本方案对应的权利要求保护范围构成限制。
具体地,本发明实施例提供的该方法的实现流程如图1所示,包括如下步骤:
步骤11,获取待进行跨域数据整合的各数据生产域的第一IP地址。
数据生产域,可以理解为用于实现数据核心业务和服务的网络安全域。
通常,为了方便管理,数据生产域管理员会收集整理各数据生产域的相关信息,比如,IP地址,因此,本方案中可以从数据生产域管理员处获取各数据生产域的第一IP地址。
步骤12,将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单。
云端数据库,即基于云平台(比如Azure服务平台)创建的数据库,例如AzureDatabase for Mysql、Azure Database for Postgresql以及Azure Database forMariaDB等。
云端数据库的防火墙白名单,用于定义能够对云端数据库进行外部访问的IP地址清单。换而言之,即在云端数据库的防火墙白名单中的IP地址均可以对云端数据库进行外部访问。
本方案中,可以将获取的各数据生产域的第一IP地址添加至预先创建的云端数据库的防火墙白名单中,以使各数据生产域获得对各云端数据库的访问权限,实现各数据生产域对云端数据库的外部访问。
例如,以云端数据库为Azure Database for Mysql为例,假设获取的某数据生产域的IP地址为192.168.XX,则可以先确定Azure Database for Mysql中支持数据生产域进行外部访问的特定端口(以5672端口为例),然后执行关闭语句关闭5672端口,并且在确认关闭5672端口之后,获取Azure Database for Mysql的防火墙白名单,然后将192.168.XX加入至Azure Database for Mysql的防火墙白名单中,即可开启访问该特定端口对AzureDatabase for Mysql的访问权限。
其中,上述关闭语句例如可以如下:
systemctl enable firewall
systemctl start firewall
firewall-cmd—set-default-zone=public
firewall-cmd--zone=public—remove-port=5672/tcp—permanent
需要说明的是,上述将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单的方法仅是本方案的一种示例性说明,并不对本方案造成任何限定。
可选的,本发明实施例中,将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单时,还可以采用以下步骤:
步骤一:获取预先创建的云端数据库的服务器资源;
步骤二:根据服务器资源,为云端数据库创建连接安全性配置;
步骤三:将获取的各第一IP地址添加至创建连接安全性配置后的云端数据库的防火墙白名单。
其中,云端数据库的服务器资源可以从云端数据库的门户中获取。需要说明的是,从云端数据库的门户中获取该云端数据库的服务器资源的方法仅是本发明实施例的一种示例性说明,并不对本发明实施造成任何限定。
在获取服务器资源之后,则可以通过编辑命令符CL的方式,根据服务器资源,为云端数据库创建安全性配置。最后,将获取的各第一IP地址添加至创建连接安全性配置后的云端数据库的防火墙白名单,以使各数据生产域获得对各云端数据库的访问权限,实现各数据生产域对云端数据库的外部访问。
步骤13,将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限。
本发明实施例中,在将获取的各第一IP地址添加至预先创建的数据库的防火墙白名单之前,需要先基于云平台创建云端数据库。
如图2所示,基于云平台创建云端数据库时,可以采用如下步骤21~步骤22:
步骤21,接收云端数据库的创建请求;其中,创建请求中包括云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息。
如图2a所示,本发明实施方式中,当用户需要基于云平台创建云端数据库时,可以登陆Web浏览器,然后访问云平台门户,选择需要创建的云端数据库的类型,点击“创建资源”组件/按钮,即可以触发云平台门户向云平台服务器发送云端数据库创建请求,与此同时,云平台服务器可以接收到云端数据库的创建请求。
通常,为了保证创建完的云端数据库符合业务需求,在创建云端数据库时,可以对云端数据库的计算和存储资源等信息进行定义或者设置。
例如,以云端数据库为Azure Database for Mysql为例,可以预先对该云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息等相关信息进行定义或设置,以便云平台服务器创建后的云端数据库符合实际需求。
如图2b所示,比如可以将该云端数据库的资源组信息定义为myresourcegroup、数据源信息设置为“无”,位置信息设置为美国中部,版本信息设置为5.7,计算资源信息设置为4个vCore,存储资源信息设置为100GB。
需要说明的是,上述例举的对云端数据库进行设置的信息仅是本发明实施例的一种示例性说明,并不对本发明实施例造成任何限定。比如,在一种可选的实施方式中,除了可以对该云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息等相关信息进行定义之外,还可以针对该云端数据库的名称、管理账号等信息进行设置。
步骤22,基于创建请求中的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息创建云端数据库。
云平台服务器接收到云端数据库创建请求后,则可以从该请求中获取待创建云端数据库的设置信息,比如云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息等,然后基于该信息创建云端数据库。
云平台服务器创建完云端数据库后,则可以获取云端数据库的IP地址,并将获取的云端数据库的IP地址添加至各数据生产域,以使各云端数据库获得各数据生产域的访问权限,实现云端数据库对各数据生产域的接口访问。
在一种可选的实施方式中,可以通过在linux命令行输入netstat -an|grep3306,或者在windows下cmd中输入netstat -an|findstr 3306来获取预先创建的云端数据库的IP地址。
其中,将云端数据库的第二IP地址添加至各数据生产域的方法与步骤12中将各数据生产域的第一IP地址添加至云端数据库的防火墙白名单的方法相同,相关内容可参见步骤12的相关描述。
例如,假设预先创建的云端数据库的第二IP地址为11.11.11.11,需要获得各数据生产域的访问权限的云端数据库的端口为3306,则为了使该云端数据库获得某特定数据生产域的访问权限,可以在对应数据生产域的防火墙白名单中添加11.11.11.11 3306,这样,第二IP地址为11.11.11.11的云端数据库的3306端口即可获得该对应数据生产域的访问权限。
通过上述步骤12和步骤13,可以开放数据生产域和云端数据库彼此之间的访问权限,本发明实施例中,为了进一步实现对各数据生产域的数据进行整合,以下将通过步骤14将各数据生产域的数据导入至云端数据库。
步骤14,分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据。
其中,数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据。
如图3所示,可以根据以下步骤141~步骤142将各数据生产域的数据导入至云端数据库。
步骤141,基于云端数据库的名称和连接地址,通过预设命令行建立各数据生产域与云端数据库的通信连接关系。
可选的,获取云端数据库的名称和连接地址之后,可以通过以下预设命令行建立各数据生产域与云端数据库的通信连接关系:
function Invoke-MySQL {
Param(
[Parameter(
Mandatory = $true,
ParameterSetName = '',
ValueFromPipeline = $true)]
[string]$Query
)
$MySQLAdminUserName = '<云端数据库登陆名>'
$MySQLAdminPassword = '<云端数据库登陆密码>'
$MySQLDatabase = '<云端数据库的名称>'
$MySQLHost = "<云端数据库连接地址>"
$ConnectionString = "server=" + $MySQLHost + "; port=3306; uid=" + $MySQLAdminUserName + "; pwd=" + $MySQLAdminPassword + "; database="+$MySQLDatabase
#write-host $ConnectionString
Try {
#[void][System.Reflection.Assembly]::LoadFrom("D:\Users\oe-liuzhiqiang3\Desktop\WADI_Mode_Auto\mysql\MySql.Data.dll")
$Connection = New-Object MySql.Data.MySqlClientMySqlConnection
$Connection.ConnectionString = $ConnectionString
$Connection.Open()
$Command=New-Object MySql.Data.MySqlClient.MySqlCommand($Query, $Connection)
$DataAdapter=New-Object MySql.Data.MySqlClient.MySqlDataAdapter($Command)
$DataSet = New-Object System.Data.DataSet
$RecordCount = $DataAdapter.Fill($DataSet, "data")
$DataSet.Tables[0]
}
Catch {
throw "ERROR : Unable to run query : $query `n$Error[0]"
}
Finally {
$Connection.Close()
}
}
其中,云端数据库登录名和云端数据库登录密码可以预先设定。
步骤142,分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限和通信连接关系从各数据生产域中获取待整合的数据。
通过上述步骤141建立各数据生产域与云端数据库的通信连接关系之后,则可以分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限和通信连接关系从各数据生产域中获取待整合的数据。
采用本发明实施例提供的方法,通过获取待进行跨域数据整合的各数据生产域的第一IP地址;将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限;分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据;数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据,相对于现有技术而言,由于该跨数据生产域的数据整合过程完全不需要依赖人为操作实现,属于全自动化过程,因此,可以提高数据整合效率。
在一种可选的实施方式中,为了实现对云端数据库的数据的可视化展示,在执行完步骤14之后,还可以获取云端数据库的名称和连接地址,并将名称和连接地址发送至预设的展示工具,以便预设的展示工具和云端数据库建立连接关系,进而对云端数据库的数据进行可视化展示。
其中,预设的展示工具比如可以是Power Automate、Power App或者Power BI等。
可选的,对云端数据库的数据进行可视化展示时,可以采用如下方式:
将名称和连接地址发送至预设的展示工具,以便展示工具和云端数据库建立连接关系;
在建立连接关系之后,将预设的数据模型加载至预设的展示工具,以便预设的展示工具针对云端数据库的数据生成报表,并进行展示,预设的数据模型用于创建报表。
本发明实施例中,为了加快连接关系建立的速度,可以在将名称和连接地址发送至该预设的展示工具之前,预先启动预设的展示工具,然后将名称和连接地址发送至启动后的预设的展示工具,以便展示工具和云端数据库建立连接关系。
在建立连接关系之后,则可以将预设的数据模型加载至预设的展示工具,这样,预设的展示工具即可实现基于云端数据库的数据生成报表,并对云端数据库的数据进行可视化展示。
如图4a~4d所示,为本发明实施例中基于Power BI展示工具,对云端数据库的数据进行展示的报表视图的示意图。
此外,考虑到各数据生产域中的数据可能会随着时间发生变更,比如,数据生产域中新插入/增加数据、删除数据以及修改数据等,为了保证后续在云端数据库查找数据时,始终能够查找到各数据生产域最新状态的数据,在一种可选的实施方式中,可以在云端数据库设置数据更新模块,这样,当云平台服务器监测到各数据生产域的数据发生变更时,则可以向更新模块发送更新消息,以便更新模块响应于更新消息,基于数据生产域的数据变更信息更新云端数据库。
实施例2
出于与上述方法相同的发明构思,本发明实施例还提供一种用于实施上述方法的装置,以提高数据整合的效率。
以下对本发明实施例提供的装置进行详细介绍。
请参见图5,为本申请实施例提供的一种基于云平台的数据整合装置的具体结构示意图,包括获取模块51、第一处理模块52、第二处理模块53和运行模块54。其中:
获取模块51,用于获取待进行跨域数据整合的各数据生产域的第一IP地址;
第一处理模块52,用于将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;
第二处理模块53,用于将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限;
运行模块54,用于分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据;数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据。
可选的,装置还包括:创建模块,用于基于云平台创建云端数据库;
其中,创建模块,具体用于:
接收云端数据库的创建请求;其中,创建请求中包括云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息;
基于创建请求中的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息创建云端数据库。
可选的,预设配置文件包括云端数据库的名称和连接地址;运行模块,用于:
基于云端数据库的名称和连接地址,通过预设命令行建立各数据生产域与云端数据库的通信连接关系;
分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限和通信连接关系从各数据生产域中获取待整合的数据。
可选的,装置还包括:
名称地址获取模块,用于获取云端数据库的名称和连接地址;
发送模块,用于将名称和连接地址发送至预设的展示工具,以便展示工具和云端数据库建立连接关系,对云端数据库的数据进行展示。
可选的,装置还包括:数据更新模块,用于当监测到各数据生产域的数据发生变更时,向更新模块发送更新消息,以便更新模块响应于更新消息,基于数据生产域的数据变更信息更新云端数据库。
采用本发明实施例提供的装置,通过获取模块获取各数据生产域的第一IP地址;第一处理模块将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;第二处理模块将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限;分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据;数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据,相对于现有技术而言,由于该跨数据生产域的数据整合过程属于全自动化过程,完全不需要依赖人为操作实现,因此,可以提高数据整合效率。
实施例3
图6为实现本发明各个实施例的一种电子设备的硬件结构示意图,该电子设备600包括但不限于:射频单元601、网络模块602、音频输出单元603、输入单元604、传感器605、显示单元606、用户输入单元607、接口单元608、存储器609、处理器610、以及电源611等部件。本领域技术人员可以理解,图6中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
其中,处理器610,用于获取待进行跨域数据整合的各数据生产域的第一IP地址;将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;将预先创建的云端数据库的第二IP地址添加至各数据生产域,以便各数据生产域对云端数据库开放对于各数据生产域的接口访问权限;分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据;数据获取脚本程序用于触发云端数据库从各数据生产域中获取待整合的数据。
可选的,在将获取的各第一IP地址添加至预先创建的数据库的防火墙白名单之前,方法还包括:基于云平台创建云端数据库;
其中,基于云平台创建云端数据库,包括:
接收云端数据库的创建请求;其中,创建请求中包括云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息;
基于创建请求中的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息创建云端数据库。
可选的,预设配置文件包括云端数据库的名称和连接地址;分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限从各数据生产域中获取待整合的数据,包括:
基于云端数据库的名称和连接地址,通过预设命令行建立各数据生产域与云端数据库的通信连接关系;
分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便云端数据库基于接口访问权限和通信连接关系从各数据生产域中获取待整合的数据。
可选的,方法还包括:
获取云端数据库的名称和连接地址;
将名称和连接地址发送至预设的展示工具,以便展示工具和云端数据库建立连接关系,对云端数据库的数据进行展示。
可选的,云端数据库包括数据更新模块,方法还包括:
当监测到各数据生产域的数据发生变更时,向更新模块发送更新消息,以便更新模块响应于更新消息,基于数据生产域的数据变更信息更新云端数据库。
存储器609,用于存储可在处理器610上运行的计算机程序,该计算机程序被处理器610执行时,实现处理器610所实现的上述功能。
应理解的是,本发明实施例中,射频单元601可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器610处理;另外,将上行的数据发送给基站。通常,射频单元601包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元601还可以通过无线通信系统与网络和其他设备通信。
电子设备通过网络模块602为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元603可以将射频单元601或网络模块602接收的或者在存储器609中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元603还可以提供与电子设备600执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元603包括扬声器、蜂鸣器以及受话器等。
输入单元604用于接收音频或视频信号。输入单元604可以包括图形处理器(Graphics Processing Unit,GPU)4041和麦克风6042,图形处理器6041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元606上。经图形处理器6041处理后的图像帧可以存储在存储器609(或其它存储介质)中或者经由射频单元601或网络模块602进行发送。麦克风6042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元601发送到移动通信基站的格式输出。
电子设备600还包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板6061的亮度,接近传感器可在电子设备600移动到耳边时,关闭显示面板6061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器605还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元606用于显示由用户输入的信息或提供给用户的信息。显示单元606可包括显示面板6061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode, OLED)等形式来配置显示面板6061。
用户输入单元607可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元607包括触控面板6071以及其他输入设备6072。触控面板6071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板6071上或在触控面板6071附近的操作)。触控面板6071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器610,接收处理器610发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板6071。除了触控面板6071,用户输入单元607还可以包括其他输入设备6072。具体地,其他输入设备6072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板6071可覆盖在显示面板6061上,当触控面板6071检测到在其上或附近的触摸操作后,传送给处理器610以确定触摸事件的类型,随后处理器610根据触摸事件的类型在显示面板6061上提供相应的视觉输出。虽然在图6中,触控面板6071与显示面板6061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板6071与显示面板6061集成而实现电子设备的输入和输出功能,具体此处不做限定。
接口单元608为外部装置与电子设备600连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元608可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备600内的一个或多个元件或者可以用于在电子设备600和外部装置之间传输数据。
存储器609可用于存储软件程序以及各种数据。存储器609可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器609可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器610是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器609内的软件程序和/或模块,以及调用存储在存储器609内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器610可包括一个或多个处理单元;优选的,处理器610可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器610中。
电子设备600还可以包括给各个部件供电的电源611(比如电池),优选的,电源611可以通过电源管理系统与处理器610逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,电子设备600包括一些未示出的功能模块,在此不再赘述。
优选的,本发明实施例还提供一种电子设备,包括处理器610,存储器609,存储在存储器609上并可在所述处理器610上运行的计算机程序,该计算机程序被处理器610执行时实现上述基于云平台的数据整合方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述基于云平台的数据整合方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random AccessMemory,简称RAM)、磁碟或者光盘等。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

Claims (10)

1.一种基于云平台的数据整合方法,其特征在于,包括:
获取待进行跨域数据整合的各数据生产域的第一IP地址;其中,数据生产域是指用于实现数据核心业务和服务的网络安全域;
将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;
将所述预先创建的云端数据库的第二IP地址添加至所述各数据生产域,以便各数据生产域对所述云端数据库开放对于所述各数据生产域的接口访问权限;
分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便所述云端数据库基于所述接口访问权限从各数据生产域中获取待整合的数据;所述数据获取脚本程序用于触发所述云端数据库从各数据生产域中获取待整合的数据。
2.如权利要求1所述的方法,其特征在于,在所述将获取的各第一IP地址添加至预先创建的数据库的防火墙白名单之前,所述方法还包括:基于云平台创建所述云端数据库;
其中,所述基于云平台创建所述云端数据库,包括:
接收所述云端数据库的创建请求;其中,所述创建请求中包括所述云端数据库的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息;
基于所述创建请求中的资源组信息、数据源信息、位置信息、版本信息、计算资源信息以及存储资源信息创建所述云端数据库。
3.如权利要求1所述的方法,其特征在于,所述预设配置文件包括所述云端数据库的名称和连接地址;所述分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便所述云端数据库基于所述接口访问权限从各数据生产域中获取待整合的数据,包括:
基于所述云端数据库的所述名称和所述连接地址,通过预设命令行建立所述各数据生产域与所述云端数据库的通信连接关系;
分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便所述云端数据库基于所述接口访问权限和所述通信连接关系从各数据生产域中获取待整合的数据。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述云端数据库的名称和连接地址;
将所述名称和所述连接地址发送至预设的展示工具,以便所述展示工具和所述云端数据库建立连接关系,对所述云端数据库的数据进行展示。
5.如权利要求4所述的方法,其特征在于,所述将所述名称和所述连接地址发送至预设的展示工具,以便所述展示工具和所述云端数据库建立连接关系,对所述云端数据库的数据进行展示,包括:
将所述名称和所述连接地址发送至预设的展示工具,以便所述展示工具和所述云端数据库建立连接关系;
在建立所述连接关系之后,将预设的数据模型加载至所述预设的展示工具,以便所述预设的展示工具针对所述云端数据库的数据生成报表,并进行展示,所述预设的数据模型用于创建报表。
6.如权利要求1所述的方法,其特征在于,所述云端数据库包括数据更新模块,所述方法还包括:
当监测到所述各数据生产域的数据发生变更时,向所述更新模块发送更新消息,以便所述更新模块响应于所述更新消息,基于数据生产域的数据变更信息更新所述云端数据库。
7.如权利要求1所述的方法,其特征在于,所述将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单,包括:
获取所述预先创建的云端数据库的服务器资源;
根据所述服务器资源,为所述云端数据库创建连接安全性配置;
将获取的各第一IP地址添加至创建连接安全性配置后的云端数据库的防火墙白名单。
8.一种基于云平台的数据整合装置,其特征在于,包括获取模块、第一处理模块、第二处理模块和运行模块,其中:
获取模块,用于获取待进行跨域数据整合的各数据生产域的第一IP地址;其中,数据生产域是指用于实现数据核心业务和服务的网络安全域;
第一处理模块,用于将获取的各第一IP地址添加至预先创建的云端数据库的防火墙白名单;
第二处理模块,用于将所述预先创建的云端数据库的第二IP地址添加至各所述数据生产域,以便各数据生产域对所述云端数据库开放对于所述各数据生产域的接口访问权限;
运行模块,用于分别在各数据生产域运行预设配置文件中的数据获取脚本程序,以便所述云端数据库基于所述接口访问权限从各数据生产域中获取待整合的数据;所述数据获取脚本程序用于触发所述云端数据库从各数据生产域中获取待整合的数据。
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的基于云平台的数据整合方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的基于云平台的数据整合方法的步骤。
CN202011578953.8A 2020-12-28 2020-12-28 基于云平台的数据整合方法、装置及电子设备 Active CN112769777B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011578953.8A CN112769777B (zh) 2020-12-28 2020-12-28 基于云平台的数据整合方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011578953.8A CN112769777B (zh) 2020-12-28 2020-12-28 基于云平台的数据整合方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112769777A CN112769777A (zh) 2021-05-07
CN112769777B true CN112769777B (zh) 2022-12-02

Family

ID=75696181

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011578953.8A Active CN112769777B (zh) 2020-12-28 2020-12-28 基于云平台的数据整合方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112769777B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114944948B (zh) * 2022-05-16 2024-01-09 郑州小鸟信息科技有限公司 一种基于跨域用户权限跟随的方法及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9311479B1 (en) * 2013-03-14 2016-04-12 Fireeye, Inc. Correlation and consolidation of analytic data for holistic view of a malware attack
CN104021452A (zh) * 2014-06-23 2014-09-03 浪潮集团有限公司 一种对云计算服务器端实现各个业务系统整合的方法
CN108270716A (zh) * 2016-12-30 2018-07-10 绵阳灵先创科技有限公司 一种基于云计算的信息安全审计方法
US11310198B2 (en) * 2017-05-31 2022-04-19 Crypto4A Technologies Inc. Integrated multi-level or cross-domain network security management appliance, platform and system, and remote management method and system therefor
US20200242266A1 (en) * 2017-08-09 2020-07-30 Envision Eli, Llc System and method that allows a merchant or manufacturer to store product information in a plurality of separate clouds
CN108228775A (zh) * 2017-12-28 2018-06-29 陈菡 基于云平台的国土资源数据管理系统
CN109933701B (zh) * 2019-03-08 2019-12-31 四川大学 一种基于多策略融合的微博数据获取方法
CN111061786A (zh) * 2019-11-11 2020-04-24 国云科技股份有限公司 一种多云环境下的资源同步方法及其系统
CN111061788B (zh) * 2019-11-26 2023-10-13 江苏瑞中数据股份有限公司 一种基于云架构的多源异构数据转换整合系统及其实现方法
CN111083166A (zh) * 2019-12-31 2020-04-28 紫光云(南京)数字技术有限公司 云数据库设置白名单的方法、装置及计算机存储介质
CN111585967A (zh) * 2020-04-08 2020-08-25 上海蓝云网络科技有限公司 一种云服务认证连接方法、系统、计算机和存储介质
CN112073389B (zh) * 2020-08-21 2023-01-24 苏州浪潮智能科技有限公司 云主机安全态势感知系统、方法、设备及存储介质

Also Published As

Publication number Publication date
CN112769777A (zh) 2021-05-07

Similar Documents

Publication Publication Date Title
CN103279288B (zh) 数据传输方法、装置和终端设备
US20160314219A1 (en) Method and apparatus for invoking application programming interface
WO2015096747A1 (zh) 操作响应方法、客户端、浏览器及系统
CN109257336B (zh) 一种基于区块链的密码信息处理方法、终端设备
CN109408150A (zh) 一种快应用加载方法及移动终端
CN113018868B (zh) 云游戏登录方法、装置和系统
JP7229365B2 (ja) 権限管理方法及び端末機器
CN111600931A (zh) 一种信息分享方法及电子设备
CN111049980A (zh) 一种应用分享方法、电子设备及计算机可读存储介质
WO2015003636A1 (zh) 一种页面元素的拦截方法和装置
CN111143002A (zh) 一种应用分享方法、电子设备及计算机可读存储介质
CN112130866A (zh) 一种应用部署方法和相关装置
CN109062634B (zh) 一种应用启动方法及移动终端
CN106789488B (zh) 智能家居设备管理方法及装置
EP3105912B1 (en) Application-based service providing method and system
CN112231144A (zh) 一种数据处理方法、装置及电子设备
CN103607431A (zh) 移动终端资源处理方法、装置和设备
CN112769777B (zh) 基于云平台的数据整合方法、装置及电子设备
CN107765954B (zh) 一种应用程序图标更新方法、移动终端及服务器
CN108089935B (zh) 一种应用程序的管理方法及移动终端
CN111159738A (zh) 权限配置方法、应用登录方法及装置
CN111556178A (zh) 一种解析系统、方法、设备及存储介质
CN106230919B (zh) 一种文件上传的方法和装置
CN116567133A (zh) 一种资源播放方法和相关装置
US20210133013A1 (en) Method of monitoring closed system, apparatus thereof and monitoring device

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
GR01 Patent grant
GR01 Patent grant