CN109313641A - 信息处理系统和方法以及程序 - Google Patents
信息处理系统和方法以及程序 Download PDFInfo
- Publication number
- CN109313641A CN109313641A CN201780035755.7A CN201780035755A CN109313641A CN 109313641 A CN109313641 A CN 109313641A CN 201780035755 A CN201780035755 A CN 201780035755A CN 109313641 A CN109313641 A CN 109313641A
- Authority
- CN
- China
- Prior art keywords
- subquery
- search
- inquiry
- data
- result
- 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.)
- Granted
Links
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
- G06F16/24535—Query rewriting; Transformation of sub-queries or views
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明的目的是实现极高的响应性。子查询提取单元(110)提取子查询。PL数据生成单元(112)生成PL数据。PL数据管理单元(120)管理PL数据并将PL数据存储在PL数据DB中。用户接口控制单元(100)接受用户输入的查询条件。查询条件发送控制单元(101)将查询条件发送到服务器(2)。查询条件获得单元(121)获得已发送的查询条件。执行结果提取单元(123)提取子查询的执行结果。搜索结果生成单元(124)根据提取的执行结果生成搜索结果。搜索结果发送控制单元(125)将搜索结果发送到游戏者终端(1)。搜索结果获得单元(102)获得已发送的搜索结果。搜索结果显示控制单元(103)显示搜索结果。
Description
技术领域
本发明涉及一种信息处理系统和方法和程序。
背景技术
用于提高数据库的速度的现有技术是索引技术(例如,参见专利文献1)。
然而,索引技术旨在在利用未预先指定的搜索条件进行搜索的情况下提高查询执行的速度。
该技术未针对可能触发数据搜索的操作类型是有限的数据结构的类型(即仅涉及有限查询的数据结构的类型)进行优化。
另一方面,用于高速缓存数据库的查询结果的技术是通过使用查询的状态来提高数据库搜索的速度的技术的示例。
例如,诸如最近最少使用(LRU)、最近最常使用(MRU)和最不经常使用(LFU)等的算法是众所周知的,其中,利用LRU,首先丢弃最近最少使用的搜索结果,利用MRU,首先丢弃最近最常使用的搜索结果,以及利用LFU,首先丢弃最近最不经常使用的搜索结果(例如,参见专利文献2)。
然而,利用这些算法,可以根据查询的使用频率来管理高速缓存。因此,这些算法在没有搜索位置的应用程序(例如,如在线游戏的情况)中不能有效地工作。
引用列表
专利文献
专利文献1:日本特开平11-212980
专利文献2:日本特开2009-266147
发明内容
技术问题
本发明解决提高对存储有在线游戏的参数、场景展开等的固定数据集进行搜索或参考的处理的速度的问题。
随着战斗或游戏场景的进行,游戏系统以极高的频率在静态数据中搜索所需的数据。该搜索处理是在正执行游戏期间不断执行的操作,因此显著影响游戏整体的响应性。
特别地,在Web浏览器上运行的游戏类型中,难以在客户端预先安装数据,因此CSV文件的搜索构成性能瓶颈。因此,关键问题是提高搜索静态数据的速度。
然而,在长期提供的在线游戏中,游戏中使用的数据量(诸如物品和卡的属性等)变得庞大,并且在某些情况下,在游戏中存在仅字符和数值超过100兆字节的静态数据并不是罕见的。
此外,在游戏以多种语言(包括英语版本)或在国外市场中部署的情况下,自然语言数据随着支持的语言数量或进入的市场数量而增加。
本发明的目的是用于提高搜索或参考静态数据(诸如在线游戏的参数或场景展开等)的处理的效率和速度,由此在只能具有有限的计算能力的智能电话上以及在接受大量请求以至于在处理能力方面没有很多剩余能力的服务器上实现极高的响应性。
用于解决问题的技术方案
为了实现上述目的,根据本发明的一个方面的信息处理系统是:
一种信息处理系统,用于通过使用能够经由预定用户接口而输入的查询条件来对要搜索的数据执行搜索处理,其中构成查询的各个条件满足包括减少性、幂等性和交换性的三个性质,所述信息处理系统包括:
预处理执行部件,用于在搜索处理之前执行处理;以及
搜索处理部件,用于执行搜索处理,
其中,所述预处理执行部件包括:
查询提取部件,用于从针对要搜索的数据能够使用的查询条件的集合中提取多种子查询;
查询执行部件,用于执行所述查询提取部件所提取的多种子查询中的各子查询;
关联部件,用于针对所述查询提取部件所提取的多种子查询中的各子查询,生成所述查询执行部件的执行结果与使得能够识别与该执行结果相关联的子查询的类型的信息相关联的数据,作为关联数据;以及
管理部件,用于对所述关联部件所生成的针对多种子查询中的各子查询的关联数据进行管理,以及
其中,所述搜索处理部件包括:
接受部件,用于接受经由所述用户接口为了进行搜索而输入的查询条件,作为搜索查询条件;
分割部件,用于将所述接受部件所接受的所述搜索查询条件分割为一种或多种子查询的集合;
执行结果提取部件,用于基于使得能够识别所述分割部件分割得到的属于所述集合的一种或多种子查询中的各子查询的信息,从所述关联数据中提取该一种或多种子查询中的各子查询的执行结果;以及
搜索结果生成部件,用于基于所述执行结果提取部件的提取结果,生成所述接受部件所接受的针对所述搜索查询条件的搜索结果。
有益效果
根据本发明,通过提高搜索或参考静态数据(诸如在线游戏的参数或场景展开等)的处理的效率和速度,可以在只能具有有限的计算能力的智能电话上以及在接受大量请求以至于在处理能力方面没有很多剩余能力的服务器上实现极高的响应性。
附图说明
图1是示出根据本发明实施例的信息系统的结构的图。
图2是示出图1的信息处理系统中的根据本发明实施例的游戏者终端的硬件结构的框图。
图3是示出图1的信息处理系统中的根据本发明实施例的服务器的硬件结构的框图。
图4是示出图2中的游戏者终端和图3中的服务器的功能结构的示例的功能框图。
图5是图4中的服务器所执行的信息处理的流程图。
图6是图4中的游戏者终端和服务器所执行的信息处理的流程图。
图7是示出图4中的游戏者终端上所显示的用户接口画面的示例的图。
图8是示出存储在图4中的待搜索数据DB中的要搜索的数据的示例的图。
图9是示出图4中的PL数据DB的结构的示例的图。
图10是示出在图4的运算顺序确定单元中所执行的用于估计搜索成本的处理和用于优化执行顺序的处理的图。
具体实施方式
下面将参考附图来描述本发明的实施例。
图1示出根据本发明实施例的信息处理系统的结构。
图1所示的信息处理系统是包括由w个游戏者分别使用的游戏者终端1-1至1-w(w是大于或等于1的任意整数)并且还包括服务器2的系统。各个游戏者终端1-1至1-w和服务器2经由诸如因特网等的预定网络N彼此连接。
服务器2提供使得能够进行对在各个游戏者终端1-1至1-w上执行的游戏等中使用的静态数据的高效率和高速搜索等的环境。因此,在游戏等中实现极高的响应性。
在下文中,在不需要区分各个游戏者终端1-1至1-w的情况下,这些游戏者终端将统称为“游戏者终端1”。
图2是示出图1的信息处理系统中的根据本发明实施例的游戏者终端1的硬件结构的框图。
游戏者终端1由智能电话等实现。
游戏者终端1包括CPU(中央处理单元)21、ROM(只读存储器)22、RAM(随机存取存储器)23、总线24、输入/输出接口25、触摸操作输入单元26、显示单元27、输入单元28、存储单元29、通信单元30和驱动器31。
CPU 21根据记录在ROM 22中的程序或从存储单元29加载到RAM 23中的程序来执行各种处理。
RAM 23还适当地存储CPU 21执行各种处理时所需的数据等。
CPU 21、ROM 22和RAM 23经由总线24彼此连接。输入/输出接口25还连接到总线24。触摸操作输入单元26、显示单元27、输入单元28、存储单元29、通信单元30和驱动器31连接到输入/输出接口25。
触摸操作输入单元26由例如层叠在显示单元27的显示面上的用于检测进行触摸操作的位置的坐标的电容或电阻(压敏)位置输入传感器构成。
这里的触摸操作是指使某物与触摸操作输入单元26接触或接近。与触摸操作输入单元26接触或接近的物体是例如游戏者的手指或触笔。
显示单元27由诸如液晶显示器的显示器等实现,并显示各种图像,诸如与游戏相关的图像等。
如上所述,在本实施例中,触摸屏包括触摸操作输入单元26和显示单元27。
输入单元28由各种硬件按钮等构成,并允许根据游戏者进行的指示操作来输入各种信息。
存储单元29由DRAM(动态随机存取存储器)等实现,并存储各种数据。
通信单元30控制经由包括因特网的网络N与其它装置(图1的示例中的服务器2和其它游戏者终端1)执行的通信。
根据需要设置驱动器31。由磁盘、光盘、磁光盘或半导体存储器等实现的可移动介质41适当地载入驱动器31中。根据需要,由驱动器31从可移动介质41读取的程序安装在存储单元29中。与存储单元29相同,可移动介质41也可以存储在存储单元29中所存储的各种数据。
图3是示出图1的信息处理系统中的根据本发明实施例的服务器2的硬件结构的框图。
服务器2包括CPU 51、ROM 52、RAM 53、总线54、输入/输出接口55、输出单元56、输入单元57、存储单元58、通信单元59和驱动器60。
由于服务器2的结构基本上与移除了触摸屏的游戏者终端1的结构相同,因此这里将省略其描述。
通过图2中的游戏者终端1和图3中的服务器2中的各种硬件和各种软件之间的协作,可以在游戏者终端1和服务器2中执行用于对静态数据的搜索等的高速处理等。
具体地,根据本实施例的信息处理系统可以执行包括生成用于高速搜索的数据库的“开发(数据导入)”阶段以及在游戏进行过程中实际进行搜索的“执行(游戏进行等)”阶段的一系列处理步骤。
更具体地,在本实施例中,作为“开发(数据导入)”阶段中的一系列处理步骤(下文中称为“数据导入处理”),信息处理系统在本实施例中执行以下处理。
服务器2通过预先分析可以在游戏中执行的查询的集合来提取这些查询的多种最小单位(下文中称为“子查询”)。
服务器2分别执行所提取的多种子查询,并生成各个执行结果与使得能够识别关联类型的子查询的信息相关联的数据作为关联数据。
服务器2在预定数据库(下文中称为“PL数据DB”)中存储并管理多种子查询中的各子查询的关联数据。
在针对多种子查询中的各子查询的关联数据已经存储在PL数据DB中的状态下,信息处理系统在本实施例中执行以下处理作为“执行(游戏进行等)”阶段中的数据搜索处理(下文中称为“搜索处理”)。
在游戏者通过操作游戏者终端1经由预定用户接口输入查询条件的情况下,游戏者终端1将查询条件发送到服务器2。
在接收到已经发送的搜索查询条件时,服务器2将搜索查询条件分割为一种或多种子查询的集合,并基于使得能够分别识别一种或多种子查询的信息来从关联数据中提取一种或多种子查询的各个执行结果。然后,基于提取结果,服务器2生成搜索结果并向游戏者终端1呈现搜索结果。
在下文中,将描述由能够执行上述数据导入处理和搜索处理的信息处理系统执行的功能结构和处理流程的示例。
图4是示出在执行数据导入处理和搜索处理时的功能结构中的游戏者终端1和服务器2的功能结构的功能框图。
图4中的游戏者终端1的CPU 21用作用户接口控制单元100、查询条件发送控制单元101、搜索结果获得单元102和搜索结果显示控制单元103。
服务器2的CPU 51在执行数据导入处理时用作数据导入处理单元151,并且在搜索处理时用作搜索处理单元152。
在服务器2的存储单元58的区域中,设置有查询集合DB 200、待搜索数据DB 300和PL数据DB 400。
首先,将描述数据导入处理中的功能结构。
在数据导入处理中,游戏者终端1不具体地起作用,并且仅数据导入处理单元151在服务器2中起作用。
数据导入处理单元151包括子查询提取单元110、子查询执行单元111和PL数据生成单元112。
首先,针对数据导入处理预先假定将查询集合存储在查询集合DB 200中。
该查询集合是可以在要导入数据的游戏中使用的查询条件的集合。
具体地,查询条件的集合由以下表达式定义:
qH={a,b,c,d,e,…,h}···(1)
这里,qH表示与第H个条件相关联的查询条件的集合。例如,诸如基于攻击力的搜索条件等的搜索条件与相关属性相关联。该集合的元素a,b,c,d,e,…,h是用作搜索条件的值。例如,在基于最大值为15的攻击力的搜索条件的情况下,元素集是{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}。
服务器2的CPU 51的子查询提取单元110基于存储在查询集合DB 200中的查询集合来分析可以在游戏中执行的查询集合,并基于分析结果提取多种子查询。
这里,针对数据导入处理预先假定在要导入数据的游戏中要搜索的数据被存储在待搜索数据DB 300中。
在本实施例中要搜索的数据是可以在游戏中搜索的所有类型的数据,并且其格式不限于任何特定格式。可以使用各种各样的数据,诸如JSON格式、CSV格式等的数据。稍后将参考图8来描述要搜索的数据的具体示例。
子查询执行单元111与存储在待搜索数据DB 300中的要搜索的数据相关地执行由子查询提取单元110提取的多种子查询中的各子查询。
针对由子查询提取单元110提取的多种子查询中的各子查询,PL数据生成单元112生成子查询执行单元111的执行结果与使得能够识别与该执行结果相关联的类型的子查询的信息相关联的数据作为关联数据(PL数据)。在下文中将该关联数据适当地称为“预链接数据”或适当称为“PL数据”。
PL数据管理单元120针对PL数据DB 400中的多种子查询中的各子查询存储并管理如此生成的PL数据。
也就是说,PL数据DB 400存储用于多种子查询中的各子查询的PL数据。用于某种子查询的PL数据是使得能够识别某种子查询的信息与该某种子查询的执行结果相关联的数据。
作为使得能够识别某种子查询的信息,顾名思义是使得能够识别该某种子查询的任何信息,并且其形式等没有特别限制。例如,在本实施例中,用作用于识别某种子查询的关键的条件(具体地,例如,在基于攻击力进行搜索的子查询的情况下,“atk=10”)与该某种子查询的执行结果相关联,这构成该某种子查询的PL数据。
接着,将描述搜索处理时的功能结构。
在搜索处理中,用户接口控制单元100、查询条件发送控制单元101、搜索结果获得单元102和搜索结果显示控制单元103在游戏者终端1中起作用,并且搜索处理单元152在服务器2中起作用。
搜索处理单元152包括PL数据管理单元120、查询条件获得单元121、分割单元122、执行结果提取单元123、搜索结果生成单元124和搜索结果发送控制单元125。
在游戏进行期间等,游戏者终端1的CPU 21的用户接口控制单元100执行控制以在显示单元27上显示用于预定用户接口的画面(参见后述的图7)。
此外,用户接口控制单元100接受由游戏者对前述的画面(触摸操作输入单元26)所进行的触摸操作所指示的内容。例如,用户接口控制单元100的查询条件接受单元131接受由游戏者经由对触摸操作输入单元26的触摸操作输入的搜索条件作为查询条件。
查询条件发送控制单元101执行控制以经由通信单元30将查询条件接受单元131接受的查询条件发送到服务器2。
如上所述,服务器2的查询条件获得单元121经由通信单元59获得已经从游戏者终端1发送的查询条件。
分割单元122将查询条件获得单元121所获得的查询条件分割为一种或多种子查询的集合。该集合具有逻辑表达式的形式,其中属于该集合的一种或多种子查询例如通过使用OR(或)、AND(与)和NOT(非)而结合在一起。
执行结果提取单元123从PL数据管理单元120中提取由分割单元122分割得到的一种或多种子查询的相应执行结果。
搜索结果生成单元124基于由执行结果提取单元123提取的一种或多种子查询的执行结果的集合来生成搜索结果。这里,该集合具有逻辑表达式的形式,其中属于该集合的一种或多种子查询例如通过使用OR、AND和NOT而结合在一起。因此,搜索结果生成单元124通过求解(计算)逻辑表达式来生成搜索结果。
这里,在搜索结果生成单元124的区域中设置运算顺序确定单元141。
在搜索结果生成单元124生成搜索结果的情况下,运算顺序确定单元141可以估计用于整合子查询的集合运算(逻辑表达式的集合运算)的成本。
运算顺序确定单元141通过根据估计结果按照缩减可能结果的能力的降序对子查询进行排序来提出用于应用集合运算的最高效率顺序。
搜索结果发送控制单元125执行控制以经由通信单元59将由搜索结果生成单元124生成的搜索结果发送到游戏者终端1。
如上所述,游戏者终端1的搜索结果获得单元102经由通信单元30获得已经从服务器2发送的搜索结果。
搜索结果显示控制单元103执行控制以在显示单元27上显示由搜索结果获得单元102获得的搜索结果(更确切地说,表示搜索结果的图像等)。
接着,将参考图5来描述由具有上述功能结构的服务器2执行的数据导入处理的流程。
图5是用于说明由具有图4所示的功能结构的服务器2执行的数据导入处理的流程的示例的流程图。
在步骤S1中,图4中的服务器2的子查询提取单元110基于可以在要导入数据的游戏中使用的查询条件来提取多个子查询。
在步骤S2中,子查询执行单元111执行在步骤S1的处理中提取的多个子查询中的各子查询。
在步骤S3中,针对在步骤S1中提取的多个子查询中的各子查询,PL数据生成单元112生成步骤S2中的某种子查询的执行结果与使得能够识别该某种子查询的信息相关联的数据作为PL数据。
在步骤S4中,PL数据管理单元120将在步骤S3中生成的PL数据存储在PL数据DB400中。
然后,终止数据导入处理,并且随后由PL数据管理单元120管理针对多个子查询中的各子查询而存储在PL数据DB 400中的PL数据。
接着,将参考图6来描述由具有上述功能结构的游戏者终端1和服务器2执行的搜索处理的流程。
图6是用于说明由具有图4所示的功能结构的游戏者终端1和服务器2执行的搜索处理的流程的示例的流程图。
这里,假设如下:在执行图6中的搜索处理时,在游戏者终端1的用户接口控制单元100的控制下,游戏者通过使用预定的用户接口(稍后将参考图7来描述其具体示例)输入期望的搜索条件(例如,指定具有大于或等于15的攻击力的卡的条件)。
在给出这样的输入的情况下,处理进入步骤S21。
在步骤S21中,游戏者终端1的查询条件接受单元131接受由游戏者输入的搜索条件作为查询条件。
在步骤S22中,查询条件发送控制单元101经由通信单元30将在步骤S21中接受的查询条件发送到服务器2。
在步骤S41中,服务器2的查询条件获得单元121经由通信单元59获得已经从游戏者终端1发送的查询条件。
在步骤S42中,分割单元122将在步骤S41中获得的查询条件分割为多种子查询。
在步骤S43中,执行结果提取单元123经由PL数据管理单元120从PL数据DB 400中提取由步骤S42中分割得到的子查询的执行结果。
在步骤S44中,搜索结果生成单元124基于在步骤S43中提取的执行结果来生成搜索结果。
在步骤S44的处理中,搜索结果生成单元124中的运算顺序确定单元141估计子查询的搜索成本。通过这种执行顺序控制的优化,与基于现有方法的处理相比,步骤S44中的搜索处理更加高效率。稍后将在图10中的特定示例的上下文中描述运算顺序确定单元141的处理的细节。
在步骤S45中,搜索结果发送控制单元125经由通信单元59将在步骤S44中生成的搜索结果发送到游戏者终端1。
在步骤S23中,游戏者终端1的搜索结果获得单元102经由通信单元30获得在步骤S45中从服务器2发送的搜索结果。
在步骤S24中,搜索结果显示控制单元103在显示单元27上显示在步骤S23中获得的搜索结果。
接着,将参考图7和随后的附图来描述与数据导入处理或搜索处理有关的具体示例。
图7是示出构成用户接口的搜索画面的示例的图。
利用本实施例中用于实现搜索处理的游戏中的搜索功能,通过使用下拉菜单等来选择预定义的搜索参数,并且通过使用AND条件或OR条件将参数结合在一起所形成的查询来进行搜索。
在图7的示例的情况下,搜索参数从顶部起按顺序包括“类别”、“成本”、“卡类型”、“稀有度”、“攻击力”、“体力”、“类型”、“能力关键字”、“包括代币(token)”和“卡文本搜索”。如此,各单个搜索参数表示某一种属性。
对于单个属性,存在多种子查询。在图7的示例中,涉及相同属性的各种子查询以在水平方向上排列的方式显示。
“类别”表示要搜索的卡的类别。在图7的示例中,选择了三个类别,即“皇室”、“龙”和“主教”作为子查询。
“成本”表示要搜索的卡的成本,并且可以输入在游戏中作为卡而存在的任何数值作为子查询。
“卡类型”表示要搜索的卡的类型,例如“部队(unit)”,“咒文(spell)”和“原野(field)”。在图7的示例中,选择了两个子查询,即“部队”和“咒文”。
“稀有度”表示要搜索的卡的稀有度,例如“铜稀有”、“银稀有”、“金稀有”和“传说”。在图7的示例中,选择了“传说”作为子查询。
“攻击力”是表示要搜索的卡的攻击力的参数。在图7的示例中,由于选择了“2”的攻击力和条件“等于”,因此表示仅选择了具有2的攻击力的卡作为子查询。
“体力”是表示要搜索的数据的体力的参数。在图7的示例中,由于选择了“15”的体力和条件“小于或等于”,因此选择了表示小于或等于体力15(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)的各个值作为子查询。
也就是说,由于可以针对静态数据预先检查所有数据值范围,例如,在搜索条件被设置为“攻击力小于或等于3”的范围的情况下,因此可以将值范围定义为OR条件。具体地,在“攻击力小于或等于3”的情况下,可以将搜索条件定义为“3或2或1”。也就是说,可以将搜索条件“攻击力小于或等于3”定义为子查询“3”、“2”和“1”的OR条件的集合。
“包括代币”表示是否要包括“代币”卡。在图7的示例中,由于未选择“ON”,因此“代币”没有包括在要搜索的数据中。
“卡文本搜索”表示基于卡文本中包括的“关键字”来进行搜索,并且预先设置一些“关键字”以使得可以选择这些关键字。在图7的示例中,由于选择了“具有特殊能力”,因此关键字“具有特殊能力”用作子查询,因此仅搜索包括子查询(关键字)的卡。
关于关键字,例如,如果使用n-gram方法,则要搜索的数据和搜索条件这两者都可以被模型化为n个字符的组合的集合。更具体地,在利用作为一种n-gram的2-gram表示关键字“samurai”的情况下,可以将关键词分成三个元素,即“samu”、“mura”和“rai”;也就是说,可以将具有关键字“samurai”的搜索定义为三个查询条件“samu AND mura AND rai”的逻辑积。也就是说,即使在查询表达式的灵活性看起来很高的搜索(诸如关键字搜索等)中,也可以将搜索条件表示为有限数量的原始子查询的组合。
如上所述,在根据本实施例的信息处理系统的搜索处理中,由游戏者输入的这种搜索条件被分割成构成可重复使用性高的最小单位的子查询,并且使用预先执行的各个搜索结果(子查询的预先执行结果),这以极高的速度实现搜索处理。
即,如上所述,根据本实施例的搜索处理的要点是在搜索处理之前执行根据本发明的数据导入处理。因此,下面将描述根据本发明的数据导入处理的细节。
在根据本实施例的数据导入处理的静态分析中,需要接收要搜索的数据的集合(图4中的待搜索数据DB 300)和构成查询的最小单位子查询的集合(图4中的查询集合DB200)作为输入,结果,需要可以基于各个唯一标识符来识别所有子查询的执行结果(搜索结果)。
该识别使得能够在搜索处理阶段中仅通过执行用于整合不同子查询的执行结果的处理而无需执行子查询(执行搜索),来生成搜索结果。
具体地,例如,要搜索的数据Di可以包括如下面的等式(2)所示的唯一标识符和要搜索的属性的组合:
Di:={Idi,attr1,attr2,attr3,…,attrI}···(2)
这里,Idi表示使得能够唯一识别要搜索的数据Di的标识符。例如,可以使用序列号来实现标识符;然而,本实施例不依赖于用于分配标识符的任何特定方法。
此外,attr1到attrI表示与要搜索的数据Di相关联的I(I是任意整数)个属性数据。
例如,图8是示出要搜索的数据的具体示例的图。
在图8的示例中,各行与游戏内的具有特定标识符的特定数据(要搜索的数据)相对应。
作为示例,在图8中,第一行的数据是与包括类别“皇家”、稀有度“传说”和攻击力“10”并具有ID“0001”的条件相匹配的数据。
作为另一示例,第二行的数据是与包括类别“女巫”、稀有度“传说”和攻击力“7”并且具有ID“0002”的条件相匹配的数据。
这里,在图8的示例中,“类别”、“稀有度”和“攻击力”是要搜索的属性,显然,这些属性可以自由地改变或添加。
游戏中存在u(u是大于或等于1的任意整数)个这些数据,并且可以覆盖游戏中要搜索的全部数据。
在本实施例的数据导入处理中,利用在游戏中具有图8所示的上述结构的要搜索的数据,执行从该查询的集合中提取的多种子查询中的各子查询(执行搜索)。然后,针对多种子查询中的各子查询,生成子查询的执行结果与使得能够识别该子查询的信息相关联的PL数据,并将该PL数据存储在PL数据DB 400中。
图9是示出上述PL数据DB 400的结构的示例的图。
在图9的示例中,y轴表示表中的属性类型,x轴表示子查询的类型,以及z轴表示关联子查询的搜索结果(单个结果)。
表中的属性的类型表示任意属性的类型。表中的属性的类型与在图7中的示例的情况下在垂直方向上排列的搜索参数相对应,并且与图8的示例中的“类别”、“稀有度”、“攻击力”等相对应。在图9的示例中,表中的属性的类型存在n(n是大于或等于1的任意整数)种。
子查询的类型与图7中的示例的情况下在水平方向上排列的条件相对应,并且表示任意子查询的类型。在图8中的示例的情况下,子查询的类型与属性“攻击力”的可能值(具体地,例如,第一行上的“10”)相对应。在图9的示例的情况下,存在m(m是大于或等于1的任意整数)种子查询。
关联子查询的搜索结果表示与表中的某种属性(例如,“攻击力”)的某种子查询(例如,“10”)相关联的子查询(搜索结果)的执行结果。
在图9中的示例的情况下,针对关联子查询的搜索结果是包括从0开始的q(q是大于或等于1的任意整数)个元素的数组,并且各个数组的大小在子查询中不同。
例如,针对表中的属性的类型“K”中子查询的类型“P”的子查询执行结果由坐标(X,Y)=(P,K)处沿Z轴(针对相关子查询的搜索结果的轴的方向)排列的一个或多个立方体表示。这里,图9所示的立方体CPKR与针对特定属性类型“K”的特定子查询类型“Y”的查询的单个结果(搜索结果的集合中的单个元素)相对应。
在准备了图9所示的具有上述结构的PL数据DB 400的情况下,可以执行上述搜索处理。
如上所述,在本实施例的搜索处理中,通过计算将通过分割搜索查询条件而获得的一种或多种子查询结合在一起的逻辑运算来生成搜索结果。
在本实施例中,运算顺序确定单元141(图4)确定用于计算逻辑表达式的最佳顺序,这使得能够进行高速搜索。因此,下面将参考图10来描述由运算顺序确定单元141执行的特定处理。
图10是示出服务器2的搜索结果生成单元124中所设置的运算顺序确定单元141执行的用于估计搜索成本的处理和用于优化执行顺序的处理的示例的图。
运算顺序确定单元141可以通过参考表示子查询的执行结果的集合中的元素的数量来估计用于对由执行结果提取单元123提取的子查询的执行结果进行整合(基于逻辑表达式计算集合运算)的集合运算的成本。
通过以这种方式估计运算成本,运算顺序确定单元141可以优化运算顺序,使得即使查询条件复杂,也可以仅通过少量比较运算来执行集合运算。
在图10的示例中,首先,作为初始状态下的查询,将查询创建为要搜索的属性和其值(子查询)的序列(条件)的组合的数组。将各个值按OR条件结合在一起。
例如,在上图中的第一行的情况下,要搜索的属性是“char_type”,并且其值(子查询)的序列是“1”。
这里,该查询本身仅是在用户接口控制单元100的控制下经由用户接口输入的条件的串接,因此没有考虑到效率等。
因此,如图10所示,运算顺序确定单元141对子查询的数组进行重新排序,以使得将从具有最低选择率的子查询起,换句话说,从涉及最严格的限制从而使查到的数据量最小化的缩减条件起按顺序进行子查询。
更具体地,运算顺序确定单元141参考与PL数据DB 400中的子查询相关联的搜索结果的集合中的元素的数量(子查询的执行结果的数量),并按照该集合中的元素的数量的降序对子查询进行排序,以获得适用于集合运算的最高效率顺序。
在图10的下图中添加的属性“成本”表示针对相关条件返回的结果的数量(与PL数据DB 400中的子查询相关联的搜索结果的集合中的元素的数量),并且运算顺序确定单元基于“成本”的值提出适用于集合运算的最高效率顺序。
尽管上面已经描述了本发明的实施例,但是应该注意,本发明不限于上述实施例,并且在可以实现本发明的目的的范围内的修改、改进等包含在本发明中。
例如,图4中的功能结构仅是示例,并且不特别局限于该示例。也就是说,使信息处理系统设置有使得能够将上述一系列处理步骤作为整体执行的功能就足够了,并且用于实现这些功能的功能块的选择不特别局限于图4中的示例。此外,功能块的位置不特别局限于图4中的位置,并且可以任意设置。例如,服务器2的功能块可以被转移到游戏者终端1等,相反,游戏者终端1的功能块可以被转移到服务器2等。
此外,各功能块可以仅通过硬件、仅通过软件、或通过硬件和软件的组合来实现。
在通过软件来执行各功能块的处理的情况下,构成软件的程序经由网络或从记录介质安装在计算机等上。
该计算机可以是嵌入专用硬件中的计算机。可选地,该计算机可以是在将各种程序安装在计算机上的情况下能够执行各种功能的计算机,诸如服务器、或者通用智能电话、或者个人计算机等。
包括这种程序的记录介质是通过为了向用户提供程序而与设备的主体单元分离地分布的可移除介质(未示出)、向用户提供以嵌入形式位于设备的主体单元中的记录介质等来实现的。
在本说明书中,在记录介质上所记录的程序中所描述的步骤不仅可以包括按照时间顺序顺次执行的处理、而且还可以包括没有按时间顺序顺次执行的而是并列或分别执行的处理。
此外,在本说明书中,术语“系统”应当被解释成表示由多个装置或多个部件等构成的设备整体。
此外,例如,尽管在上述实施例中采用主要用于在线游戏等的静态数据作为要搜索的数据,但是对这种类型的数据没有特别限制。
根据本发明的静态分析技术还可以用于离线汽车导航系统、诸如离线电子词典等的离线内容、针对Web上的固定文本集合的全文搜索引擎等。
此外,根据本发明的静态分析技术的应用不限于简单的字符串搜索或数值搜索。具体地说,由于本发明不依赖于诸如字符串搜索等的任何特定的搜索方式,因此即使导入了诸如图像搜索等的极其复杂的条件,静态解决方案也是可能的。
因此,即使搜索条件极其复杂,也可以处理能够静态地定义一种查询的任何搜索条件。
更具体地,只要可以表达查询条件以满足构成查询的各个条件中的三个条件,即减少性、幂等性和交换性,就可以采用该查询条件作为要搜索的数据。
这里,减少性是指搜索结果始终小于要搜索的数据的性质。
幂等性是指无论执行多少次,利用相同数据执行的相同子查询始终产生相同结果的性质。也就是说,可以高速缓存结果。也就是说,不涉及诸如“使用当前时间的搜索”等的条件。
交换性是指利用条件A和条件B的搜索结果始终与利用条件B和条件A的搜索结果相同的性质。在本发明中,基于这种交换性,对子查询中涉及的集合运算的比较顺序进行重新排序,以使得可以用最少数量的比较来获得搜索结果。
换句话说,根据本发明的信息处理系统可以以如下配置的各种形式实现,包括根据图1和4中的上述实施例的信息处理系统。
具体地,根据本发明的信息处理系统是:
一种信息处理系统,用于通过使用能够经由预定用户接口而输入的查询条件来对要搜索的数据执行搜索处理,其中构成查询的各个条件满足包括减少性、幂等性和交换性的三个性质,所述信息处理系统包括:
预处理执行部件(例如,图4中的数据导入处理单元151),用于在搜索处理之前执行处理;以及
搜索处理部件(例如,图4中的搜索处理单元152),用于执行搜索处理,
其中,所述预处理执行部件包括:
查询提取部件(例如,图4中的子查询提取单元110),用于从针对要搜索的数据能够使用的查询条件的集合中提取多种子查询;
查询执行部件(例如,图4中的子查询执行单元111),用于执行所述查询提取部件所提取的多种子查询中的各子查询;
关联部件(例如,图4中的PL数据生成单元112),用于针对所述查询提取部件所提取的多种子查询中的各子查询,生成所述查询执行部件的执行结果与使得能够识别与该执行结果相关联的类型的子查询的信息相关联的数据,作为关联数据;以及
管理部件(图4中的PL数据管理单元120),用于对所述关联部件所生成的针对多种子查询中的各子查询的关联数据进行管理,以及
其中,所述搜索处理部件包括:
接受部件(例如,图4中的用户接口控制单元100),用于接受经由所述用户接口为了进行搜索而输入的查询条件,作为搜索查询条件;
分割部件(例如,图4中的分割单元122),用于将所述接受部件所接受的所述搜索查询条件分割为一种或多种子查询的集合;
执行结果提取部件(例如,图4中的执行结果提取单元123),用于基于使得能够识别所述分割部件分割得到的属于该集合的所述一种或多种子查询中的各子查询的信息,从所述关联数据中提取所述一种或多种子查询中的各子查询的执行结果;以及
搜索结果生成部件(例如,图4中的搜索结果生成单元124),用于基于所述执行结果提取部件的提取结果,生成针对所述接受部件所接受的所述搜索查询条件的搜索结果。
此外,所述搜索结果生成部件可以根据针对所述执行结果提取部件所提取的所述一种或多种子查询各自的执行结果所确定的特定顺序,利用所述一种或多种子查询各自的执行结果进行逻辑运算,来生成针对所述接受部件所接受的所述搜索查询条件的搜索结果,以及
所述搜索结果生成部件还可以包括处理顺序确定部件(例如,图4中的运算顺序确定单元141),所述处理顺序确定部件用于针对所述执行结果提取部件所提取的所述一种或多种子查询各自的执行结果来计算与所述要搜索的数据中的子查询的执行结果的量相对应的搜索成本,并且基于所述搜索成本来确定所述搜索结果生成部件中的所述逻辑运算的所述特定顺序。
估计子查询的搜索成本和通过控制执行顺序来进行优化,由此本发明使得与现有方法相比可以更高效率地执行搜索处理。
此外,预定用户接口可以具有用于使得能够针对多种属性中的各属性从所述多种子查询中选择特定的一种子查询的操作功能。
这用于增加游戏者可以进行的搜索的多样性,并且还使得可以容易地处理例如添加要搜索的数据的情况。
此外,所述查询执行部件针对特定类型的属性的特定类型的子查询的执行结果可以包括所述特定类型的属性、所述特定类型的子查询、以及针对所述要搜索的数据中的所述特定类型的属性的所述特定类型的子查询的执行结果的量。
这使得可以任意地确定特定类型的子查询和特定类型的属性,这使得可以更高效率和更高速地处理静态数据。
附图标记列表
1、1-1至1-w 游戏者终端
2 服务器
21、51 CPU
100 用户接口控制单元
101 查询条件发送控制单元
102 搜索结果获得单元
103 搜索结果显示控制单元
110 子查询提取单元
111 子查询执行单元
112 PL数据生成单元
120 PL数据管理单元
121 查询条件获得单元
122 分割单元
123 执行结果提取单元
124 搜索结果生成单元
125 搜索结果发送控制单元
200 查询集合DB
300 待搜索数据DB
400 PL数据DB
Claims (6)
1.一种信息处理系统,用于通过使用能够经由预定用户接口而输入的查询条件来对要搜索的数据执行搜索处理,其中构成查询的各个条件满足包括减少性、幂等性和交换性的三个性质,所述信息处理系统包括:
预处理执行部件,用于在搜索处理之前执行处理;以及
搜索处理部件,用于执行搜索处理,
其中,所述预处理执行部件包括:
查询提取部件,用于通过对静态定义类型的查询的集合进行分析,来提取构成查询的最小单位并且满足包括所述减少性、所述幂等性和所述交换性的三个性质的子查询,其中所述查询提取部件提取有限类型的多种子查询;
查询执行部件,用于执行所述查询提取部件所提取的多种子查询中的各子查询;
关联部件,用于针对所述查询提取部件所提取的多种子查询中的各子查询,生成所述查询执行部件的执行结果与使得能够识别与该执行结果相关联的类型的子查询的信息相关联的数据,作为关联数据;以及
管理部件,用于对所述关联部件所生成的针对多种子查询中的各子查询的关联数据进行管理,以及
其中,所述搜索处理部件包括:
接受部件,用于接受经由所述用户接口为了进行搜索而输入的查询条件,作为搜索查询条件;
分割部件,用于将所述接受部件所接受的所述搜索查询条件分割为一种或多种子查询的集合;
执行结果提取部件,用于基于使得能够识别所述分割部件分割得到的属于该集合的所述一种或多种子查询中的各子查询的信息,从所述关联数据中提取所述一种或多种子查询中的各子查询的执行结果;以及
搜索结果生成部件,用于基于所述执行结果提取部件的提取结果,生成针对所述接受部件所接受的所述搜索查询条件的搜索结果。
2.根据权利要求1所述的信息处理系统,其中,
所述搜索结果生成部件通过根据针对所述执行结果提取部件所提取的所述一种或多种子查询各自的执行结果所确定的特定顺序、利用所述一种或多种子查询各自的执行结果进行逻辑运算,来生成针对所述接受部件所接受的所述搜索查询条件的搜索结果,以及
所述搜索结果生成部件还包括处理顺序确定部件,所述处理顺序确定部件用于针对所述执行结果提取部件所提取的所述一种或多种子查询各自的执行结果来计算与所述要搜索的数据中的子查询的执行结果的量相对应的搜索成本,并且基于所述搜索成本来确定所述搜索结果生成部件中的所述逻辑运算的所述特定顺序。
3.根据权利要求1或2所述的信息处理系统,其中,
所述用户接口具有用于使得能够针对多种属性中的各属性从所述多种子查询中选择特定的一种子查询的操作功能。
4.根据权利要求3所述的信息处理系统,其中,
所述查询执行部件针对特定类型的属性的特定类型的子查询的执行结果包括所述特定类型的属性、所述特定类型的子查询、以及针对所述要搜索的数据中的所述特定类型的属性的所述特定类型的子查询的执行结果的量。
5.一种信息处理系统所执行的信息处理方法,所述信息处理系统用于通过使用能够经由预定用户接口而输入的查询条件来对要搜索的数据执行搜索处理,其中构成查询的各个条件满足包括减少性、幂等性和交换性的三个性质,所述信息处理方法包括:
预处理执行步骤,用于在搜索处理之前执行处理;以及
搜索处理步骤,用于执行搜索处理,
其中,所述预处理执行步骤包括:
查询提取步骤,用于通过对静态定义类型的查询的集合进行分析,来提取构成查询的最小单位并且满足包括所述减少性、所述幂等性和所述交换性的三个性质的子查询,其中所述查询提取步骤提取有限类型的多种子查询;
查询执行步骤,用于执行所述查询提取步骤中所提取的多种子查询中的各子查询;
关联步骤,用于针对所述查询提取步骤中所提取的多种子查询中的各子查询,生成所述查询执行步骤中的执行结果与使得能够识别与该执行结果相关联的类型的子查询的信息相关联的数据,作为关联数据;以及
管理步骤,用于对所述关联步骤中所生成的针对多种子查询中的各子查询的关联数据进行管理,以及
其中,所述搜索处理步骤包括:
接受步骤,用于接受经由所述用户接口为了进行搜索而输入的查询条件,作为搜索查询条件;
分割步骤,用于将所述接受步骤中所接受的所述搜索查询条件分割为一种或多种子查询的集合;
执行结果提取步骤,用于基于使得能够识别所述分割步骤中分割得到的属于该集合的所述一种或多种子查询中的各子查询的信息,从所述关联数据中提取所述一种或多种子查询中的各子查询的执行结果;以及
搜索结果生成步骤,用于基于所述执行结果提取步骤中的提取结果,生成针对所述接受步骤中所接受的所述搜索查询条件的搜索结果。
6.一种程序,其用于信息处理系统中所包括的服务器和客户端,所述信息处理系统用于通过使用能够经由预定用户接口而输入的查询条件来对要搜索的数据执行搜索处理,其中构成查询的各个条件满足包括减少性、幂等性和交换性的三个性质,
所述程序使得所述服务器执行包括用于在搜索处理之前执行处理的预处理执行步骤的控制处理;以及
所述程序使得所述服务器或所述客户端执行包括用于执行搜索处理的搜索处理步骤的控制处理,
其中,所述预处理执行步骤包括:
查询提取步骤,用于通过对静态定义类型的查询的集合进行分析,来提取构成查询的最小单位并且满足包括所述减少性、所述幂等性和所述交换性的三个性质的子查询,其中所述查询提取步骤提取有限类型的多种子查询;
查询执行步骤,用于执行所述查询提取步骤中所提取的多种子查询中的各子查询;
关联步骤,用于针对所述查询提取步骤中所提取的多种子查询中的各子查询,生成所述查询执行步骤中的执行结果与使得能够识别与该执行结果相关联的类型的子查询的信息相关联的数据,作为关联数据;以及
管理步骤,用于对所述关联步骤中所生成的针对多种子查询中的各子查询的关联数据进行管理,以及
其中,所述搜索处理步骤包括:
接受步骤,用于接受经由所述用户接口为了进行搜索而输入的查询条件,作为搜索查询条件;
分割步骤,用于将所述接受步骤中所接受的所述搜索查询条件分割为一种或多种子查询的集合;
执行结果提取步骤,用于基于使得能够识别所述分割步骤中分割得到的属于该集合的所述一种或多种子查询中的各子查询的信息,从所述关联数据中提取所述一种或多种子查询中的各子查询的执行结果;以及
搜索结果生成步骤,用于基于所述执行结果提取步骤中的提取结果,生成针对所述接受步骤中所接受的所述搜索查询条件的搜索结果。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016-115415 | 2016-06-09 | ||
JP2016115415A JP6072334B1 (ja) | 2016-06-09 | 2016-06-09 | 情報処理システム及び方法、並びにプログラム |
PCT/JP2017/008806 WO2017212714A1 (ja) | 2016-06-09 | 2017-03-06 | 情報処理システム及び方法、並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109313641A true CN109313641A (zh) | 2019-02-05 |
CN109313641B CN109313641B (zh) | 2022-02-18 |
Family
ID=57937607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780035755.7A Active CN109313641B (zh) | 2016-06-09 | 2017-03-06 | 信息处理系统和方法以及程序 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10990591B2 (zh) |
JP (1) | JP6072334B1 (zh) |
KR (1) | KR102156275B1 (zh) |
CN (1) | CN109313641B (zh) |
TW (1) | TWI615727B (zh) |
WO (1) | WO2017212714A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10853367B1 (en) * | 2016-06-16 | 2020-12-01 | Intuit Inc. | Dynamic prioritization of attributes to determine search space size of each term, then index on those sizes as attributes |
MX2022014969A (es) * | 2020-05-28 | 2023-01-11 | Jfe Steel Corp | Sistema de busqueda de informacion. |
JP7365469B1 (ja) * | 2022-08-05 | 2023-10-19 | 株式会社Cygames | Rdbに関する処理を行うためのシステム、キャッシュサーバ、方法、及びプログラム |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102779133A (zh) * | 2011-05-12 | 2012-11-14 | 苏州同程旅游网络科技有限公司 | 基于多平台、多供应商的搜索比价方法 |
CN103136210A (zh) * | 2011-11-23 | 2013-06-05 | 北京百度网讯科技有限公司 | 一种挖掘具有相似需求的查询的方法及装置 |
CN103155532A (zh) * | 2010-10-04 | 2013-06-12 | 英派尔科技开发有限公司 | 信息处理装置和程序 |
US20130185235A1 (en) * | 2012-01-18 | 2013-07-18 | Fuji Xerox Co., Ltd. | Non-transitory computer readable medium storing a program, search apparatus, search method, and clustering device |
CN103425662A (zh) * | 2012-05-16 | 2013-12-04 | 腾讯科技(深圳)有限公司 | 一种网络社区中的信息搜索方法和装置 |
CN104054074A (zh) * | 2011-11-15 | 2014-09-17 | 起元科技有限公司 | 基于候选项查询的数据分群 |
US20160048597A1 (en) * | 2014-08-13 | 2016-02-18 | Yahoo Japan Corporation | Extraction device, search server, information processing device, extraction system, extraction method, and non-transitory computer readable storage medium |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02130673A (ja) * | 1988-11-10 | 1990-05-18 | Chubu Nippon Denki Software Kk | データ検索方式 |
JPH0352068A (ja) * | 1989-07-20 | 1991-03-06 | Nec Corp | 論理演算方式 |
JPH03230273A (ja) * | 1990-02-05 | 1991-10-14 | Nec Corp | 検索条件式の保持方式 |
US5367675A (en) * | 1991-12-13 | 1994-11-22 | International Business Machines Corporation | Computer automated system and method for optimizing the processing of a query in a relational database system by merging subqueries with the query |
JP3849279B2 (ja) | 1998-01-23 | 2006-11-22 | 富士ゼロックス株式会社 | インデクス作成方法および検索方法 |
US6973478B1 (en) * | 1999-10-26 | 2005-12-06 | Top Moxie, Inc. | Autonomous local assistant for managing business processes |
JP2003108561A (ja) * | 2001-09-28 | 2003-04-11 | Kawasaki Steel Systems R & D Corp | データベース検索システム |
US7127473B2 (en) * | 2002-05-17 | 2006-10-24 | Sap Aktiengesellschaft | Methods and systems for providing supplemental contextual content |
US7694223B2 (en) * | 2003-06-04 | 2010-04-06 | Sony Computer Entertainment Inc. | Methods and systems for recording user actions in computer programs |
US7676453B2 (en) | 2004-04-22 | 2010-03-09 | Oracle International Corporation | Partial query caching |
US7661099B2 (en) * | 2004-06-29 | 2010-02-09 | International Business Machines Corporation | Using idempotent operations to improve transaction performance |
US7539667B2 (en) * | 2004-11-05 | 2009-05-26 | International Business Machines Corporation | Method, system and program for executing a query having a union operator |
US20070078816A1 (en) * | 2005-10-05 | 2007-04-05 | Microsoft Corporation | Common sub-expression elimination for inverse query evaluation |
TW200745877A (en) * | 2006-06-07 | 2007-12-16 | Telepaq Technology Inc | Distributed push-pull information service system |
JP5235483B2 (ja) | 2008-04-30 | 2013-07-10 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データベースと仮想テーブルの整合性を維持する方法および装置。 |
US10031948B1 (en) * | 2013-12-02 | 2018-07-24 | Amazon Technologies, Inc. | Idempotence service |
US9870390B2 (en) * | 2014-02-18 | 2018-01-16 | Oracle International Corporation | Selecting from OR-expansion states of a query |
US10324931B2 (en) * | 2016-02-05 | 2019-06-18 | International Business Machines Corporation | Dynamic combination of processes for sub-queries |
US10656972B2 (en) * | 2016-11-10 | 2020-05-19 | International Business Machines Corporation | Managing idempotent operations while interacting with a system of record |
-
2016
- 2016-06-09 JP JP2016115415A patent/JP6072334B1/ja active Active
-
2017
- 2017-03-06 KR KR1020187037501A patent/KR102156275B1/ko active IP Right Grant
- 2017-03-06 WO PCT/JP2017/008806 patent/WO2017212714A1/ja active Application Filing
- 2017-03-06 CN CN201780035755.7A patent/CN109313641B/zh active Active
- 2017-06-02 TW TW106118289A patent/TWI615727B/zh active
-
2018
- 2018-12-10 US US16/215,163 patent/US10990591B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103155532A (zh) * | 2010-10-04 | 2013-06-12 | 英派尔科技开发有限公司 | 信息处理装置和程序 |
CN102779133A (zh) * | 2011-05-12 | 2012-11-14 | 苏州同程旅游网络科技有限公司 | 基于多平台、多供应商的搜索比价方法 |
CN104054074A (zh) * | 2011-11-15 | 2014-09-17 | 起元科技有限公司 | 基于候选项查询的数据分群 |
CN103136210A (zh) * | 2011-11-23 | 2013-06-05 | 北京百度网讯科技有限公司 | 一种挖掘具有相似需求的查询的方法及装置 |
US20130185235A1 (en) * | 2012-01-18 | 2013-07-18 | Fuji Xerox Co., Ltd. | Non-transitory computer readable medium storing a program, search apparatus, search method, and clustering device |
CN103425662A (zh) * | 2012-05-16 | 2013-12-04 | 腾讯科技(深圳)有限公司 | 一种网络社区中的信息搜索方法和装置 |
US20160048597A1 (en) * | 2014-08-13 | 2016-02-18 | Yahoo Japan Corporation | Extraction device, search server, information processing device, extraction system, extraction method, and non-transitory computer readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
US20190171643A1 (en) | 2019-06-06 |
JP2017220102A (ja) | 2017-12-14 |
WO2017212714A1 (ja) | 2017-12-14 |
US10990591B2 (en) | 2021-04-27 |
JP6072334B1 (ja) | 2017-02-01 |
KR102156275B1 (ko) | 2020-09-15 |
TWI615727B (zh) | 2018-02-21 |
TW201810086A (zh) | 2018-03-16 |
KR20190013907A (ko) | 2019-02-11 |
CN109313641B (zh) | 2022-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230381624A1 (en) | Method and System for Interactive, Interpretable, and Improved Match and Player Performance Predictions in Team Sports | |
CN101055585B (zh) | 文档聚类系统和方法 | |
CN103699700B (zh) | 一种搜索引导的生成方法、系统及相关服务器 | |
CN110362370A (zh) | 一种网页语言的切换方法、装置及终端设备 | |
CN109101479A (zh) | 一种用于中文语句的聚类方法及装置 | |
CN108536813B (zh) | 轨迹查询方法、电子设备及存储介质 | |
CN108319627A (zh) | 关键词提取方法以及关键词提取装置 | |
CN103309869B (zh) | 数据对象的展示关键词推荐方法及系统 | |
KR20060048940A (ko) | 효율적으로 페이지 순위를 계산하는 방법 및 시스템 | |
CN111104511A (zh) | 一种提取热点话题的方法、装置及存储介质 | |
WO2006102122A2 (en) | Search engine that applies feedback from users to improve search results | |
CN108701155A (zh) | 社交网络中的专家检测 | |
KR20070013867A (ko) | 카테고리별 검색 로직을 이용한 상품 검색 시스템 및 방법 | |
CN110046298A (zh) | 一种查询词推荐方法、装置、终端设备及计算机可读介质 | |
CN106951503A (zh) | 信息提供方法、装置、设备以及存储介质 | |
CN108170731A (zh) | 数据处理方法、装置、计算机存储介质及服务器 | |
Wick et al. | A unified approach for schema matching, coreference and canonicalization | |
CN110325987A (zh) | 语境语音驱动深度书签 | |
CN110019650A (zh) | 提供搜索联想词的方法、装置、存储介质及电子设备 | |
CN109313641A (zh) | 信息处理系统和方法以及程序 | |
CN108604248A (zh) | 利用基于人工智能的相关性计算的笔记提供方法及装置 | |
CN114490923A (zh) | 相似文本匹配模型的训练方法、装置、设备及存储介质 | |
CN110119396A (zh) | 数据管理方法及相关产品 | |
Nguyen et al. | Affordance-based robot object retrieval | |
Tuomchomtam et al. | Community recommendation for text post in social media: A case study on Reddit |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1260390 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |