CN112948386A - 一种针对etl异常数据的简易索引及加密落盘机制 - Google Patents
一种针对etl异常数据的简易索引及加密落盘机制 Download PDFInfo
- Publication number
- CN112948386A CN112948386A CN202110241032.0A CN202110241032A CN112948386A CN 112948386 A CN112948386 A CN 112948386A CN 202110241032 A CN202110241032 A CN 202110241032A CN 112948386 A CN112948386 A CN 112948386A
- Authority
- CN
- China
- Prior art keywords
- data
- index
- information
- page
- compression
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种针对ETL异常数据的简易索引与加密落盘机制,应用于数据ETL运行过程中异常数据落盘,包括建立索引、对数据进行加密压缩与落盘数据查询访问。本发明采用包含全局索引、页索引、行索引,对落盘数据进行简易的索引,使得查询这些落盘数据的效率得到了极大提高,即使落盘数据数据量很大的情景下,也能很快的查询到目标数据;采用简易数据压缩加密方式,包含位移压缩、字典压缩、位图压缩,对数据进行压缩的同时也对数据本身进行了加密,防止明文数据导致数据信息泄露。
Description
技术领域
本发明属于大数据存储领域,尤其涉及一种针对ETL异常数据的简易索引及加密落盘机制。
背景技术
在ETL(Extract-Transform-Load,数据采集、数据转换、数据加载)模型设计时,总是试图涵盖所有类型数据和特殊情况数据,但是面对海量数据源时,难免会有些设计不合理导致的异常数据,为了方便业务人员查看,这部分异常数据需要落盘。
在当前的大数据ETL过程中,即使设计人员认真调研,详细设计,但是实际使用过程中不可避免的会出现设计与实际场景的不契合问题、网络异常通信问题、业务变更等原因产生数据异常问题,如附图1所示。在生产环境中,这些异常数据不能直接丢弃,一般会落盘,等待业务员进行查看,如超长数据一直是ETL工程师头疼的问题;由于在完整的ETL过程中,涉及的服务器很多,一般这些服务器又复用其他服务,而这些服务又涉及很多使用者,对与很多重要的数据,即使时异常数据也不希望被其他用户查看;另一方面,在ETL软件升级过程中,很多数据正在执行ETL,内存中可能保存数十万甚至上百万条待处理的数据,这些数据需要先落盘出来,再进行软件升级,否则内存中的数十万甚至上百万条数据存在丢失的风险。
现有的落盘方式基本是明文落盘,这样业务员可以直接用文本编辑器即可直接查看异常数据,寻找错误原因,但是一般ETL服务器都是复用服务器,很多人都可以经手使用服务器,这些数据以明文的方式直接在服务器落盘,存在数据泄露的风险。
发明内容
本发明的目的就在于为了解决上述问题而提供一种针对ETL异常数据的简易索引与加密落盘机制,应用于数据ETL运行过程中异常数据落盘,包括建立索引、对数据进行加密压缩与落盘数据查询访问;
建立索引包括建立全局索引、页索引与行索引;全局索引用于记录完整数据文件的基本信息;页索引用于记录当前索引页的索引信息;行索引用于记录当前数据行的行索引信息;
对数据进行加密压缩,包括位移压缩、字典压缩与位图压缩;
落盘数据查询访问,包括查询全局索引,根据全局索引查询索引页,解压索引页数据,查询行索引信息与当前数据行的关键信息。
本发明的有益效果在于:本发明采用全局索引对全局数据进行索引,页索引对当前页的所有数据行进行索引,行索引对单条数据进行索引,即采用包含全局索引、页索引、行索引,对落盘数据进行简易的索引,使得查询这些落盘数据的效率得到了极大提高,即使落盘数据数据量很大的情景下,也能很快的查询到目标数据;以及采用简易数据压缩加密方式,包含位移压缩、字典压缩、位图压缩,对数据进行压缩的同时也对数据本身进行了加密,防止明文数据导致数据信息泄露。
附图说明
图1是本发明应用场景的示意图;
图2是本发明的逻辑框架图;
图3是索引结构的示意图;
图4是全局索引示意图;
图5是页索引示意图;
图6是行索引示意图;
图7是位移压缩示意图;
图8是字典压缩示意图;
图9是位图压缩示意图;
图10是数据落盘流程图;
图11是落盘数据查询流程图。
具体实施方式
下面结合附图对本发明作进一步说明:
如附图2所示,本发明一种针对ETL异常数据的简易索引与加密落盘机制,应用于数据ETL运行过程中异常数据落盘,包括建立索引、对数据进行加密压缩与落盘数据查询访问;
建立索引包括建立全局索引、页索引与行索引;全局索引用于记录完整数据文件的基本信息;页索引用于记录当前索引页的索引信息;行索引用于记录当前数据行的行索引信息;
对数据进行加密压缩,包括位移压缩、字典压缩与位图压缩;
落盘数据查询访问,包括查询全局索引,根据全局索引查询索引页,解压索引页数据,查询行索引信息与当前数据行的关键信息。
具体的,所述完整数据文件的基本信息包括:总索引唯一ID、创建时间戳、导出时间戳、数据总条数、数据总页数、用于对数据进行压缩的整体压缩算法、压缩前数据大小、压缩后数据大小、总索引校验值和各数据页基本信息。
具体的,所述数据页基本信息包括数据页在整个存储文件的偏移位置、数据页内容关键字信息和重要关键字的数据行位置信息。
具体的,所述索引页包括索引区和数据区;索引区用于存储索引头信息;索引头信息包括页码、数据条数、索引头大小、压缩前数据大小、压缩后数据大小、数据校验位以及每个数据行偏移;数据区包括数据行索引、数据信息、数据行校验信息。
具体的,所述行索引用于对单条数据进行索引,所述当前数据行的关键信息包括索引行唯一地址、关键字信息和数据压缩信息。
具体的,所述位移压缩用于记录字符串信息、字符串偏移量信息,当字符串信息、字符串偏移量信息出现频次超过设定次数则进行位移压缩;所述字典压缩用于设置关键词信息库,将关键词采用符号地址进行替换存储;所述位图压缩用于对超过设定字符串长度的关键词按照多个设定字节大小符号地址的进行存储。
具体的,所述当前数据行的关键信息包括数据信息与数据校验位。
具体的,当新增数据加上当前索引页数据大小小于设定值时,追加在当前索引页,当新增数据加上当前索引页数据大小大于设定值时,新建索引页,追加到新增索引页中;当单条新增数据小于设定值时,新建索引页,单条新增数据更新到最后一个索引页。
如附图3所示,索引结构包括全局索引、页索引、行索引。全局索引记录完整数据文件的基本信息,页索引记录当前索引页的索引信息,行索引记录当前数据行的关键信息。
如附图4所示全局索引示意图,全局索引记录信息包含:总索引唯一ID、创建时间戳、导出时间戳、数据总条数、数据总页数、整体压缩算法,压缩前数据大小,压缩后数据大小,总索引校验值和各数据页基本信息。其中整体压缩算法采用开源压缩算法。对完整数据进行压缩。
如附图5所示页索引示意图,索引页包括索引区和数据区,索引区用于存储索引头信息;索引头信息包含页码、数据条数、索引头大小、压缩前数据大小、压缩后数据大小、数据校验位以及每个数据行偏移。数据区包含数据行索引、数据信息、数据行校验信息。
每个索引页大小为4G,当新增数据加上当前索引页数据大小小于4G时,追加在当前索引页,当新增数据加上当前索引页数据大小大于4G时,新建索引页,追加到新增索引页中。当单条新增数据已经大于4G时,新建索引页,单条数据独立生成索引页。
如附图6所示行索引示意图,行索引用于对单条数据进行索引,记录单条索引的关键字信息和数据压缩信息。
如附图7所示位移压缩示意图,如果某个字符串(如“ABC”)经常出现,则采用位移压缩,其中ID为特征唯一键(如未使用过的“%”或“@”加上一串唯一值的数字组成)。如上式“XXXABCXXABCXXXXXABCXX”可以记录成“XXX%20XX%20XXXXX%20XX”和“%20,ABC,3,8,16”。该字符串包括20个字符,各字符的地址为编号0~20,第一个“ABC”的地址编号为3,第二个“ABC”的地址编号为8,第三个“ABC”的地址编号为16。位移压缩用于记录字符串信息、字符串偏移量信息。
如附图8所示字典压缩示意图,如地名、国家、人名、敏感词条等关键信息经常出现,则采用符号地址进行替换存储,如“重庆”采用第一地址ID1,“大学”采用第二地址ID2,“隆中”采用第三地址ID3进行替换存储。
如附图9所示位图压缩示意图,针对某些常见的词组,人名、地名、敏感词等信息如果用字典压缩替换的ID字符串占用空间依然很大,则采用位图压缩,如一个long数据有64个bit,对这些bit的数据按照信息类别进行定义,多个bit的数据代表第一类信息,多个bit的数据代表第二类信息等,如ID字符串中出现“男”、“女”、“北京”、“重庆”、“成都”,则将属于同类信息的“男”、“女”的地址放入多个bit中,将属于同类信息的数据(“北京”、“重庆”、“成都”)的地址放入多个bit中。
如附图10所示数据落盘流程图,包括如下步骤:
ETL程序启动;数据采集、数据转换、数据加载程序运行;判断新增数据是否是异常数据,若是则进行落盘,否则不进行落盘,返回数据采集、数据转换、数据加载程序运行过程;判断新增数据和最后一索引页的大小是否大于设定值,若是则需新建索引页,否则,新增数据更新到最后一个索引页;更新新增数据索引行行索引;更新全局索引信息。
如附图11所示落盘数据查询流程示意图,包括步骤:落盘数据查询软件启动;查询全局索引;根据全局索引查询具体索引页;解压索引页数据;查询行索引信息和数据信息;将查询到的数据返回。
本发明采用全局索引对全局数据进行索引,页索引对当前页的所有数据行进行索引,行索引对单条数据进行索引,即采用包含全局索引、页索引、行索引,对落盘数据进行简易的索引,使得查询这些落盘数据的效率得到了极大提高,即使落盘数据数据量很大的情景下,也能很快的查询到目标数据;以及采用简易数据压缩加密方式,包含位移压缩、字典压缩、位图压缩,对数据进行压缩的同时也对数据本身进行了加密,防止明文数据导致数据信息泄露。
本发明的技术方案不限于上述具体实施例的限制,凡是根据本发明的技术方案做出的技术变形,均落入本发明的保护范围之内。
Claims (8)
1.一种针对ETL异常数据的简易索引与加密落盘机制,应用于数据ETL运行过程中异常数据落盘,其特征在于,包括建立索引、对数据进行加密压缩与落盘数据查询访问;
建立索引包括建立全局索引、页索引与行索引;全局索引用于记录完整数据文件的基本信息;页索引用于记录当前索引页的索引信息;行索引用于记录当前数据行的行索引信息;
对数据进行加密压缩,包括位移压缩、字典压缩与位图压缩;
落盘数据查询访问,包括查询全局索引,根据全局索引查询索引页,解压索引页数据,查询行索引信息与当前数据行的关键信息。
2.根据权利要求1所述一种针对ETL异常数据的简易索引与加密落盘机制,其特征在于,所述完整数据文件的基本信息包括:总索引唯一ID、创建时间戳、导出时间戳、数据总条数、数据总页数、用于对数据进行压缩的整体压缩算法、压缩前数据大小、压缩后数据大小、总索引校验值和各数据页基本信息。
3.根据权利要求2所述一种针对ETL异常数据的简易索引与加密落盘机制,其特征在于,所述数据页基本信息包括数据页在整个存储文件的偏移位置、数据页内容关键字信息和重要关键字的数据行位置信息。
4.根据权利要求1所述一种针对ETL异常数据的简易索引与加密落盘机制,其特征在于,所述索引页包括索引区和数据区;索引区用于存储索引头信息;
索引头信息包括页码、数据条数、索引头大小、压缩前数据大小、压缩后数据大小、数据校验位以及每个数据行偏移;
数据区包括数据行索引、数据信息、数据行校验信息。
5.根据权利要求1所述一种针对ETL异常数据的简易索引与加密落盘机制,其特征在于,所述行索引用于对单条数据进行索引,所述当前数据行的关键信息包括索引行唯一地址、关键字信息和数据压缩信息。
6.根据权利要求1所述一种针对ETL异常数据的简易索引与加密落盘机制,其特征在于,所述位移压缩用于记录字符串信息、字符串偏移量信息,当字符串信息、字符串偏移量信息出现频次超过设定次数则进行位移压缩;所述字典压缩用于设置关键词信息库,将关键词采用符号地址进行替换存储;所述位图压缩用于对超过设定字符串长度的关键词按照多个设定字节大小符号地址的进行存储。
7.根据权利要求1所述一种针对ETL异常数据的简易索引与加密落盘机制,其特征在于,所述当前数据行的关键信息包括数据信息与数据校验位。
8.根据权利要求1所述一种针对ETL异常数据的简易索引与加密落盘机制,其特征在于,当新增数据加上当前索引页数据大小小于设定值时,追加在当前索引页,当新增数据加上当前索引页数据大小大于设定值时,新建索引页,追加到新增索引页中;当单条新增数据大于设定值时,新建索引页,单条新增数据独立生成索引页。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110241032.0A CN112948386B (zh) | 2021-03-04 | 2021-03-04 | 一种针对etl异常数据的简易索引及加密落盘机制 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110241032.0A CN112948386B (zh) | 2021-03-04 | 2021-03-04 | 一种针对etl异常数据的简易索引及加密落盘机制 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112948386A true CN112948386A (zh) | 2021-06-11 |
CN112948386B CN112948386B (zh) | 2023-09-22 |
Family
ID=76247670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110241032.0A Active CN112948386B (zh) | 2021-03-04 | 2021-03-04 | 一种针对etl异常数据的简易索引及加密落盘机制 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112948386B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080162521A1 (en) * | 2006-12-28 | 2008-07-03 | James Browning | Compression of encrypted data in database management systems |
US20130332484A1 (en) * | 2012-06-06 | 2013-12-12 | Rackspace Us, Inc. | Data Management and Indexing Across a Distributed Database |
CN105354247A (zh) * | 2015-10-13 | 2016-02-24 | 武汉大学 | 一种支持存算联动的地理视频数据组织管理方法 |
CN105471856A (zh) * | 2015-11-19 | 2016-04-06 | 中国电子科技网络信息安全有限公司 | 用于大数据中心平台加密文件的检索和共享的***及方法 |
CN105701096A (zh) * | 2014-11-25 | 2016-06-22 | 腾讯科技(深圳)有限公司 | 索引生成方法、数据查询方法、装置及*** |
CN106599040A (zh) * | 2016-11-07 | 2017-04-26 | 中国科学院软件研究所 | 一种面向云存储的分层索引方法与检索方法 |
CN108040074A (zh) * | 2018-01-26 | 2018-05-15 | 华南理工大学 | 一种基于大数据的实时网络异常行为检测***及方法 |
CN109299106A (zh) * | 2018-10-31 | 2019-02-01 | 中国联合网络通信集团有限公司 | 数据查询方法和装置 |
EP3442158A1 (en) * | 2017-08-11 | 2019-02-13 | Palo Alto Research Center Incorporated | System and architecture for supporting analytics on encrypted databases |
CN109492410A (zh) * | 2018-10-09 | 2019-03-19 | 华南农业大学 | 数据可搜索加密和关键词搜索方法、***及终端、设备 |
CN109639811A (zh) * | 2018-12-21 | 2019-04-16 | 北京金山云网络技术有限公司 | 数据传输方法、数据存储方法、装置、服务器及存储介质 |
CN111782661A (zh) * | 2020-07-21 | 2020-10-16 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法、数据查询方法和装置 |
-
2021
- 2021-03-04 CN CN202110241032.0A patent/CN112948386B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080162521A1 (en) * | 2006-12-28 | 2008-07-03 | James Browning | Compression of encrypted data in database management systems |
US20130332484A1 (en) * | 2012-06-06 | 2013-12-12 | Rackspace Us, Inc. | Data Management and Indexing Across a Distributed Database |
CN105701096A (zh) * | 2014-11-25 | 2016-06-22 | 腾讯科技(深圳)有限公司 | 索引生成方法、数据查询方法、装置及*** |
CN105354247A (zh) * | 2015-10-13 | 2016-02-24 | 武汉大学 | 一种支持存算联动的地理视频数据组织管理方法 |
CN105471856A (zh) * | 2015-11-19 | 2016-04-06 | 中国电子科技网络信息安全有限公司 | 用于大数据中心平台加密文件的检索和共享的***及方法 |
CN106599040A (zh) * | 2016-11-07 | 2017-04-26 | 中国科学院软件研究所 | 一种面向云存储的分层索引方法与检索方法 |
EP3442158A1 (en) * | 2017-08-11 | 2019-02-13 | Palo Alto Research Center Incorporated | System and architecture for supporting analytics on encrypted databases |
CN108040074A (zh) * | 2018-01-26 | 2018-05-15 | 华南理工大学 | 一种基于大数据的实时网络异常行为检测***及方法 |
CN109492410A (zh) * | 2018-10-09 | 2019-03-19 | 华南农业大学 | 数据可搜索加密和关键词搜索方法、***及终端、设备 |
CN109299106A (zh) * | 2018-10-31 | 2019-02-01 | 中国联合网络通信集团有限公司 | 数据查询方法和装置 |
CN109639811A (zh) * | 2018-12-21 | 2019-04-16 | 北京金山云网络技术有限公司 | 数据传输方法、数据存储方法、装置、服务器及存储介质 |
CN111782661A (zh) * | 2020-07-21 | 2020-10-16 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法、数据查询方法和装置 |
Non-Patent Citations (3)
Title |
---|
FEI WU等: "A low cost and inner-round pipelined design of ECB-AES-256 crypto engine for solid state disk", 《PROCEEDINGS OF THE 2010 IEEE INTERNATIONAL CONFERENCE ON NETWORKING, ARCHITECTURE, AND STORAGE》, pages 485 - 491 * |
张泽军: "基于Ceph块存储的高可用ISCSI研究与应用", 《中国优秀硕士学位论文全文数据库 信息科技辑》, pages 137 - 34 * |
李德文: "流程工业分布式实时数据库研究与应用", 《中国优博士学位论文全文数据库 信息科技辑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112948386B (zh) | 2023-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2443564B1 (en) | Data compression for reducing storage requirements in a database system | |
US7552130B2 (en) | Optimal data storage and access for clustered data in a relational database | |
Hoffer et al. | The use of cluster analysis in physical data base design | |
CN111339103B (zh) | 一种基于全量分片和增量日志解析的数据交换方法及*** | |
EP1866776B1 (en) | Method for detecting the presence of subblocks in a reduced-redundancy storage system | |
US8694474B2 (en) | Block entropy encoding for word compression | |
US20100284532A1 (en) | Systems for embedding information in data strings | |
CN103685589B (zh) | 基于二进制编码的dns数据压缩、解压缩方法及*** | |
CN101676899A (zh) | 海量数据库记录的归档和查询方法 | |
US11593373B2 (en) | Compression, searching, and decompression of log messages | |
WO2013136418A1 (ja) | ログ管理計算機、及びログ管理方法 | |
CN109388523A (zh) | 一种基于二进制日志文件恢复MySQL数据库的方法 | |
CN111291235A (zh) | 一种基于时序数据库的元数据存储方法及装置 | |
US7676487B2 (en) | Method and system for formatting and indexing data | |
CN112262379A (zh) | 存储数据项并且标识存储的数据项 | |
CN105912696A (zh) | 一种基于对数归并的dns索引创建方法及查询方法 | |
KR100906454B1 (ko) | 데이터베이스 로그 정보 관리 장치 및 방법 | |
CN108984626B (zh) | 一种数据处理方法、装置及服务器 | |
CN111008183A (zh) | 一种用于业务风控日志数据的存储方法及*** | |
Hua et al. | An enhanced wildcard-based fuzzy searching scheme in encrypted databases | |
CN112948386A (zh) | 一种针对etl异常数据的简易索引及加密落盘机制 | |
US7587513B1 (en) | Efficient storage of network and application data | |
US20130297573A1 (en) | Character Data Compression for Reducing Storage Requirements in a Database System | |
JP4212615B2 (ja) | 構造化文書検索システム、構造化文書検索方法、検索装置、および文書管理装置 | |
CN112069510A (zh) | 一种数据加密排重方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |