CN104320374B - A Method for Restoring Oracle Transport Compressed Data - Google Patents

A Method for Restoring Oracle Transport Compressed Data Download PDF

Info

Publication number
CN104320374B
CN104320374B CN201410381264.6A CN201410381264A CN104320374B CN 104320374 B CN104320374 B CN 104320374B CN 201410381264 A CN201410381264 A CN 201410381264A CN 104320374 B CN104320374 B CN 104320374B
Authority
CN
China
Prior art keywords
information
result set
content
data
locator
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.)
Active
Application number
CN201410381264.6A
Other languages
Chinese (zh)
Other versions
CN104320374A (en
Inventor
李绍平
范渊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DBAPPSecurity Co Ltd
Original Assignee
DBAPPSecurity Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by DBAPPSecurity Co Ltd filed Critical DBAPPSecurity Co Ltd
Priority to CN201410381264.6A priority Critical patent/CN104320374B/en
Publication of CN104320374A publication Critical patent/CN104320374A/en
Application granted granted Critical
Publication of CN104320374B publication Critical patent/CN104320374B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention relates to field of network data transmission, it is desirable to provide a kind of Oracle transmitted data compressings restoring method.This kind of Oracle transmitted data compressings restoring method includes step:Locator is recognized using type of database, packet to transmitting carries out the protocol header style for judging whether to meet TNS communication protocols, using compressing Information locating and content extractor is realized the positioning of compression information and extracted, the positioning of result set information is realized using result set information locator and extract result set information, using output result collecting system, the record of result set is assembled into two-dimensional table one by one, and is exported.The present invention can correctly recognize the packet of oracle database transmission, correct to extract compression information, correctly reduce the data compressed, and correctly extract unpacked data;The present invention can also be as data storage and the foundation of reduction.

Description

一种Oracle传输压缩数据还原方法A Method for Restoring Oracle Transport Compressed Data

技术领域technical field

本发明是关于网络数据传输领域,特别涉及一种Oracle传输压缩数据还原方法。The invention relates to the field of network data transmission, in particular to a method for restoring Oracle transmission compressed data.

背景技术Background technique

目前很多行业都在使用Oracle数据库,在某些情况下使用SQL语句获取结果集时,结果集中存在大量相同的数据,如果这些相同的数据只传输一次,那么可以大大减小网络传输数据量。At present, Oracle databases are used in many industries. In some cases, when SQL statements are used to obtain result sets, there are a large amount of identical data in the result set. If these identical data are only transmitted once, the amount of data transmitted over the network can be greatly reduced.

一般SQL语句返回的结果集数据中,部分记录的部分内容会存在相同的数据。经分析大部分关系型数据库(如SQL Server、DB2、MySQL等),对结果集中每行数据如实传输(记录间的相同数据在每条记录中会重复的传输),这无疑增加网络的传输量。In the result set data returned by a general SQL statement, the same data may exist in part of some records. After analyzing most relational databases (such as SQL Server, DB2, MySQL, etc.), each row of data in the result set is transmitted faithfully (the same data between records will be transmitted repeatedly in each record), which will undoubtedly increase the transmission volume of the network .

发明内容Contents of the invention

本发明的主要目的在于克服现有技术中的不足,提供一种能正确提取压缩信息、正确还原被压缩的数据、正确提取非压缩数据的Oracle传输压缩数据还原方法。为解决上述技术问题,本发明的解决方案是:The main purpose of the present invention is to overcome the deficiencies in the prior art, to provide a kind of Oracle transmission compressed data restoration method that can correctly extract compressed information, correctly restore compressed data, and correctly extract uncompressed data. In order to solve the problems of the technologies described above, the solution of the present invention is:

提供一种Oracle传输压缩数据还原方法,具体包括下述步骤:A method for restoring Oracle transmission compressed data is provided, which specifically includes the following steps:

(1)利用数据库类型识别定位器,对传输的数据包进行判断是否符合TNS通信协议的协议头格式,若符合TNS通信协议的协议头格式,则传输的数据包符合TNS通信协议,即传输的数据包是Oracle数据库传输的数据包;若不符合TNS通信协议的协议头格式,则传输的数据包不符合TNS通信协议,将传输的数据包舍弃;(1) Use the database type identification locator to judge whether the transmitted data packet conforms to the protocol header format of the TNS communication protocol, if it conforms to the protocol header format of the TNS communication protocol, then the transmitted data packet conforms to the TNS communication protocol, that is, the transmitted The data packet is the data packet transmitted by the Oracle database; if it does not conform to the protocol header format of the TNS communication protocol, the transmitted data packet does not conform to the TNS communication protocol, and the transmitted data packet is discarded;

其中,所述TNS通信协议是Oracle数据库通信的协议,是TCP/IP协议的应用层数据协议;TNS通信协议中包括协议头,协议头由8个字节组成,依次为2字节的长度、2字节的校验、1字节的包类型、1字节的保留字节、2字节的头校验;Wherein, described TNS communication agreement is the agreement of Oracle database communication, is the application layer data agreement of TCP/IP agreement; In the TNS communication agreement, comprise agreement head, agreement head is made up of 8 bytes, is successively the length of 2 bytes, 2-byte checksum, 1-byte packet type, 1-byte reserved byte, 2-byte header checksum;

(2)利用压缩信息定位及内容提取器,确定步骤(1)识别出的数据包中的记录是否被压缩,实现压缩信息的定位,并对定位出的压缩信息进行提取;(2) Utilize compressed information location and content extractor, determine whether the record in the data packet identified in step (1) is compressed, realize the location of compressed information, and extract the compressed information positioned;

压缩信息定位的具体方法为:根据TTC协议,从通过数据库类型识别定位器选择出的数据包中,寻找TTC协议头是0x15的位置,若没有找到0x15的TTC协议头,则舍弃;若找到0x15的TTC协议头,则说明TTC协议头之后的数据内容是压缩相关信息,实现压缩信息定位;The specific method for locating the compressed information is: according to the TTC protocol, from the data packets selected by the database type identification locator, search for the position where the TTC protocol header is 0x15, if the TTC protocol header of 0x15 is not found, discard it; if 0x15 is found The TTC protocol header indicates that the data content after the TTC protocol header is compression-related information, so as to realize the positioning of compressed information;

压缩信息内容提取器具体方法为:根据压缩信息定位器找到的位置,提取TTC协议头为0x15之后的两个字节的数据,这两个字节的内容的间接表示下面压缩标识信息的长度,长度值设为X;压缩标识信息的长度计算方法如下:X除以8取整,得到的值设为Z,如X除8有余数则压缩标识信息的长度为Z+1个字节组成,如X除8没有余数则压缩标识信息的长度为Z个字节组成;The specific method of the compressed information content extractor is: according to the position found by the compressed information locator, extract the data of two bytes after the TTC protocol header is 0x15, the content of these two bytes indirectly represents the length of the following compressed identification information, The length value is set to X; the calculation method of the length of the compressed identification information is as follows: X is divided by 8 and rounded up, and the obtained value is set to Z. If there is a remainder when X is divided by 8, the length of the compressed identification information is composed of Z+1 bytes. If there is no remainder when X is divided by 8, the length of the compressed identification information is composed of Z bytes;

所述压缩标识信息的具体格式:1字节(8比特)最多能存放结果集1行中8列内容的压缩标识信息(若1行有超过8列的内容,则增加字节存放其他列的压缩标识信息),即1比特能用来表示结果集1行中1列内容是否被压缩;若比特值为1,则表示对应数据没有被压缩;若比特值为0,则表示对应数据被压缩;The specific format of the compressed identification information: 1 byte (8 bits) can store at most the compressed identification information of 8 columns of content in a row of the result set (if 1 row has more than 8 columns of content, add bytes to store the contents of other columns Compression identification information), that is, 1 bit can be used to indicate whether the content of 1 column in 1 row of the result set is compressed; if the bit value is 1, it means that the corresponding data is not compressed; if the bit value is 0, it means that the corresponding data is compressed ;

其中,Oracle数据库传输的数据包采用的是TNS通信协议,TNS通信协议内部包含TTC协议,所述TTC协议头由1个字节组成,TTC协议头的值用于表示TTC协议头之后的数据包含的内容(如TTC协议头是0x15,其后内容是压缩标识信息);Among them, the data packets transmitted by the Oracle database use the TNS communication protocol, which contains the TTC protocol. The TTC protocol header is composed of 1 byte, and the value of the TTC protocol header is used to indicate that the data after the TTC protocol header contains content (such as the TTC protocol header is 0x15, and the subsequent content is compressed identification information);

结果集是执行SQL语句(主要是select语句)返回的内容,结果集是由行和列构成的一张二维表格,一行数据表示一条完整的记录,一条记录的TTC协议头是0x07,且根据TNS通信协议规定,结果集的第一条记录不存在压缩信息;一条记录的还原要依据压缩信息来还原;The result set is the content returned by executing the SQL statement (mainly the select statement). The result set is a two-dimensional table composed of rows and columns. A row of data represents a complete record. The TTC protocol header of a record is 0x07, and according to TNS communication The protocol stipulates that the first record of the result set does not have compression information; the restoration of a record must be restored based on the compression information;

(3)根据TTC协议,利用结果集信息定位器,从步骤(1)中通过数据库类型识别定位器识别出的数据包中,找到TTC协议头是0x07的位置,实现结果集信息的定位;然后内容还原器根据结果集信息定位器定位出的位置,提取结果集信息,具体提取方法为:结合压缩信息定位及内容提取器对数据包进行逐条定位,若某列的压缩信息为1(压缩信息定位器及内容提取器提取的压缩信息),则该列内容没有被压缩,说明结果集信息定位器之后的内容有这列的信息数据,则提取这列内容;若某列的压缩信息为0(压缩信息定位器及内容提取器提取的压缩信息),则该列内容被压缩,说明结果集信息定位器之后的内容没有这列的信息数据,则将上一条记录的对应列作为这列的信息;(3) according to TTC agreement, utilize result set information locator, from the data packet identified by database type identification locator in step (1), find the position that TTC protocol head is 0x07, realize the location of result set information; Then The content restorer extracts the result set information according to the position located by the result set information locator. The specific extraction method is: combine the compressed information positioning and the content extractor to locate the data packets one by one. If the compressed information of a column is 1 (compressed information The compressed information extracted by the locator and content extractor), the content of this column is not compressed, indicating that the content after the result set information locator has the information data of this column, then extract the content of this column; if the compressed information of a certain column is 0 (the compressed information extracted by the compressed information locator and the content extractor), the content of this column is compressed, indicating that the content after the result set information locator does not have the information data of this column, then the corresponding column of the previous record is used as the column of this column information;

(4)如果结果集的记录还没提取完,判断结果集的记录提取完成依据是:TTC协议头是0x04的内容部分含有no data found字样;依次重复步骤(2)和步骤(3);(4) If the record of the result set has not been extracted yet, the basis for judging that the record extraction of the result set is completed is: the content part of the TTC protocol header is 0x04 contains the words no data found; repeat steps (2) and (3) in turn;

(5)利用输出结果集系统,把结果集的记录逐条组装成二维表格,并进行输出。(5) Use the output result set system to assemble the records of the result set into two-dimensional tables one by one and output them.

提供用于所述的一种Oracle传输压缩数据还原方法的Oracle传输压缩数据还原系统,其特征在于,包括数据库类型识别定位器、压缩信息定位及内容提取器、结果集信息定位器、内容还原器、输出结果集器;Provide the Oracle transmission compressed data recovery system for the described a kind of Oracle transmission compressed data recovery method, it is characterized in that, comprise database type identification locator, compressed information location and content extractor, result set information locator, content restorer , the output result setter;

所述数据库类型识别定位器用于判断传输的数据包是否是Oracle数据库传输的数据包,并将不是Oracle数据库传输的数据包舍弃;Described database type identification locator is used for judging whether the data packet of transmission is the data packet of Oracle database transmission, and the data packet that is not Oracle database transmission is discarded;

所述压缩信息定位及内容提取器用于在通过数据库类型识别定位器判断出的数据包中,定位出压缩信息和提取出压缩信息;The compressed information location and content extractor is used to locate the compressed information and extract the compressed information in the data packet judged by the database type identification locator;

所述结果集信息定位器及内容还原器通过从数据库类型识别定位器获取的数据包,定位出结果集信息和提取结果集信息;The result set information locator and the content restorer locate the result set information and extract the result set information through the data packet obtained from the database type identification locator;

所述输出结果集器用于将结果信息定位及内容还原器还原出来的信息组装成二维表格形式的,并将组装成的结果集输出。The output result setter is used to assemble the result information location and the information restored by the content restorer into a two-dimensional form, and output the assembled result set.

与现有技术相比,本发明的有益效果是:Compared with prior art, the beneficial effect of the present invention is:

本发明能正确认识Oracle数据库传输的数据包,正确提取压缩信息,正确还原被压缩的数据,正确提取非压缩数据;本发明还可以做为数据存储及还原的依据。The invention can correctly recognize the data packets transmitted by the Oracle database, correctly extract compressed information, correctly restore compressed data, and correctly extract non-compressed data; the invention can also be used as a basis for data storage and restoration.

附图说明Description of drawings

图1为本发明的Oracle数据压缩传输流程图。Fig. 1 is a flow chart of Oracle data compression transmission in the present invention.

具体实施方式detailed description

首先需要说明的是,本发明涉及网络数据传输技术,是计算机技术在信息数据传输领域的一种应用。在本发明的实现过程中,会涉及到多个软件功能模块的应用。申请人认为,如在仔细阅读申请文件、准确理解本发明的实现原理和发明目的以后,在结合现有公知技术的情况下,本领域技术人员完全可以运用其掌握的软件编程技能实现本发明。前述软件功能模块包括但不限于:数据库类型识别定位器、压缩信息定位及内容提取器、结果集信息定位器、内容还原器、输出结果集器等,凡本发明申请文件提及的均属此范畴,申请人不再一一列举。First of all, it should be explained that the present invention relates to network data transmission technology, which is an application of computer technology in the field of information data transmission. During the implementation of the present invention, the application of multiple software function modules will be involved. The applicant believes that, after carefully reading the application documents and accurately understanding the realization principle and purpose of the present invention, combined with existing known technologies, those skilled in the art can fully implement the present invention by using their software programming skills. The aforementioned software function modules include but are not limited to: database type identification locator, compressed information locator and content extractor, result set information locator, content restorer, output result setter, etc., all mentioned in the application documents of the present invention belong to this The applicants will not list them one by one.

下面结合附图与具体实施方式对本发明作进一步详细描述:Below in conjunction with accompanying drawing and specific embodiment the present invention is described in further detail:

如图1所示的流程图,一种Oracle传输压缩数据还原方法,具体包括下述步骤:Flow chart as shown in Figure 1, a kind of Oracle transmission compressed data restoration method specifically comprises the following steps:

(1)利用数据库类型识别定位器,对传输的数据包进行判断是否符合TNS通信协议的协议头格式,若符合TNS通信协议的协议头格式,则传输的数据包符合TNS通信协议,即传输的数据包是Oracle数据库传输的数据包;若不符合TNS通信协议的协议头格式,则传输的数据包不符合TNS通信协议,将传输的数据包舍弃;(1) Use the database type identification locator to judge whether the transmitted data packet conforms to the protocol header format of the TNS communication protocol, if it conforms to the protocol header format of the TNS communication protocol, then the transmitted data packet conforms to the TNS communication protocol, that is, the transmitted The data packet is the data packet transmitted by the Oracle database; if it does not conform to the protocol header format of the TNS communication protocol, the transmitted data packet does not conform to the TNS communication protocol, and the transmitted data packet is discarded;

其中,所述TNS通信协议是Oracle数据库通信的协议,是TCP/IP协议的应用层数据协议;TNS通信协议中包括协议头,协议头由8个字节组成,依次为2字节的长度、2字节的校验和、1字节的包类型、1字节的保留字节、2字节的头校验和;Wherein, described TNS communication agreement is the agreement of Oracle database communication, is the application layer data agreement of TCP/IP agreement; In the TNS communication agreement, comprise agreement head, agreement head is made up of 8 bytes, is successively the length of 2 bytes, 2-byte checksum, 1-byte packet type, 1-byte reserved byte, 2-byte header checksum;

(2)利用压缩信息定位及内容提取器,确定步骤(1)识别出的数据包中的记录是否被压缩,实现压缩信息的定位,并对定位出的压缩信息进行提取;(2) Utilize compressed information location and content extractor, determine whether the record in the data packet identified in step (1) is compressed, realize the location of compressed information, and extract the compressed information positioned;

压缩信息定位的具体方法为:根据TTC协议,从通过数据库类型识别定位器选择出的数据包中,寻找TTC协议头是0x15的位置,若没有找到0x15的TTC协议头,则舍弃;若找到0x15的TTC协议头,则说明TTC协议头之后的数据内容是压缩相关信息,实现压缩信息定位;The specific method for locating the compressed information is: according to the TTC protocol, from the data packets selected by the database type identification locator, search for the position where the TTC protocol header is 0x15, if the TTC protocol header of 0x15 is not found, discard it; if 0x15 is found The TTC protocol header indicates that the data content after the TTC protocol header is compression-related information, so as to realize the positioning of compressed information;

压缩信息内容提取器具体方法为:根据压缩信息定位器找到的位置,提取TTC协议头为0x15之后的两个字节的数据,这两个字节的内容的间接表示下面压缩标识信息的长度(以下以X表示这个内容的值);压缩标识信息的长度计算方法如下:X除以8取整(以下以Z表示这个取整的值),如X除8有余数则压缩标识信息的长度为Z+1个字节组成,如X除8没有余数则压缩标识信息的长度为Z个字节组成;以下是压缩标识信息的具体格式:压缩信息定位器之后的1字节(8比特)最多能存放结果集1行中8列内容的压缩标识信息(若1行有超过8列的内容,则增加字节存放其他列的压缩标识信息),即1比特能用来表示结果集1行中1列内容是否被压缩;若比特值为1,则表示对应数据没有被压缩;若比特值为0,则表示对应数据被压缩;如表:以下以结果集中有8列为例,表中第一行中每一单元格为1比特,第二行是对应列的说明The specific method of the compressed information content extractor is: according to the position that the compressed information locator finds, extract the data of two bytes after the TTC protocol header is 0x15, the indirect representation of the content of these two bytes is the length of the following compressed identification information ( The value of this content is represented by X below); the calculation method of the length of the compressed identification information is as follows: X is divided by 8 and rounded (the value of this rounded value is represented by Z below), if there is a remainder when X is divided by 8, the length of the compressed identification information is It consists of Z+1 bytes. If there is no remainder when X is divided by 8, the length of the compressed identification information is composed of Z bytes; the following is the specific format of the compressed identification information: 1 byte (8 bits) after the compressed information locator is at most It can store the compressed identification information of 8 columns in 1 row of the result set (if 1 row has more than 8 columns, add a byte to store the compressed identification information of other columns), that is, 1 bit can be used to indicate that in 1 row of the result set Whether the content of column 1 is compressed; if the bit value is 1, it means that the corresponding data is not compressed; if the bit value is 0, it means that the corresponding data is compressed; as shown in the table: the following is an example of 8 columns in the result set, the first in the table Each cell in a row is 1 bit, and the second row is the description of the corresponding column

其中,Oracle数据库传输的数据包采用的是TNS通信协议,TNS通信协议内部包含TTC协议,所述TTC协议头由1个字节组成,TTC协议头的值用于表示TTC协议头之后的数据包含的内容(如TTC协议头是0x15,其后内容是压缩标识信息);Among them, the data packets transmitted by the Oracle database use the TNS communication protocol, which contains the TTC protocol. The TTC protocol header is composed of 1 byte, and the value of the TTC protocol header is used to indicate that the data after the TTC protocol header contains content (such as the TTC protocol header is 0x15, and the subsequent content is compressed identification information);

结果集是执行SQL语句(主要是select语句)返回的内容,结果集是由行和列构成的一张二维表格,一行数据表示一条完整的记录,一条记录的TTC协议头是0x07,且根据TNS通信协议规定,结果集的第一条记录不存在压缩信息;一条记录的还原要依据压缩信息来还原;The result set is the content returned by executing the SQL statement (mainly the select statement). The result set is a two-dimensional table composed of rows and columns. A row of data represents a complete record. The TTC protocol header of a record is 0x07, and according to TNS communication The protocol stipulates that the first record of the result set does not have compression information; the restoration of a record must be restored based on the compression information;

(3)根据TTC协议,利用结果集信息定位器,从步骤(1)中通过数据库类型识别定位器识别出的数据包中,找到TTC协议头是0x07的位置,实现结果集信息的定位;然后内容还原器根据结果集信息定位器定位出的位置,提取结果集信息,具体提取方法为:结合压缩信息定位及内容提取器对数据包进行逐条定位,若某列的压缩信息为1(压缩信息定位器及内容提取器提取的压缩信息),则该列内容没有被压缩,说明结果集信息定位器之后的内容有这列的信息数据,则提取这列内容;若某列的压缩信息为0(压 缩信息定位器及内容提取器提取的压缩信息),则该列内容被压缩,说明结果集信息定位器之后的内容没有这列的信息数据,则将上一条记录的对应列作为这列的信息;(3) according to TTC agreement, utilize result set information locator, from the data packet identified by database type identification locator in step (1), find the position that TTC protocol head is 0x07, realize the location of result set information; Then The content restorer extracts the result set information according to the position located by the result set information locator. The specific extraction method is: combine the compressed information positioning and the content extractor to locate the data packets one by one. If the compressed information of a column is 1 (compressed information The compressed information extracted by the locator and content extractor), the content of this column is not compressed, indicating that the content after the result set information locator has the information data of this column, then extract the content of this column; if the compressed information of a certain column is 0 (the compressed information extracted by the compressed information locator and the content extractor), the content of this column is compressed, indicating that the content after the result set information locator does not have the information data of this column, then the corresponding column of the previous record is used as the column of this column information;

(4)如果结果集的记录还没提取完,判断结果集的记录提取完成依据是:TTC协议头是0x04的内容部分含有no data found字样;依次重复步骤(2)和步骤(3);(4) If the record of the result set has not been extracted yet, the basis for judging that the record extraction of the result set is completed is: the content part of the TTC protocol header is 0x04 contains the words no data found; repeat steps (2) and (3) in turn;

(5)利用输出结果集系统,把结果集的记录逐条组装成二维表格,并进行输出。(5) Use the output result set system to assemble the records of the result set into two-dimensional tables one by one and output them.

提供用于所述的一种Oracle传输压缩数据还原方法的Oracle传输压缩数据还原系统,包括数据库类型识别定位器、压缩信息定位及内容提取器、结果集信息定位器及内容还原器、输出结果集器;An Oracle transmission compressed data restoration system for the described method for restoring compressed data by Oracle transmission is provided, including a database type identification locator, a compressed information location and a content extractor, a result set information locator and a content restorer, and an output result set device;

所述数据库类型识别定位器用于判断传输的数据包是否是Oracle数据库传输的数据包,并将不是Oracle数据库传输的数据包舍弃;Described database type identification locator is used for judging whether the data packet of transmission is the data packet of Oracle database transmission, and the data packet that is not Oracle database transmission is discarded;

所述压缩信息定位及内容提取器用于在通过数据库类型识别定位器判断出的数据包中,定位出压缩信息和提取出压缩信息;The compressed information location and content extractor is used to locate the compressed information and extract the compressed information in the data packet judged by the database type identification locator;

所述结果集信息定位器及内容还原器通过从数据库类型识别定位器获取的数据包,定位出结果集信息和提取结果集信息;The result set information locator and the content restorer locate the result set information and extract the result set information through the data packet obtained from the database type identification locator;

所述输出结果集器用于将结果信息定位及内容还原器还原出来的信息组装成二维表格形式的,并将组装成的结果集输出。The output result setter is used to assemble the result information location and the information restored by the content restorer into a two-dimensional form, and output the assembled result set.

下面的实施例可以使本专业的专业技术人员更全面地理解本发明,但不以任何方式限制本发明。本实施例以输出结果集为导向,来说明此方法。The following examples can enable those skilled in the art to understand the present invention more comprehensively, but do not limit the present invention in any way. In this embodiment, the method is described with the output result set as the guide.

某学校对学生的信息按省份进行分组,再根据性别进行排序,输出姓名,性别,省份名,学历。A school groups student information by province, sorts by gender, and outputs name, gender, province name, and education.

1.输出结果(小部分信息):1. Output result (small part of information):

姓名Name 性别gender 省份province 学历academic qualifications 张三Zhang San male 浙江zhejiang 本科undergraduate 李四Li Si male 浙江zhejiang 本科undergraduate 王五Wang Wu male 浙江zhejiang 本科undergraduate 李玉文Li Yuwen Female 浙江zhejiang 本科undergraduate 周江红Zhou Jianghong Female 浙江zhejiang 本科undergraduate 吴刚Wu Gang male 上海Shanghai 本科undergraduate 刘亚芳Liu Yafang Female 上海Shanghai 本科undergraduate 胡石怡Hu Shiyi Female 上海Shanghai 本科undergraduate 郭玲Guo Ling Female 上海Shanghai 本科undergraduate 罗良英Luo Liangying Female 上海Shanghai 本科 undergraduate

2.压缩信息2. Compress information

3.实际数据包的内容3. The content of the actual packet

姓名Name 性别gender 省份province 学历academic qualifications 张三Zhang San male 浙江zhejiang 本科undergraduate 李四Li Si 王五Wang Wu 李玉文Li Yuwen Female 周江红Zhou Jianghong 吴刚Wu Gang male 上海Shanghai 刘亚芳Liu Yafang Female 胡石怡Hu Shiyi 郭玲Guo Ling 罗良英Luo Liangying

最后,需要注意的是,以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有很多变形。本领域的普通技术人员能从本发明公开的内容中直接导出或联想到的所有变形,均应认为是本发明的保护范围。Finally, it should be noted that what is listed above are only specific embodiments of the present invention. Obviously, the present invention is not limited to the above embodiments, and many modifications are possible. All deformations that can be directly derived or associated by those skilled in the art from the content disclosed in the present invention should be considered as the protection scope of the present invention.

Claims (2)

1. a kind of Oracle transmitted data compressings restoring method, it is characterised in that specifically include following step:
(1) locator is recognized using type of database, the packet to transmitting carries out the association for judging whether to meet TNS communication protocols View head form, if meeting the protocol header style of TNS communication protocols, the packet for transmitting meets TNS communication protocols, that is, transmit Packet is the packet of oracle database transmission;If not meeting the protocol header style of TNS communication protocols, the data transmitted Bag does not meet TNS communication protocols, and the packet of transmission is given up;
Wherein, the TNS communication protocols are the agreements of oracle database communication, are the application layer data associations of ICP/IP protocol View;TNS communication protocols include protocol header, and protocol header is made up of 8 bytes, be followed successively by the length of 2 bytes, the verification of 2 bytes, The Packet type of 1 byte, the reserve bytes of 1 byte, the head verification of 2 bytes;
(2) using Information locating and content extractor is compressed, determine whether the record in the packet that step (1) is identified is pressed Contracting, realizes the positioning of compression information, and compression information to orienting is extracted;
Compress Information locating specific method be:According to TTC agreements, the number that locator is selected is recognized from by type of database It is the position of 0x15 according to TTC protocol headers in bag, are found, if not finding the TTC protocol headers of 0x15, gives up;If finding 0x15 TTC protocol headers, then illustrate TTC protocol headers after data content be compression relevant information, realize compression Information locating;
Compressing information content extractor specific method is:According to the position that compression information locator finds, extracting TTC protocol headers is Two data of byte after 0x15, the length of compressing mark information below the secondary indication of the content of the two bytes is long Angle value is set to X;The length calculation method of compressing mark information is as follows:X is rounded divided by 8, and the value for obtaining is set to Z, and such as X has a surplus except 8 The length of several then compressing mark information is Z+1 byte composition, and the length of compressing mark information is Z if X removes 8 without remainder Byte is constituted;
The specific form of the compressing mark information:The compressing mark letter of 8 row contents in the 1 byte most multipotency storage row of result set 1 Breath, i.e. whether 1 row content is compressed during 1 bit can be used for representing the row of result set 1;If bit value is 1, then it represents that corresponding data does not have Have and compressed;If bit value is 0, then it represents that corresponding data is compressed;
Wherein, the packet of oracle database transmission uses TNS communication protocols, and TNS communication protocols inside includes TTC associations View, the TTC protocol headers are made up of 1 byte, and the value of TTC protocol headers is used to represent what the packet after TTC protocol headers contained Content;
Result set is to perform the content that SQL statement is returned, and result set is a two-dimensional table being made up of row and column, data line A complete record is represented, the TTC protocol headers of a record are 0x07, and specified according to TNS communication protocols, the of result set One record does not exist compression information;The reduction of one record will be reduced according to compression information;
(3) according to TTC agreements, using result set information locator, recognize that locator is known by type of database from step (1) In the packet not gone out, the position that TTC protocol headers are 0x07 is found, realize the positioning of result set information;Then content reductor According to the position that result set information locator is oriented, result set information is extracted, specific extracting method is:Determine with reference to compression information Position and content extractor are positioned one by one to packet, if the compression information of certain row is 1, the row content is not compressed, The interior information data for having this row after result set information locator is illustrated, then extracts this row content;If the compression letter of certain row It is 0 to cease, then the row content is compressed, and illustrates the information data that the content after result set information locator is arranged without this, then will The information that the respective column of a upper record is arranged as this;
(4) if the record of result set has not been extracted also, the record of judged result collection extracts completion foundation is:TTC protocol headers are Contain no data found printed words in the content part of 0x04;It is repeated in step (2) and step (3);
(5) output result collecting system is utilized, the record of result set two-dimensional table is assembled into one by one, and exported.
2. a kind of Oracle transmitted data compressings of the Oracle transmitted data compressings restoring method being used for described in claim 1 are also Original system, it is characterised in that including type of database identification locator, compression Information locating and content extractor, result set letter Breath locator, content reductor, output result storage;
Type of database identification locator is used to judging whether the packet of transmission to be data that oracle database is transmitted Bag, and will not be that the packet that oracle database is transmitted is given up;
The compression Information locating and content extractor are used to recognize the packet that locator is judged by type of database In, orient compression information and extract compression information;
The result set information locator and content reductor recognize the packet that locator is obtained by from type of database, fixed Position goes out result set information and extracts result set information;
The output result storage is used to for the information that object information positioning and content reductor are restored to be assembled into bivariate table Case form, and the result set output that will be assembled into.
CN201410381264.6A 2014-08-05 2014-08-05 A Method for Restoring Oracle Transport Compressed Data Active CN104320374B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410381264.6A CN104320374B (en) 2014-08-05 2014-08-05 A Method for Restoring Oracle Transport Compressed Data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410381264.6A CN104320374B (en) 2014-08-05 2014-08-05 A Method for Restoring Oracle Transport Compressed Data

Publications (2)

Publication Number Publication Date
CN104320374A CN104320374A (en) 2015-01-28
CN104320374B true CN104320374B (en) 2017-06-27

Family

ID=52375545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410381264.6A Active CN104320374B (en) 2014-08-05 2014-08-05 A Method for Restoring Oracle Transport Compressed Data

Country Status (1)

Country Link
CN (1) CN104320374B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108415927A (en) * 2018-01-17 2018-08-17 中国科学院声学研究所 A kind of restoring method and device of non-sequential table

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101836403A (en) * 2007-10-25 2010-09-15 微软公司 Compressing null columns in rows of the tabular data stream protocol
CN102171680A (en) * 2008-10-05 2011-08-31 微软公司 Efficient large-scale filtering and/or sorting for querying of column based data encoded structures
CN103780263A (en) * 2012-10-22 2014-05-07 株式会社特博睿 Device and method of data compression and recording medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10147773A1 (en) * 2001-09-27 2003-04-17 Siemens Ag Process for the transmission of compressed data in packet-oriented networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101836403A (en) * 2007-10-25 2010-09-15 微软公司 Compressing null columns in rows of the tabular data stream protocol
CN102171680A (en) * 2008-10-05 2011-08-31 微软公司 Efficient large-scale filtering and/or sorting for querying of column based data encoded structures
CN103780263A (en) * 2012-10-22 2014-05-07 株式会社特博睿 Device and method of data compression and recording medium

Also Published As

Publication number Publication date
CN104320374A (en) 2015-01-28

Similar Documents

Publication Publication Date Title
CN104391881B (en) A log parsing method and system based on word segmentation algorithm
CN103425969A (en) Detection system and detection method for identifying type of wheel hub
CN111107107B (en) Network behavior detection method and device, computer equipment and storage medium
CN110704649B (en) Method and system for constructing flow image data set
CN104951515A (en) Method for extracting and analyzing Android mobile phone track
CN105893484A (en) Microblog Spammer recognition method based on text characteristics and behavior characteristics
CN103778259A (en) Method for realizing data recovery of smart phone on basis of Sqlite3
CN105868169B (en) A data acquisition device, data acquisition method and system
CN115037543B (en) An abnormal network traffic detection method based on bidirectional temporal convolutional neural network
CN107943520A (en) Application stack information acquisition method and device, stack information analysis method and device
CN104320374B (en) A Method for Restoring Oracle Transport Compressed Data
CN104410533A (en) Network user behavior identification system
CN102799795B (en) Species move identification system, terminal, server and method
CN103838739A (en) Method and system for detecting error correction words in search engine
CN105469116B (en) A kind of child's knowledge figure and data extending method based on human-computer interaction
CN117854085A (en) A bill identification method and device
CN115086033A (en) Transmission processing system of video cloud command system data
CN117876814A (en) Intelligent RQD recognition method and system for geological core images based on electronic grid
CN103699568A (en) Method for extracting hyponymy relation of field terms from wikipedia
WO2016119508A1 (en) Method for recognizing large-scale objects based on spark system
CN110113421A (en) A kind of big data information processing system based on Internet of Things
CN112364790B (en) Airport work order information identification method and system based on convolutional neural network
CN110443590B (en) Electronic human resource archive management system and management method thereof
CN113157847A (en) Method and device for rapidly checking forest plant survey data
CN110866217A (en) Cross report recognition method and device, storage medium and electronic equipment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Zhejiang Zhongcai Building No. 68 Binjiang District road Hangzhou City, Zhejiang Province, the 310051 and 15 layer

Patentee after: Dbappsecurity Co.,Ltd.

Address before: Hangzhou City, Zhejiang province 310051 Binjiang District and Zhejiang road in the 15 storey building

Patentee before: Dbappsecurity Co.,ltd.

EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20150128

Assignee: Hangzhou Anheng Information Security Technology Co.,Ltd.

Assignor: Dbappsecurity Co.,Ltd.

Contract record no.: X2024980043370

Denomination of invention: A method for restoring compressed data in Oracle transmission

Granted publication date: 20170627

License type: Common License

Record date: 20241231