JP5808359B2 - 文字列圧縮及び復元システム並びに方法 - Google Patents

文字列圧縮及び復元システム並びに方法 Download PDF

Info

Publication number
JP5808359B2
JP5808359B2 JP2013080291A JP2013080291A JP5808359B2 JP 5808359 B2 JP5808359 B2 JP 5808359B2 JP 2013080291 A JP2013080291 A JP 2013080291A JP 2013080291 A JP2013080291 A JP 2013080291A JP 5808359 B2 JP5808359 B2 JP 5808359B2
Authority
JP
Japan
Prior art keywords
character string
sample
replacement
string
partial
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
JP2013080291A
Other languages
English (en)
Other versions
JP2014204356A (ja
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013080291A priority Critical patent/JP5808359B2/ja
Publication of JP2014204356A publication Critical patent/JP2014204356A/ja
Application granted granted Critical
Publication of JP5808359B2 publication Critical patent/JP5808359B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、文字列圧縮方法及び装置に係り、特に、置換方式における文字列の圧縮方式において、参照局所性を向上させるためのサンプル文字列(辞書)を用いた二段階置き換えによる文字列圧縮方法及び装置に関する。
具体的には、圧縮対象の入力文字列Nから適当な方法で取得したサンプル文字列(部分文字列集合からなる符号化辞書)を、圧縮を行う前に生成して、圧縮時に積極的にサンプル文字列内の部分文字列を参照するポインタに置換することで、復元処理の階層型メモリ構造における参照局性を改善する技術に関する。
入力された文字列を圧縮する方法としては、以下のような方法がある。
圧縮するべきデータ列を入力として、ハッシュを元にした探索データ構造を用いて適宜現在の圧縮対象文字列と、過去の出現文字列を比較し、出現しているものを過去の出現文字列へのポインタに置き換えることで圧縮を実現する方法がある(例えば、特許文献1参照)。例えば、図1の例では、1回目に出現した文字列「abcd」に対し、2回目以降に同一の文字列「abcd」が出現した場合に、置換ポインタを1回目に出現した文字列のポインタに置き換えることで文字列を圧縮していく。
また、圧縮するべきデータ列を入力として、現在の圧縮対象の文字列と過去の一致文字列を比較判定する処理を適用することで効率的なデータ圧縮を行う方法がある(例えば、特許文献2参照)。
また、辞書に基づく符号化を行う複数のLZ系圧縮を、それらの「圧縮率」を評価しながら適用するLZ圧縮法を切り替えることで圧縮率を効率化する方法がある(例えば、特許文献3参照)。
Dean K. Gibson, Mark D. Graybill, "Apparatus and method for very high data rate-compression incorporating lossless data compression and expansion utilizing a hashing technique". US Patent 5,049,881. 特開2003-179501号公報 特許第3065591号公報
しかしながら、上記従来の圧縮方法は、図1に示すように、過去に出現した任意位置の文字列と、現在の文字列が一致した場合に、その過去の該出現文字列へのポインタに置き換えることで圧縮を実現する方法であり、過去の任意の位置に出現した文字列に対するポインタに置き換えていくため、復元時にそのポインタを参照して元の文字列に置き換える際に、特にルールを設けていないため、任意のポインタを参照することになり、メモリ上のどの位置を参照してよいかを特定することができず、ポインタの参照先の参照局所性が保障されない。特に、圧縮対象となる文字列のサイズが100M〜1G等の大きなサイズの場合は復元処理が遅延する可能性がある。
また、特許文献3の方法は、複数のLZ圧縮を組み合わせて使用する技術であるが、「圧縮率」のみを評価対象にそれらの方法を切り替えているため、単純にこれらの組み合わせだけでは復元時の参照局所性の向上、さらには復元速度の向上効果は得られない、という問題がある。
本発明は、上記の点に鑑みなされたもので、従来技術のポインタ置換の前に、サンプル文字列(辞書)を用いることで、復元時の参照局所性を改善し、復元速度を向上させることが可能な文字列圧縮方法及び装置を提供することを目的とする。
本発明は、置換方式による文字列圧縮及び復元システムであって、長さMのサンプル文字列を生成するために、長さNの入力文字列の開始位置i*N/(M/S)から長さSの部分文字列を取得して、取得した部分文字列を連結してサンプル文字列記憶手段に格納するサンプル文字列生成手段と、
前記入力文字列の開始位置iから始まる部分文字列と、前記サンプル文字列記憶手段から読み出した前記サンプル文字列の最大一致長LMと該部分文字列の出現位置PMを求め、前記入力文字列の開始位置i番目から始まる部分文字列と該入力文字列の0番目からi−1番目までに出現した部分文字列との最大一致長LNと、該出現した部分文字列の出現位置P N を求め、該最大一致長LNが該最大一致長LMより大きい場合(LN>LM)は、置換ポインタを該入力文字列の過去の位置を示すものとし、該最大一致長LMが該最大一致長LN以上である場合(LM≦LN)は、該置換ポインタをサンプル文字列上の位置を示すものとし、該入力文字列の[i…i+L+1]の部分文字列を出現済みの部分文字列として動的辞書記憶手段に格納し、置換ポインタ列と該サンプル文字列を出力する置換ポインタ生成手段と、
を有する符号化手段と、
前記置換ポインタ生成手段から前記置換ポインタ列と前記サンプル文字列を取得し、置換ポインタがサンプル文字列上の位置を示している場合には、該置換ポインタが参照するサンプル文字列上の部分文字列を出力し、該置換ポインタが前記入力文字列の過去の位置を示す場合には、該置換ポインタが参照する既に復元済みの部分文字列を出力する置換ポインタ分析手段を有する復号手段と、を有する。
本発明は、固定長間隔サンプル方式によりまとめられたサンプル文字列Mは非常に小さい領域(M<<Nを前提とし、入力文字列Nに対して1%以下程度(例えば、1M,10M程度))としているため、サンプル文字列M上の部分文字列を参照している置換ポインタは、この局所領域を積極的に参照することから、復元時の参照局性が改善し、従来方式と比べて10倍程度の復元速度が期待できる。特に、入力文字列N中により多くの重複文字列を含む場合(サーバやサービスが出力する一定規則に従ったログ出力など)により高い効果が期待できる。
置換方式による文字列の圧縮を説明するための図である。 本発明の一実施の形態における概要を示す図である。 本発明の一実施の形態における文字列圧縮装置の構成図である。 本発明の一実施の形態における文字列圧縮処理のフローチャートである。 本発明の一実施の形態におけるサンプル文字列生成部の処理のフローチャートである。 本発明の一実施の形態におけるサンプル文字列生成部の処理を示す図である。 本発明の一実施の形態における置換ポインタ生成部の処理のフローチャートである。 本発明の一実施の形態における動的辞書記憶部の例である。 本発明の一実施の形態における置換ポインタ記憶部の例である。 本発明の一実施の形態における置換ポインタ分析部の処理のフローチャートである。 本発明の効果を示す図である。
以下、図面と共に本発明の実施の形態を説明する。
最初に本発明の概要を説明する。
図2は、本発明の一実施の形態における概要を説明するための図である。
本発明では、サンプル文字列を用いた置換方式の圧縮の改善を目的としており、記憶部(サンプル文字列M記憶部)に格納されているサンプル文字列M(但し、M<<入力文字列Nとする)内の部分文字列と置換することにより、サンプル文字列Mは非常に小さい(全入力文字列Nの1%)という前提の下、参照局所性が改善される。なお、上記の1%は、実験により求められた数値である。図2において、サンプル文字列上にないパターンは従来技術による置換方式を適用するものとする。
図3は、本発明の一実施の形態における文字列圧縮装置の構成を示す。
同図に示す文字列圧縮装置は、符号化部100と復号部200を有する。
符号化部100は、サンプル文字列生成部110、サンプル文字列取得部120、置換ポインタ生成部130、サンプル文字列探索部140、サンプル文字列M記憶部150、動的辞書探索・更新部160、動的辞書記憶部170、置換ポインタ記憶部180を有する。
復号部200は、置換ポインタ分析部210、入力サンプル文字列記憶部220、出力文字列記憶部230を有する。
上記の構成における処理を以下に示す。
最初に、符号化部100の処理について説明する。
図4は、本発明の一実施の形態における文字列圧縮処理のフローチャートである。
ステップ100) 符号化部100は、入力から圧縮対象の入力文字列Nを受け取るまで待機する。
ステップ200) サンプル文字列生成部110は、入力文字列Nを引数としてサンプル文字列Mを生成する。
ステップ400) 置換ポインタ生成部130は、入力文字列Nを引数として置換ポインタを生成して置換ポインタ記憶部180に格納する。
次に、上記のステップ200のサンプル文字列生成部110の処理を説明する。
図5は、本発明の一実施の形態におけるサンプル文字列生成部の処理のフローチャートである。
ステップ210) サンプル文字列生成部110は、入力引数から入力文字列Nを受け取る。
ステップ220) サンプル文字列長をM(M<<N)、部分文字長をSとする。
ステップ230) 入力文字列の位置カウントiを0とする。
ステップ240) 入力文字列の開始位置i*N/(M/S)から長さSの部分も文字列を取得して、サンプル文字列M記憶部150に記録されている文字列の最後尾に連結する。
ステップ250) iを1インクリメントする。
ステップ260) M/Sがiより大きい場合はステップ240に移行し、そうでない場合は、当該処理を終了する。
上記の符号化部100のサンプル文字列生成部110は、図6に示すように、入力文字列Nが入力されると、サンプル文字列Mを生成する際に、固定サンプル長(部分文字列長)をSとして、入力文字列Nの位置0,N/(M/S),2N/(M/S),…のM/Sの箇所において、部分文字列長Sを取得して、連結してサンプル文字列Mとする。
サンプル文字列取得部120は、サンプル文字列生成部110で生成されたサンプル文字列Mをサンプル文字列M記憶部150に追加格納する。
次に、上記のステップ300の置換ポインタ生成部130の処理を説明する。
図7は、本発明の一実施の形態における置換ポインタ生成部の処理のフローチャートである。
ステップ301) 置換ポインタ生成部130は、入力引数から入力文字列Nを受け取る。
ステップ302) 入力文字列の位置カウントiを0とする。
ステップ303) サンプル文字列探索部140に対して、入力文字列Nの開始位置i番目から始まる部分文字列と、サンプル文字列M記憶部150のサンプル文字列M上の文字列との最大一致長LMと出現位置PMの計算を指示する。サンプル文字列探索部140は、入力文字列Nとサンプル文字列M記憶部150を参照して、サンプル文字列MのLMとその出現位置PMを計算し、置換ポインタ生成部130に返却する。
ステップ304) 置換ポインタ生成部130は、ステップ303と同様に、動的辞書探索・更新部160に対して、入力文字列Nの開始位置i番目から始まる部分文字列と入力文字列の[0…i−1]までに出現した部分文字列との最大一致長LNとその出現位置PNの計算を指示する。動的辞書探索・更新部160は、入力文字列Nの開始位置i番目から始まる部分文字列と入力文字列の[0…i−1]を比較して最大一致長LNを求め、さらに、最大一致した部分文字列に基づいて動的辞書記憶部170を参照して、出現位置PNを取得する。動的辞書記憶部170は、図8に示すように、出現文字列と出現位置を格納する辞書であり、出現位置は、例えば、入力文字列Nが「zxywe…」であった場合に、"zxy"の出現位置を"0"、"xyw"の出現位置を"1"、"ywe"の出現位置を"2"のように1文字ずつスライドさせて動的辞書記憶部170に登録する。
ステップ305) ステップ303で求められた最大一致長LMとステップ304で求められた最大一致長LNを比較し、LM<LNであればステップ306に移行し、LM≧LNであればステップ308に移行する。
ステップ306) 置換ポインタ生成部130は、LM<LNであるとき(過去の文字列N系列上に出現した場合)、置換ポインタフラグFを0に設定する。つまり、置換ポインタは入力文字列Nの過去の位置となる。
ステップ307) 最大一致長LをLNとし、ポインタをP N とし、ステップ310に移行する。
ステップ308) 置換ポインタ生成部130は、LM≧LNであるとき(サンプル文字列M上に出現した場合)、置換ポインタフラグFを1に設定する。つまり、置換ポインタは、サンプリング文字列M上の位置となる。
ステップ309) 最大一致長LをLMとし、ポインタをサンプル文字列Mの出現位置PMとする。
ステップ310) 上記のステップ306、ステップ308の置換ポインタフラグFと置換ポインタ(L/P/文字列Nの(i+L+1)番目の文字)を置換ポインタ記憶部180に格納する。
置換ポインタ記憶部180の例を図9に示す。置換ポインタ記憶部180は、置換ポインタ種別フラグと置換ポインタを格納する。置換ポインタ種別フラグが"0"である場合は、置換ポインタは入力文字列Nの過去の位置を表し、"1"である場合は、置換ポインタはサンプル文字列M上の位置を表す。置換ポインタは、{先頭からの位置、長さ、置換文字列の終端文字}の組で構成される。図9の例において、置換ポインタ記憶部180の1番目のエントリの置換ポインタ種別フラグは、"1"であるので、置換ポインタがサンプル文字列M上の位置を示す。[サンプル文字列M:abcdefg…]、[入力文字列N:zxywefghic…abcdk…ef ghij…]であるとき、サンプル文字列Mの"abcd"と入力文字列Nの"abcd"の最大一致長Lは"4"であり、サンプル文字列の開始位置Pは0番目であり、L/P/入力文字列Nの(i+L+1)番目の文字が"k"であるので、置換ポインタは、「0,4,'k'」となる。
ステップ311) 入力文字列Nの[i…i+L+1]の部分文字列を動的辞書探索・更新部160を用いて出現済みの部分文字列として、動的辞書記憶部170に登録する。
ステップ312) iをi=i+L+1とする。
ステップ313) i<全入力文字列Nであればステップ303に移行し、そうでない場合は当該処理を終了する。
上記の処理の後、置換ポインタ生成部130は、置換ポインタ記憶部180から置換ポインタ列とサンプル文字列Mを復号部200の置換ポインタ分析部210に出力する。
以下、図4のステップ400の復号部200の置換ポインタ分析部210について説明する。復号部200は、置換ポインタ生成部130から出力された置換ポインタ列とサンプル文字列から文字列Nを復元する。
図10は、本発明の一実施の形態における置換ポインタ分析部の処理のフローチャートである。
ステップ401) 置換ポインタ分析部210は、入力引数から置換ポインタ列とポインタ文字列Mを符号化部100から受け取る。
ステップ402) 置換ポインタ分析部210は、受け取ったサンプル文字列Mを入力サンプル文字列記憶部220に格納する。
ステップ403) 置換ポインタ総数をZに設定する。
ステップ404) 置換ポインタのカウンタiを0とする。
ステップ405) ステップ401で取得した置換ポインタ列からi番目の置換ポインタに含まれる置換ポインタフラグFを取得する。
ステップ406) 置換ポインタフラグFが1であるかを判定し、1であればステップ408に移行し、そうでなければステップ407に移行する。
ステップ407) 置換ポインタFが参照する既に復元済みの部分文字列を出力文字列記憶部230に出力し、ステップ409に移行する。
ステップ408) iを1インクリメントする。
ステップ409) i<Zであれば、ステップ405に移行し、そうでなければ、当該処理を終了する。
上記の処理により置換ポインタ列は2度以上出現した文字列を初回に出現した文字列の位置のポインタに置換することにより、ポインタが参照している先の文字列を単純に複製していくだけで、元の文字列Nを復元することができる。
上記のように、本発明は、圧縮対象の入力文字列Nから全体の1%以下の部分文字列を固定間隔でサンプリングを行うことで、動的辞書として保存し、圧縮時置き換える文字列のパターンが動的辞書上に存在する場合にはその文字列を、そうでない場合には過去の出現文字列を参照するよう置き換えを実施する。これにより、図11に示すように、本発明(実線)は、従来技術(点線)に比べて、復元時において、データサイズの大きい領域(512K〜100M)で5〜10倍程度の復元速度を得ることができる。なお、図11の測定条件としては、マシン:Xeon5670(メモリ16Gバイト搭載)により、システムコマンドdstatのCSVログ100Mバイトのデータを使用した。
なお、上記の図3に示す文字列圧縮装置の構成要素の動作をプログラムとして構築し、文字列圧縮装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
100 符号化部
110 サンプル文字列生成部
120 サンプル文字列取得部
130 置換ポインタ生成部
140 サンプル文字列探索部
150 サンプル文字列M記憶部
160 動的辞書探索・更新部
170 動的辞書記憶部
180 置換ポインタ記憶部
200 復号部
210 置換ポインタ分析部
220 入力サンプル文字列記憶部
230 出力文字列記憶部

Claims (4)

  1. 置換方式による文字列圧縮及び復元システムであって、
    長さMのサンプル文字列を生成するために、長さNの入力文字列の開始位置i*N/(M/S)から長さSの部分文字列を取得して、取得した部分文字列を連結してサンプル文字列記憶手段に格納するサンプル文字列生成手段と、
    前記入力文字列の開始位置iから始まる部分文字列と、前記サンプル文字列記憶手段から読み出した前記サンプル文字列の最大一致長LMと該部分文字列の出現位置PMを求め、前記入力文字列の開始位置i番目から始まる部分文字列と該入力文字列の0番目からi−1番目までに出現した部分文字列との最大一致長LNと、該出現した部分文字列の出現位置P N を求め、該最大一致長LNが該最大一致長LMより大きい場合は、置換ポインタを該入力文字列の過去の位置を示すものとし、該最大一致長LMが該最大一致長LN以上である場合は、該置換ポインタをサンプル文字列上の位置を示すものとし、該入力文字列の[i…i+L+1]の部分文字列を出現済みの部分文字列として動的辞書記憶手段に格納し、置換ポインタ列と該サンプル文字列を出力する置換ポインタ生成手段と、
    を有する符号化手段と、
    前記置換ポインタ生成手段から前記置換ポインタ列と前記サンプル文字列を取得し、置換ポインタがサンプル文字列上の位置を示している場合には、該置換ポインタが参照するサンプル文字列上の部分文字列を出力し、該置換ポインタが前記入力文字列の過去の位置を示す場合には、該置換ポインタが参照する既に復元済みの部分文字列を出力する置換ポインタ分析手段を有する復号手段と、
    を有することを特徴とするサンプル文字列(辞書)を用いた二段階置き換えによる圧縮及び復元システム。
  2. 前記サンプル文字列記憶手段は、前記入力文字列に対して1%以下程度の領域とする
    請求項1記載のサンプル文字列(辞書)を用いた二段階置き換えによる圧縮及び復元システム。
  3. 置換方式による文字列圧縮及び復元方法であって、
    サンプル文字列生成手段と、サンプル文字列記憶手段と、動的辞書記憶手段と、置換ポインタ生成手段とを有する符号化手段、及び、置換ポインタ分析手段を有する復号手段とを有するシステムにおいて、
    前記符号化手段の前記サンプル文字列生成手段が、長さMのサンプル文字列を生成するために、長さNの入力文字列の開始位置i*N/(M/S)から長さSの部分文字列を取得して、取得した部分文字列を連結してサンプル文字列記憶手段に格納するサンプル文字列生成ステップと、
    前記符号化手段の前記置換ポインタ生成手段が、前記入力文字列の開始位置iから始まる部分文字列と、前記サンプル文字列記憶手段から読み出した前記サンプル文字列の最大一致長LMと該部分文字列の出現位置PMを求め、前記入力文字列の開始位置i番目から始まる部分文字列と該入力文字列の0番目からi−1番目までに出現した部分文字列との最大一致長LNと、該出現した部分文字列の出現位置P N を求め、該最大一致長LNが該最大一致長LMより大きい場合は、置換ポインタを該入力文字列の過去の位置を示すものとし、該最大一致長LMが該最大一致長LN以上である場合は該置換ポインタをサンプル文字列上の位置を示すものとし、該入力文字列の[i…i+L+1]の部分文字列を出現済みの部分文字列として動的辞書記憶手段に格納し、置換ポインタ列と該サンプル文字列を出力する置換ポインタ生成ステップと、
    前記復号手段の前記置換ポインタ分析手段が、前記符号化手段より前記置換ポインタ列と前記サンプル文字列を取得し、置換ポインタがサンプル文字列上の位置を示している場合には、該置換ポインタが参照するサンプル文字列上の部分文字列を出力し、該置換ポインタが前記入力文字列の過去の位置を示す場合には、該置換ポインタが参照する既に復元済みの部分文字列を出力する置換ポインタ分析ステップと、
    を行うことを特徴とするサンプル文字列(辞書)を用いた二段階置き換えによる圧縮及び復元方法。
  4. 前記サンプル文字列記憶手段を、前記入力文字列に対して1%以下程度の領域とする
    請求項3記載のサンプル文字列(辞書)を用いた二段階置き換えによる圧縮及び復元方法。
JP2013080291A 2013-04-08 2013-04-08 文字列圧縮及び復元システム並びに方法 Active JP5808359B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013080291A JP5808359B2 (ja) 2013-04-08 2013-04-08 文字列圧縮及び復元システム並びに方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013080291A JP5808359B2 (ja) 2013-04-08 2013-04-08 文字列圧縮及び復元システム並びに方法

Publications (2)

Publication Number Publication Date
JP2014204356A JP2014204356A (ja) 2014-10-27
JP5808359B2 true JP5808359B2 (ja) 2015-11-10

Family

ID=52354417

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013080291A Active JP5808359B2 (ja) 2013-04-08 2013-04-08 文字列圧縮及び復元システム並びに方法

Country Status (1)

Country Link
JP (1) JP5808359B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022083682A1 (en) * 2020-10-21 2022-04-28 Beijing Bytedance Network Technology Co., Ltd. Sample string processing in intra coding

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683574A (ja) * 1991-03-20 1994-03-25 Fujitsu Ltd データ圧縮及び復元方式
JPH0628149A (ja) * 1992-07-10 1994-02-04 Fujitsu Ltd 複数種類データのデータ圧縮方法
WO1998034183A1 (fr) * 1997-02-03 1998-08-06 Hitachi, Ltd. Procede de recherche de chaines de caracteres et base de donnees de chaines de caracteres
JP3337633B2 (ja) * 1997-12-03 2002-10-21 富士通株式会社 データ圧縮方法及びデータ復元方法並びにデータ圧縮プログラム又はデータ復元プログラムを記録したコンピュータ読み取り可能な記録媒体
JP3555506B2 (ja) * 1999-06-17 2004-08-18 日本電信電話株式会社 文字列データ圧縮符号化装置及び文字列データ復元装置及び文字列データ演算処理装置
JP2002269139A (ja) * 2001-03-08 2002-09-20 Ricoh Co Ltd 文書検索方法
WO2004062110A1 (ja) * 2002-12-26 2004-07-22 Fujitsu Limited データ圧縮方法、プログラム及び装置

