本发明涉及数据压缩存储,具体涉及一种售酒小程序内用户交易信息压缩存储方法。
背景技术:
1、售酒小程序内用户交易信息通常包含大量的数据,如交易时间、交易金额、商品编号等,为了确保交易可溯源,需要对用户交易信息数据进行长期存储。由于用户交易信息数据的数据量大,为了减少存储空间节省存储成本,需要对用户交易信息数据进行压缩。
2、现有的压缩算法如lz编码边构建压缩字典边进行压缩,对编码对象利用编码对象中子串的索引以及编码对象末位的字符的码字进行编码,压缩效率取决于编码对象末位字符的码字的长度,压缩效率有限。
技术实现思路
1、本发明提供一种售酒小程序内用户交易信息压缩存储方法,以解决现有的问题。
2、本发明的一种售酒小程序内用户交易信息压缩存储方法采用如下技术方案:
3、本发明一个实施例提供了一种售酒小程序内用户交易信息压缩存储方法,该方法包括以下步骤:
4、采集售酒小程序内的用户交易信息数据,将用户交易信息数据转换为待编码序列;
5、根据待编码序列中的字符构建字符共生表;
6、根据字符共生表预测待编码序列中每种字符的末位频次;根据末位频次获取每种字符的末位频率;
7、根据每种字符的末位频率对待编码序列进行压缩,得到压缩数据;
8、对压缩数据进行存储。
9、优选的,所述根据待编码序列中的字符构建字符共生表,包括的具体步骤如下:
10、获取待编码序列中每个字符与相邻字符构成的字符串在待编码序列中出现的次数;将待编码序列中出现的每种字符作为行索引,将待编码序列中出现的每种字符作为列索引,根据行索引对应的字符与列索引对应的字符构成的字符串在待编码序列中出现的次数,构建字符共生表,所述字符共生表中每一行每一列中的元素表示以该行的行索引对应的字符为第一个字符,以该列的列索引对应的字符为第二个字符,构成的字符串在待编码序列中出现的次数。
11、优选的,所述根据字符共生表预测待编码序列中每种字符的末位频次,包括的具体步骤如下:
12、
13、其中,为第种字符的末位频次;为字符的种类数;为字符共生表中第行第列的元素;为字符共生表中第行第列的元素;为以自然常数为底的指数函数;是以自然常数为底的对数函数。
14、优选的,所述根据末位频次获取每种字符的末位频率,包括的具体步骤如下:
15、将每种字符的末位频次除以所有种字符的末位频次之和,得到每种字符的末位频率。
16、优选的,所述根据每种字符的末位频率对待编码序列进行压缩,得到压缩数据,包括的具体步骤如下:
17、根据每种字符的末位频率构建霍夫曼树,将每种字符在霍夫曼树中的编码作为每种字符的码字;根据每种字符的码字,利用lz编码的方法对待编码序列进行压缩,得到压缩数据。
18、优选的,所述将用户交易信息数据转换为待编码序列,包括的具体步骤如下:
19、将用户交易信息数据中非字母且非数字类型的数据转换为字母、数字类型,将转换之后仅包含字母或数字的用户交易信息数据作为待编码序列。
20、本发明的技术方案的有益效果是:本发明采集售酒小程序内的用户交易信息数据,将用户交易信息数据转换为待编码序列,根据待编码序列中的字符构建字符共生表,用来表示待编码序列中字符串的分布规律,根据字符共生表预测待编码序列中每种字符的末位频次,进而得到每种字符作为lz编码过程中编码对象的末位的频率,根据每种字符的末位频率为每种字符分配码字,进而对待编码序列进行压缩,得到压缩数据,本发明在对待编码序列相较于lz编码,实现了编码对象末位字符的进一步压缩,提高了压缩效率,相较于lz编码压缩效率更高。
1.一种售酒小程序内用户交易信息压缩存储方法,其特征在于,该方法包括以下步骤:
2.根据权利要求1所述的一种售酒小程序内用户交易信息压缩存储方法,其特征在于,所述根据待编码序列中的字符构建字符共生表,包括的具体步骤如下:
3.根据权利要求1所述的一种售酒小程序内用户交易信息压缩存储方法,其特征在于,所述根据字符共生表预测待编码序列中每种字符的末位频次,包括的具体步骤如下:
4.根据权利要求1所述的一种售酒小程序内用户交易信息压缩存储方法,其特征在于,所述根据末位频次获取每种字符的末位频率,包括的具体步骤如下:
5.根据权利要求1所述的一种售酒小程序内用户交易信息压缩存储方法,其特征在于,所述根据每种字符的末位频率对待编码序列进行压缩,得到压缩数据,包括的具体步骤如下:
6.根据权利要求1所述的一种售酒小程序内用户交易信息压缩存储方法,其特征在于,所述将用户交易信息数据转换为待编码序列,包括的具体步骤如下: