基于MySQL数据库的大文本字段存储方法和系统技术方案

技术编号:18426597 阅读:13 留言:0更新日期:2018-07-12 02:03
本发明专利技术公开了一种基于MySQL数据库的大文本字段存储方法和系统,其中,方法包括:根据支持的压缩算法对获取的待存储的原始数据进行压缩处理,得到二进制字节数组;并采用编码工具对二进制字节数组进行编码,得到对应的字符串文本;最后获取每个压缩算法对应的唯一编码,将唯一编码按照预设插入位置插入字符串文本中,拼接得到大文本字段,并将大文本字段存储至数据库中。本申请通过压缩加密再存储的形式,能有效的降低存储空间,而且由于重新编码对原始数据起到加密保护的作用,并以特定的唯一编码按照预设插入位置插入字符串文本中,最终生成存储的大文本字段,提高了存储安全性。

Large text field storage method and system based on MySQL database

The invention discloses a method and system for storing large text fields based on MySQL database, in which the method includes: compressing the raw data to be stored and obtaining a binary byte array based on the supported compression algorithm, and encoding the two byte array by the encoding tool. String text; finally, obtain the unique encoding corresponding to each compression algorithm, insert the unique encoding into the string text according to the preset insertion position, splice the large text fields and store the large text fields into the database. This application can effectively reduce the storage space by compressing the encrypted and restoring form, and because of the function of encrypting the encryption protection to the original data, and inserting the text into the string text according to the preset insertion position with the specific unique encoding, the storage security is improved.

【技术实现步骤摘要】
基于MySQL数据库的大文本字段存储方法和系统
本专利技术涉及数据处理
,尤其涉及一种基于MySQL数据库的大文本字段存储方法和系统。
技术介绍
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,使得其应用广泛。目前,在关联数据库中,通常采用直接存储的方式保存大文本字段的数据,而由于一些数据的大文本字段之间存在相同的字段,比如,合同样式文本、商品介绍等数据。这种采用直接存储的方式保存会带来大量数据冗余,不仅会浪费数据库的存储空间,而且可以从数据库中直接得到存储的内容安全性差。
技术实现思路
本专利技术的目的是提供一种基于MySQL数据库的大文本字段存储方法和系统,通过压缩加密再存储的形式,能有效的降低存储空间,而且由于重新编码对原始数据起到加密保护的作用,并以特定的唯一编码按照预设插入位置插入字符串文本中,最终生成存储的大文本字段,提高了存储安全性。本专利技术提供了一种基于MySQL数据库的大文本字段存储方法,包括以下步骤;获取待存储的原始数据,根据支持的压缩算法对所述原始数据进行压缩处理,得到二进制字节数组;采用编码工具对所述二进制字节数组进行编码,得到对应的字符串文本;获取每个压缩算法对应的唯一编码,将所述唯一编码按照预设插入位置插入所述字符串文本中,拼接得到大文本字段,并将所述大文本字段存储至数据库中。作为一种可实施方式,本专利技术提供的基于MySQL数据库的大文本字段存储方法还包括以下步骤;在获取待存储的原始数据之前,为每个压缩算法预先设置对应的唯一编码。作为一种可实施方式,所述压缩算法为JDKGZIP压缩算法、JDKdeflate压缩算法、LZ4压缩算法以及Snappy压缩算法的一种。作为一种可实施方式,本专利技术提供的基于MySQL数据库的大文本字段存储方法还包括以下步骤;读取存储于所述数据库中的大文本字段,并依据压缩算法、唯一编码以及编码工具对所述大文本字段解码得到原始数据。作为一种可实施方式,所述依据压缩算法、唯一编码以及编码工具对所述大文本字段解码得到原始数据包括以下步骤;读取所述大文本字段中预设插入位置的唯一编码,并将所述唯一编码从所述大文本字段中剔除,根据编码工具对剔除结果进行解码,得到对应的字符串文本;根据所述唯一编码获取对应的解压算法对所述字符串文本进行还原,得到原始数据。相应的,本专利技术还提供一种基于MySQL数据库的大文本字段存储系统,其特征在于,包括获取压缩模块、编码模块以及拼接存储模块;所述获取压缩模块,用于获取待存储的原始数据,根据支持的压缩算法对所述原始数据进行压缩处理,得到二进制字节数组;所述编码模块,用于采用编码工具对所述二进制字节数组进行编码,得到对应的字符串文本;所述拼接存储模块,用于获取每个压缩算法对应的唯一编码,将所述唯一编码按照预设插入位置插入所述字符串文本中,拼接得到大文本字段,并将所述大文本字段存储至数据库中。作为一种可实施方式,本专利技术提供的基于MySQL数据库的大文本字段存储系统还包括设置模块;所述设置模块,用于在获取待存储的原始数据之前,为每个压缩算法预先设置对应的唯一编码。作为一种可实施方式,所述获取压缩模块中的压缩算法为JDKGZIP压缩算法、JDKdeflate压缩算法、LZ4压缩算法以及Snappy压缩算法的一种。作为一种可实施方式,本专利技术提供的基于MySQL数据库的大文本字段存储系统还包括读取解码模块;所述读取解码模块,用于读取存储于所述数据库中的大文本字段,并依据压缩算法、唯一编码以及编码工具对所述大文本字段解码得到原始数据。作为一种可实施方式,所述读取解码模块包括读取单元和还原单元;所述读取单元,用于读取所述大文本字段中预设插入位置的唯一编码,并将所述唯一编码从所述大文本字段中剔除,根据编码工具对剔除结果进行解码,得到对应的字符串文本;所述还原单元,用于根据所述唯一编码获取对应的解压算法对所述字符串文本进行还原,得到原始数据。与现有技术相比,本技术方案具有以下优点:本专利技术提供的基于MySQL数据库的大文本字段存储方法和系统,其中,方法:包括根据支持的压缩算法对获取的待存储的原始数据进行压缩处理,得到二进制字节数组;并采用编码工具对二进制字节数组进行编码,得到对应的字符串文本;最后获取每个压缩算法对应的唯一编码,将唯一编码按照预设插入位置插入字符串文本中,拼接得到大文本字段,并将大文本字段存储至数据库中。本申请通过压缩加密再存储的形式,能有效的降低存储空间,而且由于重新编码对原始数据起到加密保护的作用,并以特定的唯一编码按照预设插入位置插入字符串文本中,最终生成存储的大文本字段,提高了存储安全性。附图说明图1为本专利技术实施例一提供的基于MySQL数据库的大文本字段存储方法的流程示意图;图2为本专利技术实施例二提供的基于MySQL数据库的大文本字段存储系统的结构示意图;图3为图2中读取解码模块的结构示意图。图中:100、获取压缩模块;200、编码模块;300、拼接存储模块;400、读取解码模块;410、读取单元;420、还原单元;500、设置模块。具体实施方式以下结合附图,对本专利技术上述的和另外的技术特征和优点进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术的部分实施例,而不是全部实施例。请参阅图1,本专利技术实施例一提供的基于MySQL数据库的大文本字段存储方法,包括以下步骤;S100、获取待存储的原始数据,根据支持的压缩算法对原始数据进行压缩处理,得到二进制字节数组;S200、采用编码工具对二进制字节数组进行编码,得到对应的字符串文本;S300、获取每个压缩算法对应的唯一编码,将唯一编码按照预设插入位置插入字符串文本中,拼接得到大文本字段,并将大文本字段存储至数据库中。需要说明的是,原始数据可以是已经存储于数据库中的,也可以是新获取的未存储过的数据。如果是已经存储于数据库中的,则需要将原始数据从存储的位置中提取出来,在重新压缩编码加密后再存储回原来的位置。而如果是新获取的待存储的原始数据,则直接对其压缩编码加密,再依据常规的MySQL数据库的保存方式保存至对应的位置。这里的压缩编码加密指的是上述步骤S100-S300的过程。以有效降低所占用的存储空间。于本实施例中,采用的是JDK技术,也就是采用Java语言的软件开发工具包,其主要用于移动设备、嵌入式设备上的java应用程序。那么对应的支持的压缩算法也就是JDK自带压缩算法。当然,也可以采用其他开源框架的压缩算法,并不对支持的压缩算法进行限制。但是需要对每个支持的压缩算法设置一个唯一对应的唯一编码。为每个压缩算法预先设置对应的CODE码,可以是在获取待存储的原始数据之前。比如,可以是0001代表GZIP压缩算法,0002代表DEFLATE压缩算法,0003代表LZ4压缩算法以及0004代表SNAPPY压缩算法等。这里CODE码采用4个字节的数字,当然可以使用其他字符编码来实现。采用的编码工具可以适用Utf-16、Utf-32、Punycode、Base本文档来自技高网...

【技术保护点】
1.一种基于MySQL数据库的大文本字段存储方法,其特征在于,包括以下步骤;获取待存储的原始数据,根据支持的压缩算法对所述原始数据进行压缩处理,得到二进制字节数组;采用编码工具对所述二进制字节数组进行编码,得到对应的字符串文本;获取每个压缩算法对应的唯一编码,将所述唯一编码按照预设插入位置插入所述字符串文本中,拼接得到大文本字段,并将所述大文本字段存储至数据库中。

【技术特征摘要】
1.一种基于MySQL数据库的大文本字段存储方法,其特征在于,包括以下步骤;获取待存储的原始数据,根据支持的压缩算法对所述原始数据进行压缩处理,得到二进制字节数组;采用编码工具对所述二进制字节数组进行编码,得到对应的字符串文本;获取每个压缩算法对应的唯一编码,将所述唯一编码按照预设插入位置插入所述字符串文本中,拼接得到大文本字段,并将所述大文本字段存储至数据库中。2.如权利要求1所述的基于MySQL数据库的大文本字段存储方法,其特征在于,还包括以下步骤;在获取待存储的原始数据之前,为每个压缩算法预先设置对应的唯一编码。3.如权利要求1所述的基于MySQL数据库的大文本字段存储方法,其特征在于,所述压缩算法为JDKGZIP压缩算法、JDKdeflate压缩算法、LZ4压缩算法以及Snappy压缩算法的一种。4.如权利要求1所述的基于MySQL数据库的大文本字段存储方法,其特征在于,还包括以下步骤;读取存储于所述数据库中的大文本字段,并依据压缩算法、唯一编码以及编码工具对所述大文本字段解码得到原始数据。5.如权利要求4所述的基于MySQL数据库的大文本字段存储方法,其特征在于,所述依据压缩算法、唯一编码以及编码工具对所述大文本字段解码得到原始数据包括以下步骤;读取所述大文本字段中预设插入位置的唯一编码,并将所述唯一编码从所述大文本字段中剔除,根据编码工具对剔除结果进行解码,得到对应的字符串文本;根据所述唯一编码获取对应的解压算法对所述字符串文本进行还原,得到原始数据。6.一种基于MySQL数据库的大文本字段存储系统,其特征在于,包括获取压...

【专利技术属性】
技术研发人员:汪沛然
申请(专利权)人:政采云有限公司
类型:发明
国别省市:浙江,33

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

1