Also Published As

Publication number Publication date
JP2014204356A (ja) 2014-10-27

Similar Documents

Publication Publication Date Title
KR101841103B1 (ko) Vlsi 효율적인 허프만 인코딩 장치 및 방법
JP6319740B2 (ja) データ圧縮を高速化する方法、並びに、データ圧縮を高速化するためのコンピュータ、及びそのコンピュータ・プログラム
US9203887B2 (en) Bitstream processing using coalesced buffers and delayed matching and enhanced memory writes
JP4077409B2 (ja) 高速最長一致探索方法及び装置
US20120288088A1 (en) Method and system for compressing and encrypting data
US8692696B2 (en) Generating a code alphabet of symbols to generate codewords for words used with a program
CN106664101B (zh) 自适应速率压缩散列处理装置
JP2016533046A (ja) 復元中に予備拡張辞書を利用するデータ復元
JP2019036810A (ja) データ圧縮装置、データ復元装置、データ圧縮プログラム、データ復元プログラム、データ圧縮方法、およびデータ復元方法
JP2007043595A (ja) 可変長符号復号化方法および装置ならびにデータ伸長装置
CN114567331A (zh) 一种基于lz77的压缩方法、装置及其介质
JP5808359B2 (ja) 文字列圧縮及び復元システム並びに方法
US7889102B2 (en) LZSS with multiple dictionaries and windows
JP5808360B2 (ja) 文字列圧縮及び復元システム並びに方法
WO2018055160A1 (en) System level testing of entropy encoding
JP5808361B2 (ja) 文字列圧縮及び復元システム並びに方法
US8593310B1 (en) Data-driven variable length encoding of fixed-length data
RU2473960C2 (ru) Способ нахождения максимальных повторяющихся участков последовательности символов конечного алфавита и способ вычисления вспомогательного массива
Chakraborty et al. A Dictionary based Efficient Text Compression Technique using Replacement Strategy
Rincy et al. Preprocessed text compression method for Malayalam text files
US10826962B2 (en) Techniques for dynamic shared compression
Shravana et al. Review on lossless data compression using x-matchpro algorithm
CN115033381A (zh) 压缩文件的处理方法、装置、计算机设备及存储介质
JP5521064B1 (ja) Id付与装置、方法、及びプログラム
KR20130061254A (ko) 사전 자료구조 구현체에서의 압축/복원 방법 및 그 장치

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150331

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150512

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150810

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20150818

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: 20150904

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150908

R150 Certificate of patent or registration of utility model

Ref document number: 5808359

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150