JP2017194803A - 符号化プログラム、符号化装置および符号化方法 - Google Patents
符号化プログラム、符号化装置および符号化方法 Download PDFInfo
- Publication number
- JP2017194803A JP2017194803A JP2016083964A JP2016083964A JP2017194803A JP 2017194803 A JP2017194803 A JP 2017194803A JP 2016083964 A JP2016083964 A JP 2016083964A JP 2016083964 A JP2016083964 A JP 2016083964A JP 2017194803 A JP2017194803 A JP 2017194803A
- Authority
- JP
- Japan
- Prior art keywords
- word
- dictionary
- code
- encoding
- dynamic
- 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
- 238000000034 method Methods 0.000 title claims description 27
- 230000003068 static effect Effects 0.000 claims abstract description 59
- 239000000284 extract Substances 0.000 claims abstract 3
- 230000008569 process Effects 0.000 claims description 14
- 238000000605 extraction Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 25
- 238000012545 processing Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 10
- WBMKMLWMIQUJDP-STHHAXOLSA-N (4R,4aS,7aR,12bS)-4a,9-dihydroxy-3-prop-2-ynyl-2,4,5,6,7a,13-hexahydro-1H-4,12-methanobenzofuro[3,2-e]isoquinolin-7-one hydrochloride Chemical compound Cl.Oc1ccc2C[C@H]3N(CC#C)CC[C@@]45[C@@H](Oc1c24)C(=O)CC[C@@]35O WBMKMLWMIQUJDP-STHHAXOLSA-N 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000017105 transposition Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
- H03M7/3088—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing the use of a dictionary, e.g. LZ78
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/123—Storage facilities
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】符号化装置100は、対象ファイルを静的辞書部121および動的辞書部122を用いて符号化する際に、動的辞書部122に登録される単語のうち、特定の単語群と符合群とを対応づけた外部辞書部221に含まれる単語を抽出し、該抽出される単語の外部辞書部221における符号と、動的に割り当てられる動的符号とを対応付け、動的辞書部122に登録する。
【選択図】図6
Description
図2は、実施例1に係るビットマップ型インデックスの生成処理の流れの一例を示す図である。図2に示すように、符号化装置は、特定のファイルに含まれる単語を静的辞書S0および動的辞書D0を用いて符号化する際に、特定のファイルから静的辞書に含まれない単語のうち外部辞書E0に含まれる単語を抽出する。符号化装置は、抽出される単語の外部辞書E0における符号と、動的に割り当てられる動的符号とを対応付けて動的辞書D0に登録する。これにより、符号化装置は、特定のファイルを符号化する際に動的辞書D0に登録された単語であっても、外部辞書E0に対応付けられた符号をともに登録することで、当該符号を複数のファイルで共通して用いることができる。この結果、符号化装置は、複数のファイルそれぞれの単語に関するビットマップ型インデックスを容易に生成できる。
図3は、実施例1に係る動的辞書の一例を示す図である。図3に示される動的辞書D0は、バッファ部D1とアドレステーブルD2とを含む。バッファ部D1は、文字列を記憶する。アドレステーブルD2は、動的コードと、格納位置と、データ長と、外部辞書IDと、単語コードとを対応付けて保持する。動的コードは、あらかじめ定められた固定長のコードであり、単語の文字列が登録された順に割り当てられる。ここでは、動的コードは、16進数「F」で始まる固定長3バイトのコードである。格納位置は、バッファ部D1に格納された文字列の位置を示す。データ長は、バッファ部D1に格納された文字列の長さ(バイト長)を示す。外部辞書IDは、単語が登録されている外部辞書のIDを示す。単語コードは、単語に割り当てられたコードであり、例えば圧縮符号である。かかる単語コードは、動的辞書D0に登録された単語であっても、同じ単語であれば、複数のファイルで共通して用いられる。
図4は、ビットマップ型インデックスの構成の一例を示す図である。図4に示すように、ビットマップ型インデックスBIは、超高頻度の単語、高頻度の単語および低頻度の単語に係る単語IDごとにビットマップを対応づける。ビットマップの各ビットが、当該ビットマップに対応する単語IDが示す単語が含まれているか否かを表す。
図5は、符号化ファイルの構成例を示す図である。図5に示すように、符号化ファイルF2は、ヘッダ部と、符号化データと、トレーラ部とを有する。符号化データは、複数のファイルそれぞれの符号化された単語コード群を記憶する。トレーラ部は、各ファイルのアドレス、各ファイルの動的辞書D0の情報、ビットマップ型インデックスBIなどを記憶する。各ファイルのアドレスは、複数のファイルが符号化された各符号化データを格納するアドレスを示す。各ファイルのアドレスは、一例として、符号化データの先頭からの相対アドレスである。各ファイルの動的辞書D0の情報は、各ファイルについて、図3に示した動的辞書の情報に対応する。ビットマップ型インデックスBIは、複数のファイルに対応するビットマップ型インデックスを示す。ヘッダ部には、各ファイルのアドレスへのポインタやトレーラ部に格納された動的辞書D0へのポインタが格納される。符号化装置は、複数のファイルを符号化すると、符号化された結果である各符号化データを符号化ファイルF2に格納し、格納した各アドレスを各ファイルのアドレスに格納する。復号化処理では、ヘッダ部の各ファイルのアドレスへのポインタを利用して、トレーラ部の各ファイルのアドレスから復号化対象のファイルのアドレスを参照する。復号化処理は、ヘッダ部の動的辞書D0へのポインタを利用し、動的辞書D0を参照する。
図6は、実施例1に係る符号化装置の構成の一例を示す機能ブロック図である。図6に示すように、符号化装置100は、マスタ装置200と接続する。
次に、図6に示した符号化部110の処理手順について、図7を参照して説明する。図7は、実施例1に係る符号化処理のフローチャートの一例を示す図である。
図8は、実施例2に係るビットマップ型インデックスの階層化の一例を示す図である。図8に示すように、ビットマップ型インデックスBIは、所定のファイル数n単位で分割されている。nは例えば256である。分割されたそれぞれを、セグメントと称す。
図9は、階層化されたセグメント群を用いたファイルの絞込み例を示す図である。図9では、説明を単純化するため、第0階層のセグメントのファイル数nを4とし、mを4とする。したがって、第0階層セグメントsg0(1)〜sg0(16)まで存在することになるが、図示されていないセグメントについては説明を省略する。また、図9では、最上位階層を第2階層として説明する。また、図9において、実線矢印はAND結果にしたがって下位階層のセグメントを指定していることを示しており、点線矢印は実際には指定されないが、指定されたセグメントと対比するため図示している。また、図9では、検索文字列として「Sherlock△Baker」が入力された場合とする。なお、P(s)は、単語sの単語IDを示すものとする。また、図9における削除マップは、ファイルごとに削除されたか否かを示すビットマップを示し、「1」である場合には削除されたことを示し、「0」である場合には削除されていないことを示す。なお、検索において、削除マップは反転された後に、他のビットマップとのAND演算が行われる。
図10は、階層化されたセグメント群を実装したコンピュータシステムの構成例を示す図である。図10では、m個のセグメントを1アーカイブファイルとする。なお、「AX(Y)」は、アーカイブファイルの符号であり、Xは階層番号を示しており、Yはアーカイブ番号を示している。したがって、AX(Y)の場合は、第X階層のY番目のアーカイブファイルとなる。例えば、アーカイブファイルA0(1)は、第0階層のセグメントsg0(1)〜sg0(m)の集合である。
以下、上述の実施形態における変形例の一部を説明する。下記の変形例のみでなく、本発明の本旨を逸脱しない範囲の設計変更は適宜行われうる。
下記に、上述の実施形態に用いられるハードウェア及びソフトウェアについて説明する。図11は、コンピュータ1のハードウェア構成例を示す図である。コンピュータ1は、例えば、プロセッサ301、RAM(Random Access Memory)302、ROM(Read Only Memory)303、ドライブ装置304、記憶媒体305、入力インターフェース(I/F)306、入力デバイス307、出力インターフェース(I/F)308、出力デバイス309、通信インターフェース(I/F)310、SAN(Storage Area Network)インターフェース(I/F)311およびバス312などを含む。それぞれのハードウェアはバス312を介して接続されている。
110 符号化部
111 ファイルリード部
112 判定部
113 第1符号化部
114 第2符号化部
115 更新部
116 インデックス設定部
117 ファイルライト部
120 記憶部
121 静的辞書部
122 動的辞書部
123 ビットマップ型インデックス部
200 マスタ装置
211 単語コード割当部
221 外部辞書部
Claims (4)
- コンピュータに、
対象ファイルを静的辞書および動的辞書を用いて符号化する際に、前記動的辞書に登録される単語のうち、特定の単語群と符合群とを対応づけた外部辞書に含まれる単語を抽出し、
該抽出される単語の前記外部辞書における符号と、動的に割り当てられる動的符号とを対応付け、前記動的辞書に登録する
処理を行わせる符号化プログラム。 - 前記符号化の際に、複数のファイルのそれぞれについて複数の所定の単語がそれぞれ存在するか否かを示す存否情報に、符号化対象のファイルに該抽出される単語が存在することを示すインデックス情報を生成する
ことを特徴とする請求項1に記載の符号化プログラム。 - 対象ファイルを静的辞書および動的辞書を用いて符号化する際に、前記動的辞書に登録される単語のうち、特定の単語群と符合群とを対応づけた外部辞書に含まれる単語を抽出する抽出部と、
前記抽出部によって抽出される単語の前記外部辞書における符号と、動的に割り当てられる動的符号とを対応付け、前記動的辞書に登録する登録部と、
を有することを特徴とする符号化装置。 - コンピュータが、
対象ファイルを静的辞書および動的辞書を用いて符号化する際に、前記動的辞書に登録される単語のうち、特定の単語群と符合群とを対応づけた外部辞書に含まれる単語を抽出し、
該抽出される単語の前記外部辞書における符号と、動的に割り当てられる動的符号とを対応付け、前記動的辞書に登録する
処理を実行する符号化方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016083964A JP6648620B2 (ja) | 2016-04-19 | 2016-04-19 | 符号化プログラム、符号化装置および符号化方法 |
US15/489,029 US9793920B1 (en) | 2016-04-19 | 2017-04-17 | Computer-readable recording medium, encoding device, and encoding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016083964A JP6648620B2 (ja) | 2016-04-19 | 2016-04-19 | 符号化プログラム、符号化装置および符号化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017194803A true JP2017194803A (ja) | 2017-10-26 |
JP6648620B2 JP6648620B2 (ja) | 2020-02-14 |
Family
ID=60021677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016083964A Active JP6648620B2 (ja) | 2016-04-19 | 2016-04-19 | 符号化プログラム、符号化装置および符号化方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9793920B1 (ja) |
JP (1) | JP6648620B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019121861A (ja) * | 2017-12-28 | 2019-07-22 | 富士通株式会社 | 符号化プログラム、動的辞書の生成プログラム、符号化方法、動的辞書の生成方法、符号化装置および復号化装置 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10263638B2 (en) * | 2016-05-31 | 2019-04-16 | Texas Instruments Incorporated | Lossless compression method for graph traversal |
JP6834327B2 (ja) * | 2016-10-06 | 2021-02-24 | 富士通株式会社 | 符号化プログラム、符号化装置および符号化方法 |
JP6805720B2 (ja) | 2016-10-21 | 2020-12-23 | 富士通株式会社 | データ検索プログラム、データ検索装置およびデータ検索方法 |
JP7059516B2 (ja) * | 2017-03-29 | 2022-04-26 | 富士通株式会社 | 符号化プログラム、符号化装置および符号化方法 |
JP7210130B2 (ja) * | 2017-04-07 | 2023-01-23 | 富士通株式会社 | 符号化プログラム、符号化方法および符号化装置 |
US11387844B2 (en) * | 2019-04-19 | 2022-07-12 | Preferred Networks, Inc. | Data compression method, data compression apparatus, data decompression method, data decompression apparatus and data storage system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09214352A (ja) * | 1996-01-31 | 1997-08-15 | Hitachi Ltd | データ圧縮方法および装置 |
JPH10261969A (ja) * | 1997-03-19 | 1998-09-29 | Hitachi Ltd | データ圧縮方法および装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5951623A (en) * | 1996-08-06 | 1999-09-14 | Reynar; Jeffrey C. | Lempel- Ziv data compression technique utilizing a dictionary pre-filled with frequent letter combinations, words and/or phrases |
US5850565A (en) * | 1996-08-26 | 1998-12-15 | Novell, Inc. | Data compression method and apparatus |
JP4874162B2 (ja) | 2007-04-27 | 2012-02-15 | ルネサスエレクトロニクス株式会社 | データ展開装置及びデータ展開方法 |
US7982636B2 (en) * | 2009-08-20 | 2011-07-19 | International Business Machines Corporation | Data compression using a nested hierachy of fixed phrase length static and dynamic dictionaries |
US8200641B2 (en) * | 2009-09-11 | 2012-06-12 | Dell Products L.P. | Dictionary for data deduplication |
JP5741699B2 (ja) | 2011-09-14 | 2015-07-01 | 富士通株式会社 | 抽出方法、抽出プログラム、抽出装置、および抽出システム |
US8872677B2 (en) * | 2013-03-15 | 2014-10-28 | Dialogic Networks (Israel) Ltd. | Method and apparatus for compressing data-carrying signals |
-
2016
- 2016-04-19 JP JP2016083964A patent/JP6648620B2/ja active Active
-
2017
- 2017-04-17 US US15/489,029 patent/US9793920B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09214352A (ja) * | 1996-01-31 | 1997-08-15 | Hitachi Ltd | データ圧縮方法および装置 |
JPH10261969A (ja) * | 1997-03-19 | 1998-09-29 | Hitachi Ltd | データ圧縮方法および装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019121861A (ja) * | 2017-12-28 | 2019-07-22 | 富士通株式会社 | 符号化プログラム、動的辞書の生成プログラム、符号化方法、動的辞書の生成方法、符号化装置および復号化装置 |
JP7159557B2 (ja) | 2017-12-28 | 2022-10-25 | 富士通株式会社 | 動的辞書の生成プログラム、動的辞書の生成方法および復号化装置 |
Also Published As
Publication number | Publication date |
---|---|
JP6648620B2 (ja) | 2020-02-14 |
US9793920B1 (en) | 2017-10-17 |
US20170302292A1 (en) | 2017-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6648620B2 (ja) | 符号化プログラム、符号化装置および符号化方法 | |
CN107305586B (zh) | 索引生成方法、索引生成装置及搜索方法 | |
JP6742692B2 (ja) | 符号化プログラムおよび伸長プログラム | |
JP6531398B2 (ja) | プログラム | |
JP6641857B2 (ja) | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 | |
EP3236367B1 (en) | Encoding program, encoding method, encoding device, retrieval program, retrieval method, and retrieval device | |
JP6540308B2 (ja) | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 | |
EP3306823B1 (en) | Encoding program, encoding apparatus and encoding method | |
US11055328B2 (en) | Non-transitory computer readable medium, encode device, and encode method | |
JP6032292B2 (ja) | 圧縮プログラム、圧縮装置、伸張プログラムおよび伸張装置 | |
CN106354746B (zh) | 搜索方法和搜索设备 | |
EP3236368A1 (en) | Encoding processing program, encoding processing device, encoding processing method, decoding processing program, decoding processing device, and decoding processing method | |
JP7159557B2 (ja) | 動的辞書の生成プログラム、動的辞書の生成方法および復号化装置 | |
JP2018067264A (ja) | データ検索プログラム、データ検索装置およびデータ検索方法 | |
JP7210130B2 (ja) | 符号化プログラム、符号化方法および符号化装置 | |
JP7003427B2 (ja) | 検索プログラム、情報処理装置および検索方法 | |
JP6737117B2 (ja) | 符号化データ検索プログラム、符号化データ検索方法および符号化データ検索装置 | |
JP2016134754A (ja) | 変換処理プログラム、情報処理装置および変換処理方法 | |
JP6717153B2 (ja) | インデックス生成プログラム、インデックス生成装置、インデックス生成方法、検索プログラム、検索装置および検索方法 | |
JP2020061641A (ja) | 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法および復号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190115 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20191211 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20191217 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191230 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6648620 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |