data compression using variable-to-fixed length...

22
Data Compression using Variable-to-Fixed Length Codes Hokkaido University Hokkaido University Graduate school of Information Science and Graduate school of Information Science and Technology, Division of Computer Science Technology, Division of Computer Science Takuya Kida Takuya Kida [email protected] [email protected] with Satoshi Yoshida, Hirohito Sasakawa, and Kei Sekine with Satoshi Yoshida, Hirohito Sasakawa, and Kei Sekine Compact Data Structure for Bigdata @Shonan meeting 1 2013/9/29

Upload: vantruc

Post on 12-Sep-2018

250 views

Category:

Documents


0 download

TRANSCRIPT

Data Compression using

Variable-to-Fixed Length Codes

Hokkaido University Hokkaido University

Graduate school of Information Science and Graduate school of Information Science and

Technology, Division of Computer ScienceTechnology, Division of Computer Science

Takuya KidaTakuya [email protected]@ist.hokudai.ac.jp

with Satoshi Yoshida, Hirohito Sasakawa, and Kei Sekinewith Satoshi Yoshida, Hirohito Sasakawa, and Kei Sekine

Compact Data Structure for Bigdata @Shonan meeting1 2013/9/29

∗ Background and aim

∗ Related-works

∗ Variable-to-Fixed length codes (VF codes)

∗ Grammar-based compression

∗ Re-Pair algorithm

∗ Proposed method (Re-Pair VF codes)

∗ Experimental results

∗ Summary

∗ Biography

2

ContentsContents

Background and aimBackground and aim

3

・Meteorological satellite data

・Aerial photographs Internet SNS・Road Information

・Information from Citizens

GPS Logs & Life Logs

GPS

・GPS log

・Life log

UGC((((User Generated Content))))Data

Remote Sensing Data

Open Smart Federation ArchitectureOpen Smart Federation ArchitectureOpen Smart Federation ArchitectureOpen Smart Federation Architecture

Various and Massive Stream Data

Each data entry isn’t significant. The data are usually too redundant to store into an

RDB system

Develop an accessible data compression whose

compressed data are reusable for data searching and

analyzing

Cloud

Computing

Big Data

Related worksRelated works

4

∗ Problem: Existing methods are inconvenient for

reusing the compressed data, because they must follow

the decompression process.

Amir & Benson ‘92Amir & Benson ‘92

Kida et al.’98, ’99, ’00Kida et al.’98, ’99, ’00

Kieffer & Yang ‘00Kieffer & Yang ‘00

Larsson & Moffat ‘99Larsson & Moffat ‘99

Brisaboa et al. ’03, ‘10Brisaboa et al. ’03, ‘10 Kida ’09, ‘10Kida ’09, ‘10

Tunstall ‘67Tunstall ‘67

Klein & Shapira ‘08Klein & Shapira ‘08

Yoshida & Kida ‘12Yoshida & Kida ‘12

Dawn of Compressed Pattern Matching

Efficient CPM Algorithms

Dence codings for CPM

Root of VF codes

Suffix tree based VF coding

Efficient STVF coding algorithms

Combination of Grammar Comp. & VF Codes

∗ Originality: We have data compression techniques

that can search keywords on compressed data

directly without decompressing and reach a relatively

good compression performance.

VariableVariable--toto--Fixed Length CodesFixed Length Codes

5

∗ Compression method that splits the input text into

variable length substring and then converts them

into fixed length codewords.

∗ Strong point: Easy to handle the compressed data

=> Enables fast information retrieval or data mining

∗ Weak point: Hard to get a good compression ratio

Grammar

Compressio

ns

model data very

well

VF codes

provide high

accessibility

Satisfy both of high comp. ratio and accessibility!

6

Input Text

Fixed Length Variable Length

Compressed Text

Fixed Length

FF Code(Fixed length to Fixed

length code)

VF Code(Variable length to Fixed

length code)

Variable Length

FV Code(Fixed length to

Variable length code)

VV Code(Variable length to Variable

length code)

TunstallCode

Variations of codesVariations of codes

GrammarGrammar--based compressionbased compression

ABDABCABCCABDABC

E → ABCF → ABDEFECF

0101110011101000011100・・・

Input text

Grammar

7

Compressed

text

Encode the

grammar

Construct a (context

free) grammar that

generates only the

input text

Replace most frequent bigram into a new symbol

ReRe--pair algorithmpair algorithm

dictionary

D → AA

E → DA

F → EB

G → CF

Encode with

variable length code (a variation of Huffman coding) 8

Proposed MethodProposed Method

(Re(Re--Pair VF codes Pair VF codes [Kida&Yoshida [Kida&Yoshida

DCC2013]DCC2013]))

9 2013/9/29Compact Data Structure for Bigdata @Shonan meeting

∗ In the Re-Pair algorithm, symbol replacement does not always imply improvement of compression ratio.➩We want to encode with the best intermediate dictionary, which gives highest compression ratio.

∗ We find the best dictionary and then expand the rules that do not included in it when translating to a grammar.

∗ Finally, we encode the obtained grammar by Fixed length codes.

10

The basic ideaThe basic idea

sum: bits( ) ( ) Σ++ sns log2

AADAEBCFGEFFIGHI EIKJBCEFICEK

s

n

ns +2

The number of sort of symbols: Σ+s

We need bits for each symbol.( ) Σ+slog

Compressed sequence:

Dict.D → AA

E → DA

G → CF

F → EB

H → GE

I → FF

K → HI

J → IG

EIKJBCEFICEK

Calculate this value for each substitution to store the size of dictionary that gives the highest compression ratio. 11

How to find the best?How to find the best?

DictionaryD → AA

E → DA

G → CF

F → EB

H → GE

I → FF

K → HI

J → IG

Compressed sequence:EIKJBCEFICEK

AADAEBCF EFFGEFFFFFFGBCEFFFCEGEFF

Compressed sequence by the best dictionary:EFFGEFFFFFFGBCEFFFCEGEFF

expand this part

12

RRewind the dictionaryewind the dictionary

∗ Method

∗ VF code via Re-pair (Re-Pair-VF)

∗ Original Re-pair (Re-Pair)

∗ Tunstall code

∗ STVF code (proposed by Kida)

∗ gzip (zgrep which decompress the data then search

keywords)

∗ Data

∗ dazai.utf.txt (Japanese text (UTF-8 encoded), 7MB)

∗ dblp2003.xml (XML data, 90MB)

∗ gbhtg119 (DNA data, 87MB)

∗ reuters21578 (English text, 19MB)

ExperimentsExperiments

We compared compression ratios, compression times,

decompression times, and pattern matching speeds among these

methods.

13

Compression ratio Compression ratio [Yoshida&Kida2013][Yoshida&Kida2013]

14Re-Pair-VF overcomes gzip!

0

20

40

60

80

dazai.utf.txt dblp2003.xml gbhtg119 reuters21578

Com

pres

sion

rat

io (

%)

Re-Pair-VFRe-PairTunstallSTVFgzip

Compression speed Compression speed [Yoshida&Kida2013][Yoshida&Kida2013]

15

0

5

10

15

20

25

30

35

dazai.utf.txt dblp2003.xml gbhtg119 reuters21578

Compression speed (MB/sec)

Re-Pair-VF

Re-Pair

Tunstall

STVF

gzip

Decompression speed Decompression speed [Yoshida&Kida2013][Yoshida&Kida2013]

16

0

20

40

60

80

100

120

140

dazai.utf.txt dblp2003.xml gbhtg119 reuters21578

Dec

ompr

essi

on s

peed

(M

B/se

c)

Re-Pair-VF

Re-Pair

Tunstall

STVF

gzip

Search speed Search speed [Yoshida&Kida2013] [Yoshida&Kida2013]

(for reuters21578[English news paper])(for reuters21578[English news paper])

17

0

50

100

150

200

0 10 20 30 40 50

Thro

ughp

ut (

MB/

sec)

Pattern length

Re-pair-VF best

Tunstall

gzip

Application to large data [Sekine Application to large data [Sekine etaletal.2013].2013]

(English 2.2GB text from Pizza&Chili corpus)(English 2.2GB text from Pizza&Chili corpus)

18

Our proposed method achieved a good compression ratio comparable to bzip2 (about 27%) for large texts(codeword length 19bit, block size 128MB, ratio of shared dictionary 3/8, sampling text size 128MB)

Application to large data Application to large data [Sekine etal.2013][Sekine etal.2013]

(English 2.2GB text from Pizza&Chili corpus)(English 2.2GB text from Pizza&Chili corpus)

19

The proposed method takes much time for compressing, but it can decompress at high speed!

SummarySummary

20

∗ We focused attention to VF codes, which are useful

for reusing compressed data, and developed an

efficient VF coding based on Re-pair algorithm.

∗ The coding enables us to do fast keyword search, in

addition to make partial decompression and re-

compression easy.

Future works:

∗ Improvement of compression speed

∗ Realizing pinpoint access to compressed data with an

original text position.

∗ Development an online coding algorithm

Thank you for your kind Thank you for your kind

attention!attention!

21

Takuya Kida received the B.S. degree in

Physics, the M.S. and Dr. (Information

Science) degree all from Kyushu University

in 1997, 1999, and 2001, respectively. He

was a Full-time Lecturer of Kyushu University

Library from October 2001 to March 2004.

He is currently an Associate Professor of

Division of Computer Science, Graduate

School of Information Science and

Technology, Hokkaido University, since April

2004. His research interests include Text

Algorithms and Data Structures, Information

Retrieval, and Data Compression. He is a

member of IEICE, IPSJ, and DBSJ. 22

BiographyBiography