CN105373541A - 数据库的数据操作请求的处理方法和*** - Google Patents
数据库的数据操作请求的处理方法和*** Download PDFInfo
- Publication number
- CN105373541A CN105373541A CN201410419664.1A CN201410419664A CN105373541A CN 105373541 A CN105373541 A CN 105373541A CN 201410419664 A CN201410419664 A CN 201410419664A CN 105373541 A CN105373541 A CN 105373541A
- Authority
- CN
- China
- Prior art keywords
- data
- key word
- hash table
- tables
- request
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种数据库的数据操作请求的处理方法,包括以下步骤:接收对指定数据表的写数据请求,所述写数据请求中包括关键字以及关键字对应的更新内容;在所述数据表对应的存储于内存的哈希表中查找所述写数据请求中包括的关键字;若在所述哈希表中查找到所述写数据请求中包括的关键字,则在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;生成可实现对所述哈希表的操作的SQL语句,将所述SQL语句***到所述数据表的更新语句队列中;向发送所述写数据请求的请求方返回处理结果。上述方法可大大提高对数据库的数据操作请求的响应速度。此外,还提供一种数据库的数据操作请求的处理***。
Description
【技术领域】
本发明涉及数据库技术领域,特别涉及一种数据库的数据操作请求的处理方法和***。
【背景技术】
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。随着信息技术和市场的发展数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储各种数据表格的数据库到能够进行海量数据存储的大型数据库***都在各个方面得到了广泛的应用。按照存储的数据的组织形式,数据库的种类可分为层次型数据库、网络型数据库和关系型数据库。目前应用较为广泛的数据库包括DB2、OracleInformix、Sybase、SQLServer和mySQL等。
用户可以对数据库中的数据进行新增、截取、更新、删除等操作。然而,数据库针对用户的数据操作请求做出的响应速度,随着数据库存储的数据量的增大而延长,尤其是当数据库要处理海量的数据操作请求时,响应速度就更慢了。
【发明内容】
基于此,有必要提供一种可提高对数据库的数据操作请求的响应速度的数据库的数据操作请求的处理方法和***。
一种数据库的数据操作请求的处理方法,包括以下步骤:
接收对指定数据表的写数据请求,所述写数据请求中包括关键字以及关键字对应的更新内容;
在所述数据表对应的存储于内存的哈希表中查找所述写数据请求中包括的关键字;
若在所述哈希表中查找到所述写数据请求中包括的关键字,则在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;
生成可实现对所述哈希表的操作的SQL语句,将所述SQL语句***到所述数据表的更新语句队列中;
向发送所述写数据请求的请求方返回处理结果。
在其中一个实施例中,所述方法还包括:
若未在所述哈希表中查找到所述写数据请求中包括的关键字,则在存储于数据库的所述数据表中查找所述写数据请求中包括的关键字;
若在所述数据表中查找到所述写数据请求中包括的关键字,则读取所述数据表中与所述写数据请求中包括的关键字对应的值,将所述写数据请求中包括的关键字以及所述对应的值写入所述哈希表中,并在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;
若未在所述数据表中查找到所述写数据请求中包括的关键字,则根据所述更新内容生成所述写数据请求中包括的关键字对应的值,将所述写数据请求中包括的关键字以及所述生成的值写入所述哈希表中。
在其中一个实施例中,所述方法还包括:
在所述生成可实现对所述哈希表的操作的SQL语句之后,将所述SQL语句写入到日志文件中;
根据所述更新语句队列修改所述数据表;
当所述更新语句队列中的SQL语句被破坏后,根据所述日志文件修改所述数据表。
在其中一个实施例中,所述方法还包括:
接收对指定数据表的读数据请求,所述读数据请求中包括关键字;
在所述数据表对应的存储于内存的哈希表中查找所述读数据请求中包括的关键字;
若在所述哈希表中查找到所述读数据请求中包括的关键字,则在所述哈希表中读取所述读数据请求中包括的关键字对应的值;
根据所述对应的值向发送所述读数据请求的请求方返回处理结果。
在其中一个实施例中,所述方法还包括:
若未在所述哈希表中查找到所述读数据请求中包括的关键字,则在存储于数据库的所述数据表中查找所述读数据请求中包括的关键字;
若在所述数据表中查找到所述读数据请求中包括的关键字,则读取所述数据表中与所述读数据请求中包括的关键字对应的值,将所述写数据请求中包括的关键字以及所述对应的值写入所述哈希表中,根据所述对应的值向发送所述读数据请求的请求方返回处理结果。
若未在所述数据表中查找到所述读数据请求中包括的关键字,则向发送所述读数据请求的请求方返回表示查找失败的结果。
一种数据库的数据操作请求的处理***,包括:
请求获取模块,用于接收对指定数据表的写数据请求,所述写数据请求中包括关键字以及关键字对应的更新内容;
哈希表查找模块,用于在所述数据表对应的存储于内存的哈希表中查找所述写数据请求中包括的关键字;
哈希表更新模块,用于若在所述哈希表中查找到所述写数据请求中包括的关键字,则在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;
SQL语句生成模块,用于生成可实现对所述哈希表的操作的SQL语句;
队列写入模块,用于将所述SQL语句***到所述数据表的更新语句队列中;
写结果返回模块,用于向发送所述写数据请求的请求方返回处理结果。
在其中一个实施例中,所述***还包括:
数据表查找模块,用于若未在所述哈希表中查找到所述写数据请求中包括的关键字,则在存储于数据库的所述数据表中查找所述写数据请求中包括的关键字;
数据表读取模块,用于若在所述数据表中查找到所述写数据请求中包括的关键字,则读取所述数据表中与所述写数据请求中包括的关键字对应的值;
所述哈希表更新模块还用于将所述写数据请求中包括的关键字以及所述对应的值写入所述哈希表中,并在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;
所述哈希表更新模块还用于若未在所述数据表中查找到所述写数据请求中包括的关键字,则根据所述更新内容生成所述写数据请求中包括的关键字对应的值,将所述写数据请求中包括的关键字以及所述生成的值写入所述哈希表中。
在其中一个实施例中,所述***还包括:
日志文件写入模块,用于在所述生成可实现对所述哈希表的操作的SQL语句之后,将所述SQL语句写入到日志文件中;
第一数据表更新模块,用于根据所述更新语句队列修改所述数据表;
第二数据表更新模块,用于当所述更新语句队列中的SQL语句被破坏后,根据所述日志文件修改所述数据表。
在其中一个实施例中,所述请求获取模块还用于接收对指定数据表的读数据请求,所述读数据请求中包括关键字;
所述哈希表查找模块还用于在所述数据表对应的存储于内存的哈希表中查找所述读数据请求中包括的关键字;
所述***还包括:
哈希表读取模块,用于若在所述哈希表中查找到所述读数据请求中包括的关键字,则在所述哈希表中读取与所述读数据请求中包括的关键字对应的值;
读结果返回模块,用于根据所述对应的值向发送所述读数据请求的请求方返回数据读取结果。
在其中一个实施例中,所述数据表查找模块还用于若未在所述哈希表中查找到所述读数据请求中包括的关键字,则在存储于数据库的所述数据表中查找所述读数据请求中包括的关键字;
所述数据表读取模块还用于若在所述数据表中查找到所述读数据请求中包括的关键字,则读取所述数据表中与所述读数据请求中包括的关键字对应的值;
所述哈希表更新模块还用于将所述读数据请求中包括的关键字以及所述对应的值写入所述哈希表中;
所述读结果返回模块还用于根据所述对应的值向发送所述读数据请求的请求方返回处理结果。
上述数据库的数据操作请求的处理方法和***,在获取到对指定数据表的写数据请求后,在指定数据表对应的存储于内存的哈希表中查找写数据请求中包括的关键字,若查找到,则在哈希表中对关键字对应的值进行相应的更新,为了保证存储于内存的哈希表与存储于数据库的数据表的数据一致性,生成可实现对哈希表的操作的SQL语句,将该SQL语句***到指定数据表的更新语句队列中,以方便后续对指定数据表进行与哈希表相同的操作;上述方法和***,可在指定数据表对应的存储于内存的哈希表中进行相应的数据更新操作之后,而不需要在存储于数据库的数据表中进行该数据更新操作之后,即可向请求方返回处理结果,由于对存储于内存的哈希表进行数据更新操作的速度远远大于对存储于数据库的数据表进行数据更新操作的速度,因此,可大大提高对数据库的数据操作请求的响应速度。
【附图说明】
图1为一个实施例中的数据库的数据操作请求的处理方法的流程示意图;
图2为一个实施例中的数据库的数据操作请求的处理方法的流程示意图;
图3A为一个实施例中的数据库的数据操作请求的处理方法的流程示意图;
图3B为一个实施例中生成当前生成的SQL语句的自增序列号的步骤的流程示意图;
图3C为一个实施例中根据指定数据表的更新语句队列修改指定数据表的步骤的流程示意图;
图3D为一个实施例中根据日志文件修改指定数据表的步骤的流程示意图;
图4为一个实施例中对读数据请求的处理过程的流程示意图;
图5为一个实施例中对读数据请求的处理过程的流程示意图;
图6为一个实施例中的数据库的数据操作请求的处理***的结构示意图;
图7为一个实施例中的数据库的数据操作请求的处理***的结构示意图;
图8为一个实施例中的数据库的数据操作请求的处理***的结构示意图;
图9为一个实施例中的数据库的数据操作请求的处理***的结构示意图;
图10为一个实施例中的数据库的数据操作请求的处理***的结构示意图。
【具体实施方式】
如图1所示,在一个实施例中,一种数据库的数据操作请求的处理方法,包括以下步骤:
步骤S102,接收对指定数据表的写数据请求,写数据请求中包括关键字以及关键字对应的更新内容。
写数据请求可为对数据的新增请求、删除请求或修改请求。
更新内容可包括具体的列名和列值对,若更新内容中包括列名和列值对,则每一列名和列值对可表示请求将该列名对应列中关键字对应的值设置为该列值。例如更新内容包括(姓名,“张三”)、(生日,2014-6-10)等列名和列值对,其可表示请求将姓名列中关键字对应值设置为“张三”、以及将年龄列中关键字对应值设置为20。
更新内容也可包括删除指令,若更新内容中包括删除指令,则可表示请求删除关键字对应的记录。
步骤S104,在指定数据表对应的存储于内存的哈希表中查找写数据请求中包括的关键字。数据表的表名与对应的哈希表的表名相同。
在一个实施例中,在步骤S104之前,上述数据库的数据操作请求的处理方法还包括步骤:获取指定数据表中的部分或全部记录,在内存中生成与指定数据表的表名相同的哈希表,将指定数据表中的部分或全部记录存储到对应的哈希表中。具体的,在一个实施例中,可统计指定数据表中的记录的访问频率,获取访问频率高的前预设条记录,将获取的记录存储到对应的哈希表中。
在一个实施例中,上述数据库的数据操作请求的处理方法还包括步骤:设置哈希表过期数据清理周期,在每一个周期内统计哈希表中的记录的访问频率,并在每一个周期末删除本周期内访问频率低的前预设条记录。
步骤S106,若在哈希表中查找到写数据请求中包括的关键字,则在哈希表中根据更新内容修改写数据请求中包括的关键字对应的记录。
若更新内容包括列名和列值对,则相应于每一列名和列值对,将其中的列名对应列中关键字对应的值设置为其中的列值,例如,更新内容包括(姓名,“张三”)这一列名和列值对,则可将哈希表的姓名列中关键字对应值设置为“张三”。
若更新内容包括删除指令,则可删除哈希表中关键字对应的记录。
步骤S108,生成可实现对哈希表的操作的SQL语句,将SQL语句***到数据表的更新语句队列中。
例如,哈希表的表名为STUDENT,哈希表中表示关键字的列的列名为StudentID,写数据请求中包括关键字“001”和删除指令,即表示请求删除哈希表中StudentID为“001”的记录,则可生成如下SQL语句:DELETEFROMSTUDENTWHEREStudentID=‘001’。由于哈希表的表名与对应数据表的表名一致,因此,同一SQL语句可实现对哈希表以及对应数据表进行相同的操作。
数据表的更新语句队列中包含了将要对数据表执行的SQL语句。
步骤S110,向发送写数据请求的请求方返回处理结果。
若对哈希表成功进行了与写数据请求对应的数据更新操作,则可向请求方返回表示处理成功的结果信息。若对哈希表进行的与写数据请求对应的数据更新操作遇到异常,则可向请求方返回表示处理失败的结果信息。
如图2所示,在一个实施例中,一种数据库的数据操作请求的处理方法,包括以下步骤:
步骤S202,接收对指定数据表的写数据请求,写数据请求中包括关键字以及关键字对应的更新内容。
步骤S204,在指定数据表对应的存储于内存的哈希表中查找写数据请求中包括的关键字,并判断是否查找到该关键字,若是,则执行步骤S206,否则,执行步骤S208。
步骤S206,在哈希表中根据更新内容修改写数据请求中包括的关键字对应的记录,进入步骤S214。
步骤S208,在存储于数据库的数据表中查找写数据请求中包括的关键字,并判断是否查找到该关键字,若是,则执行步骤S210,否则执行步骤S212。
步骤S210,读取指定数据表中与写数据请求中包括的关键字对应的值,将写数据请求中包括的关键字以及对应的值写入哈希表中,进入步骤S206。
步骤S212,根据更新内容生成写数据请求中包括的关键字对应的值,将写数据请求中包括的关键字以及生成的值写入哈希表中,进入步骤S214。
若指定数据表中没有写数据请求中包括的关键字,则可以认为该写数据请求为新增记录的请求。步骤S212可将更新内容中包含的列值按照哈希表中相应列的数据类型进行格式化,进一步的,可将关键字以及格式化后的列值作为一条记录写入哈希表中。例如,更新内容中包含(生日,2014-6-10)这一列名和列值对,而哈希表中生日列的数据类型为长度为8位的字符串,则可将2014-6-10格式化为20140610。进一步的,可将关键字以及20140610作为一条记录写入哈希表中。
步骤S214,生成可实现对哈希表的操作的SQL语句,将SQL语句***到数据表的更新语句队列中。
步骤S216,向发送写数据请求的请求方返回处理结果。
在一个实施例中,上述数据库的数据操作请求的处理方法,还包括以下步骤:在生成可实现对哈希表的操作的SQL语句之后,将SQL语句写入到日志文件中;根据指定数据表的更新语句队列修改指定数据表;当更新语句队列中的SQL语句被破坏后,根据日志文件修改指定数据表。
根据指定数据表的更新语句队列修改指定数据表的步骤包括:判断指定数据表的更新语句队列中是否还有SQL语句,若是,则从指定数据表的更新语句队列的队列头获取SQL语句并删除位于队列头的SQL语句,对指定数据表执行获取的SQL语句,判断指定数据表的更新语句队列中是否还有SQL语句,若否,则结束或者间隔预设时长再执行判断指定数据表的更新语句队列中是否还有SQL语句的步骤。
本实施例中,对指定数据表将要执行的SQL语句被放入具有先进先出原则的更新语句队列中,相对于对哈希表的更新操作,可将对指定数据表的更新操作进行延时,一般地可在数据库的数据操作请求较少的时段或在计算机***较为空闲的时段,根据更新语句队列集中处理对数据表的更新操作,避免与数据操作请求的处理争夺***资源,从而避免减慢对数据操作请求的响应速度。
在一个实施例中,更新语句队列存储于内存中,可加快对更新语句队列数据读写的速度,从而加快对数据库的数据操作请求的响应速度。而在计算机发生异常故障而死机后,存储于内存中的更新语句队列中的数据可能被破坏,本实施例中,在这种情况下,则可根据日志文件修改指定数据表,因为日志文件中也写入了可实现对哈希表的操作的SQL语句。因此,本实施例,即使计算机发生异常故障而死机,也可根据日志文件修改指定数据表,确保对数据表应该执行的操作得以完成,从而保证向请求方返回的处理结果的准确性。
步骤S102~S110、根据指定数据表的更新语句队列修改指定数据表的步骤、以及根据日志文件修改指定数据表的步骤可由不同的进程或线程来实现,从而达到对哈希表的操作与对数据表的操作互不影响的目的,以加快对数据操作请求的响应速度,还可达到在计算机未发生异常的情况下对数据表的操作和在计算机发生异常的情况下对数据表的操作互不影响的目的。
如图3A所示,在一个实施例中,一种数据库的数据操作请求的处理方法,包括步骤:
步骤S302,接收对指定数据表的写数据请求,写数据请求中包括关键字以及关键字对应的更新内容。
步骤S304,在指定数据表对应的存储于内存的哈希表中查找写数据请求中包括的关键字,并判断是否查找到该关键字,若是,则执行步骤S306,否则,执行步骤S308。
步骤S306,在哈希表中根据更新内容修改写数据请求中包括的关键字对应的记录,进入步骤S314。
步骤S308,在存储于数据库的数据表中查找写数据请求中包括的关键字,并判断是否查找到该关键字,若是,则执行步骤S310,否则执行步骤S312。
步骤S310,读取指定数据表中写数据请求中包括的关键字对应的值,将写数据请求中包括的关键字以及对应的值写入哈希表中,进入步骤S306。
步骤S312,根据更新内容生成写数据请求中包括的关键字对应的值,将写数据请求中包括的关键字以及生成的值写入哈希表中,进入步骤S314。
步骤S314,生成可实现对哈希表的操作的SQL语句,并生成当前生成的SQL语句的自增序列号。
SQL语句的自增序列号为可唯一标识SQL语句的序列号,且先生成的SQL语句的自增序列号小于后生成的SQL语句的自增序列号。
在一个实施例中,自增序列号由时间戳和计数号两部分组成,其中时间戳位于序列号之前;可生成0序列作为初始的自增序列号,0序列可包括一个或多个0;如图3B所示,生成当前生成的SQL语句的自增序列号的步骤包括以下步骤:
步骤S1,获取***当前时间戳。
步骤S2,设置当前生成的SQL语句的自增序列号的时间戳等于***当前时间戳。
步骤S3,判断***当前时间戳是否大于上一次生成的自增序列号的时间戳,若是,则执行步骤S4,若否,则执行步骤S5。
上一次生成的自增序列号为处理上一个写数据请求过程中生成SQL语句的自增序列号。
S4,设置当前生成的SQL语句的自增序列号的计数号等于0,进入步骤S6。
S5,设置当前生成的SQL语句的自增序列号的计数号等于上一次生成的自增序列号的计数号加1,进入步骤S6。
S6,将设置的上述时间戳和计数号按照预设格式转换字符串,并将转换后的时间戳和计数号组合成当前生成的SQL语句的自增序列号。
例如,将时间戳转换为只保留其中的数字的字符串,将计数号转换为长度为6位的字符串。例如,若时间戳为2014-06-1109:50:20,计数号为0,则可将时间戳转换为20140611095020,将计数号转换为000000,并拼接得到当前生成的SQL语句的自增序列号:20140611095020000000。
步骤S315,将SQL语句与对应的自增序列号作为一条数据***到指定数据表的更新语句队列中,并将SQL语句以及对应的自增序列号对应写入到日志文件中。
步骤S316,向发送写数据请求的请求方返回处理结果。
在一个实施例中,上述数据库的数据操作请求的处理方法还包括根据指定数据表的更新语句队列修改指定数据表的步骤,如图3C所示,该步骤包括:
步骤S318,判断指定数据表的更新语句队列中是否还有SQL语句,若是,则执行步骤S320,若否,则执行步骤S324。
步骤S320,从指定数据表的更新语句队列的队列头获取SQL语句及对应的自增序列号,并删除位于队列头的SQL语句及对应的自增序列号。
步骤S322,对指定数据表执行获取的SQL语句,并记录对指定数据表执行的SQL语句对应的自增序列号,进入步骤S318。
在一个实施例中,可在数据库生成一张序列号数据表,用于记录表名与自增序列号的对应关系。其中,表名对应的自增序列号为该表名对应的数据表上最新执行的SQL语句的自增序列号。步骤S322可在该序列号数据表中设置指定数据表的表名对应的自增序列号为指定数据表上最新执行的SQL语句的自增序列号。
步骤S324,设置提醒闹钟,使得提醒闹钟在预设时长后唤醒步骤S318的执行线程或执行进程。
在一个实施例中,上述数据库的数据操作请求的处理方法还包括步骤:当更新语句队列中的SQL语句被破坏后,根据日志文件修改指定数据表。如图3D所示,根据日志文件修改指定数据表的步骤包括以下步骤:
步骤S326,获取对指定数据表最新执行的SQL语句的自增序列号。
在一个实施例中,可在上述序列号数据表中查找指定数据表的表名对应的自增序列号,即可得到对指定数据表最新执行的SQL语句的自增序列号。
步骤S328,在日志文件中查找最新执行的SQL语句的自增序列号,获取该自增序列号以后的自增序列号对应的SQL语句。
该自增序列号以后的自增序列号大于该自增序列号;该自增序列号以后的自增序列号对应的SQL语句,为在对指定数据表最新执行的SQL语句以后生成的SQL语句,这些SQL语句已经在指定数据表对应的哈希表上执行,其也应该在指定数据表上执行,但是还未在指定数据表上执行。
步骤S330,对指定数据表执行上述获取的SQL语句。
在一个实施例中,上述数据库的数据操作请求的处理方法还包括对读数据请求的处理过程,如图4所示,该过程包括以下步骤:
步骤S402,接收对指定数据表的读数据请求,读数据请求中包括关键字。
步骤S404,在数据表对应的存储于内存的哈希表中查找读数据请求中包括的关键字。
步骤S406,若在哈希表中查找到读数据请求中包括的关键字,则在哈希表中读取读数据请求中包括的关键字对应的值。
步骤S408,根据对应的值向发送读数据请求的请求方返回处理结果。
在一个实施例中,读数据请求中还包括请求读取的列名。在步骤S406之后,上述对读数据请求的处理过程还包括步骤:获取对应的值中请求读取的列名对应的数据。步骤S408可向发送读数据请求的请求方返回获取的关键字以及请求读取的列名对应的数据。
如图5所示,在一个实施例中,对读数据请求的处理过程包括以下步骤:
步骤S502,接收对指定数据表的读数据请求,读数据请求中包括关键字。
步骤S504,在数据表对应的存储于内存的哈希表中查找读数据请求中包括的关键字,并判断是否查找到该关键字,若是,则执行步骤S506,否则,执行步骤S508。
步骤S506,在哈希表中读取读数据请求中包括的关键字对应的值,进入步骤S514。
步骤S508,在存储于数据库的数据表中查找读数据请求中包括的关键字,并判断是否查找到该关键字,若是,则执行步骤S510,否则执行步骤S512。
步骤S510,读取指定数据表中读数据请求中包括的关键字对应的值,将读数据请求中包括的关键字以及对应的值写入哈希表中,进入步骤S514。
步骤S512,向发送读数据请求的请求方返回表示查找失败的结果。
步骤S514,根据对应的值向发送读数据请求的请求方返回处理结果。
如图6所示,在一个实施例中,一种数据库的数据操作请求的处理***,包括请求获取模块10、哈希表查找模块20、哈希表更新模块30、SQL语句生成模块40、队列写入模块50和写结果返回模块60,其中:
请求获取模块10用于接收对指定数据表的写数据请求,写数据请求中包括关键字以及关键字对应的更新内容。
写数据请求可为对数据的新增请求、删除请求或修改请求。
更新内容可包括具体的列名和列值对,若更新内容中包括列名和列值对,则每一列名和列值对可表示请求将该列名对应列中关键字对应的值设置为该列值。
更新内容也可包括删除指令,若更新内容中包括删除指令,则可表示请求删除关键字对应的记录。
哈希表查找模块20用于在指定数据表对应的存储于内存的哈希表中查找写数据请求中包括的关键字。数据表的表名与对应的哈希表的表名相同。
在一个实施例中,上述数据库的数据操作请求的处理***还包括哈希表生成模块(图中未示出),用于获取指定数据表中的部分或全部记录,在内存中生成与指定数据表的表名相同的哈希表,将指定数据表中的部分或全部记录存储到对应的哈希表中。具体的,在一个实施例中,上述数据库的数据操作请求的处理***还包括数据表访问频率统计模块(图中未示出),用于统计指定数据表中的记录的访问频率;哈希生成模块可获取访问频率高的前预设条记录,将获取的记录存储到对应的哈希表中。
在一个实施例中,上述数据库的数据操作请求的处理***哈希表清理模块(图中未示出),用于设置哈希表过期数据清理周期,在每一个周期内统计哈希表中的记录的访问频率,并在每一个周期末删除本周期内访问频率低的前预设条记录。
哈希表更新模块30用于若在哈希表中查找到写数据请求中包括的关键字,则在哈希表中根据更新内容修改写数据请求中包括的关键字对应的记录。
若更新内容包括列名和列值对,则相应于每一列名和列值对,将其中的列名对应列中关键字对应的值设置为其中的列值。
若更新内容包括删除指令,则可删除哈希表中关键字对应的记录。
SQL语句生成模块40用于生成可实现对哈希表的操作的SQL语句,将SQL语句***到数据表的更新语句队列中。
由于哈希表的表名与对应数据表的表名一致,因此,同一SQL语句可实现对哈希表以及对应数据表进行相同的操作。
数据表的更新语句队列中包含了将要对数据表执行的SQL语句。
写结果返回模块60用于向发送写数据请求的请求方返回处理结果。
若对哈希表成功进行了与写数据请求对应的数据更新操作,则写结果返回模块60可向请求方返回表示处理成功的结果信息。若对哈希表进行的与写数据请求对应的数据更新操作遇到异常,则写结果返回模块60可向请求方返回表示处理失败的结果信息。
如图7所示,在一个实施例中,上述数据库的数据操作请求的处理***还包括数据表查找模块70和数据表读取模块80;本实施例中:
数据表查找模块70,用于若未在哈希表中查找到写数据请求中包括的关键字,则在存储于数据库的数据表中查找写数据请求中包括的关键字。
数据表读取模块80,用于若在数据表中查找到写数据请求中包括的关键字,则读取数据表中与写数据请求中包括的关键字对应的值。
哈希表更新模块30还用于将写数据请求中包括的关键字以及数据表读取模块80读取的对应的值写入哈希表中,并在哈希表中根据更新内容修改写数据请求中包括的关键字对应的记录。
哈希表更新模块30还用于若未在数据表中查找到写数据请求中包括的关键字,则根据更新内容生成写数据请求中包括的关键字对应的值,将写数据请求中包括的关键字以及生成的值写入哈希表中。
若指定数据表中没有写数据请求中包括的关键字,则可以认为该写数据请求为新增记录的请求。哈希表更新模块30可将更新内容中包含的列值按照哈希表中相应列的数据类型进行格式化,进一步的,可将关键字以及格式化后的列值作为一条记录写入哈希表中。
如图8所示,在一个实施例中,上述数据库的数据操作请求的处理***还包括日志文件写入模块90、第一数据表更新模块100和第二数据表更新模块110,其中:
日志文件写入模块90,用于在生成可实现对哈希表的操作的SQL语句之后,将SQL语句写入到日志文件中。
第一数据表更新模块100,用于根据更新语句队列修改数据表。
第二数据表更新模块110,用于当更新语句队列中的SQL语句被破坏后,根据日志文件修改数据表。
第一数据表更新模块100用于判断指定数据表的更新语句队列中是否还有SQL语句,若是,则从指定数据表的更新语句队列的队列头获取SQL语句并删除位于队列头的SQL语句,对指定数据表执行获取的SQL语句,判断指定数据表的更新语句队列中是否还有SQL语句以及根据判断结果执行相应操作,若否,则结束或者间隔预设时长再判断指定数据表的更新语句队列中是否还有SQL语句。
本实施例中,对指定数据表将要执行的SQL语句被放入具有先进先出原则的更新语句队列中,相对于对哈希表的更新操作,可将对指定数据表的更新操作进行延时,一般地第一数据表更新模块100可在数据库的数据操作请求较少的时段或在计算机***较为空闲的时段,根据更新语句队列集中处理对数据表的更新操作,避免与数据操作请求的处理争夺***资源,从而避免减慢对数据操作请求的响应速度。
在一个实施例中,更新语句队列存储于内存中,可加快对更新语句队列数据读写的速度,从而加快对数据库的数据操作请求的响应速度。而在计算机发生异常故障而死机后,存储于内存中的更新语句队列中的数据可能被破坏,本实施例中,在这种情况下,第二数据表更新模块110则可根据日志文件修改指定数据表,因为日志文件中也写入了可实现对哈希表的操作的SQL语句。因此,本实施例,即使计算机发生异常故障而死机,也可根据日志文件修改指定数据表,确保对数据表应该执行的操作得以完成,从而保证向请求方返回的处理结果的准确性。
实现请求获取模块10、哈希表查找模块20、哈希表更新模块30、SQL语句生成模块40和写结果返回模块60的线程/进程、实现第一数据表更新模块100的线程/进程和实现第二数据表更新模块110的线程/进程可为不同的线程/进程,从而达到对哈希表的操作与对数据表的操作互不影响的目的,以加快对数据操作请求的响应速度,还可达到在计算机未发生异常的情况下对数据表的操作和在计算机发生异常的情况下对数据表的操作互不影响的目的。
如图9所示,在一个实施例中,上述数据库的数据操作请求的处理***还包括自增序列号生成模块120,用于在生成可实现对哈希表的操作的SQL语句之后,生成当前生成的SQL语句的自增序列号。
SQL语句的自增序列号为可唯一标识SQL语句的序列号,且先生成的SQL语句的自增序列号小于后生成的SQL语句的自增序列号。
自增序列号可由时间戳和计数号两部分组成,其中时间戳位于序列号之前;自增序列号生成模块110可生成0序列作为初始的自增序列号,0序列可包括一个或多个0;自增序列号生成模块110生成当前生成的SQL语句的自增序列号的过程可包括:
获取***当前时间戳。设置当前生成的SQL语句的自增序列号的时间戳等于***当前时间戳。判断***当前时间戳是否大于上一次生成的自增序列号的时间戳,若是,则设置当前生成的SQL语句的自增序列号的计数号等于0,若否,则设置当前生成的SQL语句的自增序列号的计数号等于上一次生成的自增序列号的计数号加1。将设置的上述时间戳和计数号按照预设格式转换字符串,并将转换后的时间戳和计数号组合成当前生成的SQL语句的自增序列号。
本实施例中,队列写入模块50用于将SQL语句与对应的自增序列号作为一条数据***到指定数据表的更新语句队列中,日志文件写入模块90用于将SQL语句以及对应的自增序列号对应写入到日志文件中。
本实施例中,第一数据表更新模块100用于判断指定数据表的更新语句队列中是否还有SQL语句,若是,则从指定数据表的更新语句队列的队列头获取SQL语句及对应的自增序列号,并删除位于队列头的SQL语句及对应的自增序列号;对指定数据表执行获取的SQL语句,并记录对指定数据表执行的SQL语句对应的自增序列号,进一步判断指定数据表的更新语句队列中是否还有SQL语句以及根据判断结果执行相应的操作,若否,则设置提醒闹钟,使得提醒闹钟在预设时长后唤醒第一数据表更新模块100的实现线程或进程。
上述数据库的数据操作请求的处理***还可包括序列号数据表生成模块(图中未示出),用于在数据库生成一张序列号数据表,该序列号数据表用于记录表名与自增序列号的对应关系。其中,表名对应的自增序列号为该表名对应的数据表上最新执行的SQL语句的自增序列号。第一数据表更新模块100可在该序列号数据表中设置指定数据表的表名对应的自增序列号为指定数据表上最新执行的SQL语句的自增序列号。
本实施例中,第二数据表更新模块110用于当更新语句队列中的SQL语句被破坏后,获取对指定数据表最新执行的SQL语句的自增序列号,在日志文件中查找最新执行的SQL语句的自增序列号,获取该自增序列号以后的自增序列号对应的SQL语句,对指定数据表执行上述获取的SQL语句。
在一个实施例中,第二数据表更新模块110可在上述序列号数据表中查找指定数据表的表名对应的自增序列号,即可得到对指定数据表最新执行的SQL语句的自增序列号。
最新执行的SQL语句的自增序列号以后的自增序列号大于最新执行的SQL语句的自增序列号;最新执行的SQL语句的自增序列号以后的自增序列号对应的SQL语句,为在对指定数据表最新执行的SQL语句以后生成的SQL语句,这些SQL语句已经在指定数据表对应的哈希表上执行,其也应该在指定数据表上执行,但是还未在指定数据表上执行。
在一个实施例中,请求获取模块10还用于接收对指定数据表的读数据请求,读数据请求中包括关键字。
哈希表查找模块20还用于在指定数据表对应的存储于内存的哈希表中查找读数据请求中包括的关键字。
本实施例中,如图10所示,上述数据库的数据操作请求的处理***还包括哈希表读取模块130和读结果返回模块140,其中:
哈希表读取模块130,用于若在哈希表中查找到读数据请求中包括的关键字,则在哈希表中读取读数据请求中包括的关键字对应的值。
读结果返回模块140,用于根据对应的值向发送读数据请求的请求方返回数据读取结果。
在一个实施例中,读数据请求中还包括请求读取的列名。读结果返回模块140,用于获取对应的值中请求读取的列名对应的数据,并向发送读数据请求的请求方返回获取的关键字以及请求读取的列名对应的数据。
在一个实施例中,数据表查找模块70还用于若未在哈希表中查找到读数据请求中包括的关键字,则在存储于数据库的数据表中查找读数据请求中包括的关键字。
数据表读取模块80还用于若在数据表中查找到读数据请求中包括的关键字,则读取数据表中与读数据请求中包括的关键字对应的值。
哈希表更新模块30还用于将读数据请求中包括的关键字以及对应的值写入哈希表中。
读结果返回模块140还用于根据对应的值向发送读数据请求的请求方返回处理结果。
上述数据库的数据操作请求的处理方法和***,在接收到对指定数据表的写数据请求后,在指定数据表对应的存储于内存的哈希表中查找写数据请求中包括的关键字,若查找到,则在哈希表中对关键字对应的值进行相应的更新,为了保证存储于内存的哈希表与存储于数据库的数据表的数据一致性,生成可实现对哈希表的操作的SQL语句,将该SQL语句***到指定数据表的更新语句队列中,以方便后续对指定数据表进行与哈希表相同的操作;上述方法和***,可在指定数据表对应的存储于内存的哈希表中进行相应的数据更新操作之后,而不需要在存储于数据库的数据表中进行该数据更新操作之后,即可向请求方返回处理结果,由于对存储于内存的哈希表进行数据更新操作的速度远远大于对存储于数据库的数据表进行数据更新操作的速度,因此,可大大提高对数据库的数据操作请求的响应速度。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据库的数据操作请求的处理方法,包括以下步骤:
接收对指定数据表的写数据请求,所述写数据请求中包括关键字以及关键字对应的更新内容;
在所述数据表对应的存储于内存的哈希表中查找所述写数据请求中包括的关键字;
若在所述哈希表中查找到所述写数据请求中包括的关键字,则在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;
生成可实现对所述哈希表的操作的SQL语句,将所述SQL语句***到所述数据表的更新语句队列中;
向发送所述写数据请求的请求方返回处理结果。
2.根据权利要求1所述的数据库的数据操作请求的处理方法,其特征在于,所述方法还包括:
若未在所述哈希表中查找到所述写数据请求中包括的关键字,则在存储于数据库的所述数据表中查找所述写数据请求中包括的关键字;
若在所述数据表中查找到所述写数据请求中包括的关键字,则读取所述数据表中与所述写数据请求中包括的关键字对应的值,将所述写数据请求中包括的关键字以及所述对应的值写入所述哈希表中,并在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;
若未在所述数据表中查找到所述写数据请求中包括的关键字,则根据所述更新内容生成所述写数据请求中包括的关键字对应的值,将所述写数据请求中包括的关键字以及所述生成的值写入所述哈希表中。
3.根据权利要求1或2所述的数据库的数据操作请求的处理方法,其特征在于,所述方法还包括:
在所述生成可实现对所述哈希表的操作的SQL语句之后,将所述SQL语句写入到日志文件中;
根据所述更新语句队列修改所述数据表;
当所述更新语句队列中的SQL语句被破坏后,根据所述日志文件修改所述数据表。
4.根据权利要求1所述的数据库的数据操作请求的处理方法,其特征在于,所述方法还包括:
接收对指定数据表的读数据请求,所述读数据请求中包括关键字;
在所述数据表对应的存储于内存的哈希表中查找所述读数据请求中包括的关键字;
若在所述哈希表中查找到所述读数据请求中包括的关键字,则在所述哈希表中读取所述读数据请求中包括的关键字对应的值;
根据所述对应的值向发送所述读数据请求的请求方返回处理结果。
5.根据权利要求4所述的数据库的数据操作请求的处理方法,其特征在于,所述方法还包括:
若未在所述哈希表中查找到所述读数据请求中包括的关键字,则在存储于数据库的所述数据表中查找所述读数据请求中包括的关键字;
若在所述数据表中查找到所述读数据请求中包括的关键字,则读取所述数据表中与所述读数据请求中包括的关键字对应的值,将所述写数据请求中包括的关键字以及所述对应的值写入所述哈希表中,根据所述对应的值向发送所述读数据请求的请求方返回处理结果。
若未在所述数据表中查找到所述读数据请求中包括的关键字,则向发送所述读数据请求的请求方返回表示查找失败的结果。
6.一种数据库的数据操作请求的处理***,其特征在于,包括:
请求获取模块,用于接收对指定数据表的写数据请求,所述写数据请求中包括关键字以及关键字对应的更新内容;
哈希表查找模块,用于在所述数据表对应的存储于内存的哈希表中查找所述写数据请求中包括的关键字;
哈希表更新模块,用于若在所述哈希表中查找到所述写数据请求中包括的关键字,则在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;
SQL语句生成模块,用于生成可实现对所述哈希表的操作的SQL语句;
队列写入模块,用于将所述SQL语句***到所述数据表的更新语句队列中;
写结果返回模块,用于向发送所述写数据请求的请求方返回处理结果。
7.根据权利要求6所述的数据库的数据操作请求的处理***,其特征在于,所述***还包括:
数据表查找模块,用于若未在所述哈希表中查找到所述写数据请求中包括的关键字,则在存储于数据库的所述数据表中查找所述写数据请求中包括的关键字;
数据表读取模块,用于若在所述数据表中查找到所述写数据请求中包括的关键字,则读取所述数据表中与所述写数据请求中包括的关键字对应的值;
所述哈希表更新模块还用于将所述写数据请求中包括的关键字以及所述对应的值写入所述哈希表中,并在所述哈希表中根据所述更新内容修改所述写数据请求中包括的关键字对应的记录;
所述哈希表更新模块还用于若未在所述数据表中查找到所述写数据请求中包括的关键字,则根据所述更新内容生成所述写数据请求中包括的关键字对应的值,将所述写数据请求中包括的关键字以及所述生成的值写入所述哈希表中。
8.根据权利要求6或7所述的数据库的数据操作请求的处理***,其特征在于,所述***还包括:
日志文件写入模块,用于在所述生成可实现对所述哈希表的操作的SQL语句之后,将所述SQL语句写入到日志文件中;
第一数据表更新模块,用于根据所述更新语句队列修改所述数据表;
第二数据表更新模块,用于当所述更新语句队列中的SQL语句被破坏后,根据所述日志文件修改所述数据表。
9.根据权利要求6所述的数据库的数据操作请求的处理***,其特征在于,所述请求获取模块还用于接收对指定数据表的读数据请求,所述读数据请求中包括关键字;
所述哈希表查找模块还用于在所述数据表对应的存储于内存的哈希表中查找所述读数据请求中包括的关键字;
所述***还包括:
哈希表读取模块,用于若在所述哈希表中查找到所述读数据请求中包括的关键字,则在所述哈希表中读取与所述读数据请求中包括的关键字对应的值;
读结果返回模块,用于根据所述对应的值向发送所述读数据请求的请求方返回数据读取结果。
10.根据权利要求9所述的数据库的数据操作请求的处理***,其特征在于,所述数据表查找模块还用于若未在所述哈希表中查找到所述读数据请求中包括的关键字,则在存储于数据库的所述数据表中查找所述读数据请求中包括的关键字;
所述数据表读取模块还用于若在所述数据表中查找到所述读数据请求中包括的关键字,则读取所述数据表中与所述读数据请求中包括的关键字对应的值;
所述哈希表更新模块还用于将所述读数据请求中包括的关键字以及所述对应的值写入所述哈希表中;
所述读结果返回模块还用于根据所述对应的值向发送所述读数据请求的请求方返回处理结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410419664.1A CN105373541B (zh) | 2014-08-22 | 2014-08-22 | 数据库的数据操作请求的处理方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410419664.1A CN105373541B (zh) | 2014-08-22 | 2014-08-22 | 数据库的数据操作请求的处理方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105373541A true CN105373541A (zh) | 2016-03-02 |
CN105373541B CN105373541B (zh) | 2019-03-22 |
Family
ID=55375748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410419664.1A Active CN105373541B (zh) | 2014-08-22 | 2014-08-22 | 数据库的数据操作请求的处理方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105373541B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105956166A (zh) * | 2016-05-19 | 2016-09-21 | 北京京东尚科信息技术有限公司 | 数据库读写方法和读写装置 |
CN106446272A (zh) * | 2016-10-20 | 2017-02-22 | 北京百度网讯科技有限公司 | 用于发送数据的方法和装置 |
CN106682082A (zh) * | 2016-11-23 | 2017-05-17 | 青岛海信移动通信技术股份有限公司 | 一种数据库的写方法和装置 |
CN106815327A (zh) * | 2016-12-29 | 2017-06-09 | 南京欣网互联信息技术有限公司 | 一种用于移动运营数据资源更新方法 |
CN106899654A (zh) * | 2016-08-10 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种序列值生成方法、装置及*** |
CN106933657A (zh) * | 2017-03-10 | 2017-07-07 | 中国银行股份有限公司 | 数据库死锁处理方法及装置 |
CN107357794A (zh) * | 2016-05-10 | 2017-11-17 | 北京京东尚科信息技术有限公司 | 优化键值数据库的数据存储结构的方法和装置 |
CN109471857A (zh) * | 2018-09-25 | 2019-03-15 | 中国平安人寿保险股份有限公司 | 基于sql语句的数据修改方法、装置及存储介质 |
CN109597818A (zh) * | 2018-11-28 | 2019-04-09 | 优刻得科技股份有限公司 | 数据更新方法、装置、存储介质和设备 |
CN110222028A (zh) * | 2019-04-30 | 2019-09-10 | 重庆小雨点小额贷款有限公司 | 一种数据管理方法、装置、设备及存储介质 |
CN111125129A (zh) * | 2019-12-10 | 2020-05-08 | 珠海格力电器股份有限公司 | 数据处理方法和装置、存储介质及处理器 |
CN111522827A (zh) * | 2020-04-08 | 2020-08-11 | 北京奇艺世纪科技有限公司 | 一种数据更新方法、装置和电子设备 |
CN111581212A (zh) * | 2020-05-06 | 2020-08-25 | 深圳市朱墨科技有限公司 | 关系型数据库的数据存储方法、***、服务器和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040065464A (ko) * | 2003-01-14 | 2004-07-22 | 삼성전자주식회사 | 데이터베이스 관리시스템의 이중화 장치 및 방법 |
CN101364217A (zh) * | 2007-08-08 | 2009-02-11 | 华为技术有限公司 | 数据库中数据维护方法、设备及其*** |
CN101369283A (zh) * | 2008-09-25 | 2009-02-18 | 中兴通讯股份有限公司 | 一种内存数据库与物理数据库间的数据同步方法及*** |
CN101510209A (zh) * | 2009-03-30 | 2009-08-19 | 北京金山软件有限公司 | 实现实时检索的方法、***和服务器 |
CN101587476A (zh) * | 2008-05-22 | 2009-11-25 | 中兴通讯股份有限公司 | 一种实现分布式存储的内存数据库***及应用 |
CN102426611A (zh) * | 2012-01-13 | 2012-04-25 | 广州从兴电子开发有限公司 | 一种数据库同步方法及装置 |
CN102999522A (zh) * | 2011-09-15 | 2013-03-27 | 阿里巴巴集团控股有限公司 | 一种数据存储方法和装置 |
-
2014
- 2014-08-22 CN CN201410419664.1A patent/CN105373541B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040065464A (ko) * | 2003-01-14 | 2004-07-22 | 삼성전자주식회사 | 데이터베이스 관리시스템의 이중화 장치 및 방법 |
CN101364217A (zh) * | 2007-08-08 | 2009-02-11 | 华为技术有限公司 | 数据库中数据维护方法、设备及其*** |
CN101587476A (zh) * | 2008-05-22 | 2009-11-25 | 中兴通讯股份有限公司 | 一种实现分布式存储的内存数据库***及应用 |
CN101369283A (zh) * | 2008-09-25 | 2009-02-18 | 中兴通讯股份有限公司 | 一种内存数据库与物理数据库间的数据同步方法及*** |
CN101510209A (zh) * | 2009-03-30 | 2009-08-19 | 北京金山软件有限公司 | 实现实时检索的方法、***和服务器 |
CN102999522A (zh) * | 2011-09-15 | 2013-03-27 | 阿里巴巴集团控股有限公司 | 一种数据存储方法和装置 |
CN102426611A (zh) * | 2012-01-13 | 2012-04-25 | 广州从兴电子开发有限公司 | 一种数据库同步方法及装置 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107357794A (zh) * | 2016-05-10 | 2017-11-17 | 北京京东尚科信息技术有限公司 | 优化键值数据库的数据存储结构的方法和装置 |
CN107357794B (zh) * | 2016-05-10 | 2020-06-05 | 北京京东尚科信息技术有限公司 | 优化键值数据库的数据存储结构的方法和装置 |
CN105956166A (zh) * | 2016-05-19 | 2016-09-21 | 北京京东尚科信息技术有限公司 | 数据库读写方法和读写装置 |
CN106899654B (zh) * | 2016-08-10 | 2020-02-07 | 阿里巴巴集团控股有限公司 | 一种序列值生成方法、装置及*** |
CN106899654A (zh) * | 2016-08-10 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种序列值生成方法、装置及*** |
CN106446272A (zh) * | 2016-10-20 | 2017-02-22 | 北京百度网讯科技有限公司 | 用于发送数据的方法和装置 |
CN106682082A (zh) * | 2016-11-23 | 2017-05-17 | 青岛海信移动通信技术股份有限公司 | 一种数据库的写方法和装置 |
CN106815327A (zh) * | 2016-12-29 | 2017-06-09 | 南京欣网互联信息技术有限公司 | 一种用于移动运营数据资源更新方法 |
CN106933657A (zh) * | 2017-03-10 | 2017-07-07 | 中国银行股份有限公司 | 数据库死锁处理方法及装置 |
CN106933657B (zh) * | 2017-03-10 | 2020-12-04 | 中国银行股份有限公司 | 数据库死锁处理方法及装置 |
CN109471857A (zh) * | 2018-09-25 | 2019-03-15 | 中国平安人寿保险股份有限公司 | 基于sql语句的数据修改方法、装置及存储介质 |
CN109471857B (zh) * | 2018-09-25 | 2023-07-25 | 中国平安人寿保险股份有限公司 | 基于sql语句的数据修改方法、装置及存储介质 |
CN109597818A (zh) * | 2018-11-28 | 2019-04-09 | 优刻得科技股份有限公司 | 数据更新方法、装置、存储介质和设备 |
CN110222028A (zh) * | 2019-04-30 | 2019-09-10 | 重庆小雨点小额贷款有限公司 | 一种数据管理方法、装置、设备及存储介质 |
CN110222028B (zh) * | 2019-04-30 | 2022-11-15 | 重庆小雨点小额贷款有限公司 | 一种数据管理方法、装置、设备及存储介质 |
CN111125129A (zh) * | 2019-12-10 | 2020-05-08 | 珠海格力电器股份有限公司 | 数据处理方法和装置、存储介质及处理器 |
CN111522827A (zh) * | 2020-04-08 | 2020-08-11 | 北京奇艺世纪科技有限公司 | 一种数据更新方法、装置和电子设备 |
CN111522827B (zh) * | 2020-04-08 | 2023-09-05 | 北京奇艺世纪科技有限公司 | 一种数据更新方法、装置和电子设备 |
CN111581212A (zh) * | 2020-05-06 | 2020-08-25 | 深圳市朱墨科技有限公司 | 关系型数据库的数据存储方法、***、服务器和存储介质 |
CN111581212B (zh) * | 2020-05-06 | 2024-05-17 | 深圳市朱墨科技有限公司 | 关系型数据库的数据存储方法、***、服务器和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105373541B (zh) | 2019-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105373541A (zh) | 数据库的数据操作请求的处理方法和*** | |
US11334544B2 (en) | Method, apparatus, device and medium for storing and querying data | |
US8924365B2 (en) | System and method for range search over distributive storage systems | |
CN106407360B (zh) | 一种数据的处理方法及装置 | |
CN107977396B (zh) | 一种KeyValue数据库的数据表的更新方法与表数据更新装置 | |
US11216516B2 (en) | Method and system for scalable search using microservice and cloud based search with records indexes | |
JP6982049B2 (ja) | インデックスを管理するための方法、装置、設備及び記憶媒体 | |
CN111737443B (zh) | 答案文本的处理方法和装置、关键文本的确定方法 | |
CN114564620A (zh) | 图数据存储方法、***及计算机设备 | |
CN107145538B (zh) | 表格数据查询方法、装置与*** | |
CN108073595B (zh) | 一种在olap数据库实现数据更新和快照的方法及装置 | |
CN106874329A (zh) | 数据库表索引的实现方法和装置 | |
CN101639851A (zh) | 一种数据存储、查询的方法和装置 | |
CN113704267A (zh) | 基于ElasticSearch的数据查询方法、***、设备及存储介质 | |
CN109739854A (zh) | 一种数据存储方法及装置 | |
CN101853278A (zh) | 数据存储***应用方法 | |
CN112434062A (zh) | 准实时数据处理方法、装置、服务器及存储介质 | |
CN113918535A (zh) | 一种数据读取方法、装置、设备及存储介质 | |
CN114840497A (zh) | 一种数据库的行迁移预处理方法、***、装置及存储介质 | |
CN114218277A (zh) | 一种关系数据库的高效查询方法和装置 | |
CN113127660A (zh) | 一种时序图形数据库存储方法及装置 | |
CN112685557A (zh) | 可视化信息资源管理方法及装置 | |
US9323753B2 (en) | Method and device for representing digital documents for search applications | |
CN115168409B (zh) | 数据库分表的数据查询方法、装置和计算机设备 | |
CN116304453A (zh) | 一种信息处理方法、装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |