JP5079110B2 - 圧縮された整数データを記憶・転送するためのシステム - Google Patents
圧縮された整数データを記憶・転送するためのシステム Download PDFInfo
- Publication number
- JP5079110B2 JP5079110B2 JP2011030873A JP2011030873A JP5079110B2 JP 5079110 B2 JP5079110 B2 JP 5079110B2 JP 2011030873 A JP2011030873 A JP 2011030873A JP 2011030873 A JP2011030873 A JP 2011030873A JP 5079110 B2 JP5079110 B2 JP 5079110B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- integer
- digits
- equal
- binary
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 85
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000002085 persistent effect Effects 0.000 claims description 4
- 238000007906 compression Methods 0.000 description 51
- 230000006835 compression Effects 0.000 description 51
- 238000005516 engineering process Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 239000003795 chemical substances by application Substances 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000013144 data compression Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000000523 sample Substances 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 241000611421 Elia Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 239000000700 radioactive tracer Substances 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000012800 visualization Methods 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
-
- 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/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
-
- 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/14—Conversion to or from non-weighted codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
13base10= 1101base2
ステップ44では、ステップ42におけるバイナリ値の桁数Nを決定する。
1011はN = 4桁を有する。
Nは、元の整数値xに含まれる最も大きな2のべき乗値の指数の整数値がN−1であるということから、数学的に決定される。別言すると、N-1= Log2 x に含まれる最大の整数、ということである。このことは、一般に、N−1= Log2 x と表記され、本明細書でもそのような表記を用いる。
N-1 = Log2 13 → N-1 = 3; N = 4.
Nを記述する他の手法は次のとおりである。即ち、Nは、xのバイナリ表記における桁数であり、N−1は、xのバイナリ表記から最上位ビット(MSB)を除外したものの桁数である。
4base10= 100base2
さらにステップ48では、Nのバイナリ表記の桁数N’を決定する。
100 は、N’ = 3 の桁数を有する。 N’-1 = 2
繰り返すが、N’は、Nに含まれる最も大きな2のべき乗値の指数の整数値がN’−1であることから、数学的に決定される。
N’-1 = Log2 4 → N’-1 = 2, N’ = 3
Eδ(x)1 = N’−1個のゼロ(ステップ48)
Eδ(x)2 = Nのバイナリ表記(ステップ42)
Eδ(x)3 = xのバイナリ表記の残りN−1桁(即ち、xのバイナリ表記からMSBを除いたもの)
それゆえ、Eδ(13)は次の(数1)のとおりである。
図2の従来技術は、整数0から16まで、及び、32、64、128に対するエリアスデルタコードを示している。
x=14base(10)=1110base(2)
である。
N-1 = log2 14 → N-1 = 3, N = 4
本技術分野の当業者であれば、整数値のバイナリ表記の桁数を決定する代替方法あるいは付加的な方法を理解することもあろう。
N’-1 = log2 N
N’-1 = log2 4 → N’-1 = 2, N’ = 3.
繰り返すが、本技術分野の当業者であれば、Nのバイナリ表記の桁数を決定する代替方法あるいは付加的な方法を理解することもあろう。
M(x)1 = N’ - 1 個のゼロ(ステップ114);
M(x)2 = xのバイナリ表示におけるビット数N(ステップ104);
M(x)3 = xのバイナリ表記の残りN-1桁(即ち、xのバイナリ表記からMSBを除いたもの)
である。
M(x)1 = N’ - 1 個のゼロ(ステップ114)
M(x)3 = xのバイナリ表記の残りN-1桁(即ち、xのバイナリ表記からMSBを除いたもの)
である。
M(14) = M(14)1にM(14)3を付加したもの
M(14)1 = N’ - 1 個のゼロ、即ち2個のゼロ → M(14)1 = 00;
M(14)3 = xのバイナリ表記からMSBを除いた残りN-1桁
x = 14のバイナリ表記は 1110 → M(14)3 = 110
M(14) = M(14)1 に M(14)3を付加したもの
M(14) = 00110
となる。
M(x)=00110の場合、先頭に2個のゼロの並びがある → N’-1=2, 及び N’=3
N’-1 = Log2 N
整数値が0から15の間に制限されているシステムにおいて、先頭にゼロが付いていないことは、整数値が0と1の間であることを示し、先頭にゼロが1個の場合は整数値が2から7の間であることを示し、先頭にゼロが2個(あるいはそれ以上)並んでいる場合は整数値が8から15の間であることを示す。
・0から3までの整数域の場合、与えられた高次圧縮値がその先頭に1個のゼロを有することは、その与えられた高次圧縮値がバイナリ表記で最大桁数N=2ビットを要する整数値であることを示す。
・0から15までの整数域の場合(上述の場合)、与えられた高次圧縮値がその先頭に2個のゼロを有することは、その与えられた高次圧縮値がバイナリ表記で最大桁数N=4ビットを要する整数値であることを示している。
・0から255までの整数域の場合、与えられた高次圧縮値がその先頭に3個のゼロを有することは、その与えられた高次圧縮値がバイナリ表記で最大桁数N=8ビットを要する整数値であることを示している。
・0から65535までの整数域の場合、与えられた高次圧縮値がその先頭に4個のゼロを有することは、その与えられた高次圧縮値がバイナリ表記で最大桁数N=16ビットを要する整数値であることを示している、等々。
このような技法と整数域の情報を用いることによって、デコードエンジン232は、高次圧縮値の先頭のゼロの個数だけから、その高次圧縮値がバイナリで最大桁数を要する数値を表していることを判断することができる。
J = 2N-1 = 23= 8
である。ステップ158では、受信/記憶された値M(x) から最上位ビットを除いたものを十進数へ変換し、第2の中間十進数値Kが決定される。これは、M(x)の後ろのN-1ビットである。上記のM(x) = 00110の例では、N=4と決定される。それゆえ、N-1 = 3 であり、M(x)の後ろの3桁は110である。従って、この例におけるM(x) のN-1桁の十進数変換値Kは次のとおり与えられる。
110base2 = Kbase10→ K = 6
x = J + K
x = 8 + 6 = 14
図4から理解されるように、高次圧縮技法によって整数値14はM(14) = 00110にエンコードされる。図8から理解されるように、高次圧縮値 00110 は、元の整数値14にデコードされる。
11base2 = 3base10 → N = 3
である。
J = 2N-1 =22 = 4
01base2 = Kbase10 → K = 1
x = J + K
x = 4 + 1 = 5
Claims (12)
- ソフトウエアアプリケーションにおいて使われる整数値であって、前記整数値のバイナリ表現が、前記ソフトウエアアプリケーションにて扱われるバイナリ数の最大桁数に等しい桁数を有する整数値をエンコードする方法であり、
a)前記整数値のバイナリ表記における桁数Nを決定するステップ;
b)Nのバイナリ表記における桁数N’を決定するステップ;
c)次の要素を有するように前記整数値をエンコードするステップ;
1)N’−1個のゼロに等しい第1要素;
2)第1要素に付け加えられる第2要素であり、前記整数値のバイナリ表記から最上位ビットを除いた値に等しい第2要素;
d)エンコードされた値を出力するステップ;
を備える方法。 - エンコードされた値を出力する前記ステップ(d)は、エンコードされた値を、ネットワーク接続を介して第1コンピュータデバイスから第2コンピュータデバイスへ転送するステップを備える請求項1に記載の方法。
- エンコードされた値を出力する前記ステップ(d)は、エンコードされた値を永続性記憶媒体へ記憶するステップを備える請求項1又は2に記載の方法。
- エンコードされた値を出力する前記ステップ(d)は、サブコンポーネントを一つずつ出力して前記エンコードされた値を出力するステップであって、最初に前記第1サブコンポーネントを、第2に前記第2サブコンポーネントをFIFOデータ構造体に出力するステップを備える請求項1から3のいずれか1項に記載の方法。
- エンコードされた値を出力する前記ステップ(d)は、サブコンポーネントを一つずつ出力して前記エンコードされた値を出力するステップであって、最初に前記第2サブコンポーネントを、第2に前記第1サブコンポーネントをLIFOデータ構造体に出力するステップを備える請求項1から3のいずれか1項に記載の方法。
- バイナリ表現における桁数が前記最大桁数を上限とする整数域に含まれる整数の個数が、2i(ただし、iは2のべき乗)に等しいことを特徴とする請求項1から5のいずれか1項に記載の方法。
- バイナリ表現における桁数が前記最大桁数を上限とする整数域に含まれる整数の個数が、4、16、256、及び、65536のいずれかであることを特徴とする請求項1から5のいずれか1項に記載の方法。
- (e)前記整数値の少なくとも一部を既定の定数分だけ上位又は下位へシフトすることによって、データシステム内の整数域であってバイナリ表現における桁数が前記最大桁数を上限とする整数域を正規化するステップ;
をさらに備える請求項1から7のいずれか1項に記載の方法。 - ウエブアプリケーションとウエブサイトのパフォーマンスの問題を検知し診断するモニタリングシステムにおいて実行される整数値のエンコード方法であって、
当該システムは、モニタリングソフトウエアアプリケーションと、当該モニタリングソフトウエアアプリケーションによってモニタされるモニタ対象ソフトウエアアプリケーションを含んでおり、
当該モニタ対象とモニタリングソフトウエアアプリケーションは、一つのコンピュータデバイス内の1つのプロセッサ上で動作するものであり、
前記1つのプロセッサは、前記モニタリングシステム内で用いられる整数値であって、その整数値のバイナリ表現が、前記モニタリングソフトウエアアプリケーションにて扱われるバイナリ数の最大桁数に等しい桁数を有する整数値をエンコードする当該方法を実行するものであり、
当該方法が、
a)前記整数値のバイナリ表記における桁数Nを決定するステップ;
b)Nのバイナリ表記における桁数N’を決定するステップ;
c)次の要素を有するように前記整数値をエンコードするステップ;
1)N’−1個のゼロに等しい第1要素;
2)第1要素に付け加えられる第2要素であり、前記整数値のバイナリ表記から最上位ビットを除いたものに等しい第2要素;
d)エンコードされた値を出力するステップ;
を備えるエンコード方法。 - 前記1つのプロセッサが、前記ステップa)からd)によってエンコードされた値をデコードする方法を実行するものであり、前記デコードする方法は、
e)エンコードされた値の先頭のゼロの個数を決定するステップ;
f)先頭のゼロの個数が、前記データシステムの前記最大整数値の前記最大バイナリ桁数のlog2 の値以上であるか否かを決定するステップ;
g)前記ステップ(e)にて、前記先頭のゼロの個数が、前記データシステムの前記最大整数値の前記最大バイナリ桁数のlog2 の値以上であると決定された場合、2N-1に等しい第1中間十進数Jを決定するステップ、ただし、Nは、前記最大整数値の前記最大バイナリ桁数に等しい値である;
h)エンコードされた値からその最上位ビットを除いた値の十進数変換値に等しい値Kであって第2中間十進数Kを決定するステップ;
i)第1中間十進数Jを第2中間十進数Kに加え、エンコードされた値によって示される整数値を提供するステップ;
を備える請求項9に記載の方法。 - 前記先頭のゼロの個数が、前記データシステムの前記最大整数値の前記最大バイナリ桁数のlog2 の値よりも小さい場合に、以下のステップ、
j)エンコードされた値の中から前記先頭のゼロに続くN’ビットを読み出すステップ;ここで、N’は前記先頭のゼロの個数に1を加えた値であってNのバイナリ表記の桁数に等しい値である;
k)読み出したN’ビットの十進数変換値に等しい値Nを決定するステップ;
l)前記ステップh)で決定された値Nを用いて、J=2N-1の式によって値Jを決定するステップ;
を備える請求項9又は10に記載の方法。 - 請求項9から11のいずれか1項に記載の方法であって、さらに、
(m)前記整数値の少なくとも一部を既定の定数分だけ上位又は下位へシフトすることによって、モニタリングシステムによって使われている整数域であってバイナリ表現における桁数が前記最大桁数を上限とする整数域を正規化するステップ;
を備える方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/707582 | 2010-02-17 | ||
| US12/707,582 US8977664B2 (en) | 2010-02-17 | 2010-02-17 | System for storing and transmitting compressed integer data |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2011193451A JP2011193451A (ja) | 2011-09-29 |
| JP5079110B2 true JP5079110B2 (ja) | 2012-11-21 |
Family
ID=44202506
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2011030873A Expired - Fee Related JP5079110B2 (ja) | 2010-02-17 | 2011-02-16 | 圧縮された整数データを記憶・転送するためのシステム |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US8977664B2 (ja) |
| EP (1) | EP2365635A1 (ja) |
| JP (1) | JP5079110B2 (ja) |
| KR (1) | KR101166910B1 (ja) |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101006059B1 (ko) * | 2010-07-16 | 2011-01-07 | 오재원 | 정보 압축방법 |
| CN103378863B (zh) * | 2012-04-18 | 2017-11-10 | 苏州超擎图形软件科技发展有限公司 | 空间数据压缩、解压与渐进传输的有关方法与装置 |
| JP6772486B2 (ja) * | 2016-03-08 | 2020-10-21 | 日本電気株式会社 | センサーデータ処理装置、センサーデータ処理システム、センサーデータ処理方法、及び、センサーデータ処理プログラム |
| US11995871B1 (en) | 2020-11-30 | 2024-05-28 | Amazon Technologies, Inc. | Lossy block repair |
| US11967118B1 (en) | 2020-11-30 | 2024-04-23 | Amazon Technologies, Inc. | Hybrid codec |
| US11290710B1 (en) * | 2020-11-30 | 2022-03-29 | Amazon Technologies, Inc. | Adaptable golomb coding |
| US12530331B2 (en) | 2024-05-30 | 2026-01-20 | International Business Machines Corporation | Decompressing human readable prime number compression (HRPNC) objects using metadata |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3368157B2 (ja) * | 1996-11-18 | 2003-01-20 | キヤノン株式会社 | データ圧縮装置、方法及びシステム |
| JPH1188189A (ja) | 1997-09-10 | 1999-03-30 | Canon Inc | データ圧縮処理方法及びその装置及びコンピュータ可読メモリ |
| US6260187B1 (en) | 1998-08-20 | 2001-07-10 | Wily Technology, Inc. | System for modifying object oriented code |
| US8321485B2 (en) * | 2006-11-08 | 2012-11-27 | Hitachi, Ltd. | Device and method for constructing inverted indexes |
| US7924178B2 (en) * | 2008-10-01 | 2011-04-12 | Seagate Technology Llc | System and method for lossless data compression |
-
2010
- 2010-02-17 US US12/707,582 patent/US8977664B2/en not_active Expired - Fee Related
-
2011
- 2011-02-16 JP JP2011030873A patent/JP5079110B2/ja not_active Expired - Fee Related
- 2011-02-17 EP EP11250188A patent/EP2365635A1/en not_active Ceased
- 2011-02-17 KR KR1020110014183A patent/KR101166910B1/ko not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US20110202584A1 (en) | 2011-08-18 |
| JP2011193451A (ja) | 2011-09-29 |
| US8977664B2 (en) | 2015-03-10 |
| KR101166910B1 (ko) | 2012-07-23 |
| EP2365635A1 (en) | 2011-09-14 |
| KR20110095209A (ko) | 2011-08-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5079110B2 (ja) | 圧縮された整数データを記憶・転送するためのシステム | |
| CN109600618B (zh) | 视频压缩方法、解压缩方法、装置、终端和介质 | |
| CN108988866B (zh) | 作为服务的有效数据压缩和分析 | |
| JP6242074B2 (ja) | 信号データの圧縮および圧縮解除のための方法および装置(信号データの圧縮および圧縮解除) | |
| US9088540B1 (en) | Processing data formatted for efficient communication over a network | |
| US10666289B1 (en) | Data compression using dictionary encoding | |
| CN110019865B (zh) | 海量图片处理方法、装置、电子设备及存储介质 | |
| JP6048251B2 (ja) | データ圧縮装置、データ圧縮方法、およびデータ圧縮プログラム、並びにデータ復元装置、データ復元方法、およびデータ復元プログラム | |
| US20250175192A1 (en) | System and method for secure data processing with privacy-preserving compression and quality enhancement | |
| CN109976971A (zh) | 硬盘状态监测方法和装置 | |
| US20100039300A1 (en) | Lzw data compression algorithm | |
| US12425045B2 (en) | Computer data compression utilizing multiple symbol alphabets and dynamic binding of symbol alphabets | |
| US11438009B2 (en) | Encoding apparatus, decoding apparatus, data structure of code sequence, encoding method, decoding method, encoding program, and decoding program | |
| CN116208168A (zh) | 一种数据压缩方法、数据解压方法及装置 | |
| US9059729B1 (en) | Statistical compressibility determination system and method | |
| CN109474826B (zh) | 图片压缩方法、装置、电子设备及存储介质 | |
| US20240421830A1 (en) | Unified platform for multi-type data compression and decompression using homomorphic encryption and neural upsampling | |
| CN107797898B (zh) | 数据采集方法及其装置 | |
| CN110289935B (zh) | 一种解码方法、装置、终端和存储介质 | |
| US20100023479A1 (en) | Hexadecimal file fast decompression method | |
| CN112486976A (zh) | 数据处理方法、装置、网络设备及存储介质 | |
| US12164768B2 (en) | Medical imaging data compression utilizing codebooks | |
| US11038528B1 (en) | Genetic programming based compression determination | |
| US20220342894A1 (en) | Computer-readable recording medium storing information processing program, information processing method, and information processing device | |
| US20220393699A1 (en) | Method for compressing sequential records of interrelated data fields |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120210 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120221 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120511 |
|
| 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: 20120731 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120828 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150907 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5079110 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150907 Year of fee payment: 3 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150907 Year of fee payment: 3 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |
