CN109446255A - 一种可自适应的存储方法及系统 - Google Patents
一种可自适应的存储方法及系统 Download PDFInfo
- Publication number
- CN109446255A CN109446255A CN201811161025.4A CN201811161025A CN109446255A CN 109446255 A CN109446255 A CN 109446255A CN 201811161025 A CN201811161025 A CN 201811161025A CN 109446255 A CN109446255 A CN 109446255A
- Authority
- CN
- China
- Prior art keywords
- configuration
- storage
- database
- layer interface
- computer
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种可自适应的存储方法及系统,属于数据处理技术领域,其中的方法包括以下步骤:A、根据用户输入的配置信息参数创建配置文件,所述配置信息参数包括对数据库的配置、对存储规则的配置和对所支持计算机语言的配置;B、解析配置文件,读取并传递相关配置信息参数至预置的代码动态生成框架,生成能够支持用户所配置的计算机语言及数据库的存储层接口;C、接收业务数据,调用所述存储层接口按照所配置的存储规则对业务数据进行存储或读取。本发明的存储系统,可以随着业务的发展不断地调整,只需要修改配置,不需要中断业务。不仅极大地降低了重复劳动,提高了生产效率,稳定可靠保障业务,也避免人为错误威胁数据资产安全。
Description
技术领域
本发明涉及一种可自适应的存储方法及系统,属于计算机数据处理领域。
背景技术
随着互联网的发展,每个人的生活开始跟网络紧紧地联系在一起,网络已经成为水和空气一样不可或缺的必需品。网络的本质是信息的流通,而数据的存储和访问则是保障信息准确和快速流通的关键因素。数据已经成为互联网公司和网络游戏公司的最重要的资产,一旦出现数据丢失或获取数据缓慢,给业务带来的伤害可能是致命的。互联网产品和网络游戏的发展跟一般的传统业务有一个很不一样的特征就是指数级增长,如果业务出现指数级增长而存储系统不能跟着业务一起自适应将导致业务发展受限,甚至可能导致业务错失先机,从此所有努力付诸东流。
现在业内在使用的存储方案主要有以下几种:
1)完全由企业相关技术人员手写完成的存储算法。这种方案非常依赖开发人员的技术水平和细心,一旦犯一点错误都可能导致数据的丢失和损坏,风险很高。随着业务的发展,技术人员也需要不段地修改存储算法来达到扩容和性能提升的目的。存储算法的不断修改不仅带来风险不可控,重复工作,对后续的维护也带来很大的挑战。
2)使用第三方提供的框架或组件来实现存储方案。目前市面上提供的框架或组件一般只是简单提供存储层固定的某一计算机语言的代码接口,无法提供不同语言并可以随着业务发展不断自适应的方案。一旦业务快速发展还是无法避免由企业开发人员手写或手工进行扩容和数据迁移,引入风险,大部分框架和组件在扩容和/或数据迁移过程中,业务也无法继续提供服务,导致服务质量受影响。
发明内容
本发明提供一种可自适应的存储方法及系统,支持多种计算机语言和多种数据库,可以随着业务的发展而自适应。自适应过程中不需要技术人员的介入,只需要根据业务情况进行配置即可。自适应过程中不需要中断业务的服务,为业务的稳定和快速发展提供强有力的保障,并最大限度保障了互联网企业和网络游戏企业的最重要的数据资产的安全。
本发明的技术方案第一方面为一种可自适应的存储方法,所述方法包括以下步骤:
A、根据用户输入的配置信息参数创建配置文件,所述配置信息参数包括对数据库的配置、对存储规则的配置和对所支持计算机语言的配置;
B、解析配置文件,读取并传递相关配置信息参数至预置的代码动态生成框架,生成能够支持用户所配置的计算机语言及数据库的存储层接口;
C、接收业务数据,调用所述存储层接口按照所配置的存储规则对业务数据进行存储或读取。
进一步,当需要进行扩容和/或数据迁移时,在配置文件中增加扩容和/或迁移配置信息,其中数据迁移包括针对数据库的数据迁移和/或针对计算机语言的数据迁移。
进一步,针对数据库进行数据迁移时,在配置文件中定义源数据库配置、源存储规则、目的数据库配置和目的存储规则。
进一步,针对计算机语言进行数据迁移时,在配置文件中定义源计算机语言配置和目的计算机语言配置。
进一步,配置的数据库可以是一个或多个,当存在多个数据库时,数据库类型可以不同。
进一步,所述步骤B包括使用多种计算机语言开发预置的代码动态生成框架;
所述代码动态生成框架包括多种计算机语言的代码模板,所述代码模板可根据计算机语言的配置被动态调用以生成对应计算机语言的存储层接口。
进一步,所述步骤C包括:
创建存储主程序,通过所述存储主程序调用所述存储层接口;
所述存储层接口进一步调用所配置数据库的底层接口,实现对业务数据的存储或读取。
本发明的技术方案第二方面为一种可自适应的存储系统,包括:
配置模块,用于根据用户输入的配置信息参数创建配置文件,所述配置信息参数包括对数据库的配置、对存储规则的配置和对所支持计算机语言的配置;
存储层接口生成模块,用于解析配置文件,读取并传递相关配置信息参数至预置的代码动态生成框架,生成能够支持用户所配置的计算机语言及数据库的存储层接口;
存取模块,用于接收业务数据,调用所述存储层接口按照所配置的存储规则对业务数据进行存储或读取。
本发明的技术方案第三方面为一种计算机系统,包括存储器、处理器及储存在存储器上并能够在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的方法。
本发明的技术方案第四方面为一种计算机可读存储介质,其上储存有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
本发明的有益效果为:
本发明提供的一种可自适应的存储方法及系统,支持多种计算机语言和多种数据库,可以随着业务的发展实现数据库平滑扩容及数据平滑迁移。自适应过程中不需要专业技术人员的介入,只需要根据业务需求更改配置文件的配置信息即可自动生成相应的存储方案代码,将该代码导入存储工程项目即可实现对业务数据的存储和读取。自适应过程中由于配置文件的修改在未生效之前不会对存储程序的运行造成影响,因此能够做到不中断业务的服务而更改存储方案,为业务的稳定和快速发展提供强有力的保障,并最大限度保障了互联网企业和网络游戏企业的最重要的数据资产的安全。
附图说明
图1所示为根据本发明实施例的存储系统示意图;
图2所示为根据本发明实施例的存储方法流程简图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。
需要说明的是,在本公开中所使用的单数形式的“一种”、“所述”和“该”旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。本文所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。
参考图1,根据本发明技术方案的一种实施例的可自适应的存储系统,主要由配置模块、存储层接口生成模块和存取模块组成,具体的:
配置模块,用于根据用户输入的配置信息参数创建配置文件,所述配置信息参数包括对数据库的配置、对存储规则的配置和对所支持计算机语言的配置,当需要进行扩容和/或数据迁移时,还包括相应的扩容和/或迁移规则配置;配置文件的具体配置项如下:
数据库类型配置,支持选项MySQL,Oracle,Mongodb,Redis,Memcache等;
计算机语言配置,支持选项java,php,c++等;
数据库具体配置,如ip,port,database name,table name等,不同的数据库的基础配置不同,这里是以MySQL为例;
存储规则配置,例如定义存储散列规则,确定不同的数据存储到不同地方;
迁移规则配置,例如定义源数据存储规则和目的存储规则。
存储层接口生成模块,用于解析配置文件,读取并传递相关配置信息参数至预置的代码动态生成框架,生成能够支持用户所配置的计算机语言及数据库的存储层接口;
这里预置的代码动态生成框架是使用多种计算机语言编写的代码模板,例如Java的模板、PHP的模板、C++的模板等,将这些模板整合到一个代码动态生成框架中,根据配置文件生成存储层接口时,读取配置文件中设置的计算机语言,动态调用对应的代码模板,使用配置文件中的配置参数替换代码模板中待替换的字段或变量,则可生成所需计算机语言及数据库的存储层接口。
存取模块,用于接收业务数据,调用所述存储层接口按照所配置的存储规则对业务数据进行存储或读取;
这里存储层接口需要被可执行主程序调用,以Java为例,需要先搭建并配置好一个Java项目,然后创建一个主程序,通过主程序调用上述存储层接口,该存储层接口进一步调用存取模块内封装的数据库底层接口实现对业务数据的存储或读取。
参照图2,根据本发明实施例的存储方法包括以下步骤:
A、根据用户输入的配置信息参数创建配置文件,所述配置信息参数包括对数据库的配置、对存储规则的配置和对所支持计算机语言的配置;
B、解析配置文件,读取并传递相关配置信息参数至预置的代码动态生成框架,生成能够支持用户所配置的计算机语言及数据库的存储层接口;
C、接收业务数据,调用所述存储层接口按照所配置的存储规则对业务数据进行存储或读取。
进一步,当需要进行扩容和/或数据迁移时,在配置文件中增加扩容和/或迁移配置信息,其中数据迁移包括针对数据库的数据迁移和/或针对计算机语言的数据迁移。
进一步,针对数据库进行数据迁移时,在配置文件中定义源数据库配置、源存储规则、目的数据库配置和目的存储规则。
进一步,针对计算机语言进行数据迁移时,在配置文件中定义源计算机语言配置和目的计算机语言配置。
进一步,配置的数据库可以是一个或多个,当存在多个数据库时,数据库类型可以不同。
进一步,所述步骤B包括使用多种计算机语言开发预置的代码动态生成框架;所述代码动态生成框架包括多种计算机语言的代码模板,所述代码模板可根据计算机语言的配置被动态调用以生成对应计算机语言的存储层接口。
进一步,所述步骤C包括:创建存储主程序,通过所述存储主程序调用所述存储层接口;所述存储层接口进一步调用所配置数据库的底层接口,实现对业务数据的存储或读取。
在具体实施例中,下面以一个用户信息的数据存储进行举例说明,以MySQL和C++进行说明,对于其他计算机语言和数据库的实现原理与本实施例类似;配置文件的部分基础配置如下:
<config name="UserInfo">
<object>
<id type="INTEGER"/>
<field name="name"type="STRING"/>
<field name="age"type="INTEGER"/>
</object>
<storage>
<engine type="mysql">
<server range="0-9">
<host>localhost</host>
<port>3306</port>
<user>root</user>
<password></password>
<database>db_user_info</database>
<table>tb_%02d</table>
</server>
<policy><![CDATA[return key%10;]]></policy>
</engine>
</storage>
</config>
配置含义解析:
config标签是配置的开始标签,name字段是配置名称;
object标签是数据定义开始标签,object标签的内部标签含义如下:
id标签指明id字段的类型等信息;
field标签指明其它数据字段;
storage标签是存储定义开始标签,storage内部标签含义如下:
engine标签的type类型指定引擎类型,engine内部标签含义如下:
server标签的range指定散列范围,server内部标签含义如下:
host标签指定存储服务器地址,port标签指定存储服务器端口,user标签指定存储服务器登录帐号,password标签指定存储服务器登录密码,database标签指定存储服务器数据库名称,table标签指定存储服务器表名格式,policy标签指定散列规则。
根据配置信息生成存储层接口所使用的代码模板,以C++为例:
则使用上述代码模板生成的存储层接口的C++代码如下:
假设随着业务的发展,需要继续扩展数据库,比如将原来散列到10个表里边的数据散列到100个表里边。迁移规则的配置如下:
<config name="UserInfo">
<object>
<id type="INTEGER"/>
<field name="name"type="STRING"/>
<field name="age"type="INTEGER">18</field>
</object>
<storage>
<engine type="mysql">
<server range="0-9"migrate="from">
<host>localhost</host>
<port>3306</port>
<user>root</user>
<password></password>
<database>db_user_info</database>
<table>tb_%02d</table>
</server>
<server range="0-19"migrate="to">
<host>ocalhost_new</host>
<port>3306</port>
<user>root</user>
<password></password>
<database>db_user_info_new</database>
<table>tb_%02d</table>
</server>
<policy migrate="from"><![CDATA[return id%10;]]></policy>
<policy migrate="to"><![CDATA[return id%20;]]></policy>
</engine>
</storage>
</config>
对上述迁移规则配置的解析:
大部分配置与上述基础配置含义一样,这里只解析不一样的地方:
server标签增加migrate属性,指明当前存储方案处于迁移阶段,from指明数据源,to指明数据目的地。
policy也增加mirgrate属性,指明该policy属于旧数据库还是新的数据库。
则根据迁移配置生成的C++代码如下:
这里设想一个具体场景,当业务刚开展的时候,数据量小并且业务也在快速调整,这个时候可以配置一个非常简单的只有一个数据库的存储层方案支持业务快速上线。随着业务的发展,对数据访问速度要求越来越高,这个时候可以配置多一个cache的存储层,提高访问速度。随着业务的进一步发展,数据量越来越大,这个时候可以配置存储散列规则,将数据散列到多个数据库中存储。随着业务的再一次发展,可能发现现有存储方案不支持业务的进一步发展,这个时候可以配置存储迁移规则,将数据从一个数据库迁到另外一个数据库上。在业务的发展过程中,如果对性能的要求越来越高,也会出现计算机语言的迁移需求,这个时候存储层也只需要配置所需的计算机语言,并调用相应计算机语言的代码模板生成存储层接口,就可以方便地迁移到对应的语言上。
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。
Claims (10)
1.一种可自适应的存储方法,其特征在于,所述方法包括以下步骤:
A、根据用户输入的配置信息参数创建配置文件,所述配置信息参数包括对数据库的配置、对存储规则的配置和对所支持计算机语言的配置;
B、解析配置文件,读取并传递相关配置信息参数至预置的代码动态生成框架,生成能够支持用户所配置的计算机语言及数据库的存储层接口;
C、接收业务数据,调用所述存储层接口按照所配置的存储规则对业务数据进行存储或读取。
2.根据权利要求1所述的可自适应的存储方法,其特征在于:当需要进行扩容和/或数据迁移时,在配置文件中增加扩容和/或迁移配置信息,其中数据迁移包括针对数据库的数据迁移和/或针对计算机语言的数据迁移。
3.根据权利要求2所述的可自适应的存储方法,其特征在于:针对数据库进行数据迁移时,在配置文件中定义源数据库配置、源存储规则、目的数据库配置和目的存储规则。
4.根据权利要求2所述的可自适应的存储方法,其特征在于:针对计算机语言进行数据迁移时,在配置文件中定义源计算机语言配置和目的计算机语言配置。
5.根据权利要求1所述的可自适应的存储方法,其特征在于:配置的数据库可以是一个或多个,当存在多个数据库时,数据库类型可以不同。
6.根据权利要求1所述的可自适应的存储方法,其特征在于:所述步骤B包括使用多种计算机语言开发预置的代码动态生成框架;
所述代码动态生成框架包括多种计算机语言的代码模板,所述代码模板可根据计算机语言的配置被动态调用以生成对应计算机语言的存储层接口。
7.根据权利要求1所述的可自适应的存储方法,其特征在于,所述步骤C包括:
创建存储主程序,通过所述存储主程序调用所述存储层接口;
所述存储层接口进一步调用所配置数据库的底层接口,实现对业务数据的存储或读取。
8.一种可自适应的存储系统,其特征在于,包括:
配置模块,用于根据用户输入的配置信息参数创建配置文件,所述配置信息参数包括对数据库的配置、对存储规则的配置和对所支持计算机语言的配置;
存储层接口生成模块,用于解析配置文件,读取并传递相关配置信息参数至预置的代码动态生成框架,生成能够支持用户所配置的计算机语言及数据库的存储层接口;
存取模块,用于接收业务数据,调用所述存储层接口按照所配置的存储规则对业务数据进行存储或读取。
9.一种计算机系统,包括存储器、处理器及储存在存储器上并能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7中任一项权利要求所述的方法。
10.一种计算机可读存储介质,其上储存有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811161025.4A CN109446255A (zh) | 2018-09-30 | 2018-09-30 | 一种可自适应的存储方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811161025.4A CN109446255A (zh) | 2018-09-30 | 2018-09-30 | 一种可自适应的存储方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109446255A true CN109446255A (zh) | 2019-03-08 |
Family
ID=65544727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811161025.4A Pending CN109446255A (zh) | 2018-09-30 | 2018-09-30 | 一种可自适应的存储方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446255A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110188071A (zh) * | 2019-04-19 | 2019-08-30 | 北京奇艺世纪科技有限公司 | 数据处理方法、装置、电子设备和计算机可读介质 |
CN110505273A (zh) * | 2019-07-12 | 2019-11-26 | 苏州浪潮智能科技有限公司 | 一种服务能力限制的使用方法、设备及可读介质 |
CN111949649A (zh) * | 2019-05-14 | 2020-11-17 | 杭州海康威视数字技术股份有限公司 | 一种动态本体存储系统、存储方法、数据查询方法 |
CN113535830A (zh) * | 2020-04-21 | 2021-10-22 | 中移信息技术有限公司 | 接口自动扩展方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335412A (zh) * | 2014-07-31 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 用于数据转换、数据迁移的方法和装置 |
US20160140175A1 (en) * | 2014-11-13 | 2016-05-19 | Christoph Weyerhaeuser | Integration of calculation models into sql layer |
CN106095792A (zh) * | 2016-05-27 | 2016-11-09 | 中国银联股份有限公司 | 生成数据库操作代码的方法和装置 |
CN106873949A (zh) * | 2015-12-11 | 2017-06-20 | 泰康保险集团股份有限公司 | 代码生成方法及其装置 |
-
2018
- 2018-09-30 CN CN201811161025.4A patent/CN109446255A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335412A (zh) * | 2014-07-31 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 用于数据转换、数据迁移的方法和装置 |
US20160140175A1 (en) * | 2014-11-13 | 2016-05-19 | Christoph Weyerhaeuser | Integration of calculation models into sql layer |
CN106873949A (zh) * | 2015-12-11 | 2017-06-20 | 泰康保险集团股份有限公司 | 代码生成方法及其装置 |
CN106095792A (zh) * | 2016-05-27 | 2016-11-09 | 中国银联股份有限公司 | 生成数据库操作代码的方法和装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110188071A (zh) * | 2019-04-19 | 2019-08-30 | 北京奇艺世纪科技有限公司 | 数据处理方法、装置、电子设备和计算机可读介质 |
CN110188071B (zh) * | 2019-04-19 | 2021-11-02 | 北京奇艺世纪科技有限公司 | 数据处理方法、装置、电子设备和计算机可读介质 |
CN111949649A (zh) * | 2019-05-14 | 2020-11-17 | 杭州海康威视数字技术股份有限公司 | 一种动态本体存储系统、存储方法、数据查询方法 |
CN110505273A (zh) * | 2019-07-12 | 2019-11-26 | 苏州浪潮智能科技有限公司 | 一种服务能力限制的使用方法、设备及可读介质 |
CN110505273B (zh) * | 2019-07-12 | 2022-04-22 | 苏州浪潮智能科技有限公司 | 一种服务能力限制的使用方法、设备及可读介质 |
CN113535830A (zh) * | 2020-04-21 | 2021-10-22 | 中移信息技术有限公司 | 接口自动扩展方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109446255A (zh) | 一种可自适应的存储方法及系统 | |
US10885378B2 (en) | Container image management | |
US9882834B2 (en) | Capturing data parameters in templates in a networked computing environment | |
US10706354B2 (en) | Estimating cardinality selectivity utilizing artificial neural networks | |
CN110032369A (zh) | 一种代码自动生成方法、装置及介质 | |
US8694777B2 (en) | Securely identifying host systems | |
US11093642B2 (en) | Push down policy enforcement | |
US20170187734A1 (en) | System and method for field extraction of data contained within a log stream | |
US10901999B2 (en) | Graph-based searching for data stream | |
CN109074377A (zh) | 用于实时处理数据流的受管理功能执行 | |
US10353738B2 (en) | Resource allocation based on social networking trends in a networked computing environment | |
US10078428B2 (en) | Placement of virtual machines on physical hosts based on collocation rules | |
US20230177363A1 (en) | Generation of query templates for knowledge-graph based question answering system | |
US10461772B1 (en) | Code conversion | |
US8495018B2 (en) | Transitioning application replication configurations in a networked computing environment | |
US20180089009A1 (en) | System, method and computer program product for adaptive application log analysis | |
US9342527B2 (en) | Sharing electronic file metadata in a networked computing environment | |
US20220224722A1 (en) | Rapid initial deployment database security model | |
US20190124107A1 (en) | Security management for data systems | |
US11157495B2 (en) | Dynamically managing predicate expression columns in an encrypted database | |
US20200387507A1 (en) | Optimization of database execution planning | |
US20220391529A1 (en) | Searching, matching, and masking of composite formats | |
US9547661B2 (en) | Defining pairing rules for connections | |
US11715169B2 (en) | Method and system for optimizing shipping methodology for 3-directional floor joists | |
US10922312B2 (en) | Optimization of data processing job execution using hash trees |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190308 |