当前位置: 首页 > 专利查询>李宗平专利>正文

一种基于文件存储的SQL检索方法技术

技术编号:20285232 阅读:39 留言:0更新日期:2019-02-10 17:49
本发明专利技术公开了一种基于文件存储的SQL检索方法,涉及数据检索领域。该方法是对数据加密的检索,首先将标准的SQL语句进行解析,对解析得到的字段进行重新编码,然后,对该编码过的字段创建编码索引,并按照编码索引将对应的字段内容插入到文件系统中,或从文件系统中查询字段内容,而字段内容本身可以为加密的字段,所以,本发明专利技术提供的这种方法打破了传统的检索思维,不再使用传统的加密字段创建索引,而是将字段内容重新编码后创建对应的编码索引,使得索引内容与字段内容无直接关系,保证了字段内容的安全性。

A Method of SQL Retrieval Based on File Storage

The invention discloses an SQL retrieval method based on file storage, which relates to the field of data retrieval. This method is to retrieve data encryption. Firstly, the standard SQL statement is parsed, and the parsed field is re-coded. Then, the coded field is created, and the corresponding field content is inserted into the file system or queried from the file system according to the coded index. The field content itself can be encrypted field. The method provided by the invention breaks the traditional retrieval thinking and no longer uses the traditional encrypted field to create an index, but creates a corresponding encoding index after re-encoding the field content, which makes the index content have no direct relationship with the field content and ensures the security of the field content.

【技术实现步骤摘要】
一种基于文件存储的SQL检索方法
本专利技术涉及数据检索领域,尤其涉及一种基于文件存储的SQL检索方法。
技术介绍
市场上对文件检索的工具比较多,但是,这类检索工具可以检索的文件内容大多数都是以明文形式存在于文件系统中。明文存放方式无疑是对拥有钥匙的用户(包括管理员,黑客)完全透明,管理员(内鬼)和黑客可以对数据进行下载及窜改,并抹掉操作日志,造成用户信息或用户重要信息的泄漏。目前,文件检索比较流利之一的工具有elasticsearch,对插入的数据会做索引,查询的时候,根据索引检索文件,同时也支持SQL语句的检索,但都是以明文的方法进行检索。但是,这种检索方式,不能保证数据的安全性。为了用户的重要信息不被泄漏及窜改,企业会对用户的重要信息做加密,例如用户的密码做md5加密。采用这种方式,虽然能够避免用户的信息泄露,但是,这些被加密的数据都不会用做检索条件去查询。因此,目前,市场还没有以完全密文方式存储的文件,更没有以密文方式基于SQL的检索方式。
技术实现思路
本专利技术的目的在于提供一种基于文件存储的SQL检索方法,从而解决现有技术中存在的前述问题。为了实现上述目的,本专利技术采用的技术方案如下:一种基于文件存储的SQL检索方法,包括如下步骤:S1,对标准SQL语句进行解析,得到SQL的关键字和字段值;S2,对解析得到的SQL的字段值重新编码,得到重新编码的字段值;S3,判断SQL的关键字,如果SQL的关键字为INSERT,则执行S4-S5,如果SQL的关键字为SELECT,则执行S6-S7;S4,对重新编码的字段值创建编码索引;S5,将重新编码的字段值加密后插入文件系统,并将文件命名为主键的编码S6,对重新编码的字段值查询编码索引;S7,在文件系统中查询文件名为主键编码的文件。优选地,S2中,所述对解析得到的SQL的字段值重新编码,具体为,建立编码库,利用编码库对解析得到的SQL的字段值重新编码。通过编码库的方式则编码速度更快,升级编码库及动态加载编码库更方便。优选地,S4中,所述创建编码索引,具体为:查找重新编码的字段值对应的索引类型,如果重新编码的字段值没有定义索引或索引类型不支持,则忽略该重新编码的字段值,否则,创建重新编码的字段值对应类型的编码索引。优选地,所述索引类型,包括:字符串索引、数值索引、日期索引、统计索引、日期统计索引和外健索引。优选地,所述字符串索引按照如下方法创建:对字符串进行分拆单个字符,对每一个字符单独创建编码索引,以便支持模糊查询;其它类型的索引按照如下方法创建:直接对内容索引,不进行分拆,不支持模糊查询,只支持精确查询;创建索引的值为文件名,所述文件名为定义表结构中的主键,所述主键为利用编码库编码过的主键。优选地,S6中,所述查询编码索引,具体为:查找重新编码的字段对应的索引类型,如果字段没有建立对应的索引,则不支持查询,如果有,则通过字段索引类型去对应的索引库里查询。优选地,所述查询包括主键查询、模糊查询和/或范围查询,其中,主键查询为直接通过编码查询文件系统;模糊查询为需要通过编码查询多个索引,然后把查询结果进行合并,通过文件系统返回用户。本专利技术的有益效果是:本专利技术实施例提供的基于文件存储的SQL检索方法,该方法是对数据加密的检索,首先将标准的SQL语句进行解析,对解析得到的字段进行重新编码,然后,对该编码过的字段创建编码索引,并按照编码索引将对应的字段内容插入到文件系统中,或从文件系统中查询字段内容,而字段内容本身可以为加密的字段,所以,本专利技术提供的这种方法打破了传统的检索思维,不再使用传统的加密字段创建索引,而是将字段内容重新编码后创建对应的编码索引,使得索引内容与字段内容无直接关系,保证了字段内容的安全性。附图说明图1是本专利技术提供的基于文件存储的SQL检索方法的流程示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,本专利技术实施例提供了一种基于文件存储的SQL检索方法,包括如下步骤:S1,对标准SQL语句进行解析,得到SQL的关键字和字段值;S2,对解析得到的SQL的字段值重新编码,得到重新编码的字段值;S3,判断SQL的关键字,如果SQL的关键字为INSERT,则执行S4-S5,如果SQL的关键字为SELECT,则执行S6-S7;S4,对重新编码的字段值创建编码索引;S5,将重新编码的字段值加密后插入文件系统,并将文件命名为主键的编码S6,对重新编码的字段值查询编码索引;S7,在文件系统中查询文件名为主键编码的文件。上述方法中,插入文件系统的文件名是经过编码的主键,文件内容则是加密的字段内容。而查询文件系统时,则是以文件名直接定位文件位置,返回文件内容。本专利技术提供了一种数据加密的检索方法,这种方法打破了传统的检索思维,不再使用传统的加密字段创建索引,而是将字段内容重新编码后创建对应的编码索引,使得索引内容与字段内容无直接关系,保证了字段内容的安全性。其中,上述方法在实施之前,可以对数据结构进行初始化,初始化的内容包括:定义表结构、字段类型和字段索引类型等。本实施例中,S2中,所述对解析得到的SQL的字段值重新编码,具体可以为,建立编码库,利用编码库对解析得到的SQL的字段值重新编码。上述方法中,通过编码库的方式对字段进行编码,可以使得编码速度更快,升级编码库及动态加载编码库时也会更加方便。本专利技术的一个优选实施例中,S4中,所述创建编码索引,具体可以为:查找重新编码的字段值对应的索引类型,如果重新编码的字段值没有定义索引或索引类型不支持,则忽略该重新编码的字段值,否则,创建重新编码的字段值对应类型的编码索引。其中,所述索引类型,包括:字符串索引、数值索引、日期索引、统计索引、日期统计索引和外健索引。所述字符串索引可以按照如下方法创建:对字符串进行分拆单个字符,对每一个字符单独创建编码索引,以便支持模糊查询;其它类型的索引可以按照如下方法创建:直接对内容索引,不进行分拆,不支持模糊查询,只支持精确查询;创建索引的值为文件名,所述文件名为定义表结构中的主键,所述主键为利用编码库编码过的主键。本专利技术的一个优选实施例中,S6中,所述查询编码索引,具体可以为:查找重新编码的字段对应的索引类型,如果字段没有建立对应的索引,则不支持查询,如果有,则通过字段索引类型去对应的索引库里查询。所述查询可以包括主键查询、模糊查询和/或范围查询,其中,主键查询为直接通过编码查询文件系统;模糊查询为需要通过编码查询多个索引,然后把查询结果进行合并,通过文件系统返回用户。通过采用本专利技术公开的上述技术方案,得到了如下有益的效果:本专利技术实施例提供的基于文件存储的SQL检索方法,该方法是对数据加密的检索,首先将标准的SQL语句进行解析,对解析得到的字段进行重新编码,然后,对该编码过的字段创建编码索引,并按照编码索引将对应的字段内容插入到文件系统中,或从文件系统中查询字段内容,而字段内容本身可以为加密的字段,所以,本专利技术提供的这种方法打破了传统的检索思维,不再使用传统的加密字段创建索引,而是将字段内容重新编码后创建对应的编码索引,使得索引内容与字段内容无本文档来自技高网...

【技术保护点】
1.一种基于文件存储的SQL检索方法,其特征在于,包括如下步骤:S1,对标准SQL语句进行解析,得到SQL的关键字和字段值;S2,对解析得到的SQL的字段值重新编码,得到重新编码的字段值;S3,判断SQL的关键字,如果SQL的关键字为INSERT,则执行S4‑S5,如果SQL的关键字为SELECT,则执行S6‑S7;S4,对重新编码的字段值创建编码索引;S5,将重新编码的字段值加密后插入文件系统,并将文件命名为主键的编码S6,对重新编码的字段值查询编码索引;S7,在文件系统中查询文件名为主键编码的文件。

【技术特征摘要】
1.一种基于文件存储的SQL检索方法,其特征在于,包括如下步骤:S1,对标准SQL语句进行解析,得到SQL的关键字和字段值;S2,对解析得到的SQL的字段值重新编码,得到重新编码的字段值;S3,判断SQL的关键字,如果SQL的关键字为INSERT,则执行S4-S5,如果SQL的关键字为SELECT,则执行S6-S7;S4,对重新编码的字段值创建编码索引;S5,将重新编码的字段值加密后插入文件系统,并将文件命名为主键的编码S6,对重新编码的字段值查询编码索引;S7,在文件系统中查询文件名为主键编码的文件。2.根据权利要求1所述的基于文件存储的SQL检索方法,其特征在于,S2中,所述对解析得到的SQL的字段值重新编码,具体为,建立编码库,利用编码库对解析得到的SQL的字段值重新编码。通过编码库的方式则编码速度更快,升级编码库及动态加载编码库更方便。3.根据权利要求1所述的基于文件存储的SQL检索方法,其特征在于,S4中,所述创建编码索引,具体为:查找重新编码的字段值对应的索引类型,如果重新编码的字段值没有定义索引或索引类型不支持,则忽略该重新编码的字段值,否则,创建重新编码的字...

【专利技术属性】
技术研发人员:李宗平吕颖轩陈继韩雪松
申请(专利权)人:李宗平吕颖轩陈继韩雪松
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1