(57)【要約】  本願の実施形態は、記憶オーバーヘッドを削減するための、データ記憶方法、データ取得方法、及び機器を開示する。データ記憶方法は、現在のデータ及び現在のデータの履歴データを取得するステップと；履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するステップであって、現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；現在のデータと現在のデータの予測データとの間のデルタを取得するステップと；デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される情報を記憶するステップであって、現在のデータを復元するために使用される情報は、デルタ又はデルタを圧縮して得た値を含む、記憶するステップと；を含む。
2021534505.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置に適用されるデータ記憶方法であって、当該データ記憶方法は、
現在のデータ及び該現在のデータの履歴データを取得するステップと、
該履歴データを用いて前記現在のデータを予測して、第１の予測データを取得するステップであって、該第１の予測データは、前記現在のデータが前記履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと、
前記現在のデータと前記第１の予測データとの間の第１のデルタを取得するステップと、
第１のデルタが占める記憶空間が前記現在のデータが占める記憶空間よりも小さい場合に、前記現在のデータを復元するために使用される情報を記憶するステップであって、前記現在のデータを復元するために使用される前記情報は、前記第１のデルタ又は該第１のデルタを圧縮して得た値を含む、記憶するステップと、を含む、
データ記憶方法。
【請求項２】
前記予測を行うために使用されるアルゴリズムが、人工知能（ＡＩ）ニューラルアルゴリズムを含む、請求項１に記載のデータ記憶方法。
【請求項３】
前記ＡＩニューラルアルゴリズムのタイプには、正規化最小平均二乗（ＮＬＭＳ）適応フィルタリングタイプ、単層パーセプトロン（ＳＬＰ）タイプ、多層パーセプトロン（ＭＬＰ）タイプ、又はリカレントニューラルネットワーク（ＲＮＮ）タイプのいずれか１つが含まれる、請求項２に記載のデータ記憶方法。
【請求項４】
当該方法は、前記現在のデータを復元するために使用される前記情報と、前記予測を行うために使用される前記ＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するステップをさらに含む、請求項２又は３に記載のデータ記憶方法。
【請求項５】
前記現在のデータを復元するために使用される情報を記憶した後に、当該方法は、
アダプティブラーニングによる前記ＡＩニューラルアルゴリズムのパラメータを更新するステップと、
前記ＡＩニューラルアルゴリズムの更新パラメータに基づいて、前記現在のデータを復元するために使用される前記情報を更新するステップと、をさらに含む、請求項２又は３に記載のデータ記憶方法。
【請求項６】
前記ＡＩニューラルアルゴリズムの更新パラメータに基づいて、前記現在のデータを復元するために使用される前記情報を更新するステップは、
前記現在のデータを復元するために使用される前記情報を読み取るステップと、
前記予測を行うために使用される前記ＡＩニューラルアルゴリズムの前記パラメータ、前記現在のデータを復元するために使用される前記情報、及び前記現在のデータの前記履歴データに基づいて、前記現在のデータを復元するステップと、
前記ＡＩニューラルアルゴリズムの前記更新パラメータ及び前記現在のデータの前記履歴データに基づいて、前記現在のデータを予測して、第２の予測データを取得するステップであって、該第２の予測データは、前記現在のデータが、前記ＡＩニューラルアルゴリズムの前記更新パラメータに基づいて、前記履歴データの前記変更規則に従って予測された後に取得されるデータである、取得するステップと、
前記現在のデータと前記第２の予測データとの間の第２のデルタを取得するステップと、
該第２のデルタが占める記憶空間が前記現在のデータが占める記憶空間よりも小さい場合に、前記現在のデータを復元するために使用される前記記憶される情報を、前記第２のデルタ又は該第２のデルタを圧縮して得た値に更新するステップと、を含む、請求項５に記載のデータ記憶方法。
【請求項７】
前記記憶装置は、ＡＩコンピューティングカードを含み、前記履歴データを用いて前記現在のデータを予測して、第１の予測データを取得するステップは、
前記ＡＩコンピューティングカード及び前記履歴データを用いて前記現在のデータを予測して、前記第１の予測データを取得するステップを含む、請求項２乃至６のいずれか一項に記載のデータ記憶方法。
【請求項８】
前記圧縮を行うために使用されるアルゴリズムが辞書圧縮アルゴリズムを含み、該辞書圧縮アルゴリズムの辞書が少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、前記第１のデータが占める記憶空間は前記第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応し、当該方法は、
前記第１のデルタのヒット率を取得するステップと、
前記第１のデルタの前記ヒット率に基づいて、前記少なくとも２つのセットの中でターゲットセットを決定するステップであって、前記第１のデルタの前記ヒット率は、前記第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、前記ターゲットマッピング関係の前記決定したヒット率は、前記ターゲットセットに対応するヒット率範囲に属する、決定するステップと、
前記ターゲットセット内の第１のデータで前記第１のデルタを検索して、前記第１のデルタに対応する第２のデータを決定するステップであって、前記第１のデルタに対応する前記第２のデータは、前記第１のデルタを圧縮して得た前記値である、決定するステップと、をさらに含む、請求項１乃至７のいずれか一項に記載のデータ記憶方法。
【請求項９】
前記記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、前記圧縮を行うために使用されるアルゴリズムが辞書圧縮アルゴリズムを含み、該辞書圧縮アルゴリズムの辞書が１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、前記第１のデータが占める記憶空間は前記第２のデータが占める記憶空間よりも大きく、前記キャッシュにおけるマッピング関係のヒット率は前記メモリにおけるマッピング関係のヒット率以上であり、前記メモリにおける前記マッピング関係の前記ヒット率は前記ハードディスクにおけるマッピング関係のヒット率以上であり、当該方法は、
前記第１のデルタのヒット率を取得するステップと、
前記第１のデルタの前記ヒット率に基づいてターゲット記憶媒体を決定するステップであって、前記第１のデルタの前記ヒット率は、前記第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、前記ターゲット記憶媒体は、前記ターゲットマッピング関係の前記決定したヒット率が前記キャッシュにおける前記マッピング関係のヒット率範囲に属する場合に、前記キャッシュであり、前記ターゲット記憶媒体は、前記ターゲットマッピング関係の前記決定したヒット率が、前記キャッシュにおける前記マッピング関係のヒット率範囲に属さないが、前記メモリにおける前記マッピング関係のヒット率範囲に属する場合に、前記メモリであり、又は前記ターゲット記憶媒体は、前記ターゲットマッピング関係の前記決定したヒット率が前記メモリにおける前記マッピング関係のヒット率範囲に属さない場合に、前記ハードディスクである、決定するステップと、
前記ターゲット記憶媒体内の第１のデータで前記第１のデルタを検索して、該第１のデルタに対応する第２のデータを決定するステップであって、前記第１のデルタに対応する前記第２のデータは、前記第１のデルタを圧縮して得た前記値である、決定するステップと、をさらに含む、請求項１乃至７のいずれか一項に記載のデータ記憶方法。
【請求項１０】
記憶装置に適用されるデータ取得方法であって、当該データ取得方法は、
現在のデータを復元するために使用される情報を読み取るステップであって、前記現在のデータを復元するために使用される前記情報には、デルタ又はデルタを圧縮して得た値が含まれ、前記デルタは、前記現在のデータと該現在のデータの予測データとの間のデルタであり、前記予測データは、前記現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、読み取るステップと、
前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するステップと、
該予測データと前記現在のデータを復元するために使用される前記情報とに基づいて、前記現在のデータを決定するステップと、を含む、
データ取得方法。
【請求項１１】
前記予測を行うために使用されるアルゴリズムが、人工知能（ＡＩ）ニューラルアルゴリズムを含む、請求項１０に記載のデータ取得方法。
【請求項１２】
前記ＡＩニューラルアルゴリズムのタイプには、正規化最小平均二乗（ＮＬＭＳ）適応フィルタリングタイプ、単層パーセプトロン（ＳＬＰ）タイプ、多層パーセプトロン（ＭＬＰ）タイプ、又はリカレントニューラルネットワーク（ＲＮＮ）タイプのいずれか１つが含まれる、請求項１１に記載のデータ取得方法。
【請求項１３】
当該方法は、前記現在のデータを復元するために使用される前記情報と前記ＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、前記現在のデータを予測するために使用される前記ＡＩニューラルアルゴリズムの前記パラメータを取得するステップをさらに含み、
前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するステップは、前記ＡＩニューラルアルゴリズムの前記取得したパラメータに基づいて、前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するステップを含む、請求項１１又は１２に記載のデータ取得方法。
【請求項１４】
前記記憶装置は、ＡＩコンピューティングカードを含み、前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するステップは、
前記ＡＩコンピューティングカード及び前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するステップを含む、請求項１１乃至１３のいずれか一項に記載のデータ取得方法。
【請求項１５】
前記現在のデータを復元するために使用される前記情報は、前記デルタを圧縮して得た前記値を含み、前記予測データと前記現在のデータを復元するために使用される前記情報とに基づいて前記現在のデータを決定するステップは、
前記デルタを圧縮して得た前記値を解凍して、前記デルタを取得するステップと、
該デルタ及び前記予測データに基づいて、前記現在のデータを決定するステップと、を含む、請求項１０乃至１４のいずれか一項に記載のデータ取得方法。
【請求項１６】
前記解凍を行うために使用されるアルゴリズムが辞書解凍アルゴリズムを含み、該辞書解凍アルゴリズムの辞書が少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、前記第１のデータが占める記憶空間は前記第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応し、前記デルタを圧縮して得た前記値を解凍して前記デルタを取得するステップは、
前記デルタを圧縮して得た前記値のヒット率を取得するステップと、
前記デルタを圧縮して得た前記値の前記ヒット率に基づいて、前記少なくとも２つのセットの中でターゲットセットを決定するステップであって、前記デルタを圧縮して得た前記値の前記ヒット率は、前記デルタを圧縮して得た前記値が属するターゲットマッピング関係のヒット率を決定するために使用され、前記ターゲットマッピング関係の前記決定したヒット率は、前記ターゲットセットに対応するヒット率範囲に属する、決定するステップと、
前記ターゲットセット内の第２のデータで前記デルタを圧縮して得た前記値を検索して、前記デルタを圧縮して得た前記値に対応する第１のデータを決定するステップであって、前記デルタを圧縮して得た前記値に対応する前記第１のデータは前記デルタである、決定するステップと、を含む、請求項１５に記載のデータ取得方法。
【請求項１７】
前記記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、前記解凍を行うために使用されるアルゴリズムが辞書解凍アルゴリズムを含み、該辞書解凍アルゴリズムの辞書が１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、前記第１のデータが占める記憶空間は前記第２のデータが占める記憶空間よりも大きく、前記キャッシュにおけるマッピング関係のヒット率は前記メモリにおけるマッピング関係のヒット率以上であり、前記メモリにおける前記マッピング関係の前記ヒット率は前記ハードディスクにおけるマッピング関係のヒット率以上であり、前記デルタを圧縮して得た前記値を解凍して、前記デルタを取得するステップは、
前記デルタを圧縮して得た前記値のヒット率を取得するステップと、
前記デルタを圧縮して得た前記値の前記ヒット率に基づいてターゲット記憶媒体を決定するステップであって、前記デルタを圧縮して得た前記値の前記ヒット率は、前記デルタを圧縮して得た前記値が属するターゲットマッピング関係のヒット率を決定するために使用され、前記ターゲット記憶媒体は、前記ターゲットマッピング関係の前記決定したヒット率が前記キャッシュにおける前記マッピング関係のヒット率範囲に属する場合に、前記キャッシュであり、前記ターゲット記憶媒体は、前記ターゲットマッピング関係の前記決定したヒット率が、前記キャッシュにおける前記マッピング関係のヒット率範囲に属さないが、前記メモリにおける前記マッピング関係のヒット率範囲に属する場合に、前記メモリであり、又は前記ターゲット記憶媒体は、前記ターゲットマッピング関係の前記決定したヒット率が、前記メモリにおける前記マッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと、
前記ターゲット記憶媒体内の第２のデータで前記デルタを圧縮して得た前記値を検索して、前記デルタを圧縮して得た前記値に対応する第１のデータを決定するステップであって、前記デルタを圧縮して得た前記値に対応する前記第１のデータは前記デルタである、決定するステップと、を含む、請求項１５に記載のデータ取得方法。
【請求項１８】
記憶装置であって、当該記憶装置は、
現在のデータ及び該現在のデータの履歴データを取得するように構成される第１の取得ユニットと、
前記履歴データを用いて前記現在のデータを予測して、第１の予測データを取得するように構成される予測ユニットであって、前記第１の予測データは、前記現在のデータが前記履歴データの変更規則に従って予測された後に取得されるデータである、予測ユニットと、
前記現在のデータと前記第１の予測データとの間の第１のデルタを取得するように構成される第２の取得ユニットと、
前記第１のデルタが占める記憶空間が前記現在のデータが占める記憶空間よりも小さい場合に、前記現在のデータを復元するために使用される情報を記憶するように構成される記憶ユニットであって、前記現在のデータを復元するために使用される前記情報は、前記第１のデルタ又は該第１のデルタを圧縮して得た値を含む、記憶ユニットと、を含む、
記憶装置。
【請求項１９】
前記予測を行うために使用されるアルゴリズムが、人工知能（ＡＩ）ニューラルアルゴリズムを含む、請求項１８に記載の記憶装置。
【請求項２０】
前記ＡＩニューラルアルゴリズムのタイプには、正規化最小平均二乗（ＮＬＭＳ）適応フィルタリングタイプ、単層パーセプトロン（ＳＬＰ）タイプ、多層パーセプトロン（ＭＬＰ）タイプ、又はリカレントニューラルネットワーク（ＲＮＮ）タイプのいずれか１つが含まれる、請求項１９に記載の記憶装置。
【請求項２１】
前記記憶ユニットは、前記現在のデータを復元するために使用される前記情報と、前記予測を行うために使用される前記ＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するようにさらに構成される、請求項１９又は２０に記載の記憶装置。
【請求項２２】
前記記憶装置は、アダプティブラーニングによる前記ＡＩニューラルアルゴリズムのパラメータを更新し、前記ＡＩニューラルアルゴリズムの更新パラメータに基づいて、前記現在のデータを復元するために使用される前記情報を更新するように構成される更新ユニットをさらに含む、請求項１９又は２０に記載の記憶装置。
【請求項２３】
前記更新ユニットは、
前記現在のデータを復元するために使用される前記情報を読み取ること、
前記予測を行うために使用される前記ＡＩニューラルアルゴリズムの前記パラメータ、前記現在のデータを復元するために使用される前記情報、及び前記現在のデータの前記履歴データに基づいて、前記現在のデータを復元すること、
前記ＡＩニューラルアルゴリズムの前記更新パラメータと前記現在のデータの前記履歴データとに基づいて前記現在のデータを予測して、第２の予測データを取得することであって、該第２の予測データは、前記現在のデータが、前記ＡＩニューラルアルゴリズムの前記更新パラメータに基づいて、前記履歴データの前記変更規則に従って予測された後に取得されるデータである、取得すること、
前記現在のデータと前記第２の予測データとの間の第２のデルタを取得すること、及び
前記第２のデルタが占める記憶空間が前記現在のデータが占める記憶空間よりも小さい場合に、前記現在のデータを復元するために使用される前記記憶される情報を、前記第２のデルタ又は該第２のデルタを圧縮して得た値に更新すること、を行うように特に構成される、請求項２２に記載の記憶装置。
【請求項２４】
前記記憶装置は、ＡＩコンピューティングカードを含み、前記予測ユニットは、前記ＡＩコンピューティングカード及び前記履歴データを用いて前記現在のデータを予測して、前記第１の予測データを取得するように特に構成される、請求項１９乃至２３のいずれか一項に記載の記憶装置。
【請求項２５】
記憶装置であって、当該記憶装置は、
現在のデータを復元するために使用される情報を読み取るように構成される読み取りユニットであって、前記現在のデータを復元するために使用される前記情報には、デルタ又はデルタを圧縮して得た値が含まれ、前記デルタは、前記現在のデータと前記予測データとの間のデルタであり、前記予測データは、前記現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、読み取りユニットと、
前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するように構成される予測ユニットと、
前記予測データと前記現在のデータを復元するために使用される前記情報とに基づいて前記現在のデータを決定するように構成される決定ユニットと、を含む、
記憶装置。
【請求項２６】
前記予測を行うために使用されるアルゴリズムが、人工知能（ＡＩ）ニューラルアルゴリズムを含む、請求項２５に記載の記憶装置。
【請求項２７】
前記ＡＩニューラルアルゴリズムのタイプには、正規化最小平均二乗（ＮＬＭＳ）適応フィルタリングタイプ、単層パーセプトロン（ＳＬＰ）タイプ、多層パーセプトロン（ＭＬＰ）タイプ、又はリカレントニューラルネットワーク（ＲＮＮ）タイプのいずれか１つが含まれる、請求項２６に記載の記憶装置。
【請求項２８】
前記記憶装置は、
前記現在のデータを復元するために使用される前記情報と、前記ＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、前記現在のデータを予測するために使用される前記ＡＩニューラルアルゴリズムのパラメータを取得するように構成される取得ユニットをさらに含み、
前記予測ユニットは、前記ＡＩニューラルアルゴリズムの前記取得したパラメータに基づいて、前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するように特に構成される。請求項２６又は２７に記載の記憶装置。
【請求項２９】
前記記憶装置は、ＡＩコンピューティングカードを含み、前記予測ユニットは、前記ＡＩコンピューティングカード及び前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するように特に構成される、請求項２５乃至２８のいずれか一項に記載の記憶装置。
【請求項３０】
前記現在のデータを復元するために使用される前記情報は、前記デルタを圧縮して得た前記値を含み、前記決定ユニットは、
前記デルタを圧縮して得た前記値を解凍して前記デルタを取得するように構成される解凍モジュールと、
前記デルタ及び前記予測データに基づいて前記現在のデータを決定するように構成される決定モジュールと、を含む、請求項２５乃至２９のいずれか一項に記載の記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願の実施形態は、データ処理技術の分野に関し、特に、データ記憶方法、データ取得方法、及び機器に関する。
【背景技術】
【０００２】
人工知能（artificial  intelligence,  AI）アプリケーション、ビッグデータアプリケーション、モノのインターネット（internet  of  things）アプリケーション等の新しいアプリケーションが成熟するにつれて、記憶する必要のあるデータが急激に増大する。記憶装置（storage  device）の容量を増やすだけで急激に増大するデータを記憶する場合に、記憶装置の購入コスト及び管理コストは比較的高く、記憶装置は、比較的大きなスペースを占有し、且つ比較的高い電力を消費する。これは、企業に比較的重いコスト負担を生じさせる。従って、効果的なデータ記憶ソリューションが必要である。
【発明の概要】
【０００３】
本願の実施形態は、記憶オーバーヘッド（storage  overheads）を低減するための、データ記憶方法、データ取得方法、及び機器を提供する。また、本願の実施形態は、圧縮（compression）又は解凍（decompression）時間を短縮するための、データ圧縮方法、データ解凍方法、及び機器をさらに提供する。
【０００４】
第１の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ記憶方法を提供し、この方法は、現在のデータ及び現在のデータの履歴データを取得するステップと；履歴データを用いて現在のデータを予測して、第１の予測データを取得するステップであって、第１の予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；現在のデータと第１の予測データとの間の第１のデルタを取得するステップと；第１のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される情報を記憶するステップであって、現在のデータを復元するために使用される情報は、第１のデルタ又は第１のデルタを圧縮して得た値を含む、記憶するステップと；を含み得る。
【０００５】
デルタが、現在のデータと現在のデータの予測データ（例えば、以下に説明する第１の予測データ又は第２の予測データ）との間の差を表すために使用されるパラメータである。例えば、デルタは、差、比、倍数、パーセンテージ等であり得る。履歴データは、少なくとも２つの記憶すべき（to-be-stored）データを含む、シーケンス内の現在のデータ以前の１つ又は複数のデータであり得る。記憶すべきデータは、記憶する必要のある元のデータである。現在のデータは、少なくとも２つの記憶すべきデータ内の現在の記憶すべきデータである。
【０００６】
この技術的解決策では、現在のデータについて、現在のデータを復元するために使用される情報、例えば、現在のデータと現在のデータの予測データとの間のデルタ、又はデルタを圧縮して得た値は、実際には記憶される。現在のデータを復元するために使用される記憶情報が占める記憶空間は、現在のデータを直接記憶する従来技術のものと比較して、現在のデータが占める記憶空間よりも小さいので、記憶オーバーヘッドを削減できる。
【０００７】
可能な設計では、予測を行うために使用されるアルゴリズムは、ＡＩニューラルアルゴリズムを含む。例えば、ＡＩニューラルアルゴリズムのタイプは、正規化最小平均二乗（normalized  least  mean  square,  NLMS）適応フィルタリングタイプ、単層パーセプトロン（single  layer  perceptron,  SLP）タイプ、多層パーセプトロン（multi-layer  perceptron,  MLP）タイプ、又はリカレントニューラルネットワーク（recurrent  neural  networks,  RNN）タイプのいずれか１つを含む。
【０００８】
可能な設計では、記憶装置は、現在のデータの予測データを記憶しない。このようにして、記憶オーバーヘッドを削減できる。これに基づいて、記憶装置は、履歴情報に基づいて現在のデータを予測して第１の予測データを取得し、次に、第１の予測データと現在のデータを復元するために使用される記憶情報とに基づいて、現在のデータを復元する。詳細については、次の第２の態様で提供される技術的解決策を参照されたい。
【０００９】
可能な設計では、圧縮を行うために使用されるアルゴリズムは、辞書（dictionary）圧縮アルゴリズム及び／又は重複排除アルゴリズムを含む。
【００１０】
可能な設計では、圧縮を行うために使用されるアルゴリズムは辞書圧縮アルゴリズムを含み、辞書圧縮アルゴリズムの辞書は少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。この方法は、第１のデルタのヒット率を取得するステップと；第１のデルタのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するステップであって、第１のデルタのヒット率は、第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定するステップと；ターゲットセット内の第１のデータで第１のデルタを検索して、第１のデルタに対応する第２のデータを決定するステップであって、第１のデルタに対応する第２のデータは、第１のデルタを圧縮して得た値である、決定するステップと；をさらに含む。この技術的解決策では、記憶装置に含まれるマッピング関係が様々なセットに分類される。このようにして、圧縮すべき（to-be-compressed）データが位置するセットは、圧縮すべきデータのヒット率（すなわち、第１のデルタ）に基づいて直接決定され得る。これにより、圧縮すべきデータの検索範囲を狭めることができる。従って、圧縮時間が短縮される。
【００１１】
可能な設計では、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、圧縮を行うために使用されるアルゴリズムは辞書圧縮アルゴリズムを含み、辞書圧縮アルゴリズムの辞書が１つ又は複数のマッピング関係を含み、各マッピング関係は１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上である。この方法は、第１のデルタのヒット率を取得するステップと；第１のデルタのヒット率に基づいてターゲット記憶媒体を決定するステップであって、第１のデルタのヒット率は、第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと；ターゲット記憶媒体内の第１のデータで第１のデルタを検索して、第１のデルタに対応する第２のデータを決定するステップであって、第１のデルタに対応する第２のデータは、第１のデルタを圧縮して得た値である、決定するステップと；をさらに含む。この技術的解決策では、最高の読み取り／書き込み性能を有しており、且つ圧縮すべきデータが位置する記憶媒体は、圧縮すべきデータのヒット率（具体的には、第１のデルタ）と異なる記憶媒体に記憶されるマッピング関係のヒット率範囲とに基づいて直接決定でき、キャッシュの読み取り／書き込み性能は、メモリの読み取り／書き込み性能よりも高く、メモリの読み取り／書き込み性能は、ハードディスクの読み取り／書き込み性能よりも高い。これにより、圧縮すべきデータの検索範囲を狭めることができる。従って、圧縮時間が短縮される。
【００１２】
可能な設計では、この方法は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間以上である場合に、現在のデータ又は現在のデータを圧縮して得た値を記憶するステップをさらに含む。
【００１３】
可能な設計では、この方法は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間以上である場合に、識別子情報を記憶するステップをさらに含む。識別子情報は、現在のデータを復元するために使用される情報が第１のデルタ又は第１のデルタを圧縮して得た値であることを示すために使用される。オプションで、識別子情報は、現在のデータを復元するために使用される情報の識別子情報として使用され得るか、又は現在のデータを復元するために使用される情報に含まれる情報として使用され得る。この技術的解決策は、記憶装置が現在のデータを復元するために使用される記憶情報を識別（特定：identify）するのに役立つ。
【００１４】
第２の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ取得方法を提供し、この方法は、現在のデータを復元するために使用される情報を読み取るステップであって、現在のデータを復元するために使用される情報には、デルタ又はデルタを圧縮して得た値が含まれ、デルタは、現在のデータと現在のデータの予測データとの間のデルタであり、予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、読み取るステップと；履歴データを用いて現在のデータを予測して、予測データを取得するステップと；予測データと現在のデータを復元するために使用された情報とに基づいて、現在のデータを決定するステップと；を含み得る。例えば、履歴データは、１つ又は複数の取得データ（obtained  data）である。
【００１５】
可能な設計では、解凍を行うために使用されるアルゴリズムは、辞書解凍アルゴリズム及び／又は重複排除アルゴリズムのうちの少なくとも１つを含む。
【００１６】
可能な設計では、現在のデータを復元するために使用される情報は、デルタを圧縮して得た値を含み、現在のデータの予測データと現在のデータを復元するために使用される情報とに基づいて現在のデータを決定するステップは、デルタを圧縮して得た値を解凍して、デルタを取得するステップと；デルタと現在のデータの予測データとに基づいて現在のデータを決定するステップと；を含む。
【００１７】
可能な設計では、解凍を行うために使用されるアルゴリズムは辞書解凍アルゴリズムを含み、辞書解凍アルゴリズムの辞書が少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。デルタを圧縮して得た値を解凍して、デルタを取得するステップは、デルタを圧縮して得た値のヒット率を取得するステップと；デルタを圧縮して得た値のヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するステップであって、デルタを圧縮して得た値のヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定するステップと；ターゲットセット内の第２のデータでデルタを圧縮して得た値を検索して、デルタを圧縮して得た値に対応する第１のデータを決定するステップであって、デルタを圧縮して得た値に対応する第１のデータはデルタである、決定するステップと；を含み得る。この技術的解決策では、記憶装置に含まれるマッピング関係が様々なセットに分類される。このようにして、解凍すべき（to-be-decompressed）データが位置するセットは、解凍すべきデータのヒット率（具体的には、デルタを圧縮して得た値）に基づいて直接決定することができる。これにより、解凍すべきデータの検索範囲を狭めることができる。従って、解凍時間が短縮される。
【００１８】
可能な設計では、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、解凍を行うために使用されるアルゴリズムは辞書解凍アルゴリズムを含み、辞書解凍アルゴリズムの辞書が１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上である。この場合に、デルタを圧縮して得た値を解凍して、デルタを取得するステップは、デルタを圧縮して得た値のヒット率を取得するステップと；デルタを圧縮して得た値のヒット率に基づいてターゲット記憶媒体を決定するステップであって、デルタを圧縮して得た値のヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと；ターゲット記憶媒体内の第２のデータでデルタを圧縮して得た値を検索して、デルタを圧縮して得た値に対応する第１のデータを決定するステップであって、デルタを圧縮して得た値に対応する第１のデータはデルタである、決定するステップと；を含み得る。この技術的解決策では、最高の読み取り／書き込み性能を有しており、且つ解凍すべきデータが位置する記憶媒体は、解凍すべきデータのヒット率と異なる記憶媒体に記憶されるマッピング関係のヒット率とに基づいて直接決定され得る。これにより、解凍すべきデータの検索範囲を狭めることができる。従って、圧縮時間が短縮される。
【００１９】
可能な設計では、記憶装置によって読み取られ、且つ現在のデータを復元するために使用される情報に識別子情報が含まれない場合に、それは、現在のデータを復元するために使用される情報にはデルタ又はデルタを圧縮して得た値が含まれることを示す。識別子情報の関連する説明については、前述の第１の態様を参照されたい。
【００２０】
記憶装置によって読み取られ、且つ現在のデータを復元するために使用される情報に識別子情報が含まれる場合に、それは、現在のデータを復元するために使用される情報には現在のデータ又は現在のデータを圧縮し得た値が含まれることを示すと理解され得る。
【００２１】
これに基づいて、第２の態様で提供される技術的解決策は、以下の解決策１又は解決策２に置き換えることができる。
【００２２】
解決策１：現在のデータを復元するために使用される情報を読み取り、ここで、現在のデータを復元するために使用される情報に識別子情報が含まれ、現在のデータを復元するために使用される情報には現在のデータが含まれる。
【００２３】
解決策２：現在のデータを復元するために使用される情報を読み取り、ここで、現在のデータを復元するために使用される情報に識別子情報が含まれ、現在のデータを復元するために使用される情報には現在のデータを圧縮して得た値が含まれ、次に、現在のデータを圧縮して得た値を解凍して、現在のデータを取得する。
【００２４】
第２の態様で提供される技術的解決策は、新しい技術的解決策を形成するために、解決策１／解決策２と組み合わせることができる。
【００２５】
第２の態様又は第２の態様の代替解決策は、第１の態様で提供される技術的解決策及び技術的解決策の対応する設計的解決策に対応する。従って、第２の態様又は第２の態様の代替解決策の特定の実施態様及び有利な効果については、第１の態様の説明を参照されたい。
【００２６】
第３の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ記憶方法を提供し、この方法は、現在のデータ及び現在のデータの履歴データを取得するステップと；履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するステップであって、予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；現在のデータと予測データとの間のデルタを取得するステップと；デルタの絶対値が予め設定した閾値以下の場合に、予め設定したデータを記憶するステップと；を含み得る。オプションで、予め設定したデータが占める記憶空間は、現在のデータが占める記憶空間よりも小さい。この技術的解決策では、従来技術の現在のデータを直接記憶する技術的解決策と比較して、予め設定したデータが占める記憶空間が現在のデータが占める記憶空間よりも小さいため、記憶オーバーヘッドを削減できる。
【００２７】
オプションで、予め設定したデータは、記憶装置によって予め規定される。オプションで、予め設定したデータは識別子であり得、識別子は、現在のデータの予測データが現在のデータとして使用され得る（又は略使用され得る）ことを示すために使用される。オプションで、予め設定したデータが占める記憶空間は、記憶すべきデータの殆ど又は全てが占める記憶空間よりも小さい。
【００２８】
デルタが差である例では、デルタの絶対値が０である場合に、この技術的解決策の圧縮プロセスは、具体的には可逆圧縮プロセスである。デルタの絶対値が０でない場合に、この技術的解決策の圧縮プロセスは、具体的には不可逆圧縮プロセスである。予め設定した閾値を適切に設定すると、データ損失率を特定の範囲内に制限するのに役立つ。換言すると、予め設定される閾値は、実際の要件（例えば、許容可能な非可逆圧縮率内の要件）に基づいて設定できる。この技術的解決策は、特定のデータ損失が許容されるシナリオ、例えば、ビデオ再生等のシナリオに適用することができる。
【００２９】
可能な設計では、この方法は、デルタの絶対値が予め設定した閾値よりも大きい場合に、現在のデータ又は現在のデータを圧縮して得た値を記憶するステップをさらに含む。圧縮を行うために使用されるアルゴリズムは、例えば、辞書圧縮アルゴリズム及び／又は重複排除アルゴリズムであり得るが、これらに限定されない。
【００３０】
可能な設計では、この方法は、デルタの絶対値が予め設定した閾値よりも大きい場合に識別子情報を記憶するステップをさらに含み、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用されるか、又は現在のデータが記憶される場合に、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータであることを示すために使用される。識別子情報は、現在のデータを復元するために使用される情報の識別子情報として使用してもよく、又は現在のデータを復元するために使用される情報に含まれる情報として使用してもよい。この技術的解決策は、記憶装置が現在のデータを復元するために使用される記憶情報のタイプを識別するのに役立つ。タイプは、「予め設定したデータ」のタイプ又は「現在のデータ又は現在のデータを圧縮して得た値」のタイプであり得、これにより、データ取得手順の実装を支援する。
【００３１】
第１の態様又は第３の態様で提供される任意の技術的解決策に基づいて、以下では、いくつかの可能な設計が提供される。
【００３２】
可能な設計では、この方法は、現在のデータを復元するために使用される情報と、予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するステップをさらに含む。これにより、現在のデータを正しく復元するのに役立つ。例えば、記憶装置は、ＡＩニューラルアルゴリズムのパラメータが更新される度にスナップショット動作を実行して、現在のデータを復元するために使用される情報と予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記録する。
【００３３】
可能な設計では、現在のデータを復元するために使用される情報が記憶された後に、この方法は、アダプティブラーニング（adaptive  learning）によってＡＩニューラルアルゴリズムのパラメータを更新するステップと；ＡＩニューラルアルゴリズムの更新パラメータ（updated  parameter）に基づいて、現在のデータを復元するために使用される情報を更新するステップと；をさらに含む。これにより、現在のデータを正しく復元するのに役立つ。
【００３４】
可能な設計では、予測を行うために使用されるＡＩニューラルアルゴリズムの前述のパラメータは、ＡＩニューラルアルゴリズムの第１のパラメータとしてマークされ、ＡＩニューラルアルゴリズムの第１のパラメータが更新された後に取得されるパラメータは、ＡＩニューラルアルゴリズムの第２のパラメータとしてマークされる。これに基づいて、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、現在のデータを復元するために使用される情報を更新するステップは、現在のデータを復元するために使用される情報を読み取るステップと；ＡＩニューラルアルゴリズムの第１のパラメータ（つまり、更新前のＡＩニューラルアルゴリズムのパラメータ）、現在のデータを復元するために使用される読み取り情報、及び現在のデータの履歴データに基づいて、現在のデータを復元するステップと；ＡＩニューラルアルゴリズムの第２のパラメータ（つまり、ＡＩニューラルアルゴリズムの更新パラメータ）と現在のデータの履歴データとに基づいて、現在のデータを予測して、第２の予測データを取得するステップであって、第２の予測データは、現在のデータが、ＡＩニューラルアルゴリズムの第２のパラメータに基づいて、履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；現在のデータと第２の予測データとの間の第２のデルタを取得するステップと；第２のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される記憶情報を、第２のデルタ又は第２のデルタを圧縮して得た値に更新するステップと；を含む。
【００３５】
可能な設計では、記憶装置はＡＩコンピューティングカードを含み、履歴データを用いて現在のデータを予測して、第１の予測データを取得するステップは、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、第１の予測データを取得するステップを含む。
【００３６】
可能な設計では、記憶装置はメモリを含む。少なくとも２つの記憶すべきデータの中の現在のデータ及び現在のデータの履歴データを取得するステップは、少なくとも２つの記憶すべきデータの中の現在のデータ及び現在のデータの履歴データをメモリから取得するステップを含む。
【００３７】
可能な設計では、任意の記憶すべきデータについて、記憶すべきデータが他の記憶すべきデータの履歴データとして使用されない場合に、記憶すべきデータは、メモリの記憶オーバーヘッドを削減するように、メモリから削除される。
【００３８】
第４の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ取得方法を提供し、この方法は、現在のデータを復元するために使用される情報を読み取るステップと；現在のデータを復元するために使用される情報が予め設定したデータを含む場合に、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するステップであって、予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；予測データを現在のデータとして使用するステップと；を含み得る。例えば、履歴データは、１つ又は複数の取得データである。
【００３９】
可能な設計では、記憶装置によって読み取られ、且つ現在のデータを復元するために使用される情報に識別子情報が含まれない場合に、それは、現在のデータを復元するために使用される情報には予め設定したデータが含まれることを示す。識別子情報の関連する説明については、前述の第３の態様を参照されたい。詳細については、ここでは再び説明しない。
【００４０】
記憶装置によって読み取られ、且つ現在のデータを復元するために使用される情報に識別子情報が含まれる場合に、それは、現在のデータを復元するために使用される情報には現在のデータ又は現在のデータを圧縮し得た値が含まれることを示すと理解され得る。この場合に、第４の態様は、上記の解決策１又は解決策２に置き換えることができる。
【００４１】
第４の態様で提供される技術的解決策は、新しい技術的解決策を形成するように、解決策１／解決策２と組み合わせることができる。
【００４２】
第４の態様又は第４の態様の代替解決策は、第３の態様で提供される技術的解決策及び技術的解決策の対応する設計的解決策に対応する。従って、第４の態様又は第４の態様の代替解決策の特定の実施態様及び有利な効果については、第３の態様を参照されたい。
【００４３】
第２の態様又は第４の態様で提供される任意の技術的解決策に基づいて、以下では、いくつかの可能な設計が提供される。
【００４４】
可能な設計では、記憶装置はメモリを含み、履歴データを用いて現在のデータを予測する前に、現在のデータの予測データを取得するために、この方法は、メモリから履歴データを取得するステップをさらに含む。
【００４５】
可能な設計では、この方法は、記憶装置によって、現在のデータをメモリに記憶して、現在のデータを他の取得すべき（to-be-obtained）データの履歴データとして使用するステップをさらに含む。
【００４６】
可能な設計では、この方法は、取得データが取得すべきデータの履歴データとしてもはや使用されなくなった場合に、記憶装置が、メモリから取得データを削除して、メモリの記憶オーバーヘッドを削減するステップをさらに含む。
【００４７】
可能な設計では、この方法は、現在のデータを復元するために使用される情報とＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータを取得するステップをさらに含み、履歴データを用いて現在のデータを予測して、予測データを取得するステップは、ＡＩニューラルアルゴリズムの取得パラメータに基づいて履歴データを用いて現在のデータを予測して、予測データを取得するステップを含む。
【００４８】
可能な設計では、記憶装置はＡＩコンピューティングカードを含み、履歴データを用いて現在のデータを予測するステップは、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測するステップを含む。
【００４９】
第５の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ圧縮方法を提供し、記憶装置は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。この方法は、圧縮すべきデータのヒット率を取得するステップと；圧縮すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するステップであって、圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定するステップと；ターゲットセット内の第１のデータで圧縮すべきデータを検索して、圧縮すべきデータに対応する第２のデータを決定し、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用するステップと；を含み得る。
【００５０】
第６の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ解凍方法を提供し、記憶装置は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。この方法は、解凍すべきデータのヒット率を取得するステップと；解凍すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するステップであって、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定するステップと；ターゲットセット内の第２のデータで解凍すべきデータを検索して、解凍すべきデータに対応する第１のデータを決定し、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用するステップと；を含み得る。
【００５１】
第７の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ圧縮方法を提供し、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率がメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率がハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きい。この方法は、圧縮すべきデータのヒット率を取得するステップと；圧縮すべきデータのヒット率に基づいてターゲット記憶媒体を決定するステップであって、圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと；ターゲット記憶媒体内の第１のデータで圧縮すべきデータを検索して、圧縮すべきデータに対応する第２のデータを決定し、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用するステップと；を含む。
【００５２】
第８の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ解凍方法を提供し、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率がメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率がハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きい。この方法は、解凍すべきデータのヒット率を取得するステップと；解凍すべきデータのヒット率に基づいてターゲット記憶媒体を決定するステップであって、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと；ターゲット記憶媒体内の第２のデータで解凍すべきデータに対応する第１のデータを検索し、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用するステップと；を含み得る。
【００５３】
第５又は第７の態様で提供されるデータ圧縮方法で達成することができる有利な効果については、第１の態様の説明を参照すべきことに留意されたい。第６又は第８の態様で提供されるデータ解凍方法で達成できる有利な効果については、第２の態様の説明を参照されたい。一例では、第５の態様及び第７の態様で説明するマッピング関係は、辞書圧縮アルゴリズムの辞書に含まれるマッピング関係であり得る。
【００５４】
第９の態様によれば、本願の一実施形態は、記憶装置を提供し、この記憶装置は、第１の態様から第８の態様で提供される方法のいずれか１つを実行するように構成され得る。
【００５５】
可能な設計では、機能モジュール分割は、第１の態様から第８の態様で提供される方法のいずれか１つに従って、記憶装置上で実行され得る。例えば、各機能モジュールは、各機能による分割によって取得することができ、又は２つ以上の機能を１つの処理モジュールに統合することができる。
【００５６】
別の可能な設計では、記憶装置は、メモリ及びプロセッサを含み、メモリは、プログラムコードを記憶するように構成され、プロセッサは、プログラムコードを呼び出して、第１の態様から第８の態様で提供される方法のいずれか１つを実行するように構成される。
【００５７】
本願で説明するメモリ及びプロセッサは、１つのチップに統合され得るか、又は異なるチップに別々に配置され得ることに留意されたい。本願では、メモリのタイプ、メモリ及びプロセッサの配置方法に制限はない。
【００５８】
本願の一実施形態は、プログラムコードを含むコンピュータ可読記憶媒体をさらに提供し、プログラムコードは、第１の態様から第８の態様で提供される方法のいずれか１つのステップの一部又は全てを実行するために使用される命令を含む。
【００５９】
本願の一実施形態は、コンピュータ可読記憶媒体をさらに提供し、コンピュータ可読記憶媒体はコンピュータプログラムを記憶し、コンピュータプログラムがコンピュータ上で実行されるときに、コンピュータは、第１の態様から第８の態様で提供される可能な方法のいずれか１つを実行することができる。
【００６０】
本願の一実施形態は、コンピュータプログラム製品をさらに提供し、コンピュータプログラム製品がコンピュータ上で実行されるときに、第１の態様から第８の態様で提供される方法のいずれか１つが実行される。
【００６１】
上記で提供される任意の記憶装置、コンピュータ可読記憶媒体、又はコンピュータプログラム製品は、上記で提供される対応する方法を実行するように構成されることが理解され得る。従って、記憶装置、コンピュータ可読記憶媒体、又はコンピュータプログラム製品によって達成することができる有利な効果については、対応する方法における有利な効果を参照されたい。詳細については、ここでは再び説明しない。
【図面の簡単な説明】
【００６２】
【図１】本願の一実施形態に適用可能なシステムアーキテクチャの概略図である。
【図２】本願の一実施形態に適用可能な記憶装置のハードウェア構造の概略図である。
【図３】本願の別の実施形態に適用可能な記憶装置のハードウェア構造の概略図である。
【図４】本願の一実施形態に適用可能なＡＩニューラルアルゴリズムの概略図である。
【図５】本願の一実施形態によるデータ記憶方法の概略図１である。
【図５Ａ】本願の一実施形態による、記憶すべきデータ及び実際に記憶される情報の概略図である。
【図６−１】本願の一実施形態によるデータ記憶方法の概略図２である。
【図６−２】本願の一実施形態によるデータ記憶方法の概略図２である。
【図６−３】本願の一実施形態によるデータ記憶方法の概略図２である。
【図６−４】本願の一実施形態によるデータ記憶方法の概略図２である。
【図６Ａ】本願の一実施形態による、ある時点でメモリ及びハードディスクに記憶されている情報の概略図である。
【図７】本願の一実施形態によるデータ取得方法の概略図１である。
【図７Ａ】本願の一実施形態による、取得すべきデータ及び実際に記憶される情報の概略図である。
【図８Ａ】本願の一実施形態によるデータ取得方法の概略図２である。
【図８Ｂ】本願の一実施形態によるデータ取得方法の概略図２である。
【図８Ｃ】本願の一実施形態によるデータ取得方法の概略図２である。
【図９】本願の一実施形態によるデータ圧縮方法の概略図１である。
【図１０】本願の一実施形態によるデータ解凍方法の概略図１である。
【図１１】本願の一実施形態によるデータ圧縮方法の概略図２である。
【図１２】本願の一実施形態によるデータ解凍方法の概略図２である。
【図１３】本願の一実施形態によるデータ記憶方法の概略図３である。
【図１４】本願の一実施形態によるデータ取得方法の概略図３である。
【図１５】本願の一実施形態による記憶装置の概略図１である。
【図１６】本願の一実施形態による記憶装置の概略図２である。
【図１７】本願の一実施形態による記憶装置の概略図３である。
【図１８】本願の一実施形態による記憶装置の概略図４である。
【図１９】本願の一実施形態による記憶装置の概略図５である。
【図２０】本願の一実施形態による記憶装置の概略図６である。
【発明を実施するための形態】
【００６３】
図１は、本願の一実施形態に適用可能なシステムアーキテクチャの概略図である。図１に示されるシステムアーキテクチャは、クライアント１００及び記憶装置２００を含む。
【００６４】
データ書き込み手順では、クライアント１００は、書き込み要求を記憶装置２００に送信するように構成される。書き込み要求は、１つ又は複数の書き込むべき（to-be-written）データ及び各書き込むべきデータのアドレス情報を含む。書き込み要求を受信した後に、記憶装置２００は、書き込むべきデータのアドレス情報によって示される記憶空間に、各書き込むべきデータを順次（successively：連続して）記憶するか、又は書き込むべきデータのアドレス情報によって示される記憶空間に、書き込むべきデータを処理した後に取得されるデータ（例えば、以下の１つ又は複数の予測、デルタ計算、及び圧縮）を記憶する。
【００６５】
データ読み取り手順では、クライアント１００は、読み取り要求を記憶装置に送信するように構成される。読み取り要求は、１つ又は複数の読み取るべき（to-be-read）データのアドレス情報を含む。読み取り要求を受信した後に、記憶装置２００は、各読み取るべきデータのアドレス情報によって示される記憶空間からデータを順次読み取り、読み取ったデータをクライアント１００にフィードバックするか、又は読み取ったデータを処理（例えば、以下の１つ又は複数の予測、デルタ計算、及び解凍）した後に取得されたデータをクライアント１００にフィードバックする。
【００６６】
図１に示されるシステムアーキテクチャは、本願のこの実施形態に適用可能なシステムアーキテクチャの単なる例であり、本願のこの実施形態に適用可能なシステムアーキテクチャに対する制限を構成するものではないことに留意されたい。例えば、本願のこの実施形態に適用可能なシステムアーキテクチャは、１つの記憶装置２００及び複数のクライアント１００を含んでもよく、又は１つのクライアント及び複数の記憶装置２００を含んでもよい。
【００６７】
クライアント１００は、論理機能モジュールであることが理解され得る。論理機能モジュールで実現できる機能の例については、前述の説明を参照されたい。図１では、クライアント１００が記憶装置２００から独立している例を、説明のために使用する。この場合に、ハードウェア実装において、クライアント１００は、記憶装置２００とは独立した装置に統合され得る。さらに、いくつかの実施形態では、例えば、ハイパーコンバージド（hyper-converged）シナリオにおいて、又は統合型ストレージ及びコンピューティング装置において、クライアント１００は、記憶装置２００内の論理機能モジュールとして機能し得る。この場合に、ハードウェア実装において、クライアント１００は、記憶装置２００内の記憶媒体（メモリ等）及びプロセッサ（中央処理ユニット（central  processing  unit,  CPU）等）によって共同で実装され得る。具体的には、記憶媒体はプログラム命令を記憶する。プログラム命令がプロセッサによって呼び出されると、プロセッサは、クライアント１００によって実装され得る機能を実行することが可能になる。確かに、クライアント１００は、記憶装置２００内の記憶媒体（メモリ等）、プロセッサ、及び他のハードウェアによって共同して、代替的に実装され得る。これは、本願のこの実施形態に限定されない。特に明記しない限り、以下では、本願の実施形態で提供される技術的解決策が、説明のために図１に示されるシステムアーキテクチャに適用される例を使用する。
【００６８】
図２は、本願の一実施形態に適用可能な記憶装置２００のハードウェア構造の概略図である。図２に示される記憶装置は、インターフェイスカード２０１、プロセッサ２０２、メインメモリ（メモリ（memory）等）２０３、セカンダリメモリ（ハードディスク等）２０４、プロトコル変換モジュール２０５、及びバス２０６を含む。これらの構成要素同士の間の接続関係については、図２を参照されたい。本願のこの実施形態では、ハードディスクは、ハードディスクドライブ（hard  disk  drive,  HDD）又はソリッドステートディスク（solid-state  disk,  SDS）等の記憶媒体を含むが、これに限定されない。以下では、説明のために、メインメモリ２０３がメモリ（メモリ２０３としてマークされる）であり、セカンダリメモリ２０４が具体的にはハードディスク（ハードディスク２０４としてマークされる）であり、及びプロトコル変換モジュール２０５が具体的にはハードディスクプロトコル変換モジュール（ハードディスクプロトコル変換モジュール２０５としてマークされる）である例を使用することに留意されたい。これは、本明細書で一律に説明している。詳細については、以下では再び説明しない。
【００６９】
インターフェイスカード２０１、プロセッサ２０２、メモリ２０３、ハードディスク２０４、及びハードディスクプロトコル変換モジュール２０５は、バス２０６を介して互いに接続され得る。バス２０６は、周辺機器相互接続（peripheral  component  interconnect,  PCI）バス、ＰＣＩＥ（ＰＣＩエクスプレス）バス、シリアル接続ＳＣＳＩ（serial  attached  SCSI,  SAS）バス、ＳＡＴＡシリアルポートハードディスク（serial  advanced  technology  attachment,  SATA）バス、及び拡張型産業標準構造（extended  industry  standard  architecture,  EISA）バスのうちの少なくとも１つを含み得る。ＳＣＳＩは、英語で「スカジー（small  computer  system  interface,  SCSI）」の略である。バス２０６は、アドレスバス、データバス、制御バス等のうちの１つ又は複数を含み得る。表示を容易にするために、バス２０６は、図２で矢印線を用いて示されている。ただし、これは、バスが１つしかない、又はバスのタイプが１つしかないことを示すものではない。
【００７０】
インターフェイスカード２０１は、フロントエンドプロトコル変換モジュールとも呼ばれ、受信した情報に対して送信プロトコル変換を実行し、例えば、光ネットワーク通信プロトコル又はイーサネット通信プロトコルを用いてクライアント１００から受信した情報を、ＰＣＩＥプロトコルを使用する情報に変換するか、又は別の例として、ＰＣＩＥプロトコルを用いてプロセッサ２０２から受信した情報を、光ネットワーク通信プロトコル又はイーサネット通信プロトコルを使用する情報に変換するように構成され得る。インターフェイスカード２０１は、ファイバーチャネル（fibre  channel,  FC）インターフェイスカード、ギガビットイーサネット（gigabit  ethernet,  GE）インターフェイスカード、インターフェイスバス（interface  bus,  IB）インターフェイスカード等のうちの少なくとも１つを含み得る。
【００７１】
プロセッサ２０２は、記憶装置２００の制御センタであり、記憶装置２００内のメモリ２０３、ハードディスク２０４、及びハードディスクプロトコル変換モジュール２０５等の他の構成要素を制御して、本願の一実施形態で提供される技術的解決策を実施するべく動作するように構成され得る。具体的な例については、以下の説明を参照されたい。
【００７２】
オプションで、プロセッサ２０２は、ＣＰＵを含み得、具体的には、１つ又は複数のＣＰＵを含み得る。
【００７３】
オプションで、プロセッサ２０２は、ＣＰＵ及びキャッシュ（すなわち、ＣＰＵキャッシュ）を含み得る。キャッシュは、ＣＰＵとメモリ２０３との間の高速メモリであり、且つ主に、記憶装置２００の読み取り／書き込み性能を向上させるように構成される。例えば、キャッシュに記憶されるデータは、メモリ２０３に記憶されるいくつかのデータであり得る。キャッシュにアクセスすべき（to-be-accessed）データ（例えば、読み取るべきデータ又は読み取るべきデータを処理した後に取得されるデータ）が含まれる場合に、ＣＰＵは、メモリ２０３からアクセスすべきデータを取得する必要なしに、キャッシュからアクセスすべきデータを取得することができ、それによりデータ読み取り速度が増大する。
【００７４】
メモリ２０３は、インターフェイスカード２０１から情報（例えば、書き込み要求又は読み取り要求に含まれる（carried  in）情報）をキャッシュするように構成され得、それによって、プロセッサ２０２は、メモリ２０３にキャッシュされた情報を呼び出して、本願の実施形態で提供される技術的解決策を実施する、又は、プロセッサ２０２から情報（例えば、読み取るべきデータ）をキャッシュするように構成され得、それによって、プロセッサ２０２は、メモリ２０３にキャッシュされた情報を呼び出し、その情報をインターフェイスカード２０１に送信して、インターフェイスカード２０１がキャッシュされた情報に対して送信プロトコル変換を順次実行できるようにする。また、メモリ２０３は、プロセッサ２０２とハードディスク２０４との間のメモリであり、且つ記憶装置２００の読み取り／書き込み性能を向上させるように構成される。メモリ２０３に記憶されるデータは、ハードディスク２０３に記憶されるいくつかのデータであり得る。メモリにアクセスすべきデータが含まれる場合に、ＣＰＵは、ハードディスク２０４からアクセスすべきデータを取得する必要なしに、メモリ２０３からアクセスすべきデータを取得することができ、それにより、データ読み取り速度が増大する。
【００７５】
ハードディスク２０４は、データを記憶するように構成される。サポートされる送信プロトコルに基づく分類を通じて、ハードディスク２０４は、ＳＡＳディスク（又はＳＡＳ拡張エンクロージャ）、ＰＣＩＥディスク、ＳＡＴＡディスク等のうちの少なくとも１つを含み得る。
【００７６】
ハードディスクプロトコル変換モジュール２０５は、バックエンドプロトコル変換モジュールとも呼ばれ得、プロセッサ２０２とハードディスク２０４との間に配置され、及び受信した情報に対して送信プロトコル変換を実行して、例えば、ＰＣＩＥプロトコルを用いてプロセッサ２０２から受信した情報を、ハードディスク２０４に適用可能なＳＡＳプロトコル又はＳＡＴＡプロトコル等のプロトコルを使用する情報に変換する、又は別の例として、ＳＡＳプロトコル、ＳＡＴＡプロトコル等を用いてハードディスク２０４から受信した情報を、プロセッサ２０２に適用可能なＰＣＩＥプロトコル等のプロトコルを使用する情報に変換するように構成される。ハードディスク２０４がＳＡＳディスクである例では、ハードディスクプロトコル変換モジュール２０５は、具体的には、ＳＡＳプロトコル変換チップ、ＳＡＳインターフェイスカード等であり得る。
【００７７】
図２に示される記憶装置２００において、プロセッサ２０２は、以下に説明する予測、デルタ計算、圧縮、及び解凍等のステップを実行するように構成され得る。具体的な例については、以下の説明を参照されたい。この場合に、プロセッサ２０２は、プログラムを呼び出すことによって、予測、デルタ計算、圧縮、及び解凍等のステップを実行すると見なすことができる。
【００７８】
図２に示される記憶装置２００は、本願のこの実施形態に適用可能な記憶装置の一例に過ぎず、本願のこの実施形態に適用可能な記憶装置に対する制限を構成するものではないことに留意されたい。本願のこの実施形態に適用可能な記憶装置は、代替的に、記憶装置２００内の構成要素よりも多い又は少ない構成要素を含んでもよい。
【００７９】
例えば、プロセッサ２０２及びハードディスク２０４が同じプロトコルを使用する、例えば、両方がＰＣＩＥプロトコルを使用する場合に、記憶装置２００は、ハードディスクプロトコル変換モジュール２０５を含まなくてもよい。
【００８０】
別の例として、図３に示されるように、図２に示される記憶装置２００に基づいて、記憶装置２００は、ＡＩコンピューティングカード２０７をさらに含み得る。ＡＩコンピューティングカード２０７は、プロセッサ２０２の制御下でＡＩコンピューティング機能を実現する、例えば、以下で説明する予測及びデルタ計算等のステップを実行するように構成される。具体的な例については、以下の説明を参照されたい。ＡＩコンピューティングカードは、例えば、ＡＩコンピューティングチップであってもよい。確かに、本願のこの実施形態はそれに限定されない。この例では、ＡＩコンピューティングカードが予測及びデルタ計算等のステップを実行するように構成される場合に、プロセッサ２０２は、予測及びデルタ計算等のステップを実行する必要がない場合がある。
【００８１】
さらに別の例として、記憶装置２００は、プロセッサ２０２の制御下で圧縮及び解凍等のステップを実行するように構成される圧縮／解凍モジュールをさらに含み得る。特定の例については、以下の説明を参照されたい。この例では、プロセッサ２０２は、圧縮及び解凍等のステップを実行する必要がない場合がある。本明細書で説明する圧縮／解凍モジュールは、チップ等のハードウェアであり得る。
【００８２】
衝突（collision）が発生しない場合に、前述の例のうちの任意の２つ以上を組み合わせて使用して、記憶装置２００の新しいハードウェアアーキテクチャを形成することができることを理解されたい。例えば、記憶装置２００は、ＡＩコンピューティングカード２０７と圧縮／解凍モジュールとの両方を含み得る。
【００８３】
上記の記憶装置２００のハードウェア構造について、図１に示されるシステムアーキテクチャを例として用いて説明する。クライアント１００が記憶装置２００内の論理機能モジュールである実施形態では、記憶装置２００の提供される前述のハードウェア構造は、インターフェイスカード２０１、又はインターフェイスカード２０１とプロセッサ２０２との間のバス２０６を含まなくてもよい。クライアント１００の機能を実現するように構成されるプロセッサ及び前述のプロセッサ２０２は、同じプロセッサであってもよく、又は異なるプロセッサであってもよい。
【００８４】
以下では、本願の実施形態における関連技術を簡単に説明する。
【００８５】
（１）ＡＩニューラルアルゴリズム
【００８６】
図４は、本願の一実施形態に適用可能なＡＩニューラルアルゴリズムの概略図である。図４では、ＡＩニューラルアルゴリズムは、入力層３１、隠れ層３２、及び出力層３３を含み得る。
【００８７】
入力層３１は、入力変数の値を受け取り、受け取った入力変数の値を隠れ層３２に直接又は処理後に送信するように構成される。処理の機能（function：関数）は、隠れ層３２によって識別され得る情報を取得することである。入力変数は、予測すべき（to-be-predicted）データ以前の１つ又は複数のデータである。入力層３１における入力変数の量と、入力変数として使用され且つ予測すべきデータ以前の特定のデータは、予測精度要件に基づいて柔軟に調整され得る。例えば、予測すべきデータがｎ番目のデータであり、且つＸ（ｎ）としてマークされる場合に、入力変数は、予測すべきデータＸ（ｎ）以前のｎ−１個のデータ（Ｘ（１）、Ｘ（２）、・・・、及びＸ（ｎ−１））としてマークされる）内の任意の１つ又は複数のデータである可能性があり、ｎ＞＝１、ｎは整数である。
【００８８】
隠れ層３２は、入力変数の値であり且つ入力層３１から受け取った値に基づいて予測すべきデータを予測し、予測結果を出力層３３に送信するように構成される。隠れ層３２は、ｙ個のニューラルネットワークを含み、ここで、ｙ＞＝１であり、ｙは整数である。ｙの値は、予測精度要件に基づいて調整できる。各ニューラルネットワークは１つ又は複数のニューロンを含み、異なるニューラルネットワークに含まれるニューロンの量は同じでも異なっていてもよい。第１のニューラルネットワークに含まれるニューロンは、Ｓ１１、Ｓ１２、Ｓ１３・・・として表され得る。第２のニューラルネットワークに含まれるニューロンは、Ｓ２１、Ｓ２２、Ｓ２３・・・として表され得る。ｙ番目のニューラルネットワークに含まれるニューロンは、Ｓｙ１、Ｓｙ２、Ｓｙ３・・・として表され得る。隠れ層に含まれる任意の２つのニューロンの間に接続線がある場合にとない場合がある。各接続線には重みがあり、ｉ番目の接続線の重みはｗｉとして表され得、ｉ＞＝１、ｉは整数である。一例では、記憶装置が起動されると、初期値が、ｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量等のパラメータに割り当てられ得る。割り当てられた初期値は、特定の予測精度要件に基づいて、オフラインマシンを用いて、記憶データ（stored  data）（例えば、大量の記憶データ）をトレーニング及び検証することによって取得できる。さらに、データ記憶プロセスでは、実際のサービス要件に基づいてオンライン学習を選択的に有効にして、ｙ、ｗｉ、各ニューラルネットワークに含まれるニューロンの量等の１つ又は複数のパラメータの値を調整することができ、それにより、予測精度が向上する。
【００８９】
出力層３３は、隠れ層３２の予測結果を直接又は処理後に出力するように構成される。処理の機能は、予測結果を受け取る構成要素／モジュールによって識別され得る情報を取得することである。予測結果には、予測すべきデータを予測した後に取得される予測データが含まれる。
【００９０】
本願のこの実施形態では、ＡＩニューラルアルゴリズムのタイプは、ＮＬＭＳタイプ、ＳＬＰタイプ、ＭＬＰタイプ、ＲＮＮタイプ等のいずれか１つを含み得る。ＲＮＮタイプのＡＩニューラルアルゴリズムは、Ｇｏｏｇｌｅ（登録商標）の高速且つ正確な画像超解像（rapid  and  accurate  image  super-resolution,  RAISR）アルゴリズム、又はインテリジェント運転における移動物体追跡予測技術及びアルゴリズム、例えばＢａｉｄｕ（登録商標）のインテリジェント運転アルゴリズムのアポロ（Apollo）を含み得る。以下では、ＡＩニューラルアルゴリズムのアプリケーション例を説明するための２つのアルゴリズムについて簡単に説明する。
【００９１】
Ｇｏｏｇｌｅ（登録商標）のＲＡＩＳＲアルゴリズムは、次のように説明することができる。画像の変化の固有の規則が、マシンを用いて画像を学習することによって取得され、ここで、固有の規則は、アルゴリズムにおいてパラメータの値（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量のうちの１つ又は複数）を用いて表され得る。次に、取得したパラメータの値及び画像内の既知のピクセル値を用いて、画像内の欠落している各ピクセルのピクセル値及び元の高解像度画像内のピクセル値を予測し、低解像度画像を高解像度画像に復元する。コンピュータの場合に、コンピュータ内のバイナリデータのグループに欠落部分がある場合に、Ｇｏｏｇｌｅ（登録商標）のＲＡＩＳＲアルゴリズムの機能（関数）は、機械学習を通じて欠落部分を予測することである。
【００９２】
Ｂａｉｄｕ（登録商標）のＡｐｏｌｌｏインテリジェント運転アルゴリズムは、次のように説明することができる。物体の運動パラメータは、マシンを用いて学習され、物体の運動パラメータの変化の固有の規則を取得し、ここで、固有の規則は、アルゴリズムにおいてパラメータの値（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量のうちの１つ又は複数）を用いて表され得る。次に、取得したパラメータの値と物体の現在の運動パラメータ及び／又は過去の運動パラメータとを用いて、物体の将来の運動パラメータを予測する。コンピュータの場合に、位置の変化又は特定の値の変化は、将来のバイナリデータ内の既知のバイナリデータのグループに対して予測される。
【００９３】
類推により、本願の実施形態で使用されるＡＩニューラルアルゴリズムは、次のように説明することができる。記憶データは、マシンを用いて学習され、記憶データの変化の固有の規則が取得され、ここで、固有の規則は、アルゴリズムにおいてパラメータの値（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量のうちの１つ又は複数）を用いて表され得る。次に、取得したパラメータの値及び既知の記憶データを用いて、未知の記憶データを予測する。コンピュータの場合に、既知のバイナリデータのグループを用いて、将来のバイナリデータの値を予測する。
【００９４】
（２）辞書（dictionary）圧縮技術（又はアルゴリズム）及び辞書解凍技術（又はアルゴリズム）
【００９５】
辞書圧縮技術は、現在業界で認められている高効率のストレージ技術である。辞書圧縮技術の基本原理は次の通りである。辞書は記憶装置に予め記憶され、ここで、辞書には少なくとも２つのマッピング関係が含まれ、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、各マッピング関係において第１のデータが占める記憶空間は、マッピング関係において第２のデータが占める記憶空間よりも大きい。換言すると、各マッピング関係は、複雑なシンボル（又は複雑なデータ）と単純なシンボル（又は単純なデータ）との間のマッピング関係である。一般に、辞書内の任意の２つの第１のデータは異なり、任意の２つの第２のデータも異なる。圧縮する必要のある圧縮すべきデータ（例えば、書き込むべきデータ）がある場合に、記憶装置は、圧縮すべきデータを辞書内の第１のデータと比較することができ、辞書内の第１のデータに圧縮すべきデータが含まれる場合に、圧縮すべきデータに対応する第２のデータを記憶する、又は辞書内の第１のデータに圧縮すべきデータが含まれない場合に、圧縮すべきデータを記憶する。
【００９６】
例えば、辞書に記憶される第１のデータと第２のデータとの間の対応関係が表１に示されていると想定する。
【表１】
2021534505.tif 000003
【００９７】
さらに、以下の圧縮すべきデータを圧縮する必要がある場合に、表１に示される辞書に基づいて辞書圧縮を行った後に、「私は中国人であり、中国出身である」という記憶装置に記憶されている情報（つまり、圧縮すべきデータを復元するために使用される情報）は、「私は００  ０１であり、０２から来ました」であり得る。
【００９８】
辞書解凍技術の基本原理は以下の通りである。記憶装置は、解凍すべきデータ（例えば、記憶空間から読み取られるデータ）を辞書内の第２のデータと比較し、辞書内の第２のデータに解凍すべきデータが含まれる場合に、解凍すべきデータに対応する第１のデータを解凍データとして使用し、又は辞書内の第２のデータに解凍すべきデータが含まれない場合に、解凍すべきデータを解凍データとして使用する。
【００９９】
さらに、本願における「複数」という用語は、２つ以上を意味する。本願における「及び／又は」という用語は、関連するオブジェクトを説明するための関連関係のみを説明し、３つの関係が存在し得ることを表す。例えば、Ａ及び／又はＢは、次の３つのケースを表し得る：Ａのみが存在し、ＡとＢとの両方が存在し、Ｂのみが存在する。さらに、本明細書の文字「／」は、通常、関連するオブジェクト同士の間の「又は」の関係を示す。数式で文字「／」が使用される場合に、その文字は、通常、関連するオブジェクト同士の間の「除算」関係を示す。例えば、式Ａ／Ｂは、ＡがＢで除算されることを示す。本願では、「第１」、「第２」等の用語は、異なるオブジェクトを区別することを目的としているが、オブジェクトの特定の順序を示すものではない。
【０１００】
添付の図面を参照して、以下では、本願の実施形態で提供されるデータ記憶方法及びデータ取得方法について説明する。
【０１０１】
図５は、本願の一実施形態によるデータ記憶方法の概略図である。図５に示される方法は、以下のステップを含み得る。
【０１０２】
Ｓ１００：記憶装置は、現在のデータ及び現在のデータの履歴データを取得する。
【０１０３】
例えば、記憶装置は、少なくとも２つの記憶すべきデータ内の現在のデータ（すなわち、現在の記憶すべきデータ）及び現在のデータの履歴データ（すなわち、記憶すべき履歴データ）を取得し、履歴データは、少なくとも２つの記憶すべきデータを含むシーケンス内の現在のデータ以前の１つ又は複数のデータである。
【０１０４】
Ｓ１０１：記憶装置は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。
【０１０５】
履歴データの変更規則は、具体的には、コンテンツ（content）の変更規則又は履歴データの値である。
【０１０６】
例えば、シーケンス内の全てのデータ（すなわち、記憶すべきデータ）は、連続したＸ（１）、Ｘ（２）、Ｘ（３）、・・・、Ｘ（ｎ）、・・・、及びＸ（Ｎ）であり、ここで、１＜＝ｎ＜＝Ｎ、Ｎ＞＝２であり、ｎとＮとの両方が整数である。この場合に、現在のデータがＸ（ｎ）である場合に、履歴データは、Ｘ（ｎ）以前の任意の１つ又は複数のデータであり得る。オプションで、履歴データは、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の連続データの予め設定した量である。例えば、予め設定した量が１０であり、ｎ＝５０の場合に、履歴データは、データＸ（４０）〜Ｘ（４９）であり得、又はｎ＝５１の場合に、履歴データは、データＸ（４１）〜Ｘ（５０）であり得る。確かに、履歴データは、代替的に、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の複数の非連続データである。
【０１０７】
現在のデータ以前にあり、且つ現在のデータの履歴データとして使用される特定のデータは、Ｓ１０１で予測を行うために使用されるアルゴリズムに関連し得る。予測を行うために使用されるアルゴリズムは、本願のこの実施形態では限定されない。例えば、アルゴリズムはＡＩニューラルアルゴリズムを含み得る。この場合に、現在のデータ以前にあり、且つＳ１０１で使用される履歴データとして使用される特定のデータは、図４に示されるＡＩニューラルアルゴリズムの入力変数に基づいて決定され得る。例えば、図４に示されるＡＩニューラルアルゴリズムの入力変数が、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の１０個の連続データであり、現在のデータがＸ（ｎ）であり、ｎ＝５０の場合に、履歴データはＸ（４０）〜Ｘ（４９）である。別の例として、図４に示されるＡＩニューラルアルゴリズムの入力変数がＸ（ｎ−２）、Ｘ（ｎ−４）、Ｘ（ｎ−６）、Ｘ（ｎ−８）、及びＸ（ｎ−１０）であり、現在のデータがＸ（ｎ）であり、ｎ＝５０の場合に、履歴データは、Ｘ（４８）、Ｘ（４６）、Ｘ（４４）、Ｘ（４２）、及びＸ（４０）である。
【０１０８】
ＡＩニューラルアルゴリズムの特定の実施態様については、前述の説明を参照されたい。詳細については、ここでは再び説明しない。Ｓ１０１を実行する前に、記憶装置は、ＡＩニューラルアルゴリズムの全てのパラメータ（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量）の値を取得していることに留意されたい。ＡＩニューラルアルゴリズムの全てのパラメータの値は、記憶データをオフライン及び／又はオンラインでトレーニングすることによって取得できる。Ｓ１０１を実行するときに、記憶装置は、履歴データとＡＩニューラルアルゴリズムの全てのパラメータの取得値とに基づいて現在のデータを予測して、現在のデータの予測データを取得することができる。
【０１０９】
一例では、クライアントによって送信された１つ又は複数の書き込み要求を受信した後に、記憶装置は、１つ又は複数の書き込み要求に含まれる書き込むべきデータに基づいて、少なくとも２つの記憶すべきデータを取得することができる。１つ又は複数の書き込み要求に含まれる書き込むべきデータは、同じ対象物（subject）又は同じタイプの対象物のデータである。例えば、対象物は、同じ品目（article）、同じ画像、又は同じタイプの複数の画像であり得る。次に、少なくとも２つの記憶すべきデータがソートされて、少なくとも２つの記憶すべきデータを含むシーケンスが取得される。続いて、シーケンス内の一部又は全部の記憶すべきデータ内の全ての記憶すべきデータを現在のデータとして順次使用して、Ｓ１００〜Ｓ１０５を実行する。
【０１１０】
１つ又は複数の書き込み要求に含まれる書き込むべきデータに基づいて少なくとも２つの記憶すべきデータを取得するステップは、１つ又は複数の書き込み要求に含まれる各書き込むべきデータを１つの記憶すべきデータとして使用するステップ、或いは１つ又は複数の書き込み要求に含まれる書き込むべきデータを少なくとも２つの記憶すべきデータに再結合及び／又は分割するステップを含み得る。具体的には、記憶装置が受け取る書き込むべきデータの粒度は、記憶装置による処理（予測、デルタ計算、記憶等の１つ又は複数を含む）の粒度と同じでも異なっていてもよい。例えば、１つ又は複数の書き込み要求に含まれる各書き込むべきデータが８ビットであり、各記憶すべきデータが８ビットである場合に、各書き込むべきデータは１つの記憶すべきデータである；各記憶すべきデータが１６ビットである場合に、２つの書き込むべきデータを組み合わせることにより、各記憶すべきデータを取得することができる；又は、各記憶すべきデータが４ビットである場合に、２つの記憶すべきデータは全て、１つの書き込むべきデータを分割することによって取得され得る。説明を容易にするために、以下では、説明のために、各書き込むべきデータが１つの記憶すべきデータとして使用される例を使用する。
【０１１１】
この例における少なくとも２つの記憶すべきデータをソート（sorting：並べ替え）する特定の方法は、本願のこの実施形態では限定されない。通常、この例では、ソートを行うために使用されるソート規則は、予測を行うために使用されるＡＩニューラルアルゴリズム等の予測アルゴリズムに関連している。例えば、この例では、ソートを行うために使用されるソート規則は、記憶装置がＡＩニューラルアルゴリズムの全てのパラメータ（前述のｙ、ｗｉ、各ニューラルネットワークに含まれるニューロンの量等）の値を取得するプロセスにおいて、記憶データがトレーニングに関与するときに、記憶データが基づくソート規則と同じである。例えば、記憶データが、記憶データがトレーニングに関与するときの同じ品目である場合に、ソート規則は、品目内の全ての文字のシーケンス又はこのシーケンスの逆のシーケンスである可能性がある。別の例として、トレーニングに関与する記憶データが同じ画像に関するものである場合に、ソート規則は、画像内の全てのピクセルが行毎に又は列毎にソートされる規則、又は画像が複数の部分に分割される規則である可能性があり、同様の部分が結合された後に取得される新しい画像内の全てのピクセルは、行毎又は列毎にソートされる。
【０１１２】
一例では、クライアントによって送信された１つ又は複数の書き込み要求を受信した後に、記憶装置は、書き込み要求に含まれる書き込むべきデータから少なくとも２つの記憶すべきデータを取得し、少なくとも２つの書き込むべきデータによって順番に構成されるシーケンスを、少なくとも２つの記憶すべきデータを含むシーケンスとして使用し、次に、シーケンス内の一部又は全ての記憶すべきデータ内の全ての記憶すべきデータを現在のデータとして順次使用して、Ｓ１０１〜Ｓ１０５を実行することができる。この例では、記憶装置は、書き込むべきデータをソートするステップを実行しない場合がある。この例のアプリケーションシナリオは次の通りであり得る。記憶装置がＡＩニューラルアルゴリズムの全てのパラメータ（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量）の値を取得するプロセスでは、トレーニングに関与する記憶データのシーケンスは、記憶装置によって受信され、且つクライアントによって送信される記憶データのシーケンスである。この例の関連パラメータの説明及び実施態様については、前述の説明を参照されたい。
【０１１３】
予測ステップについて、本願のこの実施形態では、以下の技術的解決策がサポートされることに留意されたい。
【０１１４】
解決策１：いくつかの記憶すべきデータについて、予測ステップはデフォルトであり得る。例えば、履歴データがＸ（ｎ−１）から始まりＸ（ｎ−１）以前の１０個の連続データである場合に、１番目〜１０番目までの記憶すべきデータについて、予測ステップはデフォルトであり得る。
【０１１５】
解決策１に基づいて、記憶装置は、先行技術で提供される技術的解決策に従って記憶データを記憶し、例えば、記憶データを直接記憶し、又は辞書圧縮アルゴリズム及び／又は重複排除アルゴリズム等のアルゴリズムに基づく圧縮を行った後に記憶データを記憶し得る。この場合に、Ｓ１０２〜Ｓ１０４もデフォルトであり得ることが理解され得る。
【０１１６】
解決策２：記憶装置が異なる記憶すべきデータを予測する場合に、使用される予測アルゴリズムの全てのパラメータは同じであっても異なっていてもよい。例えば、５番目〜１０番目の記憶すべきデータについて、ＡＩニューラルアルゴリズムの入力変数は、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の５個の連続データである可能性がある。つまり、５個の入力変数がある。１０番目の記憶すべきデータとそれに続く記憶すべきデータの場合に、ＡＩニューラルアルゴリズムの入力変数は、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の１０個の連続データである可能性がある。換言すると、６つの入力変数がある。
【０１１７】
Ｓ１０２：記憶装置は、現在のデータと現在のデータの予測データとの間のデルタを取得する。
【０１１８】
デルタは、現在のデータと現在のデータの予測データとの間の差を表すために使用されるパラメータである。例えば、デルタは、差、比、倍数、パーセンテージ等であり得る。確かに、本願のこの実施形態はそれに限定されない。
【０１１９】
例えば、デルタが差である場合に、差は、現在のデータから現在のデータの予測データを差し引くことによって得られる差、又は現在のデータの予測データから現在のデータを差し引くことによって得られる差であり得る。特定の差を予め規定してもよく、本願のこの実施形態はそれに限定されない。現在のデータの予測データが、現在のデータよりも大きい、等しい、又は小さい可能性があるため、差は、０より大きい、等しい、又はより小さい値である可能性があることが理解され得る。デルタが、比、倍数、又はパーセンテージ等である場合に、特定の実施態様の原理及びデルタの値は、上記のものと同様であり、本明細書では１つずつ列挙していない。
【０１２０】
Ｓ１０３：記憶装置は、デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さいかどうかを判定する。デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、Ｓ１０４が実行される。デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さくない場合に、Ｓ１０５が実行される。
【０１２１】
Ｓ１０３は、以下の方法のうちの１つで実施され得る。
【０１２２】
方法１：記憶装置は、デルタのビット数量が現在のデータのビット数量よりも少ないかどうかを判定する。
【０１２３】
方法２：記憶装置は、デルタ及び現在のデータを別々に圧縮し（例えば、辞書圧縮アルゴリズム又は重複排除アルゴリズムを用いてデルタ及び現在のデータを圧縮する）、デルタを圧縮して得た値のビット数量が、現在のデータを圧縮して得た値のビット数量よりも少なくなるかどうかを判定する。
【０１２４】
方法１及び方法２のいずれかに基づいて、判定結果が「はい」である場合に、それは、デルタが占める記憶空間が、現在のデータが占める記憶空間よりも小さいことを示す、又は、判定結果が「いいえ」の場合に、デルタが占める記憶空間が、現在のデータが占める記憶空間以上であることを示す。
【０１２５】
Ｓ１０４：記憶装置は、デルタを記憶するか、又はデルタを圧縮して得た値を記憶する。デルタを圧縮して得た値又はデルタが具体的に記憶されるかどうかは、予め規定することができる。確かに、本願のこの実施形態はそれに限定されない。
【０１２６】
圧縮を行うために使用される圧縮アルゴリズムは、本願のこの実施形態では限定されない。例えば、圧縮アルゴリズムは、辞書圧縮アルゴリズム及び重複排除アルゴリズムのうちの少なくとも１つを含み得る。１つ又は複数の特定の使用アルゴリズムを予め規定することができる。確かに、本願のこの実施形態はそれに限定されない。
【０１２７】
Ｓ１０４を実行した後に、現在のデータの記憶プロセスは終了する。
【０１２８】
Ｓ１０５：記憶装置は、現在のデータを記憶するか、又は現在のデータを圧縮して得た値を記憶する。現在のデータを圧縮して得た値又は現在のデータが具体的に記憶されるかどうかは、予め規定することができる。確かに、本願のこの実施形態はそれに限定されない。
【０１２９】
一例では、Ｓ１０５が実行される場合に、記憶装置によって使用される圧縮アルゴリズムは、Ｓ１０４の圧縮に使用される圧縮アルゴリズムと一致している。確かに、本願のこの実施形態はそれに限定されない。
【０１３０】
Ｓ１０５を実行した後に、現在のデータの記憶プロセスは終了する。
【０１３１】
記憶装置が、現在のデータを復元するために使用される記憶情報が「圧縮よって得た値又はデルタ」であるか、又は「圧縮によって得た値又は現在のデータ」であるかを区別し、データ読み取り手順で読み取るべきデータを決定するのを助けるために、オプションで、Ｓ１０５が実行される場合に、この方法は、以下のＳ１０５Ａをさらに含み得る。
【０１３２】
Ｓ１０５Ａ：記憶装置は、第１の識別子情報を記憶し、ここで、第１の識別子情報は、現在のデータを復元するために使用される記憶情報がＳ１０５で記憶される情報（すなわち、現在のデータ又は現在のデータを圧縮して得た値）であることを示すために使用される。第１の識別子情報は、現在のデータを復元するために使用される情報の識別子情報として、又は現在のデータを復元するために使用される情報に含まれる情報として使用され得る。
【０１３３】
Ｓ１０５Ａは、以下のものと置き換えることができることが理解され得る。以下のＳ１０４Ａは、Ｓ１０４を実行した後に実行される。あるいはまた、Ｓ１０５Ａを実行する場合であって、Ｓ１０４を実行した後に、以下のＳ１０４Ａをさらに実行してもよい。
【０１３４】
Ｓ１０４Ａ：記憶装置は、第２の識別子情報を記憶し、ここで、第２の識別子情報は、現在のデータを復元するために使用される記憶情報がＳ１０４で記憶される情報（すなわち、デルタ又はデルタを圧縮して得た値）であることを示すために使用される。
【０１３５】
記憶すべきデータの予測データは、予測アルゴリズムのパラメータの値を調整することによって記憶すべきデータに近づけることができ、それによって、殆どの記憶すべきデータの予測データと記憶すべきデータとの間のデルタが占める記憶空間は、記憶すべきデータが占める記憶空間よりも小さい。従って、特定の実施態様では、Ｓ１０５Ａが実行され、Ｓ１０４Ａが実行されない場合に（換言すると、第１の識別子情報が記憶され、第２の識別子情報が記憶されない場合に）、記憶装置は、現在のデータを復元するために使用される記憶情報が、「デルタを圧縮して得た値又はデルタ」又は「現在のデータを圧縮して得た値又は現在のデータ」であるかどうかを区別することができ、記憶オーバーヘッドを削減できる。次の図６−１〜図６−４から図８Ａ〜図８Ｃに示される実施形態は全て、データ記憶方式においてＳ１０５Ａが実行され、Ｓ１０４Ａが実行されない例に基づいて説明している。
【０１３６】
本願のこの実施形態で提供されるデータ記憶方法では、現在のデータは履歴データを用いて予測され、現在のデータと現在のデータの予測データとの間のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、デルタ又はデルタを圧縮して得た値が記憶される。デルタが占める記憶空間が、現在のデータが占める記憶空間よりも小さいため、予測及びデルタ計算のプロセスは、データ圧縮プロセスと見なすことができる。このようにして、従来技術と比較して、デルタが直接記憶されるか、又はデルタを圧縮して得た値が記憶されるかに関係なく、記憶オーバーヘッドを削減できる。さらに、現在のデータの予測データが現在のデータに近くなるように、適切な予測アルゴリズムが使用されるか、予測アルゴリズムのパラメータが調整される。従って、デルタが占める記憶空間は、現在のデータが占める記憶空間よりもはるかに小さく、それにより記憶オーバーヘッドがより効果的に削減される。さらに、デルタを圧縮して得た値を記憶する技術的解決策において、記憶オーバーヘッドをさらに削減できる。
【０１３７】
図５に示されるデルタを圧縮して得た値を記憶する技術的解決策は、次のように理解され得る。従来の圧縮アルゴリズムを用いてデータを処理する前に、予測アルゴリズムが導入され、ここで、予測アルゴリズムは、データのコンテンツ規則、開発動向、固有の関係等に基づいて構成される。記憶装置に入力されるデータのコンテンツは、予測アルゴリズムと、記憶装置に入力されたデータ（又は記憶装置に入力された複数のデータを含むシーケンス内の後者のデータは、以前のデータを用いて予測される）とを用いて予測される。次に、予測される正確なコンテンツ又は類似のコンテンツについて、従来のデータ圧縮アルゴリズムのみが呼び出されて、実際の値と予測値との間のデルタが圧縮されるが、予測される正確なコンテンツ又は類似のコンテンツは記憶されない。このようにして、圧縮率が増大し、従来の圧縮アルゴリズムにおける入力値の変動範囲が積極的に低減され、それにより、解凍率及び解凍速度に関して現在の圧縮アルゴリズムの最適化及びブレークスルーが達成される。
【０１３８】
例えば、記憶装置の終了の場合に、記憶オブジェクトはバイナリシーケンスであるが、シーケンスが理解可能なセマンティクス（semantics）に復元されると、シーケンスにはいくつかの変更規則が含まれていることが分かる。例えば、バイナリシーケンスＸｎ＝｛１０、１０１、１０１０、１０００１、１１０１０、１００１０１、１１００１０、１０００００１、１０１００１０、１１００１０１、１１１１０１０、１００１０００１、１０１０１０１１｝が１０進シーケンスに変換された後に、Ｘｎ’＝｛２、５、１０、１７、２６、３７、５０、６５、８２、１０１、１２２、１４５、１７１｝が得られる。解析によって、Ｘｎ'の最初の１２個のデータが、以下の変更規則：ｘ２＋１及びｘ＝１〜１２を満たしていることが分かった。
【０１３９】
これに基づいて、Ｘｎ’について、予測アルゴリズムｘ２＋１及び図５に示される実施形態に基づいて記憶装置によって実際に記憶されるシーケンスは、｛１０、１０１、１０１０、０、０、０、０、０、０、０、０、０、０１｝となり得る。Ｘｎ’の最初の３つのデータでは、予測ステップがデフォルトである。Ｓ１０５Ａを参照すると、その３つのデータについて、記憶装置は、第１の識別子情報をさらに別々に記憶し得ることが分かり得る。記憶される「０１」は、記憶すべきデータ１７１と記憶すべきデータの予測データ１７０との間の差である。記憶のために圧縮する必要のあるデータの範囲が大幅に削減され、その範囲内のデータの繰り返し確率が明らかに増大することが分かり得る。従って、データ圧縮率及び圧縮効率を大幅に向上させることができる。
【０１４０】
複数の記憶すべきデータについては、各記憶すべきデータが、図５に示されるデータ記憶方法に従って記憶され得るので、各記憶すべきデータが、記憶すべきデータの予測データと比較される場合に、完全に同じ、部分的に同じ、及び完全に異なるケースのいずれかが発生する可能性があることに留意されたい。記憶すべきデータ及び予測データが完全に同じ又は部分的に同じである場合に、記憶空間を節約できる。記憶すべきデータ及び予測データが完全に異なる場合に、その効果は、従来技術で使用されている対応する方法と同等である。従って、一般に、記憶空間を節約できる。さらに、圧縮によって得た値を記憶する技術的解決策では、データ圧縮率及び圧縮効率を大幅に向上させることができる。
【０１４１】
図５Ａは、本願の一実施形態による、記憶すべきデータ及び実際に記憶される情報（すなわち、記憶すべきデータを復元するために使用される情報）の概略図である。履歴データが、現在のデータ以前であって、記憶すべきデータから始まり現在のデータ以前の５個の連続する記憶すべきデータである例が、説明のために図５で使用される。従って、シーケンス内の最初の５個の記憶すべきデータについて、対応する実際に記憶される情報は、別個に記憶すべきデータ（又は記憶すべきデータを圧縮して得た値）及び第１の識別子情報である。各影付きの四角は、１つの記憶すべきデータに対応する実際に記憶される情報を表し、対応関係が破線の矢印で示される。「Ａ」は第１の識別子情報を示す。
【０１４２】
図２に示される記憶装置を参照すると、図５に示されるデータ記憶方法の例が、図６−１〜図６−４に示され得る。図６−１〜図６−４に示される方法は、以下のステップを含み得る。
【０１４３】
Ｓ２０１：記憶装置は、インターフェイスカードを用いて、クライアントから送信された書き込み要求を受信し、ここで、書き込み要求には、少なくとも２つの書き込むべきデータと、少なくとも２つの書き込むべきデータのそれぞれのアドレス情報とが含まれる。
【０１４４】
Ｓ２０２：インターフェイスカードは、少なくとも２つの書き込むべきデータ及び各書き込むべきデータのアドレス情報に対して送信プロトコル変換を実行し、例えば、イーサネット通信プロトコルを使用するこれらの情報を、ＰＣＩＥプロトコルを使用する情報に変換する。
【０１４５】
Ｓ２０３：インターフェイスカードは、送信プロトコル変換後に取得される少なくとも２つの書き込むべきデータ及び各書き込むべきデータのアドレス情報をプロセッサに送信する。
【０１４６】
Ｓ２０４：プロセッサは、インターフェイスカードから受信した少なくとも２つの書き込むべきデータのそれぞれを１つの記憶すべきデータとして使用し、取得した少なくとも２つの記憶すべきデータをソートする。
【０１４７】
Ｓ２０５：プロセッサは、ソート後に取得したシーケンス及び各記憶すべきデータ（すなわち、各書き込むべきデータ）のアドレス情報をメモリに記憶する。続いて、プロセッサは、シーケンス内の一部又は全ての記憶すべきデータ内の全ての記憶すべきデータを現在のデータとして順次使用して、以下のＳ２０６〜Ｓ２１９を実行することができる。シーケンス内の任意の２つの記憶すべきデータについて、シーケンスの前部（front  position）に位置する記憶すべきデータは、後部（back  position）に位置する記憶すべきデータの履歴データとして使用され得ることが理解され得る。
【０１４８】
オプションで、Ｓ２０４及びＳ２０５は、以下のものと置き換えることができる。プロセッサは、インターフェイスカードから受信した少なくとも２つの書き込むべきデータを１つの記憶すべきデータとして使用し、取得した記憶すべきデータ及び記憶すべきデータのアドレス情報をメモリに書き込む。次に、プロセッサは、メモリに書き込まれた少なくとも２つの記憶すべきデータをソートするか、又はプロセッサは、インターフェイスカードによって送信されて受信された少なくとも２つの書き込むべきデータの順序を少なくとも２つの記憶すべきデータの順序として順次使用してシーケンスを形成することができ、シーケンス内の一部又は全部の記憶すべきデータ内の全ての記憶すべきデータを現在のデータとして順次使用して、以下のＳ２０６〜Ｓ２１９を実行することができる。
【０１４９】
シーケンスの前部に位置する記憶すべきデータは、後部に位置する記憶すべきデータの履歴データとして使用され得ることが理解され得る。しかしながら、前述の説明に基づいて、記憶すべきデータ以前の全ての記憶すべきデータが、記憶すべきデータの履歴データとして使用されるわけではないことが分かり得る。これに基づいて、オプションで、任意の記憶すべきデータについて、記憶すべきデータが他の記憶すべきデータの履歴データとしてもはや使用されなくなったときに、プロセッサは、メモリから記憶すべきデータを削除して、メモリの記憶オーバーヘッドを削減することができる。
【０１５０】
図６Ａは、ある時点でメモリ及びハードディスクに記憶されている情報の概略図である。図６Ａは、図５Ａに基づいて描かれている。従って、図６Ａの様々なグラフ、矢印等の説明については、図５Ａを参照されたい。図６Ａから、現時点では、メモリに記憶すべきデータを含むシーケンスは、現在のデータの履歴データ、現在のデータ、及び現在のデータの後の記憶すべきデータのみを含み得ることが分かり得る。このようにして、メモリの記憶オーバーヘッドを削減できる。
【０１５１】
Ｓ２０６：プロセッサは、メモリから現在のデータ及び現在のデータの履歴データを取得する。
【０１５２】
Ｓ２０７：プロセッサは、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。
【０１５３】
Ｓ２０８：プロセッサは、現在のデータと現在のデータの予測データとの間のデルタを取得する。
【０１５４】
Ｓ２０９：プロセッサは、デルタが占める記憶空間が、現在のデータが占める記憶空間よりも小さいかどうかを判定する。
【０１５５】
デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、Ｓ２１０が実行される、又はデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さくない場合に、Ｓ２１５が実行される。
【０１５６】
Ｓ２１０：プロセッサはデルタを圧縮する。
【０１５７】
Ｓ２１１：プロセッサは、メモリから取得した現在のデータのアドレス情報と、デルタを圧縮して得た値とをハードディスクプロトコル変換モジュールに送信する。
【０１５８】
Ｓ２１２：ハードディスクプロトコル変換モジュールは、現在のデータのアドレス情報及び受信したデルタを圧縮して得た値に対して送信プロトコル変換を実行し、例えば、ＰＣＩＥプロトコルからＳＡＳプロトコルへの変換を実行する。
【０１５９】
Ｓ２１３：ハードディスクプロトコル変換モジュールは、送信プロトコル変換後に取得される現在のデータのアドレス情報及びデルタを圧縮して得た値をＳＡＳディスク等のハードディスクに送信する。
【０１６０】
Ｓ２１４：ハードディスクは、デルタを圧縮して得た値を、現在のデータのアドレス情報によって示される記憶空間に記憶する。Ｓ２１４を実行した後に、現在のデータの記憶プロセスは終了する。
【０１６１】
Ｓ２１５：プロセッサは現在のデータを圧縮する。
【０１６２】
Ｓ２１６：プロセッサは、第１の識別子情報、メモリから取得した現在のデータのアドレス情報、及び現在のデータを圧縮して得た値をハードディスクプロトコル変換モジュールに送信する。第１の識別子情報は、現在のデータを復元するために使用される記憶情報が、現在のデータを圧縮して得た値であることを示すために使用される。
【０１６３】
Ｓ２１７：ハードディスクプロトコル変換モジュールは、受信した第１の識別子情報、現在のデータのアドレス情報、及び現在のデータを圧縮して得た値に対して送信プロトコル変換を実行し、例えば、ＰＣＩＥプロトコルからＳＡＳプロトコルへの変換を実行する。
【０１６４】
Ｓ２１８：ハードディスクプロトコル変換モジュールは、送信プロトコル変換後に取得される第１の識別子情報、現在のデータのアドレス情報、及び現在のデータを圧縮して得た値をハードディスク（ＳＡＳディスク等）に送信する。
【０１６５】
Ｓ２１９：ハードディスクは、第１の識別子情報及び現在のデータを圧縮して得た値を、現在のデータのアドレス情報によって示される記憶空間に記憶する。Ｓ２１９を実行した後に、現在のデータの記憶プロセスは終了する。
【０１６６】
図３に示される記憶装置を参照すると、図５に示されるデータ記憶方法の例は、図６−１〜図６−４に示される実施形態が以下のいくつかの点で変更された後に得られる実施形態であり得る。１：前述のＳ２０７〜Ｓ２０９は、ＡＩコンピューティングカードによって実行される。２：Ｓ２０６が実行された後であって、Ｓ２０７が実行される前に、この方法は、プロセッサが、メモリから取得した履歴データ及び現在のデータをＡＩコンピューティングカードに送信するステップをさらに含む。３：Ｓ２０９が実行された後であって、Ｓ２１０が実行される前に、この方法は、ＡＩコンピューティングカードが、デルタをプロセッサに送信するステップをさらに含む。４：Ｓ２０９が実行された後であって、Ｓ２１５が実行される前に、この方法は、ＡＩコンピューティングカードが、現在のデータをプロセッサに送信するステップをさらに含む。
【０１６７】
図７は、本願の一実施形態によるデータ取得方法の概略図である。この実施形態は、図５に示されるデータ記憶方法に対応する。従って、この実施形態における関連する内容の説明については、図５に示される実施形態を参照されたい。図７に示される方法は、以下のステップを含み得る。
【０１６８】
Ｓ３０１：記憶装置は、現在のデータ（つまり、現在取得すべきデータ）を復元するために使用される情報を読み取る。現在のデータを復元するために使用される情報には、「デルタ又はデルタを圧縮して得た値」又は「現在のデータ又は現在のデータを圧縮して得た値」が含まれる。デルタは、現在のデータと現在のデータの予測データとの間のデルタである。現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。
【０１６９】
履歴データは、１つ又は複数の取得データである。
【０１７０】
例えば、クライアントによって送信された１つ又は複数の読み取り要求を受信した後に、記憶装置は、１つ又は複数の読み取り要求を用いて要求された読み取るべきデータに基づいて、少なくとも２つの取得すべきデータのアドレス情報を取得し、次に、少なくとも２つの取得すべきデータのアドレス情報に基づいて、少なくとも２つの取得すべきデータを復元するために使用される情報を読み取るすることができる。１つ又は複数の読み取り要求を用いて要求されたデータは、同じサブジェクト（subject）のデータである。サブジェクトの関連する説明については、図５Ａに示される実施形態を参照されたい。読み取るべきデータの粒度は、取得すべきデータの粒度と同じでも異なっていてもよい。例えば、１つの読み取るべきデータが８ビットである場合に、１つの取得すべきデータは、４ビット、８ビット、１６ビット等であり得る。説明を容易にするために、以下では、説明のために、各読み取るべきデータが、１つの取得すべきデータである例を使用する。読み取るべきデータと取得すべきデータとの間の対応関係については、前述の書き込むべきデータと記憶すべきデータとの間の対応関係を参照されたい。詳細については、ここでは再び説明しない。記憶装置は、少なくとも２つの取得すべきデータのそれぞれを現在のデータとして使用して、Ｓ３０１〜Ｓ３０６を実行することができる。
【０１７１】
現在のデータを復元するために使用される情報に「デルタ又はデルタを圧縮して得た値」が含まれる場合に、情報にデルタ又はデルタを圧縮して得た値が具体的に含まれるかどうかを予め規定することができる。確かに、本願はそれに限定されない。
【０１７２】
現在のデータを復元するために使用される情報に「現在のデータ又は現在のデータを圧縮して得た値」が含まれる場合に、情報に現在のデータ又は現在のデータを圧縮して得た値が具体的に含まれるかどうかを予め規定することができる。確かに、本願はそれに限定されない。
【０１７３】
Ｓ３０２：記憶装置は、現在のデータを復元するために使用される情報に第１の識別子情報が含まれるかどうかを判定する。
【０１７４】
図５に示される実施形態の説明に基づいて、以下が分かり得る。
【０１７５】
Ｓ３０２における判定結果が、現在のデータを復元するために使用される情報に第１の識別子情報が含まれないということである場合に、それは、現在のデータを復元するために使用される情報にはデルタ又はデルタを圧縮して得た値が含まれることを示す。これに基づいて、現在のデータを復元するために使用される情報がデルタを圧縮して得た値である場合に、Ｓ３０３が実行され、又は現在のデータを復元するために使用される情報がデルタである場合に、Ｓ３０４が実行される。
【０１７６】
Ｓ３０２の判定結果が、現在のデータを復元するために使用される情報に第１の識別子情報が含まれるということである場合に、それは、現在のデータを復元するために使用される情報には現在のデータ又は現在のデータを圧縮して得た値が含まれることを示す。これに基づき、現在のデータを復元するために使用される情報が現在のデータを圧縮して得た値である場合に、Ｓ３０６が実行され、又は現在のデータを復元するために使用される情報が現在のデータである場合に、現在のデータの取得プロセスは終了する。
【０１７７】
Ｓ３０３：記憶装置は、デルタを圧縮して得た値を解凍して、デルタを取得する。
【０１７８】
Ｓ３０３において解凍を行うために使用される解凍アルゴリズムは、Ｓ１０４において圧縮を行うために使用される圧縮アルゴリズムに対応することが理解され得る。例えば、辞書圧縮アルゴリズムを使用してＳ１０４において圧縮を行う場合に、辞書解凍アルゴリズムを使用してＳ３０３で解凍を行う。別の例として、重複排除アルゴリズムを使用してＳ１０４において圧縮を行う場合に、重複排除アルゴリズムを使用してＳ３０３において解凍を行う。
【０１７９】
Ｓ３０４：記憶装置は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。
【０１８０】
履歴データは、記憶装置が取得した１つ又は複数のデータである。履歴データが１つ又は複数の取得データであるかどうか、及びどの１つ又は複数のデータが具体的に履歴データであるかどうかは、予測アルゴリズムに関連している。履歴データの特定の実施態様については、図５に示される実施形態を参照されたい。詳細については、ここでは再び説明しない。
【０１８１】
図７Ａは、本願の一実施形態による、取得すべきデータ及び実際に記憶される情報（すなわち、取得すべきデータを復元するために使用される情報）の概略図である。図７Ａの実際に記憶される情報は、図５Ａに示される実際に記憶される情報と同じである。従って、関連するグラフ、矢印等の説明については、図５Ａを参照されたい。
【０１８２】
Ｓ３０３及びＳ３０４の実行シーケンスは、本願のこの実施形態では限定されない。例えば、Ｓ３０３はＳ３０４の前に実行してもよく、Ｓ３０４はＳ３０３の前に実行してもよく、又はＳ３０３及びＳ３０４は同時に実行してもよい。
【０１８３】
Ｓ３０５：記憶装置は、デルタと現在のデータの予測データとに基づいて現在のデータを決定する。
【０１８４】
例えば、デルタが現在のデータから現在のデータの予測データを差し引くことによって得られた差である場合に、Ｓ３０５では、デルタと現在のデータの予測データとの合計が現在のデータとして使用される。例えば、デルタが現在のデータを現在のデータの予測データで除算することによって得られる比である場合に、Ｓ３０５では、デルタと現在のデータの予測データとの積が現在のデータとして使用される。他の例は１つずつ列挙していない。
【０１８５】
Ｓ３０５を実行した後に、現在のデータの取得プロセスは終了する。
【０１８６】
Ｓ３０６：記憶装置は、現在のデータを圧縮して得た値を解凍して、現在のデータを取得する。
【０１８７】
Ｓ３０６を実行した後に、現在のデータの取得プロセスは終了する。
【０１８８】
この実施形態で提供されるデータ取得方法は、図５に示されるデータ記憶方法に対応する。従って、この実施形態における有利な効果については、図５に示される実施形態で説明した有利な効果を参照されたい。詳細については、ここでは再び説明しない。
【０１８９】
図２に示される記憶装置を参照すると、図７に示されるデータ記憶方法の例が、図８Ａ〜図８Ｃに示され得る。図８Ａ〜図８Ｃに示される方法は、以下のステップを含み得る。
【０１９０】
Ｓ４０１：記憶装置は、インターフェイスカードを用いて、クライアントから送信された読み取り要求を受信し、ここで、読み取り要求には、１つ又は複数の読み取るべきデータのアドレス情報が含まれる。
【０１９１】
Ｓ４０２：インターフェイスカードは、１つ又は複数の読み取るべきデータのアドレス情報に対して送信プロトコル変換を実行し、例えば、イーサネット通信プロトコルを使用する１つ又は複数の読み取るべきデータのアドレス情報を、ＰＣＩＥプロトコルを使用する情報に変換する。
【０１９２】
Ｓ４０３：インターフェイスカードは、１つ又は複数の読み取るべきデータであり且つ送信プロトコルの変換後に取得されるアドレス情報をプロセッサに送信する。
【０１９３】
Ｓ４０４：プロセッサは、受信した１つ又は複数の読み取るべきデータのアドレス情報内の各読み取るべきデータのアドレス情報を、１つの取得すべきデータのアドレス情報として使用する。
【０１９４】
Ｓ４０５：プロセッサは、各取得すべきデータのアドレス情報をメモリに記憶する。
【０１９５】
続いて、プロセッサは、一部又は全ての取得すべきデータ内の全ての取得すべきデータを現在のデータとして順次使用して、Ｓ４０６〜Ｓ４１５を実行することができる。さらに、各現在のデータを取得するときに、プロセッサは、現在のデータをメモリに記憶して、その後、現在のデータを他の現在のデータの履歴データとして使用することができる。
【０１９６】
Ｓ４０６：プロセッサは、現在のデータを復元するために使用される情報を、ハードディスク内にあり且つ現在のデータのアドレス情報によって示される記憶空間から読み取り、現在のデータを復元するために使用される読み取った情報を、送信プロトコル変換のためにハードディスクプロトコル変換モジュールに送信し、例えば、現在のデータを復元するために使用され且つＳＡＳプロトコルを使用する情報からＰＣＩＥプロトコルを使用する情報へ変換する。
【０１９７】
Ｓ４０７：プロセッサは、現在のデータを復元するために使用される情報に第１の識別子情報が含まれるかどうかを判定する。
【０１９８】
現在のデータを復元するために使用される情報に第１の識別子情報が含まれない場合に、それは、現在のデータを復元するために使用される情報にはデルタ又はデルタを圧縮して得た値が含まれることを示す。これに基づいて、現在のデータを復元するために使用される情報がデルタを圧縮して得た値である場合に、Ｓ４０８が実行され、又は現在のデータを復元するために使用される情報がデルタである場合に、Ｓ４０９が実行される。
【０１９９】
現在のデータを復元するために使用される情報に第１の識別子情報が含まれる場合に、それは、現在のデータを復元するために使用される情には現在のデータ又は現在のデータを圧縮して得た値が含まれることを示す。これに基づいて、現在のデータを復元するために使用される情報が現在のデータを圧縮して得た値である場合に、Ｓ４１２が実行され、又は現在のデータを復元するために使用される情報が現在のデータである場合に、Ｓ４１３が実行される。
【０２００】
Ｓ４０８：プロセッサは、デルタを圧縮して得た値を解凍して、デルタを取得する。
【０２０１】
Ｓ４０９：プロセッサは、メモリから履歴データを取得する。
【０２０２】
Ｓ４１０：プロセッサは、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。
【０２０３】
Ｓ４１１：プロセッサは、デルタと現在のデータの予測データとに基づいて現在のデータを決定する。
【０２０４】
Ｓ４１１を実行した後に、Ｓ４１３は実行される。
【０２０５】
Ｓ４１２：プロセッサは、現在のデータを圧縮して得た値を解凍して、現在のデータを取得する。
【０２０６】
Ｓ４１３：プロセッサは、現在のデータをインターフェイスカードに送信する。
【０２０７】
オプションで、プロセッサは、現在のデータを他の取得すべきデータの履歴データとして使用するために、現在のデータをメモリにさらに記憶することができる。さらに、オプションで、取得データが取得すべきデータの履歴データとしてもはや使用されなくなった場合に、プロセッサは、メモリから取得データを削除して、メモリの記憶オーバーヘッドを削減することができる。例えば、現在のデータがＸ（ｎ）であり、履歴データがＸ（ｎ−１）から始まりＸ（ｎ−１）以前の１０個の連続データ（つまり、Ｘ（ｎ−１０）〜Ｘ（ｎ−１））である場合に、Ｘ（ｎ−１１）及びＸ（ｎ−１１）以前のデータは、取得すべきデータの履歴データとしてもはや使用されない。従って、プロセッサは、メモリから取得データを削除し得る。
【０２０８】
Ｓ４１４：インターフェイスカードは、現在のデータに対して送信プロトコル変換を実行し、例えば、ＰＣＩＥプロトコルからイーサネット通信プロトコルへの変換を実行する。
【０２０９】
Ｓ４１５：インターフェイスカードは、イーサネット通信プロトコルを用いて現在のデータをクライアントにフィードバックする。
【０２１０】
このようにして、現在のデータの取得プロセスは終了する。
【０２１１】
図３に示される記憶装置を参照すると、図７に示されるデータ記憶方法の例は、図７は、図８Ａ〜図８Ｃに示される実施形態が以下のいくつかの点で変更された後に得られる実施形態であり得る。１：前述のＳ４１０及びＳ４１１は、ＡＩコンピューティングカードによって実行される。２：Ｓ４０９が実行された後であって、Ｓ４１０が実行される前に、この方法は、プロセッサが、メモリから取得した履歴データをＡＩコンピューティングカードに送信するステップをさらに含む。３：Ｓ４１１が実行された後であって、Ｓ４１３が実行される前に、この方法は、ＡＩコンピューティングカードが、現在のデータをプロセッサに送信するステップをさらに含む。
【０２１２】
現在、辞書圧縮（又は解凍）アルゴリズムの辞書における全てのマッピング関係は、ヒット率の降順で配置されている。通常、圧縮すべきデータを圧縮する必要がある場合に、圧縮すべきデータは、辞書の第１のデータ内でマッピング関係のヒット率の降順で検索され、圧縮すべきデータに対応する第２のデータが、圧縮すべきデータを圧縮した後に取得される値として使用される。解凍すべきデータを解凍する必要がある場合に、解凍すべきデータは、辞書の第２のデータ内でマッピング関係のヒット率の降順で検索され、圧縮すべきデータに対応する第１のデータは、解凍すべきデータを解凍した後に得られる値として使用される。このようにして、圧縮すべき又は解凍すべきデータが属するマッピング関係のヒット率が比較的低い場合に、圧縮／解凍を行うのに比較的長い時間がかかる。
【０２１３】
従って、本願の一実施形態は、設計的解決策１を提供する。記憶装置は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、各マッピング関係において第１のデータが占める記憶空間は、マッピング関係において第２のデータが占める記憶空間よりも大きく、各セットは１つのヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応し、及び各セットのマッピング関係のヒット率は、そのセットに対応するヒット率範囲に属する。
【０２１４】
記憶装置に含まれるセットの量及び各セットに対応するヒット率範囲は、予め規定され得るか、又は記憶データに基づいて更新され得る。さらに、マッピング関係も更新され得る。
【０２１５】
例えば、各マッピング関係は、辞書圧縮アルゴリズムの辞書におけるマッピング関係であり得る。少なくとも２つのセットに含まれるマッピング関係は、辞書内の一部又は全てのマッピング関係であり得る。例えば、少なくとも２つのセットに含まれるマッピング関係は、記憶装置内の任意の記憶媒体（キャッシュ、メモリ、又はハードディスク等）に記憶されるマッピング関係であり得る。記憶媒体がキャッシュ又はメモリである場合に、少なくとも２つのセットに含まれるマッピング関係は、辞書内のいくつかのマッピング関係であり得る。記憶媒体がハードディスクである場合に、少なくとも２つのセットに含まれるマッピング関係は、辞書内の全てのマッピング関係であり得る。
【０２１６】
例えば、辞書に記憶される各セット及びそのセットに対応するヒット率範囲が表２に示され得る。
【表２】
2021534505.tif 000004
【０２１７】
いくつかの実施形態では、データ圧縮の場合に、各マッピング関係のヒット率は、マッピング関係における第１のデータのヒット率であり得る。例えば、第１のデータのヒット率は、予め設定した期間内の第１のデータに対する圧縮回数を総圧縮回数で除算した値であってもよい。データ解凍の場合に、各マッピング関係のヒット率は、マッピング関係における第２のデータのヒット率であり得る。例えば、第２のデータのヒット率は、予め設定した期間内の第２のデータに対する解凍回数を総解凍回数で除算した値であってもよい。
【０２１８】
これらの実施形態では、設計的解決策１がデータ圧縮シナリオ及びデータ解凍シナリオに適用される場合に、同じマッピング関係のヒット率が異なるメカニズムで取得される。従って、設計的解決策１をデータ圧縮シナリオ及びデータ解凍シナリオに適用する場合に、記憶装置に含まれるセットは同じでも異なっていてもよい。さらに、同じセットに対応するヒット率範囲は、同じでも異なっていてもよい。例えば、記憶装置に１００個のマッピング関係が含まれていると想定される。設計的解決策１をデータ圧縮シナリオに適用すると、１００個のマッピング関係のそれぞれがセットＡ１及びセットＡ２のいずれかに属し得る。設計的解決策１をデータ解凍シナリオに適用する場合に、１００個のマッピング関係のそれぞれは、セットＢ１、セットＢ２、及びセットＢ３のいずれかに属し得る。
【０２１９】
いくつかの他の実施形態では、データ圧縮及びデータ解凍について、各マッピング関係のヒット率は、マッピング関係における第１のデータのヒット率及びマッピング関係における第２のデータのヒット率に基づいて取得され得る。例えば、記憶装置のデータ書き込み時間とデータ読み取り時間との比が３：７である場合に、マッピング関係について、マッピング関係における第１のデータのヒット率は、データ書き込みプロセスで１０％であり、マッピング関係における第２のデータのヒット率は、データ読み取りプロセスで５０％であり、マッピング関係のヒット率は、０．３×１０％＋０．７×５０％に従って取得することができる。確かに、本願のこの実施形態はそれに限定されない。
【０２２０】
これらの実施形態では、設計的解決策１がデータ圧縮シナリオ及びデータ解凍シナリオに適用される場合に、同じマッピング関係のヒット率は異なるメカニズムで取得される。従って、設計的解決策１がデータ圧縮シナリオ及びデータ解凍シナリオに適用される場合に、記憶装置に含まれるセットは同じになり、同じセットに対応するヒット率範囲は同じになる。例えば、記憶装置に１００個のマッピング関係が含まれていると想定される。設計的解決策１がデータ圧縮シナリオ及びデータ解凍シナリオに適用される場合に、１００個のマッピング関係のそれぞれが、セットＡ１及びセットＡ２のいずれかに属し得る。
【０２２１】
前述の設計的解決策１に基づいて、図９は、本願の一実施形態によるデータ圧縮方法の概略図である。図９に示される方法は、以下のステップを含み得る。
【０２２２】
Ｓ５０１：記憶装置は、圧縮すべきデータのヒット率を取得する。圧縮すべきデータのヒット率を取得する方法については、前述の第１のデータのヒット率を取得する方法を参照されたい。確かに、本願のこの実施形態はそれに限定されない。
【０２２３】
例えば、圧縮すべきデータは、前述のデルタ又は現在のデータであり得る。確かに、本願のこの実施形態はそれに限定されない。
【０２２４】
Ｓ５０２：記憶装置は、圧縮すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定する。圧縮すべきデータのヒット率は、圧縮すべきデータが位置するマッピング関係（以下、ターゲットマッピング関係と呼ばれる）のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する。
【０２２５】
前述の説明から、設計的解決策１がデータ圧縮シナリオに適用される場合に、マッピング関係のヒット率は、マッピング関係における第１のデータのヒット率であり得、且つマッピング関係における第１のデータのヒット率及びマッピング関係における第２のデータのヒット率等に基づいて、取得され得ることが分かり得る。説明を容易にするために、データ圧縮方法の以下の実施形態では、マッピング関係のヒット率がマッピング関係における第１のデータのヒット率であり得る例を、説明のために使用する。
【０２２６】
例えば、圧縮すべきデータのヒット率が７５％である場合に、圧縮すべきデータが属するターゲットマッピング関係のヒット率は７５％であり得る。この場合に、表２を参照すると、ターゲットセットがセット２であることが分かり得る。
【０２２７】
Ｓ５０３：記憶装置は、ターゲットセット内の第１のデータで圧縮すべきデータを検索し、圧縮すべきデータが属するマッピング関係を検索し、マッピング関係に基づいて、圧縮すべきデータに対応する第２のデータを決定し、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用する。
【０２２８】
例えば、Ｓ５０２の例に基づいて、記憶装置は、従来技術におけるマッピング関係のヒット率の降順での第１のデータでデルタを順次検索する代わりに、圧縮すべきデータを圧縮するために、セット２内の第１のデータで圧縮すべきデータを直接検索することができる。このようにして、圧縮時間を短縮することができる。
【０２２９】
例えば、圧縮すべきデータが前述のデルタである場合に、圧縮すべきデータに対応する第２のデータは、デルタを圧縮して得た前述の値であり得る。例えば、圧縮すべきデータが前述の現在のデータである場合に、圧縮すべきデータに対応する第２のデータは、現在のデータを圧縮して得た前述の値であり得る。
【０２３０】
この実施形態で提供されるデータ圧縮方法では、記憶装置に含まれるマッピング関係は、異なるセットに分類される。このようにして、圧縮すべきデータが位置するセットは、圧縮すべきデータのヒット率に基づいて直接決定され得る。従来技術と比較して、圧縮すべきデータの検索範囲が狭められる。従って、圧縮時間を短縮することができる。
【０２３１】
前述の設計的解決策１に基づいて、図１０は、本願の一実施形態によるデータ解凍方法の概略図である。図１０に示される方法は、以下のステップを含み得る。
【０２３２】
Ｓ６０１：記憶装置は、解凍すべきデータのヒット率を取得する。解凍すべきデータのヒット率を取得する方法については、前述の第２のデータのヒット率を取得する方法を参照されたい。確かに、本願のこの実施形態はそれに限定されない。
【０２３３】
例えば、解凍すべきデータは、デルタを圧縮して得た前述の値、又は現在のデータを圧縮して得た値であり得る。確かに、本願のこの実施形態はそれに限定されない。
【０２３４】
Ｓ６０２：記憶装置は、解凍すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定し、ここで、解凍すべきデータのヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する。
【０２３５】
前述の説明から、設計的解決策１がデータ解凍シナリオに適用される場合に、マッピング関係のヒット率は、マッピング関係における第２のデータのヒット率であり得、且つマッピング関係における第１のデータのヒット率及びマッピング関係における第２のデータのヒット率等に基づいて取得され得ることが分かり得る。説明を容易にするために、データ解凍方法の以下の実施形態では、マッピング関係のヒット率がマッピング関係における第２のデータのヒット率であり得る例を、説明のために使用する。
【０２３６】
例えば、解凍すべきデータのヒット率が７５％である場合に、解凍すべきデータが属するターゲットマッピング関係のヒット率は７５％であり得る。この場合に、表２を参照すると、ターゲットセットがセット２であることが分かり得る。
【０２３７】
Ｓ６０３：記憶装置は、ターゲットセット内の第２のデータで解凍すべきデータを検索して、解凍すべきデータが属するマッピング関係を検索し、マッピング関係に基づいて、解凍すべきデータに対応する第１のデータを決定し、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用する。
【０２３８】
例えば、解凍すべきデータがデルタを圧縮して得た前述の値である場合に、解凍すべきデータに対応する第１のデータは、前述のデルタであり得る。例えば、解凍すべきデータが現在のデータを圧縮して得た前述の値である場合に、解凍すべきデータに対応する第１のデータは、前述の現在のデータであり得る。
【０２３９】
この実施形態で提供されるデータ解凍方法では、記憶装置に含まれるマッピング関係は、異なるセットに分類される。このようにして、解凍すべきデータが位置するセットは、解凍すべきデータのヒット率に基づいて直接決定され得る。従来技術と比較して、解凍すべきデータの検索範囲が狭められる。従って、データの解凍時間を短縮することができる。
【０２４０】
図２から、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み得ることが分かり得る。キャッシュに記憶されているデータはメモリに記憶されているいくつかのデータであり、メモリに記憶されているデータはハードディスクに記憶されているいくつかのデータである。現在、ＣＰＵがデータを読み取るプロセスは、具体的には次の通りである。ＣＰＵは、最初にキャッシュでアクセスすべきデータを検索し、アクセスすべきデータが見つかった場合に、アクセスすべきデータを直接読み取る、又は、アクセスするデータが見つからない場合に、メモリでアクセスすべきデータを検索する。また、アクセスすべきデータが見つかった場合に、アクセスすべきデータは直接読み取られる、又はアクセスすべきデータが見つからない場合に、ハードディスクでアクセスすべきデータを検索する。ストレージ技術が辞書圧縮技術である例では、キャッシュ、メモリ、及びハードディスクに記憶されたデータは、辞書内のマッピング関係であり得る。このようにして、記憶媒体（例えば、キャッシュ又はメモリ）が比較的大量のマッピング関係を含み、圧縮すべき／解凍すべきデータが属するマッピング関係が記憶媒体内にない場合に、圧縮／解凍を行うために比較的長い時間がかかる。
【０２４１】
従って、本願の一実施形態は、設計的解決策２を提供する。記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、及び第１のデータが占める記憶空間は、第２のデータが占める記憶空間よりも大きい。各記憶媒体におけるマッピング関係のヒット率が位置する範囲は、予め設定され得るか、又は記憶データに基づいて更新され得る。
【０２４２】
例えば、各マッピング関係は、辞書圧縮アルゴリズムの辞書におけるマッピング関係であり得る。例えば、記憶装置の各記憶媒体及び記憶媒体に対応するヒット率範囲が表３に示され得る。
【表３】
2021534505.tif 000005
【０２４３】
前述の設計的解決策２に基づいて、図１１は、本願の一実施形態によるデータ圧縮方法の概略図である。図１１に示される方法は、以下のステップを含み得る。
【０２４４】
Ｓ７０１：記憶装置は、圧縮すべきデータのヒット率を取得する。
【０２４５】
Ｓ７０２：記憶装置は、圧縮すべきデータのヒット率に基づいてターゲット記憶媒体を決定する。圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用される。ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである。
【０２４６】
例えば、圧縮すべきデータのヒット率が９０％である場合に、圧縮すべきデータが属するターゲットマッピング関係のヒット率は９０％であり得る。この場合に、表３を参照すると、ターゲット記憶媒体がキャッシュであることが分かり得る。同様に、圧縮すべきデータのヒット率が６０％である場合に、ターゲット記憶媒体はメモリであり得、又は圧縮すべきデータのヒット率が３０％である場合に、ターゲット記憶媒体はハードディスクであり得る。
【０２４７】
Ｓ７０３：記憶装置は、ターゲット記憶媒体内の第１のデータで圧縮すべきデータを検索し、圧縮すべきデータが属するマッピング関係を検索し、マッピング関係に基づいて、圧縮すべきデータに対応する第２のデータを決定し、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用する。
【０２４８】
例えば、ターゲット記憶媒体に含まれるマッピング関係が前述の設計的解決策１に示されている場合に、Ｓ７０３の特定の実施プロセスについては、前述のＳ５０１〜Ｓ５０３を参照されたい。確かに、Ｓ７０３は、従来技術の方法に従って代替的に実施され得る。
【０２４９】
この実施形態では、圧縮すべきデータ及び圧縮すべきデータを圧縮して得た値の例については、図９に示される実施形態を参照されたい。
【０２５０】
記憶装置が、ターゲット記憶媒体の第１のデータにおいて圧縮すべきデータを見つけられない場合であって、ターゲット記憶媒体の次のレベルの記憶媒体が記憶装置に存在しない場合に、圧縮すべきデータは、圧縮すべきデータを圧縮して得た値として使用される、又は、ターゲット記憶媒体の次のレベルの記憶媒体が記憶装置に存在する場合に、ターゲット記憶媒体の次のレベルの記憶媒体は、圧縮すべきデータが見つかるか、又は圧縮すべきデータが記憶媒体の最後のレベルの記憶媒体の第１のデータで見つからなくなるまで、圧縮すべきデータを等検索する。キャッシュの次のレベルの記憶媒体はメモリであり、メモリの次のレベルの記憶媒体はハードディスクである。
【０２５１】
この実施形態で提供されるデータ圧縮方法では、最高の読み取り／書き込み性能を有し、且つ圧縮すべきデータが位置する記憶媒体は、圧縮すべきデータのヒット率及び異なる記憶媒体に記憶されたマッピング関係のヒット率に基づいて直接決定され得、キャッシュの読み取り／書き込み性能はメモリの読み取り／書き込み性能よりも高く、メモリの読み取り／書き込み性能はハードディスクの読み取り／書き込み性能よりも高い。従来技術と比較して、圧縮すべきデータの検索範囲が狭められる。従って、データ圧縮時間を短縮することができる。
【０２５２】
前述の設計的解決策２に基づいて、図１２は、本願の一実施形態によるデータ解凍方法の概略図である。図１２に示される方法は、以下のステップを含み得る。
【０２５３】
Ｓ８０１：記憶装置は、解凍すべきデータのヒット率を取得する。
【０２５４】
Ｓ８０２：記憶装置は、解凍すべきデータのヒット率に基づいてターゲット記憶媒体を決定する。解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用される。ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係のヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係のヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである。
【０２５５】
例えば、解凍すべきデータのヒット率が９０％である場合に、解凍すべきデータが属するターゲットマッピング関係のヒット率は９０％であり得る。この場合に、表３を参照すると、ターゲット記憶媒体がキャッシュであることが分かり得る。同様に、解凍すべきデータのヒット率が６０％である場合に、ターゲット記憶媒体はメモリであり得、又は解凍すべきデータのヒット率が３０％である場合に、ターゲット記憶媒体は、ハードディスクであり得る。
【０２５６】
Ｓ８０３：記憶装置は、ターゲット記憶媒体内の第２のデータで解凍すべきデータを検索し、解凍すべきデータが属するマッピング関係を検索し、マッピング関係に基づいて、解凍すべきデータに対応する第１のデータを決定し、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用する。
【０２５７】
例えば、ターゲット記憶媒体に含まれるマッピング関係が前述の設計的解決策１に示されている場合に、Ｓ８０３の特定の実施プロセスについては、前述のＳ６０１〜Ｓ６０３を参照されたい。確かに、Ｓ８０３は、従来技術の方法に従って代替的に実施され得る。
【０２５８】
この実施形態では、解凍すべきデータ及び解凍すべきデータを解凍して得た値の例については、図１０に示される実施形態を参照されたい。
【０２５９】
この実施形態で提供されるデータ解凍方法では、最高の読み取り／書き込み性能を有し、且つ解凍すべきデータが位置する記憶媒体は、解凍すべきデータのヒット率及び異なる記憶媒体に記憶されたマッピング関係のヒット率に基づいて直接決定され得、キャッシュの読み取り／書き込み性能はメモリの読み取り／書き込み性能よりも高く、メモリの読み取り／書き込み性能はハードディスクの読み取り／書き込み性能よりも高い。従来技術と比較して、解凍すべきデータの検索範囲が狭められる。従って、データの解凍時間を短縮することができる。
【０２６０】
図１３は、本願の一実施形態によるデータ記憶方法の概略図である。図１３に示される方法は、以下のステップを含み得る。
【０２６１】
Ｓ９００：記憶装置は、少なくとも２つの記憶すべきデータの中の現在のデータ（すなわち、現在の記憶すべきデータ）及び現在のデータの履歴データ（すなわち、記憶すべき履歴データ）を取得し、ここで、履歴データは、少なくとも２つの記憶すべきデータを含むシーケンス内の現在のデータ以前の１つ又は複数のデータである。
【０２６２】
Ｓ９０１：記憶装置は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。
【０２６３】
Ｓ９０２：記憶装置は、現在のデータと現在のデータの予測データとの間のデルタを取得する。
【０２６４】
Ｓ９００〜Ｓ９０２の実施態様については、Ｓ１００〜Ｓ１０２の実施態様の前述の説明を参照されたい。
【０２６５】
Ｓ９０３：記憶装置は、デルタの絶対値が予め設定した閾値以下であるかどうかを判定する。例えば、デルタがａの場合に、デルタの絶対値は｜ａ｜として表すことができる。
【０２６６】
デルタの絶対値が予め設定した閾値以下である場合に、Ｓ９０４が実行され、又はデルタの絶対値が予め設定した閾値以下でない場合に、Ｓ９０５が実行される。
【０２６７】
Ｓ９０４：記憶装置は、予め設定したデータを記憶する。例えば、予め設定したデータが占める記憶空間は、現在のデータが占める記憶空間よりも小さい。
【０２６８】
オプションで、予め設定したデータは、記憶装置によって予め規定される。オプションで、予め設定したデータは識別子であり得、識別子は、現在のデータの予測データを現在のデータとして使用し得る（又は略使用し得る）ことを示すために使用される。例えば、予め設定したデータは、「０」又は「１」等の２進数である。
【０２６９】
オプションで、予め設定したデータが占める記憶空間は、記憶すべきデータの殆ど又は全てが占める記憶空間よりも小さい。
【０２７０】
データ記憶手順を実行するときに、記憶装置は、予め設定したデータが占める記憶空間と現在のデータが占める記憶空間との間のサイズ関係を決定する必要がない場合があることに留意されたい。代わりに、予め設定したデータを予め規定するときに、記憶装置は、「予め設定したデータが占める記憶空間が、記憶すべきデータの殆ど又は全てが占める記憶空間よりも小さい」という原則に従って、予め設定したデータを比較的小さな記憶空間を占める識別子に設定することができる。このようにして、特定の現在のデータについて、「予め設定したデータが占める記憶空間が、現在のデータが占める記憶空間よりも小さい」ということが、複数の記憶すべきデータに対してデータ記憶手順を実行するという全体的な観点から満たされていなくても、「予め設定したデータが占める記憶空間は、記憶すべきデータの殆ど又は全てが占める記憶空間よりも小さい」という条件を依然として満たしている可能性がある。従って、従来技術と比較して、これは、記憶空間を節約するのに役立つ。
【０２７１】
オプションで、記憶装置は、記憶オーバーヘッド等の要因に基づいて予め設定するデータを予め規定することができる。
【０２７２】
デルタが差である例では、デルタの絶対値が０である場合に、この技術的解決策の圧縮プロセスは、具体的には可逆圧縮プロセスである。デルタの絶対値が０でない場合に、この技術的解決策の圧縮プロセスは、特に不可逆圧縮プロセスである。予め設定した閾値を適切に設定すると、データ損失率を特定の範囲内に制限するのに役立つ。換言すると、予め設定した閾値は、実際の要件（例えば、許容可能な非可逆圧縮率内の要件）に基づいて設定できる。
【０２７３】
Ｓ９０４を実行した後に、現在のデータの記憶プロセスは終了する。
【０２７４】
Ｓ９０５：記憶装置は、現在のデータを記憶するか、又は現在のデータを圧縮して得た値を記憶する。
【０２７５】
Ｓ９０５の実施態様については、Ｓ１０５の実施態様の前述の説明を参照されたい。
【０２７６】
Ｓ９０５を実行した後に、現在のデータの記憶プロセスは終了する。
【０２７７】
現在のデータを復元するために使用される記憶情報が「予め設定したデータ」であるか「圧縮によって得た値又は現在のデータ」であるかを記憶装置が区別し、データ読み取り手順における読み取るべきデータを決定するのを助けるため、オプションで、Ｓ９０５が実行される場合に、この方法は、以下のＳ９０５Ａをさらに含み得る。
【０２７８】
Ｓ９０５Ａ：デルタの絶対値が予め設定した閾値より大きい場合に識別子情報を記憶し、ここで、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用される。デルタの絶対値が予め設定した閾値より大きい場合に識別子情報を記憶し、ここで、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用される、又は現在のデータが記憶されている場合に、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータであることを示すために使用される。識別子情報は、現在のデータを復元するために使用される情報の識別子情報、又は現在のデータを復元するために使用される情報に含まれる情報として使用され得る。
【０２７９】
Ｓ９０５Ａの交換可能な方法及び有利な効果の説明については、Ｓ１０５Ａの交換可能な方法及び有利な効果の前述の説明を参照されたい。詳細については、ここでは再び説明しない。
【０２８０】
本願のこの実施形態で提供されるデータ記憶方法では、履歴データを用いて現在のデータが予測され、予め設定したデータは、現在のデータと現在のデータの予測データとの間のデルタの絶対値が予め設定した閾値以下である場合に、記憶される。従来技術で現在のデータを直接記憶する技術的解決策と比較して、予め設定したデータが占める記憶空間が、現在のデータが占める記憶空間よりも小さいため、記憶オーバーヘッドを削減できる。この技術的解決策は、特定のデータ損失が許容されるシナリオ、例えば、ビデオ再生等のシナリオに適用することができる。
【０２８１】
例えば、記憶すべきデータを含むシーケンスＸｎ＝｛２、５、１０、１７、２６、３７、５０、６５、８２、１０１、１２２、１４５、１７１｝について、具体的には、デルタが、記憶すべきデータと記憶すべきデータの予測データとの間の差であり、予め設定した閾値が２である場合に、予測アルゴリズムｘ２＋１及び図１３に示される実施形態に基づいて記憶装置によって実際に記憶されるデータを含むシーケンスは、｛１０、１０１、１０１０、α、α、α、α、α、α、α、α、α、α｝であり得る。αは予め設定したデータである。Ｘｎ’の最初の３つのデータでは、予測ステップがデフォルトである。Ｓ９０５Ａを参照すると、３つのデータについて、記憶装置は、第１の識別子情報をさらに別々に記憶し得ることが分かり得る。記憶のために圧縮する必要のあるデータの範囲が大幅に削減され、その範囲内のデータの繰り返し確率が明らかに増大することが分かり得る。従って、データ圧縮率及び圧縮効率を大幅に向上させることができる。
【０２８２】
図１４は、本願の一実施形態によるデータ取得方法の概略図である。図１４に示される方法は、以下のステップを含み得る。
【０２８３】
Ｓ１００１：記憶装置は、現在のデータを復元するために使用される情報を読み取る。現在のデータを復元するために使用される情報には、「予め設定したデータ」又は「現在のデータ又は現在のデータを圧縮して得た値」が含まれる。
【０２８４】
現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータであり、履歴データは、１つ又は複数の取得データである。
【０２８５】
Ｓ１００２：記憶装置は、現在のデータを復元するために使用される情報に識別子情報が含まれるかどうかを判定する。
【０２８６】
図１３に示される実施形態の説明に基づいて、Ｓ１００２での判定結果が、現在のデータを復元するために使用される情報に識別子情報が含まれていないことを示す場合に、それは、現在のデータを復元するために使用される情報には予め設定したデータが含まれていることを示し、Ｓ１００３が実行されることが分かり得る。Ｓ１００２での判定結果が、現在のデータを復元するために使用される情報に識別子情報が含まれることを示す場合に、それは、現在のデータを復元するために使用される情報には、現在のデータ又は現在のデータを圧縮して得た値が含まれることを示す。現在のデータを復元するために使用される情報が現在のデータを圧縮して得た値である場合に、Ｓ１００４が実行され、又は現在のデータを復元するために使用される情報が現在のデータである場合に、現在のデータの取得プロセスは終了する。
【０２８７】
Ｓ１００３：記憶装置は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得し、現在のデータの予測データを現在のデータとして使用し、ここで、履歴データは、１つ又は複数の取得データである。
【０２８８】
Ｓ１００３を実行した後に、現在のデータの取得プロセスは終了する。
【０２８９】
Ｓ１００４：記憶装置は、現在のデータを圧縮して得た値を解凍して、現在のデータを取得する。
【０２９０】
Ｓ１００４を実行した後に、現在のデータの取得プロセスは終了する。
【０２９１】
この実施形態で提供されるデータ取得方法は、図１３に示されるデータ記憶方法に対応する。従って、この実施形態における有利な効果については、図１３に示される実施形態で説明した有利な効果を参照されたい。詳細については、ここで再び説明しない。
【０２９２】
同じデータについて、データ記憶手順を実行するプロセス及びデータ取得手順を実行するプロセスで予測を行う必要がある場合に、同じ予測アルゴリズム（具体的には、予測アルゴリズムのパラメータの値が同じである）が予測中に使用されることに留意されたい。予測アルゴリズムがＡＩニューラルアルゴリズムである場合に、ＡＩニューラルアルゴリズムのパラメータの値を更新することができるため、データ取得手順においてデータを成功裏に取得するために、データ記憶手順において、本願のこの実施形態は以下のオプションの実施態様を提供する。
【０２９３】
オプションの実施態様１：記憶装置は、ＡＩニューラルアルゴリズムのパラメータの値と、データを復元するために使用される情報との間の対応関係をさらに記憶することができる。例えば、記憶装置は、ＡＩニューラルアルゴリズムのパラメータが更新された後に、毎回スナップショット動作を実行して、現在のデータを復元するために使用される情報と、予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記録することができる。確かに、本願のこの実施形態はそれに限定されない。
【０２９４】
例えば、初期モーメントがモーメントｔ１であり、モーメントｔ１におけるＡＩニューラルアルゴリズムのパラメータが第１のパラメータであり、モーメントｔ２におけるＡＩニューラルアルゴリズムのパラメータが、第１のパラメータから第２のパラメータに更新されると想定する。また、現在のデータを復元するために使用され、且つモーメントｔ１からモーメントｔ２までの期間とモーメントｔ２の後の期間とに記憶される情報は、それぞれ情報１〜１００及び情報１０１〜５００である。この場合に、記憶装置は、情報１〜１００と第１のパラメータとの間の対応関係を記憶し、情報１０１〜５００と第２のパラメータとの間の対応関係を記憶することができる。
【０２９５】
オプションの実施態様２：ＡＩニューラルアルゴリズムのパラメータは、現在のデータを復元するために使用される情報が記憶された後に、アダプティブラーニングによって更新され、現在のデータを復元するために使用される情報は、ＡＩニューラルアルゴリズムの更新パラメータに基づいて更新される。
【０２９６】
例えば、予測（例えば、Ｓ１０１又はＳ９０１における予測）を行うために使用されるＡＩニューラルアルゴリズムの前述のパラメータが、ＡＩニューラルアルゴリズムの第１のパラメータとしてマークされ、ＡＩニューラルアルゴリズムの第１のパラメータを更新した後に取得されるパラメータは、ＡＩニューラルアルゴリズムの第２のパラメータとしてマークされる場合に、現在のデータを復元するために使用される情報が、ＡＩニューラルアルゴリズムの更新パラメータに基づいて更新されることは、現在のデータを復元するために使用される情報を読み取ること；ＡＩニューラルアルゴリズムの第１のパラメータ（つまり、更新前のＡＩニューラルアルゴリズムのパラメータ）、現在のデータを復元するために使用される読み取り情報、及び現在のデータの履歴データに基づいて、現在のデータを復元すること；ＡＩニューラルアルゴリズムの第２のパラメータ（つまり、ＡＩニューラルアルゴリズムの更新パラメータ）と現在のデータの履歴データとに基づいて、現在のデータを予測して、第２の予測データを取得することであって、第２の予測データは、現在のデータが、ＡＩニューラルアルゴリズムの第２のパラメータに基づいて、履歴データの変更規則に従って予測される後に取得されるデータである、取得すること；現在のデータと第２の予測データとの間の第２のデルタを取得すること；及び、第２のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを更新するために使用される記憶情報を、第２のデルタ又は第２のデルタを圧縮して得た値（又は、現在のデータ、現在のデータを圧縮して得た値、予め設定したデータ等、ここで、特定の記憶情報については、図５又は図１３に示される前述の方法を参照されたい）に更新すること；を含む。換言すると、データ取得手順が、ＡＩニューラルアルゴリズムの更新前に存在するパラメータを用いて１回実行され、現在のデータを取得した後に、データ記憶手順は、ＡＩニューラルアルゴリズムの更新パラメータを用いて１回実行される。このようにして、ＡＩニューラルアルゴリズムであり、且つ現在のデータに対してデータ記憶手順が実行されるときに使用されるパラメータは、最新のパラメータである。
【０２９７】
オプションの実施態様２に基づいて、記憶装置は、ＡＩニューラルアルゴリズムの第２のパラメータをさらに記憶することができる。あるいはまた、記憶装置は、ＡＩニューラルアルゴリズムの記憶した第１のパラメータを第２のパラメータに更新する。換言すると、記憶装置は、ＡＩニューラルアルゴリズムの最新のパラメータを記憶する。
【０２９８】
２つのオプションの実施態様は、図５又は図１３に示される前述のデータ記憶手順に適用され得る。２つのオプションの実施態様を比較すると、オプションの実施態様１は、記憶装置が比較的大量のデータを記憶しているシナリオに適用でき、オプションの実施態様２は、記憶装置が比較的少量のデータを記憶しているシナリオに適用できる。さらに、ＡＩニューラルアルゴリズムのパラメータが更新されるので、現在のデータの予測データが現在のデータに近くなる。従って、データ圧縮効率は、オプションの実施態様２でさらに改善することができる。特定の実施態様プロセスでは、前述のオプションの実施態様１及び２を組み合わせて使用して、新しい技術的解決策を形成することができる。例えば、いくつかの記憶データについて、記憶装置は、前述のオプションの実施態様１を実行することができ、他の記憶データについて、記憶装置は、前述の実施態様２を実行することができる。
【０２９９】
前述のオプションの実施態様１に基づいて、データ取得手順において、記憶装置は、現在のデータを復元するために使用される情報とＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータを取得することができる。この場合に、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得することは、ＡＩニューラルアルゴリズムの取得したパラメータに基づく履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得することを含むことができる。
【０３００】
前述のオプションの実施態様１の説明に基づいて、対応関係内の「ＡＩニューラルアルゴリズムのパラメータ」は、「現在のデータを復元するために使用される情報」を対応関係に記憶するプロセスで使用されるＡＩニューラルアルゴリズムのパラメータであることが分かり得る。取得した「現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータ」は、マッピング関係における「ＡＩニューラルアルゴリズムのパラメータ」である。例えば、前述のオプションの実施態様１の例に基づいて、現在のデータを復元するために使用される情報が情報９９である場合に、対応関係内の「ＡＩニューラルアルゴリズムのパラメータ」が第１のパラメータである、又は現在のデータを復元するために使用される情報が情報２００である場合に、対応関係内の「ＡＩニューラルアルゴリズムのパラメータ」は第２のパラメータである。
【０３０１】
さらに、前述のオプションの実施態様１が、図５に示されるデータ記憶手順に適用される場合に、データ取得手順において、記憶装置は、図７に示される前述の実施形態に従って、現在のデータを取得することができる。前述のオプションの実施態様１が図１３に示されるデータ記憶手順に適用される場合に、データ取得手順において、記憶装置は、図１４に示される前述の実施形態に従って、現在のデータを取得することができる。
【０３０２】
前述のオプションの実施態様２に基づいて、データ取得手順において、記憶装置は、ＡＩニューラルアルゴリズムの記憶した最新のパラメータに基づいて、図７又は図１４に示される実施形態を実行することができる。
【０３０３】
前述のものは、主に、方法の観点から、本願の実施形態で提供される解決策を説明する。前述の機能を実現するために、機能を実行するための対応するハードウェア構造及び／又はソフトウェアモジュールが含まれる。当業者は、本明細書に開示された実施形態で説明した例と組み合わせて、ユニット及びアルゴリズムステップが、本願におけるハードウェア又はハードウェアとコンピュータソフトウェアとの組合せによって実現され得ることを容易に認識すべきである。機能がハードウェア又はハードウェアを動かすコンピュータソフトウェアによって実行されるかは、特定の用途及び技術的解決策の設計上の制約によって異なる。当業者は、特定の用途毎に説明している機能を実現するために様々な方法を使用できるが、その実施態様が本願の範囲を超えているとみなすべきではない。
【０３０４】
本願の実施形態では、機能モジュール分割は、前述の方法例に基づいて、記憶装置上で行われ得る。例えば、各機能モジュールは、各機能による分割によって取得してもよく、又は２つ以上の機能を１つの処理モジュールに統合してもよい。統合モジュールは、ハードウェアの形式で実装してもよく、又はソフトウェア機能モジュールの形式で実装してもよい。本願の実施形態におけるモジュール分割は一例であり、単なる論理的機能分割であることに留意されたい。実際の実施態様では、別の分割方法であってもよい。
【０３０５】
図１５は、本願の実施形態による記憶装置の概略構造図である。図１５に示される記憶装置１５０は、図５又は図６−１〜図６−４に示されるデータ記憶方法を実行するように構成され得る。記憶装置１５０は、第１の取得ユニット１５００、予測ユニット１５０１、第２の取得ユニット１５０２、及び記憶ユニット１５０３を含み得る。第１の取得ユニット１５００は、現在のデータ及び現在のデータの履歴データを取得するように構成される。予測ユニット１５０１は、履歴データを用いて現在のデータを予測して、現在のデータの第１の予測データを取得するように構成される。第２の取得ユニット１５０２は、現在のデータと第１の予測データとの間の第１のデルタを取得するように構成される。記憶ユニット１５０３は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、第１のデルタ又は第１のデルタを圧縮して得た値を記憶するように構成される。例えば、図５を参照すると、第１の取得ユニット１５００は、Ｓ１００を実行するように構成され得、予測ユニット１５０１は、Ｓ１０１を実行するように構成され得、第２の取得ユニット１５０２は、Ｓ１０２を実行するように構成され得、及び記憶ユニット１５０３は、Ｓ１０４を実行するように構成され得る。
【０３０６】
オプションで、第１の取得ユニット１５００は、記憶装置１５０のメモリから現在のデータ及び履歴データを取得するように特に構成される。
【０３０７】
オプションで、記憶ユニット１５０３は、現在のデータを復元するために使用される情報と、予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するようにさらに構成される。
【０３０８】
オプションで、記憶装置１５０は、アダプティブラーニングによってＡＩニューラルアルゴリズムのパラメータを更新し、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、現在のデータを復元するために使用される情報を更新するように構成される更新ユニット１５０４をさらに含む。
【０３０９】
オプションで、更新ユニット１５０４は、現在のデータを復元するために使用される情報を読み取ること；予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータ、現在のデータを復元するために使用される情報、及び現在のデータの履歴データに基づいて、現在のデータを復元すること；ＡＩニューラルアルゴリズムの更新パラメータと現在のデータの履歴データとに基づいて現在のデータを予測して、第２の予測データを取得することであって、第２の予測データは、現在のデータが、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、履歴データの変更規則に従って予測された後に取得されるデータである、取得すること；現在のデータと第２の予測データとの間の第２のデルタを取得すること；及び、第２のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される記憶情報を、第２のデルタ又は第２のデルタを圧縮して得た値に更新すること；を行うように特に構成される。
【０３１０】
オプションで、記憶装置１５０は、ＡＩコンピューティングカードを含み、予測ユニット１５０１は、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、第１の予測データを取得するように特に構成される。
【０３１１】
オプションで、圧縮を行うために使用されるアルゴリズムは辞書圧縮アルゴリズムを含み、辞書圧縮アルゴリズムの辞書は少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応し、記憶装置１５０は、第１のデルタのヒット率を取得するように構成される第３の取得ユニット１５０５と；第１のデルタのヒット率に基づいて少なくとも２つのセットの中でターゲットセットを決定するように構成される決定ユニット１５０６であって、第１のデルタのヒット率は、第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定ユニット１５０６と；ターゲットセット内の第１のデータで第１のデルタを検索して、第１のデルタに対応する第２のデータを決定するように構成される圧縮ユニット１５０７であって、第１のデルタに対応する第２のデータは、第１のデルタを圧縮して得た値である、圧縮ユニット１５０７と；をさらに含む。
【０３１２】
オプションで、記憶装置１５０の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、圧縮を行うために使用されるアルゴリズムは辞書圧縮アルゴリズムを含み、辞書圧縮アルゴリズムの辞書は１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、キャッシュにおけるマッピング関係のヒット率は、メモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率は、ハードディスクにおけるマッピング関係のヒット率以上であり、記憶装置１５０は、第１のデルタのヒット率を取得するように構成される第３の取得ユニット１５０５と；第１のデルタのヒット率に基づいてターゲット記憶媒体を決定するように構成される決定ユニット１５０６であって、第１のデルタのヒット率は、第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲属さない場合に、ハードディスクである、決定ユニット１５０６と；ターゲット記憶媒体内の第１のデータで第１のデルタを検索して、第１のデルタに対応する第２のデータを決定するように構成される圧縮ユニット１５０７であって、第１のデルタに対応する第２のデータは、第１のデルタを圧縮して得た値である、圧縮ユニット１５０７と；をさらに含む。
【０３１３】
オプションで、記憶ユニット１５０３は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間以上である場合に、現在のデータ又は現在のデータを圧縮して得た値を記憶するようにさらに構成される。例えば、図５を参照すると、記憶ユニット１５０３は、Ｓ１０５を実行するように構成され得る。
【０３１４】
オプションで、記憶ユニット１５０３は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間以上である場合に識別子情報を記憶するようにさらに構成され、ここで、現在のデータを圧縮して得た値が記憶されている場合に、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用される、又は現在のデータが記憶されている場合に、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータであることを示すために使用される。例えば、図５を参照すると、記憶ユニット１５０３は、Ｓ１０５Ａを実行するように構成され得る。
【０３１５】
例えば、図２を参照すると、第１の取得ユニット１５００、予測ユニット１５０１、第２の取得ユニット１５０２、更新ユニット１５０４、第３の取得ユニット１５０５、決定ユニット１５０６、及び圧縮ユニット１５０７は全て、プロセッサ２０２を用いて実装され得、記憶ユニット１５０３は、ハードディスク２０４を用いて実装され得る。別の例では、図３を参照すると、予測ユニット１５０１は、ＡＩコンピューティングカード２０７を用いて実装され得、第１の取得ユニット１５００、第２の取得ユニット１５０２、更新ユニット１５０４、第３の取得ユニット１５０５、決定ユニット１５０６、及び圧縮ユニット１５０７は全て、プロセッサ２０２を用いて実装され得、記憶ユニット１５０３は、ハードディスク２０４を用いて実装され得る。
【０３１６】
図１６は、本願の一実施形態による記憶装置１６０の概略構造図である。図１６に示される記憶装置１６０は、図７又は図８Ａ〜図８Ｃに示されるデータ取得方法を実行するように構成され得る。記憶装置１６０は、読み取りユニット１６０１、予測ユニット１６０２、及び決定ユニット１６０３を含み得る。読み取りユニット１６０１は、現在のデータを復元するために使用される情報を読み取るように構成され、ここで、現在のデータを復元するために使用される情報は、デルタ又はデルタを圧縮して得た値であり、デルタは、現在のデータと現在のデータの予測データとの間のデルタであり、現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。予測ユニット１６０２は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように構成される。決定ユニット１６０３は、現在のデータの予測データと現在のデータを復元するために使用される情報とに基づいて、現在のデータを決定するように構成される。例えば、図７を参照すると、読み取りユニット１６０１は、Ｓ３０２を実行するように構成され得、予測ユニット１６０２は、Ｓ３０４を実行するように構成され得、及び決定ユニット１６０３は、Ｓ３０５を実行するように構成され得る。
【０３１７】
オプションで、記憶装置１６０は、記憶装置１５０のメモリから履歴データを取得するように構成される取得ユニット１６０４をさらに含む。
【０３１８】
オプションで、記憶装置１６０は、現在のデータを復元するために使用される情報とＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータを取得するように構成される取得ユニット１６０４をさらに含む。予測ユニット１６０２は、ＡＩニューラルアルゴリズムの取得パラメータに基づいて、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように特に構成される。
【０３１９】
オプションで、記憶装置１６０はＡＩコンピューティングカードを含み、予測ユニット１６０２は、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように特に構成される。
【０３２０】
オプションで、現在のデータを復元するために使用される情報には、デルタを圧縮して得た値が含まれる。この場合に、決定ユニット１６０３は、デルタを圧縮して得た値を解凍して、デルタを取得するように構成される解凍モジュール１６０３−１と；デルタと現在のデータの予測データとに基づいて現在のデータを決定するように構成される決定モジュール１６０３−２と；を含む。例えば、図７を参照すると、解凍モジュール１６０３−１は、Ｓ３０３を実行するように構成され得、決定モジュール１６０３−２は、Ｓ３０４を実行するように構成され得る。
【０３２１】
オプションで、解凍を行うために使用されるアルゴリズムは辞書解凍アルゴリズムを含み、辞書解凍アルゴリズムの辞書は少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。この場合に、解凍モジュール１６０３−１は、デルタを圧縮して得た値のヒット率を取得すること；デルタを圧縮して得た値のヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定することであって、デルタを圧縮して得た値のヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定すること；及び、ターゲットセット内の第２のデータでデルタを圧縮して得た値を検索して、デルタを圧縮して得た値に対応する第１のデータを決定することであって、デルタを圧縮して得た値に対応する第１のデータはデルタである、決定すること；を行うように特に構成される。
【０３２２】
オプションで、記憶装置１６０の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、解凍を行うために使用されるアルゴリズムは辞書解凍アルゴリズムを含み、辞書解凍アルゴリズムの辞書は１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上である。この場合に、解凍モジュール１６０３−１は、デルタを圧縮して得た値のヒット率を取得すること；デルタを圧縮して得た値のヒット率に基づいてターゲット記憶媒体を決定することであって、デルタを圧縮して得た値のヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、メモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定すること；及び、ターゲット記憶媒体内の第２のデータでデルタを圧縮して得た値を検索して、デルタを圧縮して得た値に対応する第１のデータを決定することであって、デルタを圧縮して得た値に対応する第１のデータはデルタである、決定すること；を行うように特に構成される。
【０３２３】
例えば、図２を参照すると、読み取りユニット１６０１、予測ユニット１６０２、及び決定ユニット１６０３は全て、プロセッサ２０２を用いて実装され得る。別の例では、図３を参照すると、予測ユニット１５０１は、ＡＩコンピューティングカード２０７を用いて実装され得、読み取りユニット１６０１と決定ユニット１６０３との両方は、プロセッサ２０２を用いて実装され得る。
【０３２４】
図１７は、本願の一実施形態による記憶装置１７０の概略構造図である。図１７に示される記憶装置１７０は、図９又は図１１に示されるデータ圧縮方法を実行するように構成され得る。記憶装置１７０は、取得ユニット１７０１、決定ユニット１７０２、及び圧縮ユニット１７０３を含み得る。
【０３２５】
可能な設計では、記憶装置１７０は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。取得ユニット１７０１は、圧縮すべきデータのヒット率を取得するように構成される。決定ユニット１７０２は、圧縮すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するように構成され、ここで、圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する。圧縮ユニット１７０３は、ターゲットセット内の第１のデータで圧縮すべきデータを検索して、圧縮すべきデータに対応する第２のデータを決定すること；及び、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用すること；を行うように構成される。例えば、図９を参照すると、取得ユニット１７０１は、Ｓ５０１及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、決定ユニット１７０２は、Ｓ５０２及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、及び圧縮ユニット１７０３は、Ｓ５０３及び／又は本願の実施形態で提供される別のステップを実行するように構成され得る。
【０３２６】
別の可能な設計では、記憶装置１７０の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、及び第１のデータが占める記憶空間は、第２のデータが占める記憶空間よりも大きい。取得ユニット１７０１は、圧縮すべきデータのヒット率を取得するように構成される。決定ユニット１７０２は、圧縮すべきデータのヒット率に基づいてターゲット記憶媒体を決定するように構成され、ここで、圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである。圧縮ユニット１７０３は、ターゲット記憶媒体内の第１のデータで圧縮すべきデータを検索して、圧縮すべきデータに対応する第２のデータを決定すること；及び、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用すること；を行うように構成される。例えば、図１１を参照すると、取得ユニット１７０１は、Ｓ７０１及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、決定ユニット１７０２は、Ｓ７０２及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、及び圧縮ユニット１７０３は、Ｓ７０３及び／又は本願の実施形態で提供される別のステップを実行するように構成され得る。
【０３２７】
例えば、図２又は図３を参照すると、取得ユニット１７０１、決定ユニット１７０２、及び圧縮ユニット１７０３は全て、プロセッサ２０２を用いて実装され得る。
【０３２８】
図１８は、本願の一実施形態による記憶装置１８０の概略構造図である。図１８に示される記憶装置１８０は、図１０又は図１２に示されるデータ解凍方法を実行するように構成され得る。記憶装置１８０は、取得ユニット１８０１、決定ユニット１８０２、及び解凍ユニット１８０３を含み得る。
【０３２９】
可能な設計では、記憶装置１８０は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。取得ユニット１８０１は、解凍すべきデータのヒット率を取得するように構成される。決定ユニット１８０２は、解凍すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するように構成され、ここで、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、及びターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する。解凍ユニット１８０３は、ターゲットセット内の第２のデータで解凍すべきデータを検索して、解凍すべきデータに対応する第１のデータを決定すること；及び、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用すること；を行うように構成される。例えば、図１０を参照すると、取得ユニット１８０１は、Ｓ６０１及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、決定ユニット１８０２は、Ｓ６０２及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、及び解凍ユニット１８０３は、Ｓ６０３及び／又は本願の実施形態で提供される別のステップを実行するように構成され得る。
【０３３０】
別の可能な設計では、記憶装置１８０の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、及び第１のデータが占める記憶空間は、第２のデータが占める記憶空間よりも大きい。取得ユニット１８０１は、解凍すべきデータのヒット率を取得するように構成される。決定ユニット１８０２は、解凍すべきデータのヒット率に基づいてターゲット記憶媒体を決定するように構成され、ここで、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである。解凍ユニット１８０３は、ターゲット記憶媒体内の第２のデータで解凍すべきデータに対応する第１のデータを検索すること；及び、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用すること；を行うように構成される。例えば、図１２を参照すると、取得ユニット１８０１は、Ｓ８０１及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、決定ユニット１８０２は、Ｓ８０２及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、及び解凍ユニット１８０３は、Ｓ８０３及び／又は本願の実施形態で提供される別のステップを実行するように構成され得る。
【０３３１】
例えば、図２又は図３を参照すると、取得ユニット１８０１、決定ユニット１８０２、及び解凍ユニット１８０３は全て、プロセッサ２０２を用いて実装され得る。
【０３３２】
図１９は、本願の一実施形態による記憶装置１９０の概略構造図である。図１９に示される記憶装置１９０は、図１３に示されるデータ記憶方法を実行するように構成され得る。記憶装置１９０は、予測ユニット１９０１、取得ユニット１９０２、及び記憶ユニット１９０３を含み得る。取得ユニット１９０２は、現在のデータ及び現在のデータの履歴データを取得するように構成される。予測ユニット１９０１は、履歴データを用いて現在のデータを予測して、現在のデータの第１の予測データを取得するように構成される。取得ユニット１９０２は、現在のデータと現在のデータの第１の予測データとの間の第１のデルタを取得するようにさらに構成される。記憶ユニット１９０３は、第１のデルタの絶対値が予め設定した閾値以下である場合に、予め設定したデータを記憶するように構成される。オプションで、予め設定したデータが占める記憶空間は、現在のデータが占める記憶空間よりも小さい。例えば、図１３を参照すると、予測ユニット１９０１は、Ｓ９０１を実行するように構成され得、取得ユニット１９０２は、Ｓ９０１及びＳ９０２を実行するように構成され得、及び記憶ユニット１９０３は、Ｓ９０４を実行するように構成され得る。
【０３３３】
オプションで、記憶ユニット１９０３は、現在のデータを復元するために使用される情報と、予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するようにさらに構成される。
【０３３４】
オプションで、記憶装置１９０は、アダプティブラーニングによってＡＩニューラルアルゴリズムのパラメータを更新し、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、現在のデータを復元するために使用される情報を更新するように構成される更新ユニット１９０４をさらに含む。
【０３３５】
オプションで、更新ユニット１９０４は、現在のデータを復元するために使用される情報を読み取ること；予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータ、現在のデータを復元するために使用される情報、及び現在のデータの履歴データに基づいて、現在のデータを復元すること；ＡＩニューラルアルゴリズムの更新パラメータと現在のデータの履歴データとに基づいて現在のデータを予測して、第２の予測データを取得することであって、第２の予測データは、現在のデータが、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、履歴データの変更規則に従って予測された後に取得されるデータである、取得すること；現在のデータと第２の予測データとの間の第２のデルタを取得すること；及び、第２のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される記憶情報を、第２のデルタ又は第２のデルタを圧縮して得た値に更新すること；を行うように特に構成される。
【０３３６】
オプションで、記憶装置１５０はＡＩコンピューティングカードを含み、予測ユニット１５０１は、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、第１の予測データを取得するように特に構成される。
【０３３７】
オプションで、記憶ユニット１９０３は、第１のデルタの絶対値が予め設定した閾値よりも大きい場合に、現在のデータ又は現在のデータを圧縮して得た値を記憶するようにさらに構成される。例えば、図１３を参照すると、記憶ユニット１９０３は、Ｓ９０５を実行するように構成され得る。
【０３３８】
オプションで、記憶ユニット１９０３は、第１のデルタの絶対値が予め設定した閾値よりも大きい場合に、識別子情報を記憶するようにさらに構成され、ここで、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用され、又は現在のデータが記憶されるときに、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータであることを示すために使用される。例えば、図１３を参照すると、記憶ユニット１９０３は、Ｓ９０５Ａを実行するように構成され得る。
【０３３９】
例えば、図２を参照すると、予測ユニット１９０１と取得ユニット１９０２との両方は、プロセッサ２０２を用いて実装され得、記憶ユニット１９０３は、ハードディスク２０４を用いて実装され得る。別の例では、図３を参照すると、予測ユニット１９０１は、ＡＩコンピューティングカード２０７を用いて実装され得、取得ユニット１９０２は、プロセッサ２０２を用いて実装され得、及び記憶ユニット１９０３は、ハードディスク２０４を用いて実装され得る。
【０３４０】
図２０は、本願の一実施形態による記憶装置２１０の概略構造図である。図２０に示される記憶装置２１０は、図１４に示されるデータ取得方法を実行するように構成され得る。記憶装置２１０は、読み取りユニット２１０１、予測ユニット２１０２、及び決定ユニット２１０３を含み得る。読み取りユニット２１０１は、現在のデータを復元するために使用される情報を読み取るように構成され、ここで、現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。予測ユニット２１０２は、現在のデータを復元するために使用される情報が予め設定したデータを含む場合に、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように構成される。決定ユニット２１０３は、現在のデータの予測データを現在のデータとして使用するように構成される。例えば、図１４を参照すると、読み取りユニット２１０１は、Ｓ１００１を実行するように構成され得、予測ユニット２１０２は、Ｓ１００３において予測ステップを実行するように構成され得、及び決定ユニット２１０３は、Ｓ１００３において現在のデータを決定するステップを実行するように構成され得る。
【０３４１】
オプションで、記憶装置２１０は、現在のデータを復元するために使用される情報とＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータを取得するように構成される取得ユニット２１０４をさらに含む。予測ユニット２１０２は、ＡＩニューラルアルゴリズムの取得パラメータに基づいて、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように特に構成される。
【０３４２】
オプションで、記憶装置２１０はＡＩコンピューティングカードを含み、予測ユニット２１０２は、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように特に構成される。
【０３４３】
例えば、図２を参照すると、読み取りユニット２１０１、予測ユニット２１０２、及び決定ユニット２１０３は全て、プロセッサ２０２を用いて実装され得る。別の例では、図３を参照すると、読み取りユニット２１０１と決定ユニット２１０３との両方は、プロセッサ２０２を用いて実装され得、予測ユニット２１０２は、ＡＩコンピューティングカード２０７を用いて実装され得る。
【０３４４】
図１５〜図２０に提供される任意の記憶装置の実施態様及び有利な効果の説明については、前述の対応する方法の実施形態を参照されたい。詳細については、ここでは再び説明しない。
【０３４５】
前述の実施形態の全部又は一部は、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組合せを用いて実施することができる。ソフトウェアプログラムを用いて実施形態を実施する場合に、実施形態は、コンピュータプログラム製品の形態で完全に又は部分的に実現され得る。コンピュータプログラム製品は、１つ又は複数のコンピュータ命令を含む。コンピュータ実行可能命令がコンピュータにロードされて実行されるときに、本発明の実施形態における手順又は機能の全部又は一部が生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、又は別のプログラム可能な機器であり得る。コンピュータ命令は、コンピュータ可読記憶媒体に記憶され得るか、又はあるコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に送信され得る。例えば、コンピュータ命令は、ウェブサイト、コンピュータ、サーバ、又はデータセンタから別のウェブサイト、コンピュータ、サーバ、又はデータセンタに有線で（例えば、同軸ケーブル、光ファイバ、又はデジタル加入者回線（digital  subscriber  line,  DSL））又は無線で（例えば、赤外線、無線、又はマイクロ波）方式で送信され得る。コンピュータ可読記憶媒体は、コンピュータがアクセスできる任意の使用可能な媒体であり得るか、或いは１つ又は複数の使用可能な媒体を統合するサーバ又はデータセンタ等のデータ記憶装置であり得る。使用可能な媒体は、磁気媒体（例えば、フロッピーディスク、ハードディスク、又は磁気テープ）、光媒体（例えば、ＤＶＤ）、半導体媒体（例えば、ソリッドステートディスク（solid  state  disk,  SSD））等であり得る。
【０３４６】
本願は実施形態を参照して説明しているが、保護を主張する本願を実施する過程において、当業者は、添付の図面、開示された内容、及び添付の特許請求の範囲を参照して、開示された実施形態の別のバリエーションを理解し実現し得る。特許請求の範囲において、「備える、有する、含む（comprising）」は、別の構成要素又は別のステップを除外せず、「１つの（a,  one）」は、「複数」の場合を除外しない。単一のプロセッサ又は別のユニットは、特許請求の範囲に列挙されたいくつかの機能を実現することができる。いくつかの手段が、互いに異なる従属請求に記録されているが、これは、これらの手段を組み合わせてより良い効果を生み出すことができないことを意味するものではない。
【０３４７】
本願は、特定の特徴及びその実施形態を参照して説明しているが、明らかに、本願の精神及び範囲から逸脱することなく、本願に対して様々な修正及び組合せを行うことができる。同様に、明細書及び添付の図面は、添付の特許請求の範囲によって規定される本願の単なる例示的な説明であり、且つ本願の範囲をカバーする修正、変形、組合せ、又は同等物のいずれか又は全てと見なされる。明らかに、当業者は、本願の精神及び範囲から逸脱することなく、本願に様々な修正及び変更を加えることができる。このようにして、本願は、以下の特許請求の範囲及びそれらの同等の技術によって規定される保護の範囲内にあるという条件で、本願のこれらの変更及びバリエーションをカバーすることを意図している。
【図１】
2021534505.tif 000006
【図２】
2021534505.tif 000007
【図３】
2021534505.tif 000008
【図４】
2021534505.tif 000009
【図５】
2021534505.tif 000010
【図５Ａ】
2021534505.tif 000011
【図６−１】
2021534505.tif 000012
【図６−２】
2021534505.tif 000013
【図６−３】
2021534505.tif 000014
【図６−４】
2021534505.tif 000015
【図６Ａ】
2021534505.tif 000016
【図７】
2021534505.tif 000017
【図７Ａ】
2021534505.tif 000018
【図８Ａ】
2021534505.tif 000019
【図８Ｂ】
2021534505.tif 000020
【図８Ｃ】
2021534505.tif 000021
【図９】
2021534505.tif 000022
【図１０】
2021534505.tif 000023
【図１１】
2021534505.tif 000024
【図１２】
2021534505.tif 000025
【図１３】
2021534505.tif 000026
【図１４】
2021534505.tif 000027
【図１５】
2021534505.tif 000028
【図１６】
2021534505.tif 000029
【図１７】
2021534505.tif 000030
【図１８】
2021534505.tif 000031
【図１９】
2021534505.tif 000032
【図２０】
2021534505.tif 000033
【手続補正書】
【提出日】令和3年3月25日(2021.3.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データ記憶方法であって、当該データ記憶方法は、
現在のデータ及び該現在のデータの履歴データを取得するステップと、
該履歴データ及び前記履歴データの変更規則を用いて前記現在のデータの第１の予測データを取得するステップと、
前記現在のデータと前記第１の予測データとの間の第１のデルタを取得するステップと、
前記現在のデータを復元するために使用される情報を記憶するステップであって、前記現在のデータを復元するために使用される前記情報は、前記第１のデルタ又は該第１のデルタを圧縮して得た値を含む、記憶するステップと、を含む、
データ記憶方法。
【請求項２】
予測を行うために使用されるアルゴリズムが、人工知能（ＡＩ）ニューラルアルゴリズムを含む、請求項１に記載のデータ記憶方法。
【請求項３】
前記ＡＩニューラルアルゴリズムのタイプには、正規化最小平均二乗（ＮＬＭＳ）タイプ、単層パーセプトロン（ＳＬＰ）タイプ、多層パーセプトロン（ＭＬＰ）タイプ、又はリカレントニューラルネットワーク（ＲＮＮ）タイプのいずれか１つが含まれる、請求項２に記載のデータ記憶方法。
【請求項４】
当該方法は、前記現在のデータを復元するために使用される前記情報と、前記予測を行うために使用される前記ＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するステップをさらに含む、請求項２又は３に記載のデータ記憶方法。
【請求項５】
前記現在のデータを復元するために使用される情報を記憶した後に、当該方法は、
アダプティブラーニングによる前記ＡＩニューラルアルゴリズムのパラメータを更新するステップと、
前記ＡＩニューラルアルゴリズムの更新パラメータに基づいて、前記現在のデータを復元するために使用される前記情報を更新するステップと、をさらに含む、請求項２又は３に記載のデータ記憶方法。
【請求項６】
データ取得方法であって、当該データ取得方法は、
現在のデータを復元するために使用される情報を読み取るステップであって、前記現在のデータを復元するために使用される前記情報には、デルタ又はデルタを圧縮して得た値が含まれ、前記デルタは、前記現在のデータと該現在のデータの予測データとの間のデルタであり、前記予測データは、履歴データの変更規則及び前記履歴データに基づいて取得されるデータである、読み取るステップと、
該予測データと前記情報とに基づいて、前記現在のデータを復元するステップと、を含む、
データ取得方法。
【請求項７】
予測を行うために使用されるアルゴリズムが、人工知能（ＡＩ）ニューラルアルゴリズムを含む、請求項６に記載のデータ取得方法。
【請求項８】
当該方法は、前記現在のデータを復元するために使用される前記情報と前記ＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、前記現在のデータを予測するために使用される前記ＡＩニューラルアルゴリズムの前記パラメータを取得するステップをさらに含み、
前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するステップは、前記ＡＩニューラルアルゴリズムの前記取得したパラメータに基づいて、前記履歴データを用いて前記現在のデータを予測して、前記予測データを取得するステップを含む、請求項６又は７に記載のデータ取得方法。
【請求項９】
記憶装置であって、当該記憶装置は、
現在のデータ及び該現在のデータの履歴データを取得するように構成される第１の取得ユニットと、
前記履歴データ及び該履歴データの変更規則を用いて前記現在のデータの第１の予測データを取得するように構成される予測ユニットと、
前記現在のデータと前記第１の予測データとの間の第１のデルタを取得するように構成される第２の取得ユニットと、
前記現在のデータを復元するために使用される情報を記憶するように構成される記憶ユニットであって、前記現在のデータを復元するために使用される前記情報は、前記第１のデルタ又は該第１のデルタを圧縮して得た値を含む、記憶ユニットと、を含む、
記憶装置。
【請求項１０】
予測を行うために使用されるアルゴリズムが、人工知能（ＡＩ）ニューラルアルゴリズムを含む、請求項９に記載の記憶装置。
【請求項１１】
前記ＡＩニューラルアルゴリズムのタイプには、正規化最小平均二乗（ＮＬＭＳ）タイプ、単層パーセプトロン（ＳＬＰ）タイプ、多層パーセプトロン（ＭＬＰ）タイプ、又はリカレントニューラルネットワーク（ＲＮＮ）タイプのいずれか１つが含まれる、請求項１０に記載の記憶装置。
【請求項１２】
前記記憶ユニットは、前記現在のデータを復元するために使用される前記情報と、前記予測を行うために使用される前記ＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するようにさらに構成される、請求項１０又は１１に記載の記憶装置。
【請求項１３】
前記記憶装置は、アダプティブラーニングによる前記ＡＩニューラルアルゴリズムのパラメータを更新し、前記ＡＩニューラルアルゴリズムの更新パラメータに基づいて、前記現在のデータを復元するために使用される前記情報を更新するように構成される更新ユニットをさらに含む、請求項１０又は１１に記載の記憶装置。
【請求項１４】
記憶装置であって、当該記憶装置は、
現在のデータを復元するために使用される情報を読み取るように構成される読み取りユニットであって、前記現在のデータを復元するために使用される前記情報には、デルタ又はデルタを圧縮して得た値が含まれ、前記デルタは、前記現在のデータと該現在のデータの予測データとの間のデルタであり、前記予測データは、履歴データの変更規則及び前記履歴データに基づいて取得されるデータである、読み取りユニットと、
前記予測データと前記情報とに基づいて前記現在のデータを復元するように構成される復元ユニットと、を含む、
記憶装置。
【請求項１５】
予測を行うために使用されるアルゴリズムが、人工知能（ＡＩ）ニューラルアルゴリズムを含む、請求項１４に記載の記憶装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本願の実施形態は、データ処理技術の分野に関し、特に、データ記憶方法、データ取得方法、及び機器に関する。
【背景技術】
【０００２】
人工知能（artificial intelligence, AI）アプリケーション、ビッグデータアプリケーション、モノのインターネット（internet of things）アプリケーション等の新しいアプリケーションが成熟するにつれて、記憶する必要のあるデータが急激に増大する。記憶装置（storage device）の容量を増やすだけで急激に増大するデータを記憶する場合に、記憶装置の購入コスト及び管理コストは比較的高く、記憶装置は、比較的大きなスペースを占有し、且つ比較的高い電力を消費する。これは、企業に比較的重いコスト負担を生じさせる。従って、効果的なデータ記憶ソリューションが必要である。
【発明の概要】
【０００３】
本願の実施形態は、記憶オーバーヘッド（storage overheads）を低減するための、データ記憶方法、データ取得方法、及び機器を提供する。また、本願の実施形態は、圧縮（compression）又は解凍（decompression）時間を短縮するための、データ圧縮方法、データ解凍方法、及び機器をさらに提供する。
【０００４】
第１の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ記憶方法を提供し、この方法は、現在のデータ及び現在のデータの履歴データを取得するステップと；履歴データを用いて現在のデータを予測して、第１の予測データを取得するステップであって、第１の予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；現在のデータと第１の予測データとの間の第１のデルタを取得するステップと；第１のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される情報を記憶するステップであって、現在のデータを復元するために使用される情報は、第１のデルタ又は第１のデルタを圧縮して得た値を含む、記憶するステップと；を含み得る。
【０００５】
デルタが、現在のデータと現在のデータの予測データ（例えば、以下に説明する第１の予測データ又は第２の予測データ）との間の差を表すために使用されるパラメータである。例えば、デルタは、差、比、倍数、パーセンテージ等であり得る。履歴データは、少なくとも２つの記憶すべき（to-be-stored）データを含む、シーケンス内の現在のデータ以前の１つ又は複数のデータであり得る。記憶すべきデータは、記憶する必要のある元のデータである。現在のデータは、少なくとも２つの記憶すべきデータ内の現在の記憶すべきデータである。
【０００６】
この技術的解決策では、現在のデータについて、現在のデータを復元するために使用される情報、例えば、現在のデータと現在のデータの予測データとの間のデルタ、又はデルタを圧縮して得た値は、実際には記憶される。現在のデータを復元するために使用される記憶情報が占める記憶空間は、現在のデータを直接記憶する従来技術のものと比較して、現在のデータが占める記憶空間よりも小さいので、記憶オーバーヘッドを削減できる。
【０００７】
可能な設計では、予測を行うために使用されるアルゴリズムは、ＡＩニューラルアルゴリズムを含む。例えば、ＡＩニューラルアルゴリズムのタイプは、正規化最小平均二乗（normalized least mean square, NLMS）タイプ、単層パーセプトロン（single layer perceptron, SLP）タイプ、多層パーセプトロン（multi-layer
perceptron, MLP）タイプ、又はリカレントニューラルネットワーク（recurrent neural
network, RNN）タイプのいずれか１つを含む。
【０００８】
可能な設計では、記憶装置は、現在のデータの予測データを記憶しない。このようにして、記憶オーバーヘッドを削減できる。これに基づいて、記憶装置は、履歴情報に基づいて現在のデータを予測して第１の予測データを取得し、次に、第１の予測データと現在のデータを復元するために使用される記憶情報とに基づいて、現在のデータを復元する。詳細については、次の第２の態様で提供される技術的解決策を参照されたい。
【０００９】
可能な設計では、圧縮を行うために使用されるアルゴリズムは、辞書（dictionary）圧縮アルゴリズム及び／又は重複排除アルゴリズムを含む。
【００１０】
可能な設計では、圧縮を行うために使用されるアルゴリズムは辞書圧縮アルゴリズムを含み、辞書圧縮アルゴリズムの辞書は少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。この方法は、第１のデルタのヒット率を取得するステップと；第１のデルタのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するステップであって、第１のデルタのヒット率は、第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定するステップと；ターゲットセット内の第１のデータで第１のデルタを検索して、第１のデルタに対応する第２のデータを決定するステップであって、第１のデルタに対応する第２のデータは、第１のデルタを圧縮して得た値である、決定するステップと；をさらに含む。この技術的解決策では、記憶装置に含まれるマッピング関係が様々なセットに分類される。このようにして、圧縮すべき（to-be-compressed）データが位置するセットは、圧縮すべきデータのヒット率（すなわち、第１のデルタ）に基づいて直接決定され得る。これにより、圧縮すべきデータの検索範囲を狭めることができる。従って、圧縮時間が短縮される。
【００１１】
可能な設計では、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、圧縮を行うために使用されるアルゴリズムは辞書圧縮アルゴリズムを含み、辞書圧縮アルゴリズムの辞書が１つ又は複数のマッピング関係を含み、各マッピング関係は１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上である。この方法は、第１のデルタのヒット率を取得するステップと；第１のデルタのヒット率に基づいてターゲット記憶媒体を決定するステップであって、第１のデルタのヒット率は、第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと；ターゲット記憶媒体内の第１のデータで第１のデルタを検索して、第１のデルタに対応する第２のデータを決定するステップであって、第１のデルタに対応する第２のデータは、第１のデルタを圧縮して得た値である、決定するステップと；をさらに含む。この技術的解決策では、最高の読み取り／書き込み性能を有しており、且つ圧縮すべきデータが位置する記憶媒体は、圧縮すべきデータのヒット率（具体的には、第１のデルタ）と異なる記憶媒体に記憶されるマッピング関係のヒット率範囲とに基づいて直接決定でき、キャッシュの読み取り／書き込み性能は、メモリの読み取り／書き込み性能よりも高く、メモリの読み取り／書き込み性能は、ハードディスクの読み取り／書き込み性能よりも高い。これにより、圧縮すべきデータの検索範囲を狭めることができる。従って、圧縮時間が短縮される。
【００１２】
可能な設計では、この方法は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間以上である場合に、現在のデータ又は現在のデータを圧縮して得た値を記憶するステップをさらに含む。
【００１３】
可能な設計では、この方法は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間以上である場合に、識別子情報を記憶するステップをさらに含む。識別子情報は、現在のデータを復元するために使用される情報が現在のデータ又は現在のデータを圧縮して得た値であることを示すために使用される。オプションで、識別子情報は、現在のデータを復元するために使用される情報の識別子情報として使用され得るか、又は現在のデータを復元するために使用される情報に含まれる情報として使用され得る。この技術的解決策は、記憶装置が現在のデータを復元するために使用される記憶情報を識別（特定：identify）するのに役立つ。
【００１４】
第２の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ取得方法を提供し、この方法は、現在のデータを復元するために使用される情報を読み取るステップであって、現在のデータを復元するために使用される情報には、デルタ又はデルタを圧縮して得た値が含まれ、デルタは、現在のデータと現在のデータの予測データとの間のデルタであり、予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、読み取るステップと；履歴データを用いて現在のデータを予測して、予測データを取得するステップと；予測データと現在のデータを復元するために使用された情報とに基づいて、現在のデータを決定するステップと；を含み得る。例えば、履歴データは、１つ又は複数の取得データ（obtained data）である。
【００１５】
可能な設計では、解凍を行うために使用されるアルゴリズムは、辞書解凍アルゴリズム及び／又は重複排除アルゴリズムのうちの少なくとも１つを含む。
【００１６】
可能な設計では、現在のデータを復元するために使用される情報は、デルタを圧縮して得た値を含み、予測データと現在のデータを復元するために使用される情報とに基づいて現在のデータを決定するステップは、デルタを圧縮して得た値を解凍して、デルタを取得するステップと；デルタと現在のデータの予測データとに基づいて現在のデータを決定するステップと；を含む。
【００１７】
可能な設計では、解凍を行うために使用されるアルゴリズムは辞書解凍アルゴリズムを含み、辞書解凍アルゴリズムの辞書が少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。デルタを圧縮して得た値を解凍して、デルタを取得するステップは、デルタを圧縮して得た値のヒット率を取得するステップと；デルタを圧縮して得た値のヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するステップであって、デルタを圧縮して得た値のヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定するステップと；ターゲットセット内の第２のデータでデルタを圧縮して得た値を検索して、デルタを圧縮して得た値に対応する第１のデータを決定するステップであって、デルタを圧縮して得た値に対応する第１のデータはデルタである、決定するステップと；を含み得る。この技術的解決策では、記憶装置に含まれるマッピング関係が様々なセットに分類される。このようにして、解凍すべき（to-be-decompressed）データが位置するセットは、解凍すべきデータのヒット率（具体的には、デルタを圧縮して得た値）に基づいて直接決定することができる。これにより、解凍すべきデータの検索範囲を狭めることができる。従って、解凍時間が短縮される。
【００１８】
可能な設計では、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、解凍を行うために使用されるアルゴリズムは辞書解凍アルゴリズムを含み、辞書解凍アルゴリズムの辞書が１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上である。この場合に、デルタを圧縮して得た値を解凍して、デルタを取得するステップは、デルタを圧縮して得た値のヒット率を取得するステップと；デルタを圧縮して得た値のヒット率に基づいてターゲット記憶媒体を決定するステップであって、デルタを圧縮して得た値のヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと；ターゲット記憶媒体内の第２のデータでデルタを圧縮して得た値を検索して、デルタを圧縮して得た値に対応する第１のデータを決定するステップであって、デルタを圧縮して得た値に対応する第１のデータはデルタである、決定するステップと；を含み得る。この技術的解決策では、最高の読み取り／書き込み性能を有しており、且つ解凍すべきデータが位置する記憶媒体は、解凍すべきデータのヒット率と異なる記憶媒体に記憶されるマッピング関係のヒット率範囲とに基づいて直接決定され得る。これにより、解凍すべきデータの検索範囲を狭めることができる。従って、解凍時間が短縮される。
【００１９】
可能な設計では、記憶装置によって読み取られ、且つ現在のデータを復元するために使用される情報に識別子情報が含まれない場合に、それは、現在のデータを復元するために使用される情報にはデルタ又はデルタを圧縮して得た値が含まれることを示す。識別子情報の関連する説明については、前述の第１の態様を参照されたい。
【００２０】
記憶装置によって読み取られ、且つ現在のデータを復元するために使用される情報に識別子情報が含まれる場合に、それは、現在のデータを復元するために使用される情報には現在のデータ又は現在のデータを圧縮し得た値が含まれることを示すと理解され得る。
【００２１】
これに基づいて、第２の態様で提供される技術的解決策は、以下の解決策１又は解決策２に置き換えることができる。
【００２２】
解決策１：現在のデータを復元するために使用される情報を読み取り、ここで、現在のデータを復元するために使用される情報に識別子情報が含まれ、現在のデータを復元するために使用される情報には現在のデータが含まれる。
【００２３】
解決策２：現在のデータを復元するために使用される情報を読み取り、ここで、現在のデータを復元するために使用される情報に識別子情報が含まれ、現在のデータを復元するために使用される情報には現在のデータを圧縮して得た値が含まれ、次に、現在のデータを圧縮して得た値を解凍して、現在のデータを取得する。
【００２４】
第２の態様で提供される技術的解決策は、新しい技術的解決策を形成するために、解決策１／解決策２と組み合わせることができる。
【００２５】
第２の態様又は第２の態様の代替解決策は、第１の態様で提供される技術的解決策及び技術的解決策の対応する設計的解決策に対応する。従って、第２の態様又は第２の態様の代替解決策の特定の実施態様及び有利な効果については、第１の態様の説明を参照されたい。
【００２６】
第３の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ記憶方法を提供し、この方法は、現在のデータ及び現在のデータの履歴データを取得するステップと；履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するステップであって、予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；現在のデータと予測データとの間のデルタを取得するステップと；デルタの絶対値が予め設定した閾値以下の場合に、予め設定したデータを記憶するステップと；を含み得る。オプションで、予め設定したデータが占める記憶空間は、現在のデータが占める記憶空間よりも小さい。この技術的解決策では、従来技術の現在のデータを直接記憶する技術的解決策と比較して、予め設定したデータが占める記憶空間が現在のデータが占める記憶空間よりも小さいため、記憶オーバーヘッドを削減できる。
【００２７】
オプションで、予め設定したデータは、記憶装置によって予め規定される。オプションで、予め設定したデータは識別子であり得、識別子は、現在のデータの予測データが現在のデータとして使用され得る（又は略使用され得る）ことを示すために使用される。オプションで、予め設定したデータが占める記憶空間は、殆ど又は全ての記憶すべきデータのそれぞれが占める記憶空間よりも小さい。
【００２８】
デルタが差である例では、デルタの絶対値が０である場合に、この技術的解決策の圧縮プロセスは、具体的には可逆圧縮プロセスである。デルタの絶対値が０でない場合に、この技術的解決策の圧縮プロセスは、具体的には不可逆圧縮プロセスである。予め設定した閾値を適切に設定すると、データ損失率を特定の範囲内に制限するのに役立つ。換言すると、予め設定される閾値は、実際の要件（例えば、許容可能な非可逆圧縮率内の要件）に基づいて設定できる。この技術的解決策は、特定のデータ損失が許容されるシナリオ、例えば、ビデオ再生等のシナリオに適用することができる。
【００２９】
可能な設計では、この方法は、デルタの絶対値が予め設定した閾値よりも大きい場合に、現在のデータ又は現在のデータを圧縮して得た値を記憶するステップをさらに含む。圧縮を行うために使用されるアルゴリズムは、例えば、辞書圧縮アルゴリズム及び／又は重複排除アルゴリズムであり得るが、これらに限定されない。
【００３０】
可能な設計では、この方法は、デルタの絶対値が予め設定した閾値よりも大きい場合に識別子情報を記憶するステップをさらに含み、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用されるか、又は現在のデータが記憶される場合に、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータであることを示すために使用される。識別子情報は、現在のデータを復元するために使用される情報の識別子情報として使用してもよく、又は現在のデータを復元するために使用される情報に含まれる情報として使用してもよい。この技術的解決策は、記憶装置が現在のデータを復元するために使用される記憶情報のタイプを識別するのに役立つ。タイプは、「予め設定したデータ」のタイプ又は「現在のデータ又は現在のデータを圧縮して得た値」のタイプであり得、これにより、データ取得手順の実装を支援する。
【００３１】
第１の態様又は第３の態様で提供される任意の技術的解決策に基づいて、以下では、いくつかの可能な設計が提供される。
【００３２】
可能な設計では、この方法は、現在のデータを復元するために使用される情報と、予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するステップをさらに含む。これにより、現在のデータを正しく復元するのに役立つ。例えば、記憶装置は、ＡＩニューラルアルゴリズムのパラメータが更新される度にスナップショット動作を実行して、現在のデータを復元するために使用される情報と予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記録する。
【００３３】
可能な設計では、現在のデータを復元するために使用される情報が記憶された後に、この方法は、アダプティブラーニング（adaptive learning）によってＡＩニューラルアルゴリズムのパラメータを更新するステップと；ＡＩニューラルアルゴリズムの更新パラメータ（updated parameter）に基づいて、現在のデータを復元するために使用される情報を更新するステップと；をさらに含む。これにより、現在のデータを正しく復元するのに役立つ。
【００３４】
可能な設計では、予測を行うために使用されるＡＩニューラルアルゴリズムの前述のパラメータは、ＡＩニューラルアルゴリズムの第１のパラメータとしてマークされ、ＡＩニューラルアルゴリズムの第１のパラメータが更新された後に取得されるパラメータは、ＡＩニューラルアルゴリズムの第２のパラメータとしてマークされる。これに基づいて、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、現在のデータを復元するために使用される情報を更新するステップは、現在のデータを復元するために使用される情報を読み取るステップと；ＡＩニューラルアルゴリズムの第１のパラメータ（つまり、更新前のＡＩニューラルアルゴリズムのパラメータ）、現在のデータを復元するために使用される読み取り情報、及び現在のデータの履歴データに基づいて、現在のデータを復元するステップと；ＡＩニューラルアルゴリズムの第２のパラメータ（つまり、ＡＩニューラルアルゴリズムの更新パラメータ）と現在のデータの履歴データとに基づいて、現在のデータを予測して、第２の予測データを取得するステップであって、第２の予測データは、現在のデータが、ＡＩニューラルアルゴリズムの第２のパラメータに基づいて、履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；現在のデータと第２の予測データとの間の第２のデルタを取得するステップと；第２のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される記憶情報を、第２のデルタ又は第２のデルタを圧縮して得た値に更新するステップと；を含む。
【００３５】
可能な設計では、記憶装置はＡＩコンピューティングカードを含み、履歴データを用いて現在のデータを予測して、第１の予測データを取得するステップは、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、第１の予測データを取得するステップを含む。
【００３６】
可能な設計では、記憶装置はメモリを含む。少なくとも２つの記憶すべきデータの中の現在のデータ及び現在のデータの履歴データを取得するステップは、少なくとも２つの記憶すべきデータの中の現在のデータ及び現在のデータの履歴データをメモリから取得するステップを含む。
【００３７】
可能な設計では、任意の記憶すべきデータについて、記憶すべきデータが他の記憶すべきデータの履歴データとして使用されない場合に、記憶すべきデータは、メモリの記憶オーバーヘッドを削減するように、メモリから削除される。
【００３８】
第４の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ取得方法を提供し、この方法は、現在のデータを復元するために使用される情報を読み取るステップと；現在のデータを復元するために使用される情報が予め設定したデータを含む場合に、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するステップであって、予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである、取得するステップと；予測データを現在のデータとして使用するステップと；を含み得る。例えば、履歴データは、１つ又は複数の取得データである。
【００３９】
可能な設計では、記憶装置によって読み取られ、且つ現在のデータを復元するために使用される情報に識別子情報が含まれない場合に、それは、現在のデータを復元するために使用される情報には予め設定したデータが含まれることを示す。識別子情報の関連する説明については、前述の第３の態様を参照されたい。詳細については、ここでは再び説明しない。
【００４０】
記憶装置によって読み取られ、且つ現在のデータを復元するために使用される情報に識別子情報が含まれる場合に、それは、現在のデータを復元するために使用される情報には現在のデータ又は現在のデータを圧縮し得た値が含まれることを示すと理解され得る。この場合に、第４の態様は、上記の解決策１又は解決策２に置き換えることができる。
【００４１】
第４の態様で提供される技術的解決策は、新しい技術的解決策を形成するように、解決策１／解決策２と組み合わせることができる。
【００４２】
第４の態様又は第４の態様の代替解決策は、第３の態様で提供される技術的解決策及び技術的解決策の対応する設計的解決策に対応する。従って、第４の態様又は第４の態様の代替解決策の特定の実施態様及び有利な効果については、第３の態様を参照されたい。
【００４３】
第２の態様又は第４の態様で提供される任意の技術的解決策に基づいて、以下では、いくつかの可能な設計が提供される。
【００４４】
可能な設計では、記憶装置はメモリを含み、履歴データを用いて現在のデータを予測する前に、現在のデータの予測データを取得するために、この方法は、メモリから履歴データを取得するステップをさらに含む。
【００４５】
可能な設計では、この方法は、記憶装置によって、現在のデータをメモリに記憶して、現在のデータを他の取得すべき（to-be-obtained）データの履歴データとして使用するステップをさらに含む。
【００４６】
可能な設計では、この方法は、取得データが取得すべきデータの履歴データとしてもはや使用されなくなった場合に、記憶装置が、メモリから取得データを削除して、メモリの記憶オーバーヘッドを削減するステップをさらに含む。
【００４７】
可能な設計では、この方法は、現在のデータを復元するために使用される情報とＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータを取得するステップをさらに含み、履歴データを用いて現在のデータを予測して、予測データを取得するステップは、ＡＩニューラルアルゴリズムの取得パラメータに基づいて履歴データを用いて現在のデータを予測して、予測データを取得するステップを含む。
【００４８】
可能な設計では、記憶装置はＡＩコンピューティングカードを含み、履歴データを用いて現在のデータを予測するステップは、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測するステップを含む。
【００４９】
第５の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ圧縮方法を提供し、記憶装置は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。この方法は、圧縮すべきデータのヒット率を取得するステップと；圧縮すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するステップであって、圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定するステップと；ターゲットセット内の第１のデータで圧縮すべきデータを検索して、圧縮すべきデータに対応する第２のデータを決定し、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用するステップと；を含み得る。
【００５０】
第６の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ解凍方法を提供し、記憶装置は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。この方法は、解凍すべきデータのヒット率を取得するステップと；解凍すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するステップであって、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定するステップと；ターゲットセット内の第２のデータで解凍すべきデータを検索して、解凍すべきデータに対応する第１のデータを決定し、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用するステップと；を含み得る。
【００５１】
第７の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ圧縮方法を提供し、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率がメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率がハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きい。この方法は、圧縮すべきデータのヒット率を取得するステップと；圧縮すべきデータのヒット率に基づいてターゲット記憶媒体を決定するステップであって、圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと；ターゲット記憶媒体内の第１のデータで圧縮すべきデータを検索して、圧縮すべきデータに対応する第２のデータを決定し、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用するステップと；を含む。
【００５２】
第８の態様によれば、本願の一実施形態は、記憶装置に適用されるデータ解凍方法を提供し、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率がメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率がハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きい。この方法は、解凍すべきデータのヒット率を取得するステップと；解凍すべきデータのヒット率に基づいてターゲット記憶媒体を決定するステップであって、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定するステップと；ターゲット記憶媒体内の第２のデータで解凍すべきデータに対応する第１のデータを検索し、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用するステップと；を含み得る。
【００５３】
第５又は第７の態様で提供されるデータ圧縮方法で達成することができる有利な効果については、第１の態様の説明を参照すべきことに留意されたい。第６又は第８の態様で提供されるデータ解凍方法で達成できる有利な効果については、第２の態様の説明を参照されたい。一例では、第５の態様及び第７の態様で説明するマッピング関係は、辞書圧縮アルゴリズムの辞書に含まれるマッピング関係であり得る。
【００５４】
第９の態様によれば、本願の一実施形態は、記憶装置を提供し、この記憶装置は、第１の態様から第８の態様で提供される方法のいずれか１つを実行するように構成され得る。
【００５５】
可能な設計では、機能モジュール分割は、第１の態様から第８の態様で提供される方法のいずれか１つに従って、記憶装置上で実行され得る。例えば、各機能モジュールは、各機能による分割によって取得することができ、又は２つ以上の機能を１つの処理モジュールに統合することができる。
【００５６】
別の可能な設計では、記憶装置は、メモリ及びプロセッサを含み、メモリは、プログラムコードを記憶するように構成され、プロセッサは、プログラムコードを呼び出して、第１の態様から第８の態様で提供される方法のいずれか１つを実行するように構成される。
【００５７】
本願で説明するメモリ及びプロセッサは、１つのチップに統合され得るか、又は異なるチップに別々に配置され得ることに留意されたい。本願では、メモリのタイプ、メモリ及びプロセッサの配置方法に制限はない。
【００５８】
本願の一実施形態は、プログラムコードを含むコンピュータ可読記憶媒体をさらに提供し、プログラムコードは、第１の態様から第８の態様で提供される方法のいずれか１つのステップの一部又は全てを実行するために使用される命令を含む。
【００５９】
本願の一実施形態は、コンピュータ可読記憶媒体をさらに提供し、コンピュータ可読記憶媒体はコンピュータプログラムを記憶し、コンピュータプログラムがコンピュータ上で実行されるときに、コンピュータは、第１の態様から第８の態様で提供される可能な方法のいずれか１つを実行することができる。
【００６０】
本願の一実施形態は、コンピュータプログラム製品をさらに提供し、コンピュータプログラム製品がコンピュータ上で実行されるときに、第１の態様から第８の態様で提供される方法のいずれか１つが実行される。
【００６１】
上記で提供される任意の記憶装置、コンピュータ可読記憶媒体、又はコンピュータプログラム製品は、上記で提供される対応する方法を実行するように構成されることが理解され得る。従って、記憶装置、コンピュータ可読記憶媒体、又はコンピュータプログラム製品によって達成することができる有利な効果については、対応する方法における有利な効果を参照されたい。詳細については、ここでは再び説明しない。
【図面の簡単な説明】
【００６２】
【図１】本願の一実施形態に適用可能なシステムアーキテクチャの概略図である。
【図２】本願の一実施形態に適用可能な記憶装置のハードウェア構造の概略図である。
【図３】本願の別の実施形態に適用可能な記憶装置のハードウェア構造の概略図である。
【図４】本願の一実施形態に適用可能なＡＩニューラルアルゴリズムの概略図である。
【図５】本願の一実施形態によるデータ記憶方法の概略図１である。
【図５Ａ】本願の一実施形態による、記憶すべきデータ及び実際に記憶される情報の概略図である。
【図６−１】本願の一実施形態によるデータ記憶方法の概略図２である。
【図６−２】本願の一実施形態によるデータ記憶方法の概略図２である。
【図６−３】本願の一実施形態によるデータ記憶方法の概略図２である。
【図６−４】本願の一実施形態によるデータ記憶方法の概略図２である。
【図６Ａ】本願の一実施形態による、ある時点でメモリ及びハードディスクに記憶されている情報の概略図である。
【図７】本願の一実施形態によるデータ取得方法の概略図１である。
【図７Ａ】本願の一実施形態による、取得すべきデータ及び実際に記憶される情報の概略図である。
【図８Ａ】本願の一実施形態によるデータ取得方法の概略図２である。
【図８Ｂ】本願の一実施形態によるデータ取得方法の概略図２である。
【図８Ｃ】本願の一実施形態によるデータ取得方法の概略図２である。
【図９】本願の一実施形態によるデータ圧縮方法の概略図１である。
【図１０】本願の一実施形態によるデータ解凍方法の概略図１である。
【図１１】本願の一実施形態によるデータ圧縮方法の概略図２である。
【図１２】本願の一実施形態によるデータ解凍方法の概略図２である。
【図１３】本願の一実施形態によるデータ記憶方法の概略図３である。
【図１４】本願の一実施形態によるデータ取得方法の概略図３である。
【図１５】本願の一実施形態による記憶装置の概略図１である。
【図１６】本願の一実施形態による記憶装置の概略図２である。
【図１７】本願の一実施形態による記憶装置の概略図３である。
【図１８】本願の一実施形態による記憶装置の概略図４である。
【図１９】本願の一実施形態による記憶装置の概略図５である。
【図２０】本願の一実施形態による記憶装置の概略図６である。
【発明を実施するための形態】
【００６３】
図１は、本願の一実施形態に適用可能なシステムアーキテクチャの概略図である。図１に示されるシステムアーキテクチャは、クライアント１００及び記憶装置２００を含む。
【００６４】
データ書き込み手順では、クライアント１００は、書き込み要求を記憶装置２００に送信するように構成される。書き込み要求は、１つ又は複数の書き込むべき（to-be-written）データ及び各書き込むべきデータのアドレス情報を含む。書き込み要求を受信した後に、記憶装置２００は、書き込むべきデータのアドレス情報によって示される記憶空間に、各書き込むべきデータを順次（successively：連続して）記憶するか、又は書き込むべきデータのアドレス情報によって示される記憶空間に、書き込むべきデータを処理した後に取得されるデータ（例えば、以下の１つ又は複数の予測、デルタ計算、及び圧縮）を記憶する。
【００６５】
データ読み取り手順では、クライアント１００は、読み取り要求を記憶装置２００に送信するように構成される。読み取り要求は、１つ又は複数の読み取るべき（to-be-read）データのアドレス情報を含む。読み取り要求を受信した後に、記憶装置２００は、各読み取るべきデータのアドレス情報によって示される記憶空間からデータを順次読み取り、読み取ったデータをクライアント１００にフィードバックするか、又は読み取ったデータを処理（例えば、以下の１つ又は複数の予測、デルタ計算、及び解凍）した後に取得されたデータをクライアント１００にフィードバックする。
【００６６】
図１に示されるシステムアーキテクチャは、本願のこの実施形態に適用可能なシステムアーキテクチャの単なる例であり、本願のこの実施形態に適用可能なシステムアーキテクチャに対する制限を構成するものではないことに留意されたい。例えば、本願のこの実施形態に適用可能なシステムアーキテクチャは、１つの記憶装置２００及び複数のクライアント１００を含んでもよく、又は１つのクライアント１００及び複数の記憶装置２００を含んでもよい。
【００６７】
クライアント１００は、論理機能モジュールであることが理解され得る。論理機能モジュールで実現できる機能の例については、前述の説明を参照されたい。図１では、クライアント１００が記憶装置２００から独立している例を、説明のために使用する。この場合に、ハードウェア実装において、クライアント１００は、記憶装置２００とは独立した装置に統合され得る。さらに、いくつかの実施形態では、例えば、ハイパーコンバージド（hyper-converged）シナリオにおいて、又は統合型ストレージ及びコンピューティング装置において、クライアント１００は、記憶装置２００内の論理機能モジュールとして機能し得る。この場合に、ハードウェア実装において、クライアント１００は、記憶装置２００内の記憶媒体（メモリ等）及びプロセッサ（中央処理ユニット（central processing unit, CPU）等）によって共同で実装され得る。具体的には、記憶媒体はプログラム命令を記憶する。プログラム命令がプロセッサによって呼び出されると、プロセッサは、クライアント１００によって実装され得る機能を実行することが可能になる。確かに、クライアント１００は、記憶装置２００内の記憶媒体（メモリ等）、プロセッサ、及び他のハードウェアによって共同して、代替的に実装され得る。これは、本願のこの実施形態に限定されない。特に明記しない限り、以下では、本願の実施形態で提供される技術的解決策が、説明のために図１に示されるシステムアーキテクチャに適用される例を使用する。
【００６８】
図２は、本願の一実施形態に適用可能な記憶装置２００のハードウェア構造の概略図である。図２に示される記憶装置２００は、インターフェイスカード２０１、プロセッサ２０２、メインメモリ（メモリ（memory）等）２０３、セカンダリメモリ（ハードディスク等）２０４、プロトコル変換モジュール２０５、及びバス２０６を含む。これらの構成要素同士の間の接続関係については、図２を参照されたい。本願のこの実施形態では、ハードディスクは、ハードディスクドライブ（hard disk drive, HDD）又はソリッドステートディスク（solid-state
disk, SDS）等の記憶媒体を含むが、これに限定されない。以下では、説明のために、メインメモリ２０３がメモリ（メモリ２０３としてマークされる）であり、セカンダリメモリ２０４が具体的にはハードディスク（ハードディスク２０４としてマークされる）であり、及びプロトコル変換モジュール２０５が具体的にはハードディスクプロトコル変換モジュール（ハードディスクプロトコル変換モジュール２０５としてマークされる）である例を使用することに留意されたい。これは、本明細書で一律に説明している。詳細については、以下では再び説明しない。
【００６９】
インターフェイスカード２０１、プロセッサ２０２、メモリ２０３、ハードディスク２０４、及びハードディスクプロトコル変換モジュール２０５は、バス２０６を介して互いに接続され得る。バス２０６は、周辺機器相互接続（peripheral component interconnect, PCI）バス、ＰＣＩＥ（ＰＣＩエクスプレス）バス、シリアル接続ＳＣＳＩ（serial attached SCSI, SAS）バス、ＳＡＴＡ（serial
advanced technology attachment, SATA）バス、及び拡張型産業標準構造（extended
industry standard architecture, EISA）バスのうちの少なくとも１つを含み得る。ＳＣＳＩは、英語で「スカジー（small computer system interface, SCSI）」の略である。バス２０６は、アドレスバス、データバス、制御バス等のうちの１つ又は複数を含み得る。表示を容易にするために、バス２０６は、図２で矢印線を用いて示されている。ただし、これは、バスが１つしかない、又はバスのタイプが１つしかないことを示すものではない。
【００７０】
インターフェイスカード２０１は、フロントエンドプロトコル変換モジュールとも呼ばれ、受信した情報に対して送信プロトコル変換を実行し、例えば、光ネットワーク通信プロトコル又はイーサネット通信プロトコルを用いてクライアント１００から受信した情報を、ＰＣＩＥプロトコルを使用する情報に変換するか、又は別の例として、ＰＣＩＥプロトコルを用いてプロセッサ２０２から受信した情報を、光ネットワーク通信プロトコル又はイーサネット通信プロトコルを使用する情報に変換するように構成され得る。インターフェイスカード２０１は、ファイバーチャネル（fibre channel, FC）インターフェイスカード、ギガビットイーサネット（gigabit
ethernet, GE）インターフェイスカード、インターフェイスバス（interface bus, IB）インターフェイスカード等のうちの少なくとも１つを含み得る。
【００７１】
プロセッサ２０２は、記憶装置２００の制御センタであり、記憶装置２００内のメモリ２０３、ハードディスク２０４、及びハードディスクプロトコル変換モジュール２０５等の他の構成要素を制御して、本願の一実施形態で提供される技術的解決策を実施するべく動作するように構成され得る。具体的な例については、以下の説明を参照されたい。
【００７２】
オプションで、プロセッサ２０２は、ＣＰＵを含み得、具体的には、１つ又は複数のＣＰＵを含み得る。
【００７３】
オプションで、プロセッサ２０２は、ＣＰＵ及びキャッシュ（すなわち、ＣＰＵキャッシュ）を含み得る。キャッシュは、ＣＰＵとメモリ２０３との間の高速メモリであり、且つ主に、記憶装置２００の読み取り／書き込み性能を向上させるように構成される。例えば、キャッシュに記憶されるデータは、メモリ２０３に記憶されるいくつかのデータであり得る。キャッシュにアクセスすべき（to-be-accessed）データ（例えば、読み取るべきデータ又は読み取るべきデータを処理した後に取得されるデータ）が含まれる場合に、ＣＰＵは、メモリ２０３からアクセスすべきデータを取得する必要なしに、キャッシュからアクセスすべきデータを取得することができ、それによりデータ読み取り速度が増大する。
【００７４】
メモリ２０３は、インターフェイスカード２０１から情報（例えば、書き込み要求又は読み取り要求に含まれる（carried in）情報）をキャッシュするように構成され得、それによって、プロセッサ２０２は、メモリ２０３にキャッシュされた情報を呼び出して、本願の実施形態で提供される技術的解決策を実施する、又は、プロセッサ２０２から情報（例えば、読み取るべきデータ）をキャッシュするように構成され得、それによって、プロセッサ２０２は、メモリ２０３にキャッシュされた情報を呼び出し、その情報をインターフェイスカード２０１に送信して、インターフェイスカード２０１がキャッシュされた情報に対して送信プロトコル変換を順次実行できるようにする。また、メモリ２０３は、プロセッサ２０２とハードディスク２０４との間のメモリであり、且つ記憶装置２００の読み取り／書き込み性能を向上させるように構成される。メモリ２０３に記憶されるデータは、ハードディスク２０４に記憶されるいくつかのデータであり得る。メモリにアクセスすべきデータが含まれる場合に、ＣＰＵは、ハードディスク２０４からアクセスすべきデータを取得する必要なしに、メモリ２０３からアクセスすべきデータを取得することができ、それにより、データ読み取り速度が増大する。
【００７５】
ハードディスク２０４は、データを記憶するように構成される。サポートされる送信プロトコルに基づく分類を通じて、ハードディスク２０４は、ＳＡＳディスク（又はＳＡＳ拡張エンクロージャ）、ＰＣＩＥディスク、ＳＡＴＡディスク等のうちの少なくとも１つを含み得る。
【００７６】
ハードディスクプロトコル変換モジュール２０５は、バックエンドプロトコル変換モジュールとも呼ばれ得、プロセッサ２０２とハードディスク２０４との間に配置され、及び受信した情報に対して送信プロトコル変換を実行して、例えば、ＰＣＩＥプロトコルを用いてプロセッサ２０２から受信した情報を、ハードディスク２０４に適用可能なＳＡＳプロトコル又はＳＡＴＡプロトコル等のプロトコルを使用する情報に変換する、又は別の例として、ＳＡＳプロトコル、ＳＡＴＡプロトコル等を用いてハードディスク２０４から受信した情報を、プロセッサ２０２に適用可能なＰＣＩＥプロトコル等のプロトコルを使用する情報に変換するように構成される。ハードディスク２０４がＳＡＳディスクである例では、ハードディスクプロトコル変換モジュール２０５は、具体的には、ＳＡＳプロトコル変換チップ、ＳＡＳインターフェイスカード等であり得る。
【００７７】
図２に示される記憶装置２００において、プロセッサ２０２は、以下に説明する予測、デルタ計算、圧縮、及び解凍等のステップを実行するように構成され得る。具体的な例については、以下の説明を参照されたい。この場合に、プロセッサ２０２は、プログラムを呼び出すことによって、予測、デルタ計算、圧縮、及び解凍等のステップを実行すると見なすことができる。
【００７８】
図２に示される記憶装置２００は、本願のこの実施形態に適用可能な記憶装置の一例に過ぎず、本願のこの実施形態に適用可能な記憶装置に対する制限を構成するものではないことに留意されたい。本願のこの実施形態に適用可能な記憶装置は、代替的に、記憶装置２００内の構成要素よりも多い又は少ない構成要素を含んでもよい。
【００７９】
例えば、プロセッサ２０２及びハードディスク２０４が同じプロトコルを使用する、例えば、両方がＰＣＩＥプロトコルを使用する場合に、記憶装置２００は、ハードディスクプロトコル変換モジュール２０５を含まなくてもよい。
【００８０】
別の例として、図３に示されるように、図２に示される記憶装置２００に基づいて、記憶装置２００は、ＡＩコンピューティングカード２０７をさらに含み得る。ＡＩコンピューティングカード２０７は、プロセッサ２０２の制御下でＡＩコンピューティング機能を実現する、例えば、以下で説明する予測及びデルタ計算等のステップを実行するように構成される。具体的な例については、以下の説明を参照されたい。ＡＩコンピューティングカードは、例えば、ＡＩコンピューティングチップであってもよい。確かに、本願のこの実施形態はそれに限定されない。この例では、ＡＩコンピューティングカードが予測及びデルタ計算等のステップを実行するように構成される場合に、プロセッサ２０２は、予測及びデルタ計算等のステップを実行する必要がない場合がある。
【００８１】
さらに別の例として、記憶装置２００は、プロセッサ２０２の制御下で圧縮及び解凍等のステップを実行するように構成される圧縮／解凍モジュールをさらに含み得る。特定の例については、以下の説明を参照されたい。この例では、プロセッサ２０２は、圧縮及び解凍等のステップを実行する必要がない場合がある。本明細書で説明する圧縮／解凍モジュールは、チップ等のハードウェアであり得る。
【００８２】
衝突（collision）が発生しない場合に、前述の例のうちの任意の２つ以上を組み合わせて使用して、記憶装置２００の新しいハードウェアアーキテクチャを形成することができることを理解されたい。例えば、記憶装置２００は、ＡＩコンピューティングカード２０７と圧縮／解凍モジュールとの両方を含み得る。
【００８３】
上記の記憶装置２００のハードウェア構造について、図１に示されるシステムアーキテクチャを例として用いて説明する。クライアント１００が記憶装置２００内の論理機能モジュールである実施形態では、記憶装置２００の提供される前述のハードウェア構造は、インターフェイスカード２０１、又はインターフェイスカード２０１とプロセッサ２０２との間のバス２０６を含まなくてもよい。クライアント１００の機能を実現するように構成されるプロセッサ及び前述のプロセッサ２０２は、同じプロセッサであってもよく、又は異なるプロセッサであってもよい。
【００８４】
以下では、本願の実施形態における関連技術を簡単に説明する。
【００８５】
（１）ＡＩニューラルアルゴリズム
【００８６】
図４は、本願の一実施形態に適用可能なＡＩニューラルアルゴリズムの概略図である。図４では、ＡＩニューラルアルゴリズムは、入力層３１、隠れ層３２、及び出力層３３を含み得る。
【００８７】
入力層３１は、入力変数の値を受け取り、受け取った入力変数の値を隠れ層３２に直接又は処理後に送信するように構成される。処理の機能（function：関数）は、隠れ層３２によって識別され得る情報を取得することである。入力変数は、予測すべき（to-be-predicted）データ以前の１つ又は複数のデータである。入力層３１における入力変数の量と、入力変数として使用され且つ予測すべきデータ以前の特定のデータは、予測精度要件に基づいて柔軟に調整され得る。例えば、予測すべきデータがｎ番目のデータであり、且つＸ（ｎ）としてマークされる場合に、入力変数は、予測すべきデータＸ（ｎ）以前のｎ−１個のデータ（Ｘ（１）、Ｘ（２）、・・・、及びＸ（ｎ−１））としてマークされる）内の任意の１つ又は複数のデータである可能性があり、ｎ＞＝１、ｎは整数である。
【００８８】
隠れ層３２は、入力変数の値であり且つ入力層３１から受け取った値に基づいて予測すべきデータを予測し、予測結果を出力層３３に送信するように構成される。隠れ層３２は、ｙ個のニューラルネットワークを含み、ここで、ｙ＞＝１であり、ｙは整数である。ｙの値は、予測精度要件に基づいて調整できる。各ニューラルネットワークは１つ又は複数のニューロンを含み、異なるニューラルネットワークに含まれるニューロンの量は同じでも異なっていてもよい。第１のニューラルネットワークに含まれるニューロンは、Ｓ１１、Ｓ１２、Ｓ１３・・・として表され得る。第２のニューラルネットワークに含まれるニューロンは、Ｓ２１、Ｓ２２、Ｓ２３・・・として表され得る。ｙ番目のニューラルネットワークに含まれるニューロンは、Ｓｙ１、Ｓｙ２、Ｓｙ３・・・として表され得る。隠れ層に含まれる任意の２つのニューロンの間に接続線がある場合にとない場合がある。各接続線には重みがあり、ｉ番目の接続線の重みはｗｉとして表され得、ｉ＞＝１、ｉは整数である。一例では、記憶装置が起動されると、初期値が、ｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量等のパラメータに割り当てられ得る。割り当てられた初期値は、特定の予測精度要件に基づいて、オフラインマシンを用いて、記憶データ（stored data）（例えば、大量の記憶データ）をトレーニング及び検証することによって取得できる。さらに、データ記憶プロセスでは、実際のサービス要件に基づいてオンライン学習を選択的に有効にして、ｙ、ｗｉ、各ニューラルネットワークに含まれるニューロンの量等の１つ又は複数のパラメータの値を調整することができ、それにより、予測精度が向上する。
【００８９】
出力層３３は、隠れ層３２の予測結果を直接又は処理後に出力するように構成される。処理の機能は、予測結果を受け取る構成要素／モジュールによって識別され得る情報を取得することである。予測結果には、予測すべきデータを予測した後に取得される予測データが含まれる。
【００９０】
本願のこの実施形態では、ＡＩニューラルアルゴリズムのタイプは、ＮＬＭＳタイプ、ＳＬＰタイプ、ＭＬＰタイプ、ＲＮＮタイプ等のいずれか１つを含み得る。ＲＮＮタイプのＡＩニューラルアルゴリズムは、Ｇｏｏｇｌｅ（登録商標）の高速且つ正確な画像超解像（rapid and accurate image super-resolution, RAISR）アルゴリズム、又はインテリジェント運転における移動物体追跡予測技術及びアルゴリズム、例えばＢａｉｄｕ（登録商標）のインテリジェント運転アルゴリズムのアポロ（Apollo）を含み得る。以下では、ＡＩニューラルアルゴリズムのアプリケーション例を説明するための２つのアルゴリズムについて簡単に説明する。
【００９１】
Ｇｏｏｇｌｅ（登録商標）のＲＡＩＳＲアルゴリズムは、次のように説明することができる。画像の変化の固有の規則が、マシンを用いて画像を学習することによって取得され、ここで、固有の規則は、アルゴリズムにおいてパラメータの値（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量のうちの１つ又は複数）を用いて表され得る。次に、取得したパラメータの値及び画像内の既知のピクセル値を用いて、画像内の欠落している各ピクセルのピクセル値及び元の高解像度画像内のピクセル値を予測し、低解像度画像を高解像度画像に復元する。コンピュータの場合に、コンピュータ内のバイナリデータのグループに欠落部分がある場合に、Ｇｏｏｇｌｅ（登録商標）のＲＡＩＳＲアルゴリズムの機能（関数）は、機械学習を通じて欠落部分を予測することである。
【００９２】
Ｂａｉｄｕ（登録商標）のＡｐｏｌｌｏインテリジェント運転アルゴリズムは、次のように説明することができる。物体の運動パラメータは、マシンを用いて学習され、物体の運動パラメータの変化の固有の規則を取得し、ここで、固有の規則は、アルゴリズムにおいてパラメータの値（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量のうちの１つ又は複数）を用いて表され得る。次に、取得したパラメータの値と物体の現在の運動パラメータ及び／又は過去の運動パラメータとを用いて、物体の将来の運動パラメータを予測する。コンピュータの場合に、位置の変化又は特定の値の変化は、将来のバイナリデータ内の既知のバイナリデータのグループに対して予測される。
【００９３】
類推により、本願の実施形態で使用されるＡＩニューラルアルゴリズムは、次のように説明することができる。記憶データは、マシンを用いて学習され、記憶データの変化の固有の規則が取得され、ここで、固有の規則は、アルゴリズムにおいてパラメータの値（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量のうちの１つ又は複数）を用いて表され得る。次に、取得したパラメータの値及び既知の記憶データを用いて、未知の記憶データを予測する。コンピュータの場合に、既知のバイナリデータのグループを用いて、将来のバイナリデータの値を予測する。
【００９４】
（２）辞書（dictionary）圧縮技術（又はアルゴリズム）及び辞書解凍技術（又はアルゴリズム）
【００９５】
辞書圧縮技術は、現在業界で認められている高効率のストレージ技術である。辞書圧縮技術の基本原理は次の通りである。辞書は記憶装置に予め記憶され、ここで、辞書には少なくとも２つのマッピング関係が含まれ、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、各マッピング関係において第１のデータが占める記憶空間は、マッピング関係において第２のデータが占める記憶空間よりも大きい。換言すると、各マッピング関係は、複雑なシンボル（又は複雑なデータ）と単純なシンボル（又は単純なデータ）との間のマッピング関係である。一般に、辞書内の任意の２つの第１のデータは異なり、任意の２つの第２のデータも異なる。圧縮する必要のある圧縮すべきデータ（例えば、書き込むべきデータ）がある場合に、記憶装置は、圧縮すべきデータを辞書内の第１のデータと比較することができ、辞書内の第１のデータに圧縮すべきデータが含まれる場合に、圧縮すべきデータに対応する第２のデータを記憶する、又は辞書内の第１のデータに圧縮すべきデータが含まれない場合に、圧縮すべきデータを記憶する。
【００９６】
例えば、辞書に記憶される第１のデータと第２のデータとの間の対応関係が表１に示されていると想定する。
【表１】
2021534505.tif 000034
【００９７】
さらに、以下の圧縮すべきデータを圧縮する必要がある場合に、表１に示される辞書に基づいて辞書圧縮を行った後に、「中国人であり、中国出身である」という記憶装置に記憶されている情報（つまり、圧縮すべきデータを復元するために使用される情報）は、「００  ０１であり、０２から来ました」であり得る。
【００９８】
辞書解凍技術の基本原理は以下の通りである。記憶装置は、解凍すべきデータ（例えば、記憶空間から読み取られるデータ）を辞書内の第２のデータと比較し、辞書内の第２のデータに解凍すべきデータが含まれる場合に、解凍すべきデータに対応する第１のデータを解凍データとして使用し、又は辞書内の第２のデータに解凍すべきデータが含まれない場合に、解凍すべきデータを解凍データとして使用する。
【００９９】
さらに、本願における「複数」という用語は、２つ以上を意味する。本願における「及び／又は」という用語は、関連するオブジェクトを説明するための関連関係のみを説明し、３つの関係が存在し得ることを表す。例えば、Ａ及び／又はＢは、次の３つのケースを表し得る：Ａのみが存在し、ＡとＢとの両方が存在し、Ｂのみが存在する。さらに、本明細書の文字「／」は、通常、関連するオブジェクト同士の間の「又は」の関係を示す。数式で文字「／」が使用される場合に、その文字は、通常、関連するオブジェクト同士の間の「除算」関係を示す。例えば、式Ａ／Ｂは、ＡがＢで除算されることを示す。本願では、「第１」、「第２」等の用語は、異なるオブジェクトを区別することを目的としているが、オブジェクトの特定の順序を示すものではない。
【０１００】
添付の図面を参照して、以下では、本願の実施形態で提供されるデータ記憶方法及びデータ取得方法について説明する。
【０１０１】
図５は、本願の一実施形態によるデータ記憶方法の概略図である。図５に示される方法は、以下のステップを含み得る。
【０１０２】
Ｓ１００：記憶装置は、現在のデータ及び現在のデータの履歴データを取得する。
【０１０３】
例えば、記憶装置は、少なくとも２つの記憶すべきデータ内の現在のデータ（すなわち、現在の記憶すべきデータ）及び現在のデータの履歴データ（すなわち、記憶すべき履歴データ）を取得し、履歴データは、少なくとも２つの記憶すべきデータを含むシーケンス内の現在のデータ以前の１つ又は複数のデータである。
【０１０４】
Ｓ１０１：記憶装置は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。
【０１０５】
履歴データの変更規則は、具体的には、コンテンツ（content）の変更規則又は履歴データの値である。
【０１０６】
例えば、シーケンス内の全てのデータ（すなわち、記憶すべきデータ）は、連続したＸ（１）、Ｘ（２）、Ｘ（３）、・・・、Ｘ（ｎ）、・・・、及びＸ（Ｎ）であり、ここで、１＜＝ｎ＜＝Ｎ、Ｎ＞＝２であり、ｎとＮとの両方が整数である。この場合に、現在のデータがＸ（ｎ）である場合に、履歴データは、Ｘ（ｎ）以前の任意の１つ又は複数のデータであり得る。オプションで、履歴データは、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の連続データの予め設定した量である。例えば、予め設定した量が１０であり、ｎ＝５０の場合に、履歴データは、データＸ（４０）〜Ｘ（４９）であり得、又はｎ＝５１の場合に、履歴データは、データＸ（４１）〜Ｘ（５０）であり得る。確かに、履歴データは、代替的に、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の複数の非連続データである。
【０１０７】
現在のデータ以前にあり、且つ現在のデータの履歴データとして使用される特定のデータは、Ｓ１０１で予測を行うために使用されるアルゴリズムに関連し得る。予測を行うために使用されるアルゴリズムは、本願のこの実施形態では限定されない。例えば、アルゴリズムはＡＩニューラルアルゴリズムを含み得る。この場合に、現在のデータ以前にあり、且つＳ１０１で使用される履歴データとして使用される特定のデータは、図４に示されるＡＩニューラルアルゴリズムの入力変数に基づいて決定され得る。例えば、図４に示されるＡＩニューラルアルゴリズムの入力変数が、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の１０個の連続データであり、現在のデータがＸ（ｎ）であり、ｎ＝５０の場合に、履歴データはＸ（４０）〜Ｘ（４９）である。別の例として、図４に示されるＡＩニューラルアルゴリズムの入力変数がＸ（ｎ−２）、Ｘ（ｎ−４）、Ｘ（ｎ−６）、Ｘ（ｎ−８）、及びＸ（ｎ−１０）であり、現在のデータがＸ（ｎ）であり、ｎ＝５０の場合に、履歴データは、Ｘ（４８）、Ｘ（４６）、Ｘ（４４）、Ｘ（４２）、及びＸ（４０）である。
【０１０８】
ＡＩニューラルアルゴリズムの特定の実施態様については、前述の説明を参照されたい。詳細については、ここでは再び説明しない。Ｓ１０１を実行する前に、記憶装置は、ＡＩニューラルアルゴリズムの全てのパラメータ（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量）の値を取得していることに留意されたい。ＡＩニューラルアルゴリズムの全てのパラメータの値は、記憶データをオフライン及び／又はオンラインでトレーニングすることによって取得できる。Ｓ１０１を実行するときに、記憶装置は、履歴データとＡＩニューラルアルゴリズムの全てのパラメータの取得値とに基づいて現在のデータを予測して、現在のデータの予測データを取得することができる。
【０１０９】
一例では、クライアントによって送信された１つ又は複数の書き込み要求を受信した後に、記憶装置は、１つ又は複数の書き込み要求に含まれる書き込むべきデータに基づいて、少なくとも２つの記憶すべきデータを取得することができる。１つ又は複数の書き込み要求に含まれる書き込むべきデータは、同じ対象物（subject）又は同じタイプの対象物のデータである。例えば、対象物は、同じ品目（article）、同じ画像、又は同じタイプの複数の画像であり得る。次に、少なくとも２つの記憶すべきデータがソートされて、少なくとも２つの記憶すべきデータを含むシーケンスが取得される。続いて、シーケンス内の一部又は全部の記憶すべきデータを現在のデータとして使用して、Ｓ１０１〜Ｓ１０５を実行する。
【０１１０】
１つ又は複数の書き込み要求に含まれる書き込むべきデータに基づいて少なくとも２つの記憶すべきデータを取得するステップは、１つ又は複数の書き込み要求に含まれる各書き込むべきデータを１つの記憶すべきデータとして使用するステップ、或いは１つ又は複数の書き込み要求に含まれる書き込むべきデータを少なくとも２つの記憶すべきデータに再結合及び／又は分割するステップを含み得る。具体的には、記憶装置が受け取る書き込むべきデータの粒度は、記憶装置による処理（予測、デルタ計算、記憶等の１つ又は複数を含む）の粒度と同じでも異なっていてもよい。例えば、１つ又は複数の書き込み要求に含まれる各書き込むべきデータが８ビットであり、各記憶すべきデータが８ビットである場合に、各書き込むべきデータは１つの記憶すべきデータである；各記憶すべきデータが１６ビットである場合に、２つの書き込むべきデータを組み合わせることにより、各記憶すべきデータを取得することができる；又は、各記憶すべきデータが４ビットである場合に、２つの記憶すべきデータは全て、１つの書き込むべきデータを分割することによって取得され得る。説明を容易にするために、以下では、説明のために、各書き込むべきデータが１つの記憶すべきデータとして使用される例を使用する。
【０１１１】
この例における少なくとも２つの記憶すべきデータをソート（sorting：並べ替え）する特定の方法は、本願のこの実施形態では限定されない。通常、この例では、ソートを行うために使用されるソート規則は、予測を行うために使用されるＡＩニューラルアルゴリズム等の予測アルゴリズムに関連している。例えば、この例では、ソートを行うために使用されるソート規則は、記憶装置がＡＩニューラルアルゴリズムの全てのパラメータ（前述のｙ、ｗｉ、各ニューラルネットワークに含まれるニューロンの量等）の値を取得するプロセスにおいて、記憶データがトレーニングに関与するときに、記憶データが基づくソート規則と同じである。例えば、記憶データが、記憶データがトレーニングに関与するときの同じ品目である場合に、ソート規則は、品目内の全ての文字のシーケンス又はこのシーケンスの逆のシーケンスである可能性がある。別の例として、トレーニングに関与する記憶データが同じ画像に関するものである場合に、ソート規則は、画像内の全てのピクセルが行毎に又は列毎にソートされる規則、又は画像が複数の部分に分割される規則である可能性があり、同様の部分が結合された後に取得される新しい画像内の全てのピクセルは、行毎又は列毎にソートされる。
【０１１２】
一例では、クライアントによって送信された１つ又は複数の書き込み要求を受信した後に、記憶装置は、１つ又は複数の書き込み要求に含まれる書き込むべきデータから少なくとも２つの記憶すべきデータを取得し、書き込むべきデータによって順番に構成されるシーケンスを、少なくとも２つの記憶すべきデータを含むシーケンスとして使用し、次に、シーケンス内の一部又は全ての記憶すべきデータを現在のデータとして使用して、Ｓ１０１〜Ｓ１０５を実行することができる。この例では、記憶装置は、記憶すべきデータをソートするステップを実行しない場合がある。この例のアプリケーションシナリオは次の通りであり得る。記憶装置がＡＩニューラルアルゴリズムの全てのパラメータ（例えば、前述のｙ、ｗｉ、及び各ニューラルネットワークに含まれるニューロンの量）の値を取得するプロセスでは、トレーニングに関与する記憶データのシーケンスは、記憶装置によって受信され、且つクライアントによって送信される記憶すべきデータのシーケンスである。この例の関連パラメータの説明及び実施態様については、前述の説明を参照されたい。
【０１１３】
予測ステップについて、本願のこの実施形態では、以下の技術的解決策がサポートされることに留意されたい。
【０１１４】
解決策１：いくつかの記憶すべきデータについて、予測ステップはデフォルトであり得る。例えば、履歴データがＸ（ｎ−１）から始まりＸ（ｎ−１）以前の１０個の連続データである場合に、１番目〜１０番目までの記憶すべきデータについて、予測ステップはデフォルトであり得る。
【０１１５】
解決策１に基づいて、記憶装置は、先行技術で提供される技術的解決策に従って記憶すべきデータを記憶し、例えば、記憶すべきデータを直接記憶し、又は辞書圧縮アルゴリズム及び／又は重複排除アルゴリズム等のアルゴリズムに基づく圧縮を行った後に記憶すべきデータを記憶し得る。この場合に、Ｓ１０２〜Ｓ１０４もデフォルトであり得ることが理解され得る。
【０１１６】
解決策２：記憶装置が異なる記憶すべきデータを予測する場合に、使用される予測アルゴリズムの全てのパラメータは同じであっても異なっていてもよい。例えば、５番目〜１０番目の記憶すべきデータについて、ＡＩニューラルアルゴリズムの入力変数は、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の５個の連続データである可能性がある。つまり、５個の入力変数がある。１０番目の記憶すべきデータとそれに続く記憶すべきデータの場合に、ＡＩニューラルアルゴリズムの入力変数は、Ｘ（ｎ−１）から始まりＸ（ｎ−１）以前の１０個の連続データである可能性がある。換言すると、１０個の入力変数がある。
【０１１７】
Ｓ１０２：記憶装置は、現在のデータと現在のデータの予測データとの間のデルタを取得する。
【０１１８】
デルタは、現在のデータと現在のデータの予測データとの間の差を表すために使用されるパラメータである。例えば、デルタは、差、比、倍数、パーセンテージ等であり得る。確かに、本願のこの実施形態はそれに限定されない。
【０１１９】
例えば、デルタが差である場合に、差は、現在のデータから現在のデータの予測データを差し引くことによって得られる差、又は現在のデータの予測データから現在のデータを差し引くことによって得られる差であり得る。特定の差を予め規定してもよく、本願のこの実施形態はそれに限定されない。現在のデータの予測データが、現在のデータよりも大きい、等しい、又は小さい可能性があるため、差は、０より大きい、等しい、又はより小さい値である可能性があることが理解され得る。デルタが、比、倍数、又はパーセンテージ等である場合に、特定の実施態様の原理及びデルタの値は、上記のものと同様であり、本明細書では１つずつ列挙していない。
【０１２０】
Ｓ１０３：記憶装置は、デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さいかどうかを判定する。デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、Ｓ１０４が実行される。デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さくない場合に、Ｓ１０５が実行される。
【０１２１】
Ｓ１０３は、以下の方法のうちの１つで実施され得る。
【０１２２】
方法１：記憶装置は、デルタのビット数量が現在のデータのビット数量よりも少ないかどうかを判定する。
【０１２３】
方法２：記憶装置は、デルタ及び現在のデータを別々に圧縮し（例えば、辞書圧縮アルゴリズム又は重複排除アルゴリズムを用いてデルタ及び現在のデータを圧縮する）、デルタを圧縮して得た値のビット数量が、現在のデータを圧縮して得た値のビット数量よりも少なくなるかどうかを判定する。
【０１２４】
方法１及び方法２のいずれかに基づいて、判定結果が「はい」である場合に、それは、デルタが占める記憶空間が、現在のデータが占める記憶空間よりも小さいことを示す、又は、判定結果が「いいえ」の場合に、デルタが占める記憶空間が、現在のデータが占める記憶空間以上であることを示す。
【０１２５】
Ｓ１０４：記憶装置は、デルタを記憶するか、又はデルタを圧縮して得た値を記憶する。デルタを圧縮して得た値又はデルタが具体的に記憶されるかどうかは、予め規定することができる。確かに、本願のこの実施形態はそれに限定されない。
【０１２６】
圧縮を行うために使用される圧縮アルゴリズムは、本願のこの実施形態では限定されない。例えば、圧縮アルゴリズムは、辞書圧縮アルゴリズム及び重複排除アルゴリズムのうちの少なくとも１つを含み得る。１つ又は複数の特定の使用アルゴリズムを予め規定することができる。確かに、本願のこの実施形態はそれに限定されない。
【０１２７】
Ｓ１０４を実行した後に、現在のデータの記憶プロセスは終了する。
【０１２８】
Ｓ１０５：記憶装置は、現在のデータを記憶するか、又は現在のデータを圧縮して得た値を記憶する。現在のデータを圧縮して得た値又は現在のデータが具体的に記憶されるかどうかは、予め規定することができる。確かに、本願のこの実施形態はそれに限定されない。
【０１２９】
一例では、Ｓ１０５が実行される場合に、記憶装置によって使用される圧縮アルゴリズムは、Ｓ１０４の圧縮に使用される圧縮アルゴリズムと一致している。確かに、本願のこの実施形態はそれに限定されない。
【０１３０】
Ｓ１０５を実行した後に、現在のデータの記憶プロセスは終了する。
【０１３１】
記憶装置が、現在のデータを復元するために使用される記憶情報が「圧縮よって得た値又はデルタ」であるか、又は「圧縮によって得た値又は現在のデータ」であるかを区別し、データ読み取り手順で読み取るべきデータを決定するのを助けるために、オプションで、Ｓ１０５が実行される場合に、この方法は、以下のＳ１０５Ａをさらに含み得る。
【０１３２】
Ｓ１０５Ａ：記憶装置は、第１の識別子情報を記憶し、ここで、第１の識別子情報は、現在のデータを復元するために使用される記憶情報がＳ１０５で記憶される情報（すなわち、現在のデータ又は現在のデータを圧縮して得た値）であることを示すために使用される。第１の識別子情報は、現在のデータを復元するために使用される情報の識別子情報として、又は現在のデータを復元するために使用される情報に含まれる情報として使用され得る。
【０１３３】
Ｓ１０５Ａは、以下のものと置き換えることができることが理解され得る。以下のＳ１０４Ａは、Ｓ１０４を実行した後に実行される。あるいはまた、Ｓ１０５Ａを実行する場合であって、Ｓ１０４を実行した後に、以下のＳ１０４Ａをさらに実行してもよい。
【０１３４】
Ｓ１０４Ａ：記憶装置は、第２の識別子情報を記憶し、ここで、第２の識別子情報は、現在のデータを復元するために使用される記憶情報がＳ１０４で記憶される情報（すなわち、デルタ又はデルタを圧縮して得た値）であることを示すために使用される。
【０１３５】
記憶すべきデータの予測データは、予測アルゴリズムのパラメータの値を調整することによって記憶すべきデータに近づけることができ、それによって、殆どの記憶すべきデータのそれぞれの予測データと記憶すべきデータとの間のデルタが占める記憶空間は、記憶すべきデータが占める記憶空間よりも小さい。従って、特定の実施態様では、Ｓ１０５Ａが実行され、Ｓ１０４Ａが実行されない場合に（換言すると、第１の識別子情報が記憶され、第２の識別子情報が記憶されない場合に）、記憶装置は、現在のデータを復元するために使用される記憶情報が、「デルタを圧縮して得た値又はデルタ」又は「現在のデータを圧縮して得た値又は現在のデータ」であるかどうかを区別することができ、記憶オーバーヘッドを削減できる。次の図６−１〜図６−４から図８Ａ〜図８Ｃに示される実施形態は全て、データ記憶方式においてＳ１０５Ａが実行され、Ｓ１０４Ａが実行されない例に基づいて説明している。
【０１３６】
本願のこの実施形態で提供されるデータ記憶方法では、現在のデータは履歴データを用いて予測され、現在のデータと現在のデータの予測データとの間のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、デルタ又はデルタを圧縮して得た値が記憶される。デルタが占める記憶空間が、現在のデータが占める記憶空間よりも小さいため、予測及びデルタ計算のプロセスは、データ圧縮プロセスと見なすことができる。このようにして、従来技術と比較して、デルタが直接記憶されるか、又はデルタを圧縮して得た値が記憶されるかに関係なく、記憶オーバーヘッドを削減できる。さらに、現在のデータの予測データが現在のデータに近くなるように、適切な予測アルゴリズムが使用されるか、予測アルゴリズムのパラメータが調整される。従って、デルタが占める記憶空間は、現在のデータが占める記憶空間よりもはるかに小さく、それにより記憶オーバーヘッドがより効果的に削減される。さらに、デルタを圧縮して得た値を記憶する技術的解決策において、記憶オーバーヘッドをさらに削減できる。
【０１３７】
図５に示されるデルタを圧縮して得た値を記憶する技術的解決策は、次のように理解され得る。従来の圧縮アルゴリズムを用いてデータを処理する前に、予測アルゴリズムが導入され、ここで、予測アルゴリズムは、データのコンテンツ規則、開発動向、固有の関係等に基づいて構成される。記憶装置に入力されるデータのコンテンツは、予測アルゴリズムと、記憶装置に入力されたデータ（又は記憶装置に入力された複数のデータを含むシーケンス内の後者のデータは、以前のデータを用いて予測される）とを用いて予測される。次に、予測される正確なコンテンツ又は類似のコンテンツについて、従来のデータ圧縮アルゴリズムのみが呼び出されて、実際の値と予測値との間のデルタが圧縮されるが、予測される正確なコンテンツ又は類似のコンテンツは記憶されない。このようにして、圧縮率が増大し、従来の圧縮アルゴリズムにおける入力値の変動範囲が積極的に低減され、それにより、解凍率及び解凍速度に関して現在の圧縮アルゴリズムの最適化及びブレークスルーが達成される。
【０１３８】
例えば、記憶装置の終了の場合に、記憶オブジェクトはバイナリシーケンスであるが、シーケンスが理解可能なセマンティクス（semantics）に復元されると、シーケンスにはいくつかの変更規則が含まれていることが分かる。例えば、バイナリシーケンスＸｎ＝｛１０、１０１、１０１０、１０００１、１１０１０、１００１０１、１１００１０、１０００００１、１０１００１０、１１００１０１、１１１１０１０、１００１０００１、１０１０１０１１｝が１０進シーケンスに変換された後に、Ｘｎ’＝｛２、５、１０、１７、２６、３７、５０、６５、８２、１０１、１２２、１４５、１７１｝が得られる。解析によって、Ｘｎ'の最初の１２個のデータが、以下の変更規則：ｘ２＋１及びｘ＝１〜１２を満たしていることが分かった。
【０１３９】
これに基づいて、Ｘｎ’について、予測アルゴリズムｘ２＋１及び図５に示される実施形態に基づいて記憶装置によって実際に記憶されるシーケンスは、｛１０、１０１、１０１０、０、０、０、０、０、０、０、０、０、０１｝となり得る。Ｘｎ’の最初の３つのデータでは、予測ステップがデフォルトである。Ｓ１０５Ａを参照すると、その３つのデータについて、記憶装置は、第１の識別子情報をさらに別々に記憶し得ることが分かり得る。記憶される「０１」は、記憶すべきデータ１７１と記憶すべきデータの予測データ１７０との間の差である。記憶のために圧縮する必要のあるデータの範囲が大幅に削減され、その範囲内のデータの繰り返し確率が明らかに増大することが分かり得る。従って、データ圧縮率及び圧縮効率を大幅に向上させることができる。
【０１４０】
複数の記憶すべきデータについては、各記憶すべきデータが、図５に示されるデータ記憶方法に従って記憶され得るので、各記憶すべきデータが、記憶すべきデータの予測データと比較される場合に、完全に同じ、部分的に同じ、及び完全に異なるケースのいずれかが発生する可能性があることに留意されたい。記憶すべきデータ及び予測データが完全に同じ又は部分的に同じである場合に、記憶空間を節約できる。記憶すべきデータ及び予測データが完全に異なる場合に、その効果は、従来技術で使用されている対応する方法と同等である。従って、一般に、記憶空間を節約できる。さらに、圧縮によって得た値を記憶する技術的解決策では、データ圧縮率及び圧縮効率を大幅に向上させることができる。
【０１４１】
図５Ａは、本願の一実施形態による、記憶すべきデータ及び実際に記憶される情報（すなわち、記憶すべきデータを復元するために使用される情報）の概略図である。履歴データが、現在のデータ以前であって、記憶すべきデータから始まり現在のデータ以前の５個の連続する記憶すべきデータである例が、説明のために図５で使用される。従って、シーケンス内の最初の５個の記憶すべきデータについて、対応する実際に記憶される情報は、別個に記憶すべきデータ（又は記憶すべきデータを圧縮して得た値）及び第１の識別子情報である。各影付きの四角は、１つの記憶すべきデータに対応する実際に記憶される情報を表し、対応関係が破線の矢印で示される。「Ａ」は第１の識別子情報を示す。
【０１４２】
図２に示される記憶装置２００を参照すると、図５に示されるデータ記憶方法の例が、図６−１〜図６−４に示され得る。図６−１〜図６−４に示される方法は、以下のステップを含み得る。
【０１４３】
Ｓ２０１：記憶装置は、インターフェイスカードを用いて、クライアントから送信された書き込み要求を受信し、ここで、書き込み要求には、少なくとも２つの書き込むべきデータと、少なくとも２つの書き込むべきデータのそれぞれのアドレス情報とが含まれる。
【０１４４】
Ｓ２０２：インターフェイスカードは、少なくとも２つの書き込むべきデータ及び各書き込むべきデータのアドレス情報に対して送信プロトコル変換を実行し、例えば、イーサネット通信プロトコルを使用するこれらの情報を、ＰＣＩＥプロトコルを使用する情報に変換する。
【０１４５】
Ｓ２０３：インターフェイスカードは、送信プロトコル変換後に取得される少なくとも２つの書き込むべきデータ及び各書き込むべきデータのアドレス情報をプロセッサに送信する。
【０１４６】
Ｓ２０４：プロセッサは、インターフェイスカードから受信した少なくとも２つの書き込むべきデータのそれぞれを１つの記憶すべきデータとして使用し、取得した少なくとも２つの記憶すべきデータをソートする。
【０１４７】
Ｓ２０５：プロセッサは、ソート後に取得したシーケンス及び各記憶すべきデータ（すなわち、各書き込むべきデータ）のアドレス情報をメモリに記憶する。続いて、プロセッサは、シーケンス内の一部又は全ての記憶すべきデータを現在のデータとして使用して、以下のＳ２０６〜Ｓ２１９を実行することができる。シーケンス内の任意の２つの記憶すべきデータについて、シーケンスの前に位置する記憶すべきデータは、後に位置する記憶すべきデータの履歴データとして使用され得ることが理解され得る。
【０１４８】
オプションで、Ｓ２０４及びＳ２０５は、以下のものと置き換えることができる。プロセッサは、インターフェイスカードから受信した少なくとも２つの書き込むべきデータのそれぞれを１つの記憶すべきデータとして使用し、取得した記憶すべきデータ及び記憶すべきデータのアドレス情報をメモリに書き込む。次に、プロセッサは、メモリに書き込まれた少なくとも２つの記憶すべきデータをソートするか、又はプロセッサは、インターフェイスカードによって送信されて受信された少なくとも２つの書き込むべきデータの順序を少なくとも２つの記憶すべきデータの順序として使用してシーケンスを形成することができ、シーケンス内の一部又は全部の記憶すべきデータを現在のデータとして使用して、以下のＳ２０６〜Ｓ２１９を実行することができる。
【０１４９】
シーケンスの前に位置する記憶すべきデータは、後に位置する記憶すべきデータの履歴データとして使用され得ることが理解され得る。しかしながら、前述の説明に基づいて、記憶すべきデータ以前の全ての記憶すべきデータが、記憶すべきデータの履歴データとして使用されるわけではないことが分かり得る。これに基づいて、オプションで、任意の記憶すべきデータについて、記憶すべきデータが他の記憶すべきデータの履歴データとしてもはや使用されなくなったときに、プロセッサは、メモリから記憶すべきデータを削除して、メモリの記憶オーバーヘッドを削減することができる。
【０１５０】
図６Ａは、ある時点でメモリ及びハードディスクに記憶されている情報の概略図である。図６Ａは、図５Ａに基づいて描かれている。従って、図６Ａの様々なグラフ、矢印等の説明については、図５Ａを参照されたい。図６Ａから、現時点では、メモリに記憶すべきデータを含むシーケンスは、現在のデータの履歴データ、現在のデータ、及び現在のデータの後の記憶すべきデータのみを含み得ることが分かり得る。このようにして、メモリの記憶オーバーヘッドを削減できる。
【０１５１】
Ｓ２０６：プロセッサは、メモリから現在のデータ及び現在のデータの履歴データを取得する。
【０１５２】
Ｓ２０７：プロセッサは、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。
【０１５３】
Ｓ２０８：プロセッサは、現在のデータと現在のデータの予測データとの間のデルタを取得する。
【０１５４】
Ｓ２０９：プロセッサは、デルタが占める記憶空間が、現在のデータが占める記憶空間よりも小さいかどうかを判定する。
【０１５５】
デルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、Ｓ２１０が実行される、又はデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さくない場合に、Ｓ２１５が実行される。
【０１５６】
Ｓ２１０：プロセッサはデルタを圧縮する。
【０１５７】
Ｓ２１１：プロセッサは、メモリから取得した現在のデータのアドレス情報と、デルタを圧縮して得た値とをハードディスクプロトコル変換モジュールに送信する。
【０１５８】
Ｓ２１２：ハードディスクプロトコル変換モジュールは、現在のデータのアドレス情報及び受信したデルタを圧縮して得た値に対して送信プロトコル変換を実行し、例えば、ＰＣＩＥプロトコルからＳＡＳプロトコルへの変換を実行する。
【０１５９】
Ｓ２１３：ハードディスクプロトコル変換モジュールは、送信プロトコル変換後に取得される現在のデータのアドレス情報及びデルタを圧縮して得た値をＳＡＳディスク等のハードディスクに送信する。
【０１６０】
Ｓ２１４：ハードディスクは、デルタを圧縮して得た値を、現在のデータのアドレス情報によって示される記憶空間に記憶する。Ｓ２１４を実行した後に、現在のデータの記憶プロセスは終了する。
【０１６１】
Ｓ２１５：プロセッサは現在のデータを圧縮する。
【０１６２】
Ｓ２１６：プロセッサは、第１の識別子情報、メモリから取得した現在のデータのアドレス情報、及び現在のデータを圧縮して得た値をハードディスクプロトコル変換モジュールに送信する。第１の識別子情報は、現在のデータを復元するために使用される記憶情報が、現在のデータを圧縮して得た値であることを示すために使用される。
【０１６３】
Ｓ２１７：ハードディスクプロトコル変換モジュールは、受信した第１の識別子情報、現在のデータのアドレス情報、及び現在のデータを圧縮して得た値に対して送信プロトコル変換を実行し、例えば、ＰＣＩＥプロトコルからＳＡＳプロトコルへの変換を実行する。
【０１６４】
Ｓ２１８：ハードディスクプロトコル変換モジュールは、送信プロトコル変換後に取得される第１の識別子情報、現在のデータのアドレス情報、及び現在のデータを圧縮して得た値をハードディスク（ＳＡＳディスク等）に送信する。
【０１６５】
Ｓ２１９：ハードディスクは、第１の識別子情報及び現在のデータを圧縮して得た値を、現在のデータのアドレス情報によって示される記憶空間に記憶する。Ｓ２１９を実行した後に、現在のデータの記憶プロセスは終了する。
【０１６６】
図３に示される記憶装置を参照すると、図５に示されるデータ記憶方法の例は、図６−１〜図６−４に示される実施形態が以下のいくつかの点で変更された後に得られる実施形態であり得る。１：前述のＳ２０７〜Ｓ２０９は、ＡＩコンピューティングカードによって実行される。２：Ｓ２０６が実行された後であって、Ｓ２０７が実行される前に、この方法は、プロセッサが、メモリから取得した履歴データ及び現在のデータをＡＩコンピューティングカードに送信するステップをさらに含む。３：Ｓ２０９が実行された後であって、Ｓ２１０が実行される前に、この方法は、ＡＩコンピューティングカードが、デルタをプロセッサに送信するステップをさらに含む。４：Ｓ２０９が実行された後であって、Ｓ２１５が実行される前に、この方法は、ＡＩコンピューティングカードが、現在のデータをプロセッサに送信するステップをさらに含む。
【０１６７】
図７は、本願の一実施形態によるデータ取得方法の概略図である。この実施形態は、図５に示されるデータ記憶方法に対応する。従って、この実施形態における関連する内容の説明については、図５に示される実施形態を参照されたい。図７に示される方法は、以下のステップを含み得る。
【０１６８】
Ｓ３０１：記憶装置は、現在のデータ（つまり、現在取得すべきデータ）を復元するために使用される情報を読み取る。現在のデータを復元するために使用される情報には、「デルタ又はデルタを圧縮して得た値」又は「現在のデータ又は現在のデータを圧縮して得た値」が含まれる。デルタは、現在のデータと現在のデータの予測データとの間のデルタである。現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。
【０１６９】
履歴データは、１つ又は複数の取得データである。
【０１７０】
例えば、クライアントによって送信された１つ又は複数の読み取り要求を受信した後に、記憶装置は、１つ又は複数の読み取り要求を用いて要求された読み取るべきデータに基づいて、少なくとも２つの取得すべきデータのアドレス情報を取得し、次に、少なくとも２つの取得すべきデータのアドレス情報に基づいて、少なくとも２つの取得すべきデータを復元するために使用される情報を読み取るすることができる。１つ又は複数の読み取り要求を用いて要求されたデータは、同じサブジェクト（subject）のデータである。サブジェクトの関連する説明については、図５Ａに示される実施形態を参照されたい。読み取るべきデータの粒度は、取得すべきデータの粒度と同じでも異なっていてもよい。例えば、１つの読み取るべきデータが８ビットである場合に、１つの取得すべきデータは、４ビット、８ビット、１６ビット等であり得る。説明を容易にするために、以下では、説明のために、各読み取るべきデータが、１つの取得すべきデータである例を使用する。読み取るべきデータと取得すべきデータとの間の対応関係については、前述の書き込むべきデータと記憶すべきデータとの間の対応関係を参照されたい。詳細については、ここでは再び説明しない。記憶装置は、少なくとも２つの取得すべきデータのそれぞれを現在のデータとして使用して、Ｓ３０１〜Ｓ３０６を実行することができる。
【０１７１】
現在のデータを復元するために使用される情報に「デルタ又はデルタを圧縮して得た値」が含まれる場合に、情報にデルタ又はデルタを圧縮して得た値が具体的に含まれるかどうかを予め規定することができる。確かに、本願はそれに限定されない。
【０１７２】
現在のデータを復元するために使用される情報に「現在のデータ又は現在のデータを圧縮して得た値」が含まれる場合に、情報に現在のデータ又は現在のデータを圧縮して得た値が具体的に含まれるかどうかを予め規定することができる。確かに、本願はそれに限定されない。
【０１７３】
Ｓ３０２：記憶装置は、現在のデータを復元するために使用される情報に第１の識別子情報が含まれるかどうかを判定する。
【０１７４】
図５に示される実施形態の説明に基づいて、以下が分かり得る。
【０１７５】
Ｓ３０２における判定結果が、現在のデータを復元するために使用される情報に第１の識別子情報が含まれないということである場合に、それは、現在のデータを復元するために使用される情報にはデルタ又はデルタを圧縮して得た値が含まれることを示す。これに基づいて、現在のデータを復元するために使用される情報がデルタを圧縮して得た値である場合に、Ｓ３０３が実行され、又は現在のデータを復元するために使用される情報がデルタである場合に、Ｓ３０４が実行される。
【０１７６】
Ｓ３０２の判定結果が、現在のデータを復元するために使用される情報に第１の識別子情報が含まれるということである場合に、それは、現在のデータを復元するために使用される情報には現在のデータ又は現在のデータを圧縮して得た値が含まれることを示す。これに基づき、現在のデータを復元するために使用される情報が現在のデータを圧縮して得た値である場合に、Ｓ３０６が実行され、又は現在のデータを復元するために使用される情報が現在のデータである場合に、現在のデータの取得プロセスは終了する。
【０１７７】
Ｓ３０３：記憶装置は、デルタを圧縮して得た値を解凍して、デルタを取得する。
【０１７８】
Ｓ３０３において解凍を行うために使用される解凍アルゴリズムは、Ｓ１０４において圧縮を行うために使用される圧縮アルゴリズムに対応することが理解され得る。例えば、辞書圧縮アルゴリズムを使用してＳ１０４において圧縮を行う場合に、辞書解凍アルゴリズムを使用してＳ３０３で解凍を行う。別の例として、重複排除アルゴリズムを使用してＳ１０４において圧縮を行う場合に、逆重複排除（inverse deduplication）アルゴリズムを使用してＳ３０３において解凍を行う。
【０１７９】
Ｓ３０４：記憶装置は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。
【０１８０】
履歴データは、記憶装置が取得した１つ又は複数のデータである。履歴データが１つ又は複数の取得データであるかどうか、及びどの１つ又は複数のデータが具体的に履歴データであるかどうかは、予測アルゴリズムに関連している。履歴データの特定の実施態様については、図５に示される実施形態を参照されたい。詳細については、ここでは再び説明しない。
【０１８１】
図７Ａは、本願の一実施形態による、取得すべきデータ及び実際に記憶される情報（すなわち、取得すべきデータを復元するために使用される情報）の概略図である。図７Ａの実際に記憶される情報は、図５Ａに示される実際に記憶される情報と同じである。従って、関連するグラフ、矢印等の説明については、図５Ａを参照されたい。
【０１８２】
Ｓ３０３及びＳ３０４の実行シーケンスは、本願のこの実施形態では限定されない。例えば、Ｓ３０３はＳ３０４の前に実行してもよく、Ｓ３０４はＳ３０３の前に実行してもよく、又はＳ３０３及びＳ３０４は同時に実行してもよい。
【０１８３】
Ｓ３０５：記憶装置は、デルタと現在のデータの予測データとに基づいて現在のデータを決定する。
【０１８４】
例えば、デルタが現在のデータから現在のデータの予測データを差し引くことによって得られた差である場合に、Ｓ３０５では、デルタと現在のデータの予測データとの合計が現在のデータとして使用される。例えば、デルタが現在のデータを現在のデータの予測データで除算することによって得られる比である場合に、Ｓ３０５では、デルタと現在のデータの予測データとの積が現在のデータとして使用される。他の例は１つずつ列挙していない。
【０１８５】
Ｓ３０５を実行した後に、現在のデータの取得プロセスは終了する。
【０１８６】
Ｓ３０６：記憶装置は、現在のデータを圧縮して得た値を解凍して、現在のデータを取得する。
【０１８７】
Ｓ３０６を実行した後に、現在のデータの取得プロセスは終了する。
【０１８８】
この実施形態で提供されるデータ取得方法は、図５に示されるデータ記憶方法に対応する。従って、この実施形態における有利な効果については、図５に示される実施形態で説明した有利な効果を参照されたい。詳細については、ここでは再び説明しない。
【０１８９】
図２に示される記憶装置２００を参照すると、図７に示されるデータ取得方法の例が、図８Ａ〜図８Ｃに示され得る。図８Ａ〜図８Ｃに示される方法は、以下のステップを含み得る。
【０１９０】
Ｓ４０１：記憶装置は、インターフェイスカードを用いて、クライアントから送信された読み取り要求を受信し、ここで、読み取り要求には、１つ又は複数の読み取るべきデータのアドレス情報が含まれる。
【０１９１】
Ｓ４０２：インターフェイスカードは、１つ又は複数の読み取るべきデータのアドレス情報に対して送信プロトコル変換を実行し、例えば、イーサネット通信プロトコルを使用する１つ又は複数の読み取るべきデータのアドレス情報を、ＰＣＩＥプロトコルを使用する情報に変換する。
【０１９２】
Ｓ４０３：インターフェイスカードは、１つ又は複数の読み取るべきデータであり且つ送信プロトコルの変換後に取得されるアドレス情報をプロセッサに送信する。
【０１９３】
Ｓ４０４：プロセッサは、受信した１つ又は複数の読み取るべきデータのアドレス情報内の各読み取るべきデータのアドレス情報を、１つの取得すべきデータのアドレス情報として使用する。
【０１９４】
Ｓ４０５：プロセッサは、各取得すべきデータのアドレス情報をメモリに記憶する。
【０１９５】
続いて、プロセッサは、一部又は全ての取得すべきデータを現在のデータとして使用して、Ｓ４０６〜Ｓ４１５を実行することができる。さらに、各現在のデータを取得するときに、プロセッサは、現在のデータをメモリに記憶して、その後、現在のデータを他の現在のデータの履歴データとして使用することができる。
【０１９６】
Ｓ４０６：プロセッサは、現在のデータを復元するために使用される情報を、ハードディスク内にあり且つ現在のデータのアドレス情報によって示される記憶空間から読み取り、現在のデータを復元するために使用される読み取った情報を、送信プロトコル変換のためにハードディスクプロトコル変換モジュールに送信し、例えば、現在のデータを復元するために使用され且つＳＡＳプロトコルを使用する情報からＰＣＩＥプロトコルを使用する情報へ変換する。
【０１９７】
Ｓ４０７：プロセッサは、現在のデータを復元するために使用される情報に第１の識別子情報が含まれるかどうかを判定する。
【０１９８】
現在のデータを復元するために使用される情報に第１の識別子情報が含まれない場合に、それは、現在のデータを復元するために使用される情報にはデルタ又はデルタを圧縮して得た値が含まれることを示す。これに基づいて、現在のデータを復元するために使用される情報がデルタを圧縮して得た値である場合に、Ｓ４０８が実行され、又は現在のデータを復元するために使用される情報がデルタである場合に、Ｓ４０９が実行される。
【０１９９】
現在のデータを復元するために使用される情報に第１の識別子情報が含まれる場合に、それは、現在のデータを復元するために使用される情には現在のデータ又は現在のデータを圧縮して得た値が含まれることを示す。これに基づいて、現在のデータを復元するために使用される情報が現在のデータを圧縮して得た値である場合に、Ｓ４１２が実行され、又は現在のデータを復元するために使用される情報が現在のデータである場合に、Ｓ４１３が実行される。
【０２００】
Ｓ４０８：プロセッサは、デルタを圧縮して得た値を解凍して、デルタを取得する。
【０２０１】
Ｓ４０９：プロセッサは、メモリから履歴データを取得する。
【０２０２】
Ｓ４１０：プロセッサは、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。
【０２０３】
Ｓ４１１：プロセッサは、デルタと現在のデータの予測データとに基づいて現在のデータを決定する。
【０２０４】
Ｓ４１１を実行した後に、Ｓ４１３は実行される。
【０２０５】
Ｓ４１２：プロセッサは、現在のデータを圧縮して得た値を解凍して、現在のデータを取得する。
【０２０６】
Ｓ４１３：プロセッサは、現在のデータをインターフェイスカードに送信する。
【０２０７】
オプションで、プロセッサは、現在のデータを他の取得すべきデータの履歴データとして使用するために、現在のデータをメモリにさらに記憶することができる。さらに、オプションで、取得データが取得すべきデータの履歴データとしてもはや使用されなくなった場合に、プロセッサは、メモリから取得データを削除して、メモリの記憶オーバーヘッドを削減することができる。例えば、現在のデータがＸ（ｎ）であり、履歴データがＸ（ｎ−１）から始まりＸ（ｎ−１）以前の１０個の連続データ（つまり、Ｘ（ｎ−１０）〜Ｘ（ｎ−１））である場合に、Ｘ（ｎ−１１）及びＸ（ｎ−１１）以前のデータは、取得すべきデータの履歴データとしてもはや使用されない。従って、プロセッサは、メモリから取得データを削除し得る。
【０２０８】
Ｓ４１４：インターフェイスカードは、現在のデータに対して送信プロトコル変換を実行し、例えば、ＰＣＩＥプロトコルからイーサネット通信プロトコルへの変換を実行する。
【０２０９】
Ｓ４１５：インターフェイスカードは、イーサネット通信プロトコルを用いて現在のデータをクライアントにフィードバックする。
【０２１０】
このようにして、現在のデータの取得プロセスは終了する。
【０２１１】
図３に示される記憶装置を参照すると、図７に示されるデータ取得方法の例は、図７は、図８Ａ〜図８Ｃに示される実施形態が以下のいくつかの点で変更された後に得られる実施形態であり得る。１：前述のＳ４１０及びＳ４１１は、ＡＩコンピューティングカードによって実行される。２：Ｓ４０９が実行された後であって、Ｓ４１０が実行される前に、この方法は、プロセッサが、メモリから取得した履歴データをＡＩコンピューティングカードに送信するステップをさらに含む。３：Ｓ４１１が実行された後であって、Ｓ４１３が実行される前に、この方法は、ＡＩコンピューティングカードが、現在のデータをプロセッサに送信するステップをさらに含む。
【０２１２】
現在、辞書圧縮（又は解凍）アルゴリズムの辞書における全てのマッピング関係は、ヒット率の降順で配置されている。通常、圧縮すべきデータを圧縮する必要がある場合に、圧縮すべきデータは、辞書の第１のデータ内でマッピング関係のヒット率の降順で検索され、圧縮すべきデータに対応する第２のデータが、圧縮すべきデータを圧縮した後に取得される値として使用される。解凍すべきデータを解凍する必要がある場合に、解凍すべきデータは、辞書の第２のデータ内でマッピング関係のヒット率の降順で検索され、圧縮すべきデータに対応する第１のデータは、解凍すべきデータを解凍した後に得られる値として使用される。このようにして、圧縮すべき又は解凍すべきデータが属するマッピング関係のヒット率が比較的低い場合に、圧縮／解凍を行うのに比較的長い時間がかかる。
【０２１３】
従って、本願の一実施形態は、設計的解決策１を提供する。記憶装置は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、各マッピング関係において第１のデータが占める記憶空間は、マッピング関係において第２のデータが占める記憶空間よりも大きく、各セットは１つのヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応し、及び各セットのマッピング関係のヒット率は、そのセットに対応するヒット率範囲に属する。
【０２１４】
記憶装置に含まれるセットの量及び各セットに対応するヒット率範囲は、予め規定され得るか、又は記憶データに基づいて更新され得る。さらに、マッピング関係も更新され得る。
【０２１５】
例えば、各マッピング関係は、辞書圧縮アルゴリズムの辞書におけるマッピング関係であり得る。少なくとも２つのセットに含まれるマッピング関係は、辞書内の一部又は全てのマッピング関係であり得る。例えば、少なくとも２つのセットに含まれるマッピング関係は、記憶装置内の任意の記憶媒体（キャッシュ、メモリ、又はハードディスク等）に記憶されるマッピング関係であり得る。記憶媒体がキャッシュ又はメモリである場合に、少なくとも２つのセットに含まれるマッピング関係は、辞書内のいくつかのマッピング関係であり得る。記憶媒体がハードディスクである場合に、少なくとも２つのセットに含まれるマッピング関係は、辞書内の全てのマッピング関係であり得る。
【０２１６】
例えば、辞書に記憶される各セット及びそのセットに対応するヒット率範囲が表２に示され得る。
【表２】
2021534505.tif 000035
【０２１７】
いくつかの実施形態では、データ圧縮の場合に、各マッピング関係のヒット率は、マッピング関係における第１のデータのヒット率であり得る。例えば、第１のデータのヒット率は、予め設定した期間内の第１のデータに対する圧縮回数を総圧縮回数で除算した値であってもよい。データ解凍の場合に、各マッピング関係のヒット率は、マッピング関係における第２のデータのヒット率であり得る。例えば、第２のデータのヒット率は、予め設定した期間内の第２のデータに対する解凍回数を総解凍回数で除算した値であってもよい。
【０２１８】
これらの実施形態では、設計的解決策１がデータ圧縮シナリオ及びデータ解凍シナリオに適用される場合に、同じマッピング関係のヒット率が異なるメカニズムで取得される。従って、設計的解決策１をデータ圧縮シナリオ及びデータ解凍シナリオに適用する場合に、記憶装置に含まれるセットは同じでも異なっていてもよい。さらに、同じセットに対応するヒット率範囲は、同じでも異なっていてもよい。例えば、記憶装置に１００個のマッピング関係が含まれていると想定される。設計的解決策１をデータ圧縮シナリオに適用すると、１００個のマッピング関係のそれぞれがセットＡ１及びセットＡ２のいずれかに属し得る。設計的解決策１をデータ解凍シナリオに適用する場合に、１００個のマッピング関係のそれぞれは、セットＢ１、セットＢ２、及びセットＢ３のいずれかに属し得る。
【０２１９】
いくつかの他の実施形態では、データ圧縮及びデータ解凍について、各マッピング関係のヒット率は、マッピング関係における第１のデータのヒット率及びマッピング関係における第２のデータのヒット率に基づいて取得され得る。例えば、記憶装置のデータ書き込み時間とデータ読み取り時間との比が３：７である場合に、マッピング関係について、マッピング関係における第１のデータのヒット率は、データ書き込みプロセスで１０％であり、マッピング関係における第２のデータのヒット率は、データ読み取りプロセスで５０％であり、マッピング関係のヒット率は、０．３×１０％＋０．７×５０％に従って取得することができる。確かに、本願のこの実施形態はそれに限定されない。
【０２２０】
これらの実施形態では、設計的解決策１がデータ圧縮シナリオ及びデータ解凍シナリオに適用される場合に、同じマッピング関係のヒット率は異なるメカニズムで取得される。従って、設計的解決策１がデータ圧縮シナリオ及びデータ解凍シナリオに適用される場合に、記憶装置に含まれるセットは同じになり、同じセットに対応するヒット率範囲は同じになる。例えば、記憶装置に１００個のマッピング関係が含まれていると想定される。設計的解決策１がデータ圧縮シナリオ及びデータ解凍シナリオに適用される場合に、１００個のマッピング関係のそれぞれが、セットＡ１及びセットＡ２のいずれかに属し得る。
【０２２１】
前述の設計的解決策１に基づいて、図９は、本願の一実施形態によるデータ圧縮方法の概略図である。図９に示される方法は、以下のステップを含み得る。
【０２２２】
Ｓ５０１：記憶装置は、圧縮すべきデータのヒット率を取得する。圧縮すべきデータのヒット率を取得する方法については、前述の第１のデータのヒット率を取得する方法を参照されたい。確かに、本願のこの実施形態はそれに限定されない。
【０２２３】
例えば、圧縮すべきデータは、前述のデルタ又は現在のデータであり得る。確かに、本願のこの実施形態はそれに限定されない。
【０２２４】
Ｓ５０２：記憶装置は、圧縮すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定する。圧縮すべきデータのヒット率は、圧縮すべきデータが位置するマッピング関係（以下、ターゲットマッピング関係と呼ばれる）のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する。
【０２２５】
前述の説明から、設計的解決策１がデータ圧縮シナリオに適用される場合に、マッピング関係のヒット率は、マッピング関係における第１のデータのヒット率であり得、且つマッピング関係における第１のデータのヒット率及びマッピング関係における第２のデータのヒット率等に基づいて、取得され得ることが分かり得る。説明を容易にするために、データ圧縮方法の以下の実施形態では、マッピング関係のヒット率がマッピング関係における第１のデータのヒット率であり得る例を、説明のために使用する。
【０２２６】
例えば、圧縮すべきデータのヒット率が７５％である場合に、圧縮すべきデータが属するターゲットマッピング関係のヒット率は７５％であり得る。この場合に、表２を参照すると、ターゲットセットがセット２であることが分かり得る。
【０２２７】
Ｓ５０３：記憶装置は、ターゲットセット内の第１のデータで圧縮すべきデータを検索し、圧縮すべきデータが属するマッピング関係を検索し、マッピング関係に基づいて、圧縮すべきデータに対応する第２のデータを決定し、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用する。
【０２２８】
例えば、Ｓ５０２の例に基づいて、記憶装置は、従来技術におけるマッピング関係のヒット率範囲の降順での第１のデータでデルタを順次検索する代わりに、圧縮すべきデータを圧縮するために、セット２内の第１のデータで圧縮すべきデータを直接検索することができる。このようにして、圧縮時間を短縮することができる。
【０２２９】
例えば、圧縮すべきデータが前述のデルタである場合に、圧縮すべきデータに対応する第２のデータは、デルタを圧縮して得た前述の値であり得る。例えば、圧縮すべきデータが前述の現在のデータである場合に、圧縮すべきデータに対応する第２のデータは、現在のデータを圧縮して得た前述の値であり得る。
【０２３０】
この実施形態で提供されるデータ圧縮方法では、記憶装置に含まれるマッピング関係は、異なるセットに分類される。このようにして、圧縮すべきデータが位置するセットは、圧縮すべきデータのヒット率に基づいて直接決定され得る。従来技術と比較して、圧縮すべきデータの検索範囲が狭められる。従って、圧縮時間を短縮することができる。
【０２３１】
前述の設計的解決策１に基づいて、図１０は、本願の一実施形態によるデータ解凍方法の概略図である。図１０に示される方法は、以下のステップを含み得る。
【０２３２】
Ｓ６０１：記憶装置は、解凍すべきデータのヒット率を取得する。解凍すべきデータのヒット率を取得する方法については、前述の第２のデータのヒット率を取得する方法を参照されたい。確かに、本願のこの実施形態はそれに限定されない。
【０２３３】
例えば、解凍すべきデータは、デルタを圧縮して得た前述の値、又は現在のデータを圧縮して得た値であり得る。確かに、本願のこの実施形態はそれに限定されない。
【０２３４】
Ｓ６０２：記憶装置は、解凍すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定し、ここで、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する。
【０２３５】
前述の説明から、設計的解決策１がデータ解凍シナリオに適用される場合に、マッピング関係のヒット率は、マッピング関係における第２のデータのヒット率であり得、且つマッピング関係における第１のデータのヒット率及びマッピング関係における第２のデータのヒット率等に基づいて取得され得ることが分かり得る。説明を容易にするために、データ解凍方法の以下の実施形態では、マッピング関係のヒット率がマッピング関係における第２のデータのヒット率であり得る例を、説明のために使用する。
【０２３６】
例えば、解凍すべきデータのヒット率が７５％である場合に、解凍すべきデータが属するターゲットマッピング関係のヒット率は７５％であり得る。この場合に、表２を参照すると、ターゲットセットがセット２であることが分かり得る。
【０２３７】
Ｓ６０３：記憶装置は、ターゲットセット内の第２のデータで解凍すべきデータを検索して、解凍すべきデータが属するマッピング関係を検索し、マッピング関係に基づいて、解凍すべきデータに対応する第１のデータを決定し、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用する。
【０２３８】
例えば、解凍すべきデータがデルタを圧縮して得た前述の値である場合に、解凍すべきデータに対応する第１のデータは、前述のデルタであり得る。例えば、解凍すべきデータが現在のデータを圧縮して得た前述の値である場合に、解凍すべきデータに対応する第１のデータは、前述の現在のデータであり得る。
【０２３９】
この実施形態で提供されるデータ解凍方法では、記憶装置に含まれるマッピング関係は、異なるセットに分類される。このようにして、解凍すべきデータが位置するセットは、解凍すべきデータのヒット率に基づいて直接決定され得る。従来技術と比較して、解凍すべきデータの検索範囲が狭められる。従って、データの解凍時間を短縮することができる。
【０２４０】
図２から、記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み得ることが分かり得る。キャッシュに記憶されているデータはメモリに記憶されているいくつかのデータであり、メモリに記憶されているデータはハードディスクに記憶されているいくつかのデータである。現在、ＣＰＵがデータを読み取るプロセスは、具体的には次の通りである。ＣＰＵは、最初にキャッシュでアクセスすべきデータを検索し、アクセスすべきデータが見つかった場合に、アクセスすべきデータを直接読み取る、又は、アクセスするデータが見つからない場合に、メモリでアクセスすべきデータを検索する。また、アクセスすべきデータが見つかった場合に、アクセスすべきデータは直接読み取られる、又はアクセスすべきデータが見つからない場合に、ハードディスクでアクセスすべきデータを検索する。ストレージ技術が辞書圧縮技術である例では、キャッシュ、メモリ、及びハードディスクに記憶されたデータは、辞書内のマッピング関係であり得る。このようにして、記憶媒体（例えば、キャッシュ又はメモリ）が比較的大量のマッピング関係を含み、圧縮すべき／解凍すべきデータが属するマッピング関係が記憶媒体内にない場合に、圧縮／解凍を行うために比較的長い時間がかかる。
【０２４１】
従って、本願の一実施形態は、設計的解決策２を提供する。記憶装置の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、及び第１のデータが占める記憶空間は、第２のデータが占める記憶空間よりも大きい。各記憶媒体におけるマッピング関係のヒット率が位置する範囲は、予め設定され得るか、又は記憶データに基づいて更新され得る。
【０２４２】
例えば、各マッピング関係は、辞書圧縮アルゴリズムの辞書におけるマッピング関係であり得る。例えば、記憶装置の各記憶媒体及び記憶媒体に対応するヒット率範囲が表３に示され得る。
【表３】
2021534505.tif 000036
【０２４３】
前述の設計的解決策２に基づいて、図１１は、本願の一実施形態によるデータ圧縮方法の概略図である。図１１に示される方法は、以下のステップを含み得る。
【０２４４】
Ｓ７０１：記憶装置は、圧縮すべきデータのヒット率を取得する。
【０２４５】
Ｓ７０２：記憶装置は、圧縮すべきデータのヒット率に基づいてターゲット記憶媒体を決定する。圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用される。ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである。
【０２４６】
例えば、圧縮すべきデータのヒット率が９０％である場合に、圧縮すべきデータが属するターゲットマッピング関係のヒット率は９０％であり得る。この場合に、表３を参照すると、ターゲット記憶媒体がキャッシュであることが分かり得る。同様に、圧縮すべきデータのヒット率が６０％である場合に、ターゲット記憶媒体はメモリであり得、又は圧縮すべきデータのヒット率が３０％である場合に、ターゲット記憶媒体はハードディスクであり得る。
【０２４７】
Ｓ７０３：記憶装置は、ターゲット記憶媒体内の第１のデータで圧縮すべきデータを検索し、圧縮すべきデータが属するマッピング関係を検索し、マッピング関係に基づいて、圧縮すべきデータに対応する第２のデータを決定し、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用する。
【０２４８】
例えば、ターゲット記憶媒体に含まれるマッピング関係が前述の設計的解決策１に示されている場合に、Ｓ７０３の特定の実施プロセスについては、前述のＳ５０１〜Ｓ５０３を参照されたい。確かに、Ｓ７０３は、従来技術の方法に従って代替的に実施され得る。
【０２４９】
この実施形態では、圧縮すべきデータ及び圧縮すべきデータを圧縮して得た値の例については、図９に示される実施形態を参照されたい。
【０２５０】
記憶装置が、ターゲット記憶媒体の第１のデータにおいて圧縮すべきデータを見つけられない場合であって、ターゲット記憶媒体の次のレベルの記憶媒体が記憶装置に存在しない場合に、圧縮すべきデータは、圧縮すべきデータを圧縮して得た値として使用される、又は、ターゲット記憶媒体の次のレベルの記憶媒体が記憶装置に存在する場合に、ターゲット記憶媒体の次のレベルの記憶媒体は、圧縮すべきデータが見つかるか、又は圧縮すべきデータが最後のレベルの記憶媒体の第１のデータで見つからなくなるまで、圧縮すべきデータを等検索する。キャッシュの次のレベルの記憶媒体はメモリであり、メモリの次のレベルの記憶媒体はハードディスクである。
【０２５１】
この実施形態で提供されるデータ圧縮方法では、最高の読み取り／書き込み性能を有し、且つ圧縮すべきデータが位置する記憶媒体は、圧縮すべきデータのヒット率及び異なる記憶媒体に記憶されたマッピング関係のヒット率範囲に基づいて直接決定され得、キャッシュの読み取り／書き込み性能はメモリの読み取り／書き込み性能よりも高く、メモリの読み取り／書き込み性能はハードディスクの読み取り／書き込み性能よりも高い。従来技術と比較して、圧縮すべきデータの検索範囲が狭められる。従って、データ圧縮時間を短縮することができる。
【０２５２】
前述の設計的解決策２に基づいて、図１２は、本願の一実施形態によるデータ解凍方法の概略図である。図１２に示される方法は、以下のステップを含み得る。
【０２５３】
Ｓ８０１：記憶装置は、解凍すべきデータのヒット率を取得する。
【０２５４】
Ｓ８０２：記憶装置は、解凍すべきデータのヒット率に基づいてターゲット記憶媒体を決定する。解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用される。ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係のヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係のヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである。
【０２５５】
例えば、解凍すべきデータのヒット率が９０％である場合に、解凍すべきデータが属するターゲットマッピング関係のヒット率は９０％であり得る。この場合に、表３を参照すると、ターゲット記憶媒体がキャッシュであることが分かり得る。同様に、解凍すべきデータのヒット率が６０％である場合に、ターゲット記憶媒体はメモリであり得、又は解凍すべきデータのヒット率が３０％である場合に、ターゲット記憶媒体は、ハードディスクであり得る。
【０２５６】
Ｓ８０３：記憶装置は、ターゲット記憶媒体内の第２のデータで解凍すべきデータを検索し、解凍すべきデータが属するマッピング関係を検索し、マッピング関係に基づいて、解凍すべきデータに対応する第１のデータを決定し、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用する。
【０２５７】
例えば、ターゲット記憶媒体に含まれるマッピング関係が前述の設計的解決策１に示されている場合に、Ｓ８０３の特定の実施プロセスについては、前述のＳ６０１〜Ｓ６０３を参照されたい。確かに、Ｓ８０３は、従来技術の方法に従って代替的に実施され得る。
【０２５８】
この実施形態では、解凍すべきデータ及び解凍すべきデータを解凍して得た値の例については、図１０に示される実施形態を参照されたい。
【０２５９】
この実施形態で提供されるデータ解凍方法では、最高の読み取り／書き込み性能を有し、且つ解凍すべきデータが位置する記憶媒体は、解凍すべきデータのヒット率及び異なる記憶媒体に記憶されたマッピング関係のヒット率範囲に基づいて直接決定され得、キャッシュの読み取り／書き込み性能はメモリの読み取り／書き込み性能よりも高く、メモリの読み取り／書き込み性能はハードディスクの読み取り／書き込み性能よりも高い。従来技術と比較して、解凍すべきデータの検索範囲が狭められる。従って、データの解凍時間を短縮することができる。
【０２６０】
図１３は、本願の一実施形態によるデータ記憶方法の概略図である。図１３に示される方法は、以下のステップを含み得る。
【０２６１】
Ｓ９００：記憶装置は、少なくとも２つの記憶すべきデータの中の現在のデータ（すなわち、現在の記憶すべきデータ）及び現在のデータの履歴データ（すなわち、記憶すべき履歴データ）を取得し、ここで、履歴データは、少なくとも２つの記憶すべきデータを含むシーケンス内の現在のデータ以前の１つ又は複数のデータである。
【０２６２】
Ｓ９０１：記憶装置は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得する。現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。
【０２６３】
Ｓ９０２：記憶装置は、現在のデータと現在のデータの予測データとの間のデルタを取得する。
【０２６４】
Ｓ９００〜Ｓ９０２の実施態様については、Ｓ１００〜Ｓ１０２の実施態様の前述の説明を参照されたい。
【０２６５】
Ｓ９０３：記憶装置は、デルタの絶対値が予め設定した閾値以下であるかどうかを判定する。例えば、デルタがａの場合に、デルタの絶対値は｜ａ｜として表すことができる。
【０２６６】
デルタの絶対値が予め設定した閾値以下である場合に、Ｓ９０４が実行され、又はデルタの絶対値が予め設定した閾値以下でない場合に、Ｓ９０５が実行される。
【０２６７】
Ｓ９０４：記憶装置は、予め設定したデータを記憶する。例えば、予め設定したデータが占める記憶空間は、現在のデータが占める記憶空間よりも小さい。
【０２６８】
オプションで、予め設定したデータは、記憶装置によって予め規定される。オプションで、予め設定したデータは識別子であり得、識別子は、現在のデータの予測データを現在のデータとして使用し得る（又は略使用し得る）ことを示すために使用される。例えば、予め設定したデータは、「０」又は「１」等の２進数である。
【０２６９】
オプションで、予め設定したデータが占める記憶空間は、殆ど又は全ての記憶すべきデータのそれぞれが占める記憶空間よりも小さい。
【０２７０】
データ記憶手順を実行するときに、記憶装置は、予め設定したデータが占める記憶空間と現在のデータが占める記憶空間との間のサイズ関係を決定する必要がない場合があることに留意されたい。代わりに、予め設定したデータを予め規定するときに、記憶装置は、「予め設定したデータが占める記憶空間が、殆ど又は全ての記憶すべきデータのそれぞれが占める記憶空間よりも小さい」という原則に従って、予め設定したデータを比較的小さな記憶空間を占める識別子に設定することができる。このようにして、特定の現在のデータについて、「予め設定したデータが占める記憶空間が、現在のデータが占める記憶空間よりも小さい」ということが、複数の記憶すべきデータに対してデータ記憶手順を実行するという全体的な観点から満たされていなくても、「予め設定したデータが占める記憶空間は、殆ど又は全ての記憶すべきデータのそれぞれが占める記憶空間よりも小さい」という条件を依然として満たしている可能性がある。従って、従来技術と比較して、これは、記憶空間を節約するのに役立つ。
【０２７１】
オプションで、記憶装置は、記憶オーバーヘッド等の要因に基づいて予め設定するデータを予め規定することができる。
【０２７２】
デルタが差である例では、デルタの絶対値が０である場合に、この技術的解決策の圧縮プロセスは、具体的には可逆圧縮プロセスである。デルタの絶対値が０でない場合に、この技術的解決策の圧縮プロセスは、特に不可逆圧縮プロセスである。予め設定した閾値を適切に設定すると、データ損失率を特定の範囲内に制限するのに役立つ。換言すると、予め設定した閾値は、実際の要件（例えば、許容可能な非可逆圧縮率内の要件）に基づいて設定できる。
【０２７３】
Ｓ９０４を実行した後に、現在のデータの記憶プロセスは終了する。
【０２７４】
Ｓ９０５：記憶装置は、現在のデータを記憶するか、又は現在のデータを圧縮して得た値を記憶する。
【０２７５】
Ｓ９０５の実施態様については、Ｓ１０５の実施態様の前述の説明を参照されたい。
【０２７６】
Ｓ９０５を実行した後に、現在のデータの記憶プロセスは終了する。
【０２７７】
現在のデータを復元するために使用される記憶情報が「予め設定したデータ」であるか「圧縮によって得た値又は現在のデータ」であるかを記憶装置が区別し、データ読み取り手順における読み取るべきデータを決定するのを助けるため、オプションで、Ｓ９０５が実行される場合に、この方法は、以下のＳ９０５Ａをさらに含み得る。
【０２７８】
Ｓ９０５Ａ：デルタの絶対値が予め設定した閾値より大きい場合に識別子情報を記憶し、ここで、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用される、又は現在のデータが記憶されている場合に、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータであることを示すために使用される。識別子情報は、現在のデータを復元するために使用される情報の識別子情報、又は現在のデータを復元するために使用される情報に含まれる情報として使用され得る。
【０２７９】
Ｓ９０５Ａの交換可能な方法及び有利な効果の説明については、Ｓ１０５Ａの交換可能な方法及び有利な効果の前述の説明を参照されたい。詳細については、ここでは再び説明しない。
【０２８０】
本願のこの実施形態で提供されるデータ記憶方法では、履歴データを用いて現在のデータが予測され、予め設定したデータは、現在のデータと現在のデータの予測データとの間のデルタの絶対値が予め設定した閾値以下である場合に、記憶される。従来技術で現在のデータを直接記憶する技術的解決策と比較して、予め設定したデータが占める記憶空間が、現在のデータが占める記憶空間よりも小さいため、記憶オーバーヘッドを削減できる。この技術的解決策は、特定のデータ損失が許容されるシナリオ、例えば、ビデオ再生等のシナリオに適用することができる。
【０２８１】
例えば、記憶すべきデータを含むシーケンスＸｎ＝｛２、５、１０、１７、２６、３７、５０、６５、８２、１０１、１２２、１４５、１７１｝について、具体的には、デルタが、記憶すべきデータと記憶すべきデータの予測データとの間の差であり、予め設定した閾値が２である場合に、予測アルゴリズムｘ２＋１及び図１３に示される実施形態に基づいて記憶装置によって実際に記憶されるデータを含むシーケンスは、｛１０、１０１、１０１０、α、α、α、α、α、α、α、α、α、α｝であり得る。αは予め設定したデータである。Ｘｎ’の最初の３つのデータでは、予測ステップがデフォルトである。Ｓ９０５Ａを参照すると、３つのデータについて、記憶装置は、第１の識別子情報をさらに別々に記憶し得ることが分かり得る。記憶のために圧縮する必要のあるデータの範囲が大幅に削減され、その範囲内のデータの繰り返し確率が明らかに増大することが分かり得る。従って、データ圧縮率及び圧縮効率を大幅に向上させることができる。
【０２８２】
図１４は、本願の一実施形態によるデータ取得方法の概略図である。図１４に示される方法は、以下のステップを含み得る。
【０２８３】
Ｓ１００１：記憶装置は、現在のデータを復元するために使用される情報を読み取る。現在のデータを復元するために使用される情報には、「予め設定したデータ」又は「現在のデータ又は現在のデータを圧縮して得た値」が含まれる。
【０２８４】
現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータであり、履歴データは、１つ又は複数の取得データである。
【０２８５】
Ｓ１００２：記憶装置は、現在のデータを復元するために使用される情報に識別子情報が含まれるかどうかを判定する。
【０２８６】
図１３に示される実施形態の説明に基づいて、Ｓ１００２での判定結果が、現在のデータを復元するために使用される情報に識別子情報が含まれていないことを示す場合に、それは、現在のデータを復元するために使用される情報には予め設定したデータが含まれていることを示し、Ｓ１００３が実行されることが分かり得る。Ｓ１００２での判定結果が、現在のデータを復元するために使用される情報に識別子情報が含まれることを示す場合に、それは、現在のデータを復元するために使用される情報には、現在のデータ又は現在のデータを圧縮して得た値が含まれることを示す。現在のデータを復元するために使用される情報が現在のデータを圧縮して得た値である場合に、Ｓ１００４が実行され、又は現在のデータを復元するために使用される情報が現在のデータである場合に、現在のデータの取得プロセスは終了する。
【０２８７】
Ｓ１００３：記憶装置は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得し、現在のデータの予測データを現在のデータとして使用し、ここで、履歴データは、１つ又は複数の取得データである。
【０２８８】
Ｓ１００３を実行した後に、現在のデータの取得プロセスは終了する。
【０２８９】
Ｓ１００４：記憶装置は、現在のデータを圧縮して得た値を解凍して、現在のデータを取得する。
【０２９０】
Ｓ１００４を実行した後に、現在のデータの取得プロセスは終了する。
【０２９１】
この実施形態で提供されるデータ取得方法は、図１３に示されるデータ記憶方法に対応する。従って、この実施形態における有利な効果については、図１３に示される実施形態で説明した有利な効果を参照されたい。詳細については、ここで再び説明しない。
【０２９２】
同じデータについて、データ記憶手順を実行するプロセス及びデータ取得手順を実行するプロセスで予測を行う必要がある場合に、同じ予測アルゴリズム（具体的には、予測アルゴリズムのパラメータの値が同じである）が予測中に使用されることに留意されたい。予測アルゴリズムがＡＩニューラルアルゴリズムである場合に、ＡＩニューラルアルゴリズムのパラメータの値を更新することができるため、データ取得手順においてデータを成功裏に取得するために、データ記憶手順において、本願のこの実施形態は以下のオプションの実施態様を提供する。
【０２９３】
オプションの実施態様１：記憶装置は、ＡＩニューラルアルゴリズムのパラメータの値と、データを復元するために使用される情報との間の対応関係をさらに記憶することができる。例えば、記憶装置は、ＡＩニューラルアルゴリズムのパラメータが更新された後に、毎回スナップショット動作を実行して、現在のデータを復元するために使用される情報と、予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記録することができる。確かに、本願のこの実施形態はそれに限定されない。
【０２９４】
例えば、初期モーメントがモーメントｔ１であり、モーメントｔ１におけるＡＩニューラルアルゴリズムのパラメータが第１のパラメータであり、モーメントｔ２におけるＡＩニューラルアルゴリズムのパラメータが、第１のパラメータから第２のパラメータに更新されると想定する。また、現在のデータを復元するために使用され、且つモーメントｔ１からモーメントｔ２までの期間とモーメントｔ２の後の期間とに記憶される情報は、それぞれ情報１〜１００及び情報１０１〜５００である。この場合に、記憶装置は、情報１〜１００と第１のパラメータとの間の対応関係を記憶し、情報１０１〜５００と第２のパラメータとの間の対応関係を記憶することができる。
【０２９５】
オプションの実施態様２：ＡＩニューラルアルゴリズムのパラメータは、現在のデータを復元するために使用される情報が記憶された後に、アダプティブラーニングによって更新され、現在のデータを復元するために使用される情報は、ＡＩニューラルアルゴリズムの更新パラメータに基づいて更新される。
【０２９６】
例えば、予測（例えば、Ｓ１０１又はＳ９０１における予測）を行うために使用されるＡＩニューラルアルゴリズムの前述のパラメータが、ＡＩニューラルアルゴリズムの第１のパラメータとしてマークされ、ＡＩニューラルアルゴリズムの第１のパラメータを更新した後に取得されるパラメータは、ＡＩニューラルアルゴリズムの第２のパラメータとしてマークされる場合に、現在のデータを復元するために使用される情報が、ＡＩニューラルアルゴリズムの更新パラメータに基づいて更新されることは、現在のデータを復元するために使用される情報を読み取ること；ＡＩニューラルアルゴリズムの第１のパラメータ（つまり、更新前のＡＩニューラルアルゴリズムのパラメータ）、現在のデータを復元するために使用される読み取り情報、及び現在のデータの履歴データに基づいて、現在のデータを復元すること；ＡＩニューラルアルゴリズムの第２のパラメータ（つまり、ＡＩニューラルアルゴリズムの更新パラメータ）と現在のデータの履歴データとに基づいて、現在のデータを予測して、第２の予測データを取得することであって、第２の予測データは、現在のデータが、ＡＩニューラルアルゴリズムの第２のパラメータに基づいて、履歴データの変更規則に従って予測される後に取得されるデータである、取得すること；現在のデータと第２の予測データとの間の第２のデルタを取得すること；及び、第２のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを更新するために使用される記憶情報を、第２のデルタ又は第２のデルタを圧縮して得た値（又は、現在のデータ、現在のデータを圧縮して得た値、予め設定したデータ等、ここで、特定の記憶情報については、図５又は図１３に示される前述の方法を参照されたい）に更新すること；を含む。換言すると、データ取得手順が、ＡＩニューラルアルゴリズムの更新前に存在するパラメータを用いて１回実行され、現在のデータを取得した後に、データ記憶手順は、ＡＩニューラルアルゴリズムの更新パラメータを用いて１回実行される。このようにして、ＡＩニューラルアルゴリズムであり、且つ現在のデータに対してデータ記憶手順が実行されるときに使用されるパラメータは、最新のパラメータである。
【０２９７】
オプションの実施態様２に基づいて、記憶装置は、ＡＩニューラルアルゴリズムの第２のパラメータをさらに記憶することができる。あるいはまた、記憶装置は、ＡＩニューラルアルゴリズムの記憶した第１のパラメータを第２のパラメータに更新する。換言すると、記憶装置は、ＡＩニューラルアルゴリズムの最新のパラメータを記憶する。
【０２９８】
２つのオプションの実施態様は、図５又は図１３に示される前述のデータ記憶手順に適用され得る。２つのオプションの実施態様を比較すると、オプションの実施態様１は、記憶装置が比較的大量のデータを記憶しているシナリオに適用でき、オプションの実施態様２は、記憶装置が比較的少量のデータを記憶しているシナリオに適用できる。さらに、ＡＩニューラルアルゴリズムのパラメータが更新されるので、現在のデータの予測データが現在のデータに近くなる。従って、データ圧縮効率は、オプションの実施態様２でさらに改善することができる。特定の実施態様プロセスでは、前述のオプションの実施態様１及び２を組み合わせて使用して、新しい技術的解決策を形成することができる。例えば、いくつかの記憶データについて、記憶装置は、前述のオプションの実施態様１を実行することができ、他の記憶データについて、記憶装置は、前述の実施態様２を実行することができる。
【０２９９】
前述のオプションの実施態様１に基づいて、データ取得手順において、記憶装置は、現在のデータを復元するために使用される情報とＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータを取得することができる。この場合に、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得することは、ＡＩニューラルアルゴリズムの取得したパラメータに基づく履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得することを含むことができる。
【０３００】
前述のオプションの実施態様１の説明に基づいて、対応関係内の「ＡＩニューラルアルゴリズムのパラメータ」は、「現在のデータを復元するために使用される情報」を対応関係に記憶するプロセスで使用されるＡＩニューラルアルゴリズムのパラメータであることが分かり得る。取得した「現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータ」は、対応関係における「ＡＩニューラルアルゴリズムのパラメータ」である。例えば、前述のオプションの実施態様１の例に基づいて、現在のデータを復元するために使用される情報が情報９９である場合に、対応関係内の「ＡＩニューラルアルゴリズムのパラメータ」が第１のパラメータである、又は現在のデータを復元するために使用される情報が情報２００である場合に、対応関係内の「ＡＩニューラルアルゴリズムのパラメータ」は第２のパラメータである。
【０３０１】
さらに、前述のオプションの実施態様１が、図５に示されるデータ記憶手順に適用される場合に、データ取得手順において、記憶装置は、図７に示される前述の実施形態に従って、現在のデータを取得することができる。前述のオプションの実施態様１が図１３に示されるデータ記憶手順に適用される場合に、データ取得手順において、記憶装置は、図１４に示される前述の実施形態に従って、現在のデータを取得することができる。
【０３０２】
前述のオプションの実施態様２に基づいて、データ取得手順において、記憶装置は、ＡＩニューラルアルゴリズムの記憶した最新のパラメータに基づいて、図７又は図１４に示される実施形態を実行することができる。
【０３０３】
前述のものは、主に、方法の観点から、本願の実施形態で提供される解決策を説明する。前述の機能を実現するために、機能を実行するための対応するハードウェア構造及び／又はソフトウェアモジュールが含まれる。当業者は、本明細書に開示された実施形態で説明した例と組み合わせて、ユニット及びアルゴリズムステップが、本願におけるハードウェア又はハードウェアとコンピュータソフトウェアとの組合せによって実現され得ることを容易に認識すべきである。機能がハードウェア又はハードウェアを動かすコンピュータソフトウェアによって実行されるかは、特定の用途及び技術的解決策の設計上の制約によって異なる。当業者は、特定の用途毎に説明している機能を実現するために様々な方法を使用できるが、その実施態様が本願の範囲を超えているとみなすべきではない。
【０３０４】
本願の実施形態では、機能モジュール分割は、前述の方法例に基づいて、記憶装置上で行われ得る。例えば、各機能モジュールは、各機能による分割によって取得してもよく、又は２つ以上の機能を１つの処理モジュールに統合してもよい。統合モジュールは、ハードウェアの形式で実装してもよく、又はソフトウェア機能モジュールの形式で実装してもよい。本願の実施形態におけるモジュール分割は一例であり、単なる論理的機能分割であることに留意されたい。実際の実施態様では、別の分割方法であってもよい。
【０３０５】
図１５は、本願の実施形態による記憶装置１５０の概略構造図である。図１５に示される記憶装置１５０は、図５又は図６−１〜図６−４に示されるデータ記憶方法を実行するように構成され得る。記憶装置１５０は、第１の取得ユニット１５００、予測ユニット１５０１、第２の取得ユニット１５０２、及び記憶ユニット１５０３を含み得る。第１の取得ユニット１５００は、現在のデータ及び現在のデータの履歴データを取得するように構成される。予測ユニット１５０１は、履歴データを用いて現在のデータを予測して、現在のデータの第１の予測データを取得するように構成される。第２の取得ユニット１５０２は、現在のデータと第１の予測データとの間の第１のデルタを取得するように構成される。記憶ユニット１５０３は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、第１のデルタ又は第１のデルタを圧縮して得た値を記憶するように構成される。例えば、図５を参照すると、第１の取得ユニット１５００は、Ｓ１００を実行するように構成され得、予測ユニット１５０１は、Ｓ１０１を実行するように構成され得、第２の取得ユニット１５０２は、Ｓ１０２を実行するように構成され得、及び記憶ユニット１５０３は、Ｓ１０４を実行するように構成され得る。
【０３０６】
オプションで、第１の取得ユニット１５００は、記憶装置１５０のメモリから現在のデータ及び履歴データを取得するように特に構成される。
【０３０７】
オプションで、記憶ユニット１５０３は、現在のデータを復元するために使用される情報と、予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するようにさらに構成される。
【０３０８】
オプションで、記憶装置１５０は、アダプティブラーニングによってＡＩニューラルアルゴリズムのパラメータを更新し、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、現在のデータを復元するために使用される情報を更新するように構成される更新ユニット１５０４をさらに含む。
【０３０９】
オプションで、更新ユニット１５０４は、現在のデータを復元するために使用される情報を読み取ること；予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータ、現在のデータを復元するために使用される情報、及び現在のデータの履歴データに基づいて、現在のデータを復元すること；ＡＩニューラルアルゴリズムの更新パラメータと現在のデータの履歴データとに基づいて現在のデータを予測して、第２の予測データを取得することであって、第２の予測データは、現在のデータが、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、履歴データの変更規則に従って予測された後に取得されるデータである、取得すること；現在のデータと第２の予測データとの間の第２のデルタを取得すること；及び、第２のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される記憶情報を、第２のデルタ又は第２のデルタを圧縮して得た値に更新すること；を行うように特に構成される。
【０３１０】
オプションで、記憶装置１５０は、ＡＩコンピューティングカードを含み、予測ユニット１５０１は、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、第１の予測データを取得するように特に構成される。
【０３１１】
オプションで、圧縮を行うために使用されるアルゴリズムは辞書圧縮アルゴリズムを含み、辞書圧縮アルゴリズムの辞書は少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応し、記憶装置１５０は、第１のデルタのヒット率を取得するように構成される第３の取得ユニット１５０５と；第１のデルタのヒット率に基づいて少なくとも２つのセットの中でターゲットセットを決定するように構成される決定ユニット１５０６であって、第１のデルタのヒット率は、第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定ユニット１５０６と；ターゲットセット内の第１のデータで第１のデルタを検索して、第１のデルタに対応する第２のデータを決定するように構成される圧縮ユニット１５０７であって、第１のデルタに対応する第２のデータは、第１のデルタを圧縮して得た値である、圧縮ユニット１５０７と；をさらに含む。
【０３１２】
オプションで、記憶装置１５０の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、圧縮を行うために使用されるアルゴリズムは辞書圧縮アルゴリズムを含み、辞書圧縮アルゴリズムの辞書は１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、キャッシュにおけるマッピング関係のヒット率は、メモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率は、ハードディスクにおけるマッピング関係のヒット率以上であり、記憶装置１５０は、第１のデルタのヒット率を取得するように構成される第３の取得ユニット１５０５と；第１のデルタのヒット率に基づいてターゲット記憶媒体を決定するように構成される決定ユニット１５０６であって、第１のデルタのヒット率は、第１のデルタが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲属さない場合に、ハードディスクである、決定ユニット１５０６と；ターゲット記憶媒体内の第１のデータで第１のデルタを検索して、第１のデルタに対応する第２のデータを決定するように構成される圧縮ユニット１５０７であって、第１のデルタに対応する第２のデータは、第１のデルタを圧縮して得た値である、圧縮ユニット１５０７と；をさらに含む。
【０３１３】
オプションで、記憶ユニット１５０３は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間以上である場合に、現在のデータ又は現在のデータを圧縮して得た値を記憶するようにさらに構成される。例えば、図５を参照すると、記憶ユニット１５０３は、Ｓ１０５を実行するように構成され得る。
【０３１４】
オプションで、記憶ユニット１５０３は、第１のデルタが占める記憶空間が現在のデータが占める記憶空間以上である場合に識別子情報を記憶するようにさらに構成され、ここで、現在のデータを圧縮して得た値が記憶されている場合に、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用される、又は現在のデータが記憶されている場合に、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータであることを示すために使用される。例えば、図５を参照すると、記憶ユニット１５０３は、Ｓ１０５Ａを実行するように構成され得る。
【０３１５】
例えば、図２を参照すると、第１の取得ユニット１５００、予測ユニット１５０１、第２の取得ユニット１５０２、更新ユニット１５０４、第３の取得ユニット１５０５、決定ユニット１５０６、及び圧縮ユニット１５０７は全て、プロセッサ２０２を用いて実装され得、記憶ユニット１５０３は、ハードディスク２０４を用いて実装され得る。別の例では、図３を参照すると、予測ユニット１５０１は、ＡＩコンピューティングカード２０７を用いて実装され得、第１の取得ユニット１５００、第２の取得ユニット１５０２、更新ユニット１５０４、第３の取得ユニット１５０５、決定ユニット１５０６、及び圧縮ユニット１５０７は全て、プロセッサ２０２を用いて実装され得、記憶ユニット１５０３は、ハードディスク２０４を用いて実装され得る。
【０３１６】
図１６は、本願の一実施形態による記憶装置１６０の概略構造図である。図１６に示される記憶装置１６０は、図７又は図８Ａ〜図８Ｃに示されるデータ取得方法を実行するように構成され得る。記憶装置１６０は、読み取りユニット１６０１、予測ユニット１６０２、及び決定ユニット１６０３を含み得る。読み取りユニット１６０１は、現在のデータを復元するために使用される情報を読み取るように構成され、ここで、現在のデータを復元するために使用される情報は、デルタ又はデルタを圧縮して得た値であり、デルタは、現在のデータと現在のデータの予測データとの間のデルタであり、現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。予測ユニット１６０２は、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように構成される。決定ユニット１６０３は、現在のデータの予測データと現在のデータを復元するために使用される情報とに基づいて、現在のデータを決定するように構成される。例えば、図７を参照すると、読み取りユニット１６０１は、Ｓ３０２を実行するように構成され得、予測ユニット１６０２は、Ｓ３０４を実行するように構成され得、及び決定ユニット１６０３は、Ｓ３０５を実行するように構成され得る。
【０３１７】
オプションで、記憶装置１６０は、記憶装置１６０のメモリから履歴データを取得するように構成される取得ユニット１６０４をさらに含む。
【０３１８】
オプションで、記憶装置１６０は、現在のデータを復元するために使用される情報とＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータを取得するように構成される取得ユニット１６０４をさらに含む。予測ユニット１６０２は、ＡＩニューラルアルゴリズムの取得パラメータに基づいて、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように特に構成される。
【０３１９】
オプションで、記憶装置１６０はＡＩコンピューティングカードを含み、予測ユニット１６０２は、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように特に構成される。
【０３２０】
オプションで、現在のデータを復元するために使用される情報には、デルタを圧縮して得た値が含まれる。この場合に、決定ユニット１６０３は、デルタを圧縮して得た値を解凍して、デルタを取得するように構成される解凍モジュール１６０３−１と；デルタと現在のデータの予測データとに基づいて現在のデータを決定するように構成される決定モジュール１６０３−２と；を含む。例えば、図７を参照すると、解凍モジュール１６０３−１は、Ｓ３０３を実行するように構成され得、決定モジュール１６０３−２は、Ｓ３０５を実行するように構成され得る。
【０３２１】
オプションで、解凍を行うために使用されるアルゴリズムは辞書解凍アルゴリズムを含み、辞書解凍アルゴリズムの辞書は少なくとも２つのセットを含み、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。この場合に、解凍モジュール１６０３−１は、デルタを圧縮して得た値のヒット率を取得すること；デルタを圧縮して得た値のヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定することであって、デルタを圧縮して得た値のヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する、決定すること；及び、ターゲットセット内の第２のデータでデルタを圧縮して得た値を検索して、デルタを圧縮して得た値に対応する第１のデータを決定することであって、デルタを圧縮して得た値に対応する第１のデータはデルタである、決定すること；を行うように特に構成される。
【０３２２】
オプションで、記憶装置１６０の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、解凍を行うために使用されるアルゴリズムは辞書解凍アルゴリズムを含み、辞書解凍アルゴリズムの辞書は１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上である。この場合に、解凍モジュール１６０３−１は、デルタを圧縮して得た値のヒット率を取得すること；デルタを圧縮して得た値のヒット率に基づいてターゲット記憶媒体を決定することであって、デルタを圧縮して得た値のヒット率は、デルタを圧縮して得た値が属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、メモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである、決定すること；及び、ターゲット記憶媒体内の第２のデータでデルタを圧縮して得た値を検索して、デルタを圧縮して得た値に対応する第１のデータを決定することであって、デルタを圧縮して得た値に対応する第１のデータはデルタである、決定すること；を行うように特に構成される。
【０３２３】
例えば、図２を参照すると、読み取りユニット１６０１、予測ユニット１６０２、及び決定ユニット１６０３は全て、プロセッサ２０２を用いて実装され得る。別の例では、図３を参照すると、予測ユニット１６０２は、ＡＩコンピューティングカード２０７を用いて実装され得、読み取りユニット１６０１と決定ユニット１６０３との両方は、プロセッサ２０２を用いて実装され得る。
【０３２４】
図１７は、本願の一実施形態による記憶装置１７０の概略構造図である。図１７に示される記憶装置１７０は、図９又は図１１に示されるデータ圧縮方法を実行するように構成され得る。記憶装置１７０は、取得ユニット１７０１、決定ユニット１７０２、及び圧縮ユニット１７０３を含み得る。
【０３２５】
可能な設計では、記憶装置１７０は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。取得ユニット１７０１は、圧縮すべきデータのヒット率を取得するように構成される。決定ユニット１７０２は、圧縮すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するように構成され、ここで、圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する。圧縮ユニット１７０３は、ターゲットセット内の第１のデータで圧縮すべきデータを検索して、圧縮すべきデータに対応する第２のデータを決定すること；及び、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用すること；を行うように構成される。例えば、図９を参照すると、取得ユニット１７０１は、Ｓ５０１及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、決定ユニット１７０２は、Ｓ５０２及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、及び圧縮ユニット１７０３は、Ｓ５０３及び／又は本願の実施形態で提供される別のステップを実行するように構成され得る。
【０３２６】
別の可能な設計では、記憶装置１７０の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、及び第１のデータが占める記憶空間は、第２のデータが占める記憶空間よりも大きい。取得ユニット１７０１は、圧縮すべきデータのヒット率を取得するように構成される。決定ユニット１７０２は、圧縮すべきデータのヒット率に基づいてターゲット記憶媒体を決定するように構成され、ここで、圧縮すべきデータのヒット率は、圧縮すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである。圧縮ユニット１７０３は、ターゲット記憶媒体内の第１のデータで圧縮すべきデータを検索して、圧縮すべきデータに対応する第２のデータを決定すること；及び、圧縮すべきデータに対応する第２のデータを、圧縮すべきデータを圧縮して得た値として使用すること；を行うように構成される。例えば、図１１を参照すると、取得ユニット１７０１は、Ｓ７０１及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、決定ユニット１７０２は、Ｓ７０２及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、及び圧縮ユニット１７０３は、Ｓ７０３及び／又は本願の実施形態で提供される別のステップを実行するように構成され得る。
【０３２７】
例えば、図２又は図３を参照すると、取得ユニット１７０１、決定ユニット１７０２、及び圧縮ユニット１７０３は全て、プロセッサ２０２を用いて実装され得る。
【０３２８】
図１８は、本願の一実施形態による記憶装置１８０の概略構造図である。図１８に示される記憶装置１８０は、図１０又は図１２に示されるデータ解凍方法を実行するように構成され得る。記憶装置１８０は、取得ユニット１８０１、決定ユニット１８０２、及び解凍ユニット１８０３を含み得る。
【０３２９】
可能な設計では、記憶装置１８０は少なくとも２つのセットを記憶し、各セットは１つ又は複数のマッピング関係を含み、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、第１のデータが占める記憶空間は第２のデータが占める記憶空間よりも大きく、各セットはヒット率範囲に対応し、異なるセットは異なるヒット率範囲に対応する。取得ユニット１８０１は、解凍すべきデータのヒット率を取得するように構成される。決定ユニット１８０２は、解凍すべきデータのヒット率に基づいて、少なくとも２つのセットの中でターゲットセットを決定するように構成され、ここで、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、及びターゲットマッピング関係の決定したヒット率は、ターゲットセットに対応するヒット率範囲に属する。解凍ユニット１８０３は、ターゲットセット内の第２のデータで解凍すべきデータを検索して、解凍すべきデータに対応する第１のデータを決定すること；及び、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用すること；を行うように構成される。例えば、図１０を参照すると、取得ユニット１８０１は、Ｓ６０１及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、決定ユニット１８０２は、Ｓ６０２及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、及び解凍ユニット１８０３は、Ｓ６０３及び／又は本願の実施形態で提供される別のステップを実行するように構成され得る。
【０３３０】
別の可能な設計では、記憶装置１８０の記憶媒体は、キャッシュ、メモリ、及びハードディスクを含み、キャッシュにおけるマッピング関係のヒット率はメモリにおけるマッピング関係のヒット率以上であり、メモリにおけるマッピング関係のヒット率はハードディスクにおけるマッピング関係のヒット率以上であり、各マッピング関係は、１つの第１のデータと１つの第２のデータとの間のマッピング関係であり、及び第１のデータが占める記憶空間は、第２のデータが占める記憶空間よりも大きい。取得ユニット１８０１は、解凍すべきデータのヒット率を取得するように構成される。決定ユニット１８０２は、解凍すべきデータのヒット率に基づいてターゲット記憶媒体を決定するように構成され、ここで、解凍すべきデータのヒット率は、解凍すべきデータが属するターゲットマッピング関係のヒット率を決定するために使用され、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がキャッシュにおけるマッピング関係のヒット率範囲に属する場合に、キャッシュであり、ターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率が、キャッシュにおけるマッピング関係のヒット率範囲に属さないが、メモリにおけるマッピング関係のヒット率範囲に属する場合に、メモリであり、又はターゲット記憶媒体は、ターゲットマッピング関係の決定したヒット率がメモリにおけるマッピング関係のヒット率範囲に属さない場合に、ハードディスクである。解凍ユニット１８０３は、ターゲット記憶媒体内の第２のデータで解凍すべきデータに対応する第１のデータを検索すること；及び、解凍すべきデータに対応する第１のデータを、解凍すべきデータを解凍して得た値として使用すること；を行うように構成される。例えば、図１２を参照すると、取得ユニット１８０１は、Ｓ８０１及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、決定ユニット１８０２は、Ｓ８０２及び／又は本願の実施形態で提供される別のステップを実行するように構成され得、及び解凍ユニット１８０３は、Ｓ８０３及び／又は本願の実施形態で提供される別のステップを実行するように構成され得る。
【０３３１】
例えば、図２又は図３を参照すると、取得ユニット１８０１、決定ユニット１８０２、及び解凍ユニット１８０３は全て、プロセッサ２０２を用いて実装され得る。
【０３３２】
図１９は、本願の一実施形態による記憶装置１９０の概略構造図である。図１９に示される記憶装置１９０は、図１３に示されるデータ記憶方法を実行するように構成され得る。記憶装置１９０は、予測ユニット１９０１、取得ユニット１９０２、及び記憶ユニット１９０３を含み得る。取得ユニット１９０２は、現在のデータ及び現在のデータの履歴データを取得するように構成される。予測ユニット１９０１は、履歴データを用いて現在のデータを予測して、現在のデータの第１の予測データを取得するように構成される。取得ユニット１９０２は、現在のデータと現在のデータの第１の予測データとの間の第１のデルタを取得するようにさらに構成される。記憶ユニット１９０３は、第１のデルタの絶対値が予め設定した閾値以下である場合に、予め設定したデータを記憶するように構成される。オプションで、予め設定したデータが占める記憶空間は、現在のデータが占める記憶空間よりも小さい。例えば、図１３を参照すると、予測ユニット１９０１は、Ｓ９０１を実行するように構成され得、取得ユニット１９０２は、Ｓ９００及びＳ９０２を実行するように構成され得、及び記憶ユニット１９０３は、Ｓ９０４を実行するように構成され得る。
【０３３３】
オプションで、記憶ユニット１９０３は、現在のデータを復元するために使用される情報と、予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータとの間の対応関係を記憶するようにさらに構成される。
【０３３４】
オプションで、記憶装置１９０は、アダプティブラーニングによってＡＩニューラルアルゴリズムのパラメータを更新し、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、現在のデータを復元するために使用される情報を更新するように構成される更新ユニット１９０４をさらに含む。
【０３３５】
オプションで、更新ユニット１９０４は、現在のデータを復元するために使用される情報を読み取ること；予測を行うために使用されるＡＩニューラルアルゴリズムのパラメータ、現在のデータを復元するために使用される情報、及び現在のデータの履歴データに基づいて、現在のデータを復元すること；ＡＩニューラルアルゴリズムの更新パラメータと現在のデータの履歴データとに基づいて現在のデータを予測して、第２の予測データを取得することであって、第２の予測データは、現在のデータが、ＡＩニューラルアルゴリズムの更新パラメータに基づいて、履歴データの変更規則に従って予測された後に取得されるデータである、取得すること；現在のデータと第２の予測データとの間の第２のデルタを取得すること；及び、第２のデルタが占める記憶空間が現在のデータが占める記憶空間よりも小さい場合に、現在のデータを復元するために使用される記憶情報を、第２のデルタ又は第２のデルタを圧縮して得た値に更新すること；を行うように特に構成される。
【０３３６】
オプションで、記憶装置１９０はＡＩコンピューティングカードを含み、予測ユニット１９０１は、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、第１の予測データを取得するように特に構成される。
【０３３７】
オプションで、記憶ユニット１９０３は、第１のデルタの絶対値が予め設定した閾値よりも大きい場合に、現在のデータ又は現在のデータを圧縮して得た値を記憶するようにさらに構成される。例えば、図１３を参照すると、記憶ユニット１９０３は、Ｓ９０５を実行するように構成され得る。
【０３３８】
オプションで、記憶ユニット１９０３は、第１のデルタの絶対値が予め設定した閾値よりも大きい場合に、識別子情報を記憶するようにさらに構成され、ここで、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータを圧縮して得た値であることを示すために使用され、又は現在のデータが記憶されるときに、識別子情報は、現在のデータを復元するために使用される記憶情報が現在のデータであることを示すために使用される。例えば、図１３を参照すると、記憶ユニット１９０３は、Ｓ９０５Ａを実行するように構成され得る。
【０３３９】
例えば、図２を参照すると、予測ユニット１９０１と取得ユニット１９０２との両方は、プロセッサ２０２を用いて実装され得、記憶ユニット１９０３は、ハードディスク２０４を用いて実装され得る。別の例では、図３を参照すると、予測ユニット１９０１は、ＡＩコンピューティングカード２０７を用いて実装され得、取得ユニット１９０２は、プロセッサ２０２を用いて実装され得、及び記憶ユニット１９０３は、ハードディスク２０４を用いて実装され得る。
【０３４０】
図２０は、本願の一実施形態による記憶装置２１０の概略構造図である。図２０に示される記憶装置２１０は、図１４に示されるデータ取得方法を実行するように構成され得る。記憶装置２１０は、読み取りユニット２１０１、予測ユニット２１０２、及び決定ユニット２１０３を含み得る。読み取りユニット２１０１は、現在のデータを復元するために使用される情報を読み取るように構成され、ここで、現在のデータの予測データは、現在のデータが履歴データの変更規則に従って予測された後に取得されるデータである。予測ユニット２１０２は、現在のデータを復元するために使用される情報が予め設定したデータを含む場合に、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように構成される。決定ユニット２１０３は、現在のデータの予測データを現在のデータとして使用するように構成される。例えば、図１４を参照すると、読み取りユニット２１０１は、Ｓ１００１を実行するように構成され得、予測ユニット２１０２は、Ｓ１００３において予測ステップを実行するように構成され得、及び決定ユニット２１０３は、Ｓ１００３において現在のデータを決定するステップを実行するように構成され得る。
【０３４１】
オプションで、記憶装置２１０は、現在のデータを復元するために使用される情報とＡＩニューラルアルゴリズムのパラメータとの間の対応関係に基づいて、現在のデータを予測するために使用されるＡＩニューラルアルゴリズムのパラメータを取得するように構成される取得ユニット２１０４をさらに含む。予測ユニット２１０２は、ＡＩニューラルアルゴリズムの取得パラメータに基づいて、履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように特に構成される。
【０３４２】
オプションで、記憶装置２１０はＡＩコンピューティングカードを含み、予測ユニット２１０２は、ＡＩコンピューティングカード及び履歴データを用いて現在のデータを予測して、現在のデータの予測データを取得するように特に構成される。
【０３４３】
例えば、図２を参照すると、読み取りユニット２１０１、予測ユニット２１０２、及び決定ユニット２１０３は全て、プロセッサ２０２を用いて実装され得る。別の例では、図３を参照すると、読み取りユニット２１０１と決定ユニット２１０３との両方は、プロセッサ２０２を用いて実装され得、予測ユニット２１０２は、ＡＩコンピューティングカード２０７を用いて実装され得る。
【０３４４】
図１５〜図２０に提供される任意の記憶装置の実施態様及び有利な効果の説明については、前述の対応する方法の実施形態を参照されたい。詳細については、ここでは再び説明しない。
【０３４５】
前述の実施形態の全部又は一部は、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組合せを用いて実施することができる。ソフトウェアプログラムを用いて実施形態を実施する場合に、実施形態は、コンピュータプログラム製品の形態で完全に又は部分的に実現され得る。コンピュータプログラム製品は、１つ又は複数のコンピュータ命令を含む。コンピュータ実行可能命令がコンピュータにロードされて実行されるときに、本発明の実施形態における手順又は機能の全部又は一部が生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、又は別のプログラム可能な機器であり得る。コンピュータ命令は、コンピュータ可読記憶媒体に記憶され得るか、又はあるコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に送信され得る。例えば、コンピュータ命令は、ウェブサイト、コンピュータ、サーバ、又はデータセンタから別のウェブサイト、コンピュータ、サーバ、又はデータセンタに有線で（例えば、同軸ケーブル、光ファイバ、又はデジタル加入者回線（digital subscriber line, DSL））又は無線で（例えば、赤外線、無線、又はマイクロ波）方式で送信され得る。コンピュータ可読記憶媒体は、コンピュータがアクセスできる任意の使用可能な媒体であり得るか、或いは１つ又は複数の使用可能な媒体を統合するサーバ又はデータセンタ等のデータ記憶装置であり得る。使用可能な媒体は、磁気媒体（例えば、フロッピーディスク、ハードディスク、又は磁気テープ）、光媒体（例えば、ＤＶＤ）、半導体媒体（例えば、ソリッドステートディスク（solid state disk, SSD））等であり得る。
【０３４６】
本願は実施形態を参照して説明しているが、保護を主張する本願を実施する過程において、当業者は、添付の図面、開示された内容、及び添付の特許請求の範囲を参照して、開示された実施形態の別のバリエーションを理解し実現し得る。特許請求の範囲において、「備える、有する、含む（comprising）」は、別の構成要素又は別のステップを除外せず、「１つの（a,
one）」は、「複数」の場合を除外しない。単一のプロセッサ又は別のユニットは、特許請求の範囲に列挙されたいくつかの機能を実現することができる。いくつかの手段が、互いに異なる従属請求に記録されているが、これは、これらの手段を組み合わせてより良い効果を生み出すことができないことを意味するものではない。
【０３４７】
本願は、特定の特徴及びその実施形態を参照して説明しているが、明らかに、本願の精神及び範囲から逸脱することなく、本願に対して様々な修正及び組合せを行うことができる。同様に、明細書及び添付の図面は、添付の特許請求の範囲によって規定される本願の単なる例示的な説明であり、且つ本願の範囲をカバーする修正、変形、組合せ、又は同等物のいずれか又は全てと見なされる。明らかに、当業者は、本願の精神及び範囲から逸脱することなく、本願に様々な修正及び変更を加えることができる。このようにして、本願は、以下の特許請求の範囲及びそれらの同等の技術によって規定される保護の範囲内にあるという条件で、本願のこれらの変更及びバリエーションをカバーすることを意図している。
【国際調査報告】
2021534505.tif 000037
2021534505.tif 000038
2021534505.tif 000039
2021534505.tif 000040