【手続補正書】
【提出日】平成24年7月24日(2012.7.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データを符号化して、効率的なデータアクセス操作を促進する形で同時にデータを圧縮し整理するためのコンピュータ実装方法であって、
データの異なるデータフィールドに対応する値の列ベースシーケンスの組に従って、前記データを組織化する、少なくとも１つの処理装置を含むコンピュータシステムの動作と、
少なくとも１つの符号化アルゴリズムに従って、前記値の列ベースシーケンスの組を、値の列ベースの整数シーケンスの組に変換する、前記コンピュータシステムの動作と、
反復混合圧縮アルゴリズムに従って、前記列ベースの整数のシーケンスの組を圧縮する、前記コンピュータシステムの動作であって、前記反復混合圧縮アルゴリズムは、少なくとも一つの反復符号化ステップにおいて、
前記列ベースの整数のシーケンスの組を解析し、適用して前記列ベースの整数のシーケンスの組を圧縮する符号化技術を決定する動作であって、前記符号化技術は、
同じデータ値の１または複数のシーケンスを、単一データ値と、前記データ値がそれぞれのシーケンスにおいて現れる時間の数とに置き換えるランレングス符号化（ＲＬＥ）技術と、
セット値が広がる数値的な範囲を算出し、１または複数の最適化を適用することにより、前記セット値において、それぞれの値を表すために使用されるビットの数を最小化するビットパッキング符号化技術であって、１または複数の（ｉ）前記数値的な範囲内の、数値を表現するために必要でないビットを消去すること、（ｉｉ）共通パワーを除去すること、または（ｉｉｉ）前記セット値をシフトさせること、を含む、技術と
のうちの少なくとも１つを含む、動作と、
前記ＲＬＥ技術を適用した第１の計算されたビットの節約量と、前記ビットパッキング符号化技術を適用した第２の計算されたビットの節約量とを比較することを含む、解析する動作と、
前記解析に基づいて、前記列ベースの整数のシーケンスの少なくとも一部に対して、前記ＲＬＥ技術または、前記ビットパッキング符号化技術を適用する動作と
を含むことを特徴とする方法。
【請求項２】
前記変換することが、データフィールドを整数値にマッピングする辞書符号化アルゴリズムを介して、前記列ベースシーケンスの組を符号化するステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記変換することが、可逆的数学関数を前記データフィールドに適用してより少ないビットを使用して前記データフィールドを表す値符号化アルゴルズムを介して、前記列ベースシーケンスの組を符号化するステップを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記圧縮することが、各反復符号化のステップにおいて最大のビットセービングが達成される場所である前記列ベースの整数のシーケンスの一部に適用される、グリーディなＲＬＥ技術で、圧縮するステップを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記圧縮することが、ヒストグラムを生成して前記最大のビットセービングが達成される場所の判定を支援するステップを含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記圧縮することが、各圧縮のステップにおいてビットセービングを最大にしようと試みる少なくとも１つのグリーディな圧縮アルゴリズムに従って、前記列ベースの整数のシーケンスを圧縮するステップを含むことを特徴とする請求項１に記載の方法。
【請求項７】
１または複数の処理装置によって実行されたとき、効率的なデータアクセス操作を促進する形で同時にデータを圧縮し整理する複数のエンコーダのコンポーネントを実装する、コンピュータ実行可能命令を格納している１または複数の物理的な記憶媒体であって、
受け取られた生データを、前記生データの異なるフィールドまたは列に対応するシリアル化された値の組として組織化して、データのカラム化されたシーケンスを形成する、組織化コンポーネントと、
辞書符号化または値符号化の少なくとも１つを実行して、前記データのカラム化されたシーケンスを整数のシーケンスとして均一に表す、データ符号化コンポーネントと、
整数シーケンスのどの部分に次に圧縮を実行するか、およびどの符号化技術を用いて整数シーケンスの部分に圧縮を実行するかを、反復混合圧縮アルゴリズムを用いて判定する、圧縮コンポーネントであって、前記符号化技術は、
同じデータ値の繰り返されるシーケンスを、単一データ値と、前記データ値がそれぞれのシーケンスにおいて現れる時間の数とによって表現するランレングス符号化（ＲＬＥ）技術と、
セット値が広がる数値的な範囲を算出し、１または複数の最適化を適用することにより、前記セット値において、それぞれの値を表すために使用されるビットの数を最小化するビットパッキング符号化技術であって、１または複数の、前記数値的な範囲内の、数値を表現するために必要でないビットを消去すること、共通パワーを除去すること、または前記セット値をシフトさせること、を含む、技術と
から選択される、圧縮コンポーネントと
を含み、前記ＲＬＥ技術を前記整数シーケンスの前記一部に対して適用した第１の計算されたビットの節約量と、前記ビットパッキング符号化技術を前記整数シーケンスの前記一部に対して適用した第２の計算されたビットの節約量との比較に基づいて前記圧縮コンポーネントは、ＲＬＥまたはビットパッキングのうちの少なくとも一つを選択し、前記整数シーケンスの前記一部に対して適応することを特徴とする物理的な記憶媒体。
【請求項８】
前記圧縮コンポーネントは、ＲＬＥを実行する時に列を並べ替えることを特徴とする請求項７に記載の物理的な記憶媒体。
【請求項９】
値符号化を実行する前記データ符号化コンポーネントは、各データフィールド内の繰り返される数字を除去することにより前記整数のシーケンスを削減すること、または、数学関数を介して浮動小数値を整数値に変換することにより前記整数のシーケンスを削減すること、の少なくとも一方を行うことを特徴とする請求項７に記載の物理的な記憶媒体。
【請求項１０】
前記反復混合圧縮アルゴリズムは、少なくとも列ベースの整数シーケンスのうちの一つの第１の部分を、前記ＲＬＥ技術を用いて圧縮し、少なくとも前記列ベースの整数シーケンスのうちの一つの第２の部分を、前記ビットパッキング符号化技術を用いて圧縮することを特徴とする請求項１に記載の方法。
【請求項１１】
前記反復混合圧縮アルゴリズムは、前記列ベースの整数シーケンスのうちの一つの前記整数シーケンスを再配置して、前記第１の部分を前記ＲＬＥ技術を用いて圧縮し、前記第２の部分を前記ビットパッキング符号化技術を用いて圧縮することを促進することを特徴とする請求項１０に記載の方法。
【請求項１２】
前記整数シーケンスを再配置することは、前記列ベースの整数シーケンスのうちの一つの前記整数シーケンスのみを再配置することを含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記整数シーケンスを再配置することは、前記列ベースの整数シーケンスの組のそれぞれのシーケンスの整数シーケンスを再配置して、前記列ベースの整数シーケンスの全体にわたって、前記データをロックステップに留めておくことを含むことを特徴とする請求項１１に記載の方法。
【請求項１４】
コンピュータシステムであって、
少なくとも一つの処理装置と、
前記少なくとも一つの処理装置によって実行されると方法を実行する、実行可能命令が格納された１または複数の記憶媒体であって、前記方法は、
データの異なるデータフィールドに対応する値の列ベースシーケンスの組に従って、前記データを組織化する動作と、
少なくとも１つの符号化アルゴリズムに従って、前記値の列ベースシーケンスの組を、値の列ベースの整数シーケンスの組に変換する動作と、
反復混合圧縮アルゴリズムに従って、前記列ベースの整数のシーケンスの組を圧縮する動作であって、前記反復混合圧縮アルゴリズムは、少なくとも一つの反復符号化ステップにおいて、
前記列ベースの整数のシーケンスの組を圧縮するためにどの符号化技術を前記列ベースの整数のシーケンスの組に適用するかを判断するステップであって、前記符号化技術は、ランレングス符号化（ＲＬＥ）技術とビットパッキング符号化技術との中から選択され、前記判断するステップは、前記ビットパッキング符号化技術を適用した第２の計算されたビットの節約量に対する前記ＲＬＥ技術を適用した第１の計算されたビットの節約量を求めるステップを含み、
前記ＲＬＥ技術は同じデータ値の１または複数のシーケンスを、単一データ値と、前記データ値がそれぞれのシーケンスにおいて現れる時間の数とに置き換え、
前記ビットパッキング符号化技術はセット値が広がる数値的な範囲を算出し、１または複数の最適化を適用することにより、前記セット値において、それぞれの値を表すために使用されるビットの数を最小化し、１または複数の、前記数値的な範囲内の数値を表現するために必要でないビットを消去すること、共通パワーを除去すること、または前記セット値をシフトさせること、を含む、判断するステップと、
前記列ベースの整数のシーケンスの少なくとも一部に対して、前記ＲＬＥ技術または、前記ビットパッキング符号化技術を適用するステップと
を含む、動作と
を含む、記憶媒体と
を含むことを特徴とするコンピュータシステム。