# US 6,725,225 B1 · Data management apparatus and method for efficiently generating a blocked transposed file and converting that file using a stored compression method

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 6,725,225 B1
- Document ID: US6725225B1
- Status: Granted
- Kind: B1
- Application number: 09/572,938
- Filed: 2000-05-18
- Granted: 2004-04-20
- Earliest claimed: 1999-09-29
- Assignees: Mitsubishi Denki Kabushiki Kaisha
- Inventors: Mitsunori Kori
- Web page: https://patentgrep.com/patent/US6725225B1

## CPC

- G06F 3/064: {Management of blocks}
- G06F 3/0607: {by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device}
- G06F 3/0608: {Saving storage space on storage systems}
- G06F 3/0674: {Disk device}
- H03M 7/40: Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- Y10S 707/99931: Database or file accessing
- Y10S 707/99942: Manipulating data structure, e.g. compression, compaction, compilation
- Y10S 707/99953: Recoverability
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

A data management apparatus and method provide for a virtual conversion by repeatedly reading at least one record from an input file having a plurality of records, each record including a plurality of fields, and adding the at least one record to a buffer. The records in the buffer are then converted into a post-conversion block on a field-by-field basis until data size of post-conversion blocks for each kind of field of the records in the buffer exceeds a threshold size. The number of records in the post-conversion blocks can be determined by counting the records in the buffer during a process immediately preceding a time when the data size exceeds the threshold size, and storing that number. The conversion is completed by reading out records of the stored number of records from the input file, converting the records read out into post-conversion blocks on a field-by-field basis, and storing the post-conversion blocks.

## Claims

### Claim 1

A data management apparatus comprising:
number of records in group determining means for virtual conversion by repeatedly reading at least one record from an input file having a plurality of records, each record including a plurality of fields, adding the at least one record to a buffer, and converting records in the buffer into a post-conversion block on a field-by-field basis until data size of post-conversion blocks for each kind of field of the records in the buffer exceeds a threshold size, wherein the number of records in group determining means determines the number of records of the post-conversion block by counting the records in the buffer, during a process immediately preceding a time when the data size exceeds the threshold size, and stores that number;
first conversion means for generating a first block by dividing at least one record including a plurality of fields into the fields and combining fields of like kind; and
second conversion means for converting the first block into a second block using a stored data conversion method, and for storing the second block, wherein the second conversion means selects one data compression algorithm that provides highest compression efficiency from a plurality of stored data compression algorithms in accordance with properties of the first block, and converts the first block into the second block using the selected data compression algorithm.

### Claim 2 (depends on 1)

The data management apparatus according to claim 1, wherein the second conversion means stores type information characterizing the data compression algorithm that has been used to convert the first block into the second block.

### Claim 3 (depends on 2)

The data management apparatus according to claim 2, wherein the second conversion means stores the type information and the second block in one storing means.

### Claim 4 (depends on 2)

The data management apparatus according to claim 2, wherein the second conversion means stores data size of the second block.

### Claim 5 (depends on 2)

The data management apparatus according to claim 2, further comprising inverse conversion means for inversely converting the second block into the first block by referring to the type information that has been stored.

### Claim 6

A data management method comprising:
a virtual conversion, repeatedly reading at least one record from an input file having a plurality of records, each record including a plurality of fields, adding the at least one record to a buffer, and converting records in the buffer into a post-conversion block on a field-by-field basis until data size of post-conversion blocks for each kind of field of the records in the buffer exceeds a threshold size;
determining the number of records of the post-conversion block by counting the records in the buffer during a process immediately preceding a time when the data size exceeds the threshold size, and storing that number; and
reading out records of the stored number of records from the input file, converting the records read out into post-conversion blocks on a field-by-field basis, and storing the post-conversion blocks.

### Claim 7 (depends on 6)

The data management method according to claim 6, wherein the virtual conversion comprises:
generating a first block by converting a record in the buffer into a converted record having a fixed-length field format, dividing the converted record into fields, and combining fields of like kind; and
converting the first block into a second block using a stored data conversion method.

### Claim 8 (depends on 1)

The data management apparatus according to claim 1, wherein the second block has a variable length.
