发明名称 一种数据库的读写方法及系统
摘要 本发明实施例公开了一种数据库读写方法及系统,该方法将记录数据根据主关键字横向切分为多个数据段,每一个数据段保存为一份写入副本和对应的多份读取副本,其中写入副本采用行存储形式进行存储,优化了数据库的写入性能;读取副本采用列存储形式进行存储,各读取副本中数据采用不同的方式组织,优化了数据库的读取性能。该方法还建立了全局索引和本地索引,在进行数据写入或读取操作时,能够快速定位待写入数据或待读取数据的操作位置。采用本发明的方法实施例或者系统实施例,不仅能够实现数据的快速写入,还能够实现数据的快速读取。
申请公布号 CN102999519A 申请公布日期 2013.03.27
申请号 CN201110273321.5 申请日期 2011.09.15
申请人 上海盛付通电子商务有限公司 发明人 邓明;潘佳伟;邢钦华
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 北京集佳知识产权代理有限公司 11227 代理人 逯长明;王宝筠
主权项 一种数据库的读写方法,其特征在于,将记录数据根据主关键字横向切分为多个数据段,每一个数据段保存为一份写入副本和对应的多份读取副本,其中写入副本采用行存储形式进行存储,读取副本采用列存储形式进行存储,各读取副本中数据采用不同的方式组织,该方法包括:接收客户端发起的访问请求;在访问请求是数据写入操作的情况下:根据元数据节点中保存的全局索引和访问请求中的主关键字确定待写入数据需写入的数据区间以及与该数据区间对应的写入副本节点,所述全局索引用于指示主关键字与数据区间以及与该数据区间对应的写入副本节点之间的对应关系;向待写入数据需要写入的写入副本节点发起操作请求,所述写入副本节点将更新数据追加写入其增量块中,所述增量块为记录更新数据的磁盘文件,所述更新数据为预置条数内待写入数据的集合;在访问请求是数据读取操作的情况下:判断访问请求中是否有主关键字,如果有主关键字,则根据元数据节点中保存的全局索引和所述主关键字确定待读取数据所在的数据区间以及该数据区间对应的读取副本节点,并在有其他过滤条件的情况下,由所述读取副本节点确定一个与其他过滤条件最匹配的本地索引,在没有其他过滤条件的情况下,则任意选定一个本地索引,所述本地索引用于指示关键词与存储块的对应关系,所述存储块为存储数据的最小单位快;如果没有主关键字,则将访问请求发送至当前元数据节点下所有的数据区间,并在有其他过滤条件的情况下,由所述所有的数据区间对应的读取副本节点确定一个与其他过滤条件最匹配的本地索引,在没有其他过滤条件的情况下,则任意选定一个本地索引;确定所述待读取数据可能位于的存储块及与所述存储块对应的读取副本节点,并将所述访问请求发送给各个读取副本节点;所述读取副本节点判断其增量块中是否存在所述待读取数据的更新数据,如果是,就从增量块中读取待读取数据,如果否,则从所述本地索引指示的存储块中读取待读取数据,所述增量块为记录更新数据的磁盘文件。
地址 201203 上海市浦东新区张江高科技园区郭守敬路356号3幢201室