JPWO2014024610A1 - データ転送装置、データ転送方法、及びプログラム - Google Patents

データ転送装置、データ転送方法、及びプログラム Download PDF

Info

Publication number
JPWO2014024610A1
JPWO2014024610A1 JP2014529389A JP2014529389A JPWO2014024610A1 JP WO2014024610 A1 JPWO2014024610 A1 JP WO2014024610A1 JP 2014529389 A JP2014529389 A JP 2014529389A JP 2014529389 A JP2014529389 A JP 2014529389A JP WO2014024610 A1 JPWO2014024610 A1 JP WO2014024610A1
Authority
JP
Japan
Prior art keywords
data
compression
unit
transfer
performance value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014529389A
Other languages
English (en)
Inventor
真澄 一圓
真澄 一圓
真樹 菅
真樹 菅
純平 上村
純平 上村
徳寿 伊賀
徳寿 伊賀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2014024610A1 publication Critical patent/JPWO2014024610A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6017Methods or arrangements to increase the throughput
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

データ転送装置は、単位時間あたりに圧縮することができるデータ量を示す圧縮性能値と、単位時間あたりに転送することができるデータ量を示す転送性能値を算出し、それらに基づいて転送すべき全データに対する圧縮した後に転送するデータの割合を示す圧縮割合を算出する。データを記憶する記憶部から転送すべきデータを抽出すると、前記圧縮割合に基づいて、抽出したデータの一部を圧縮し、圧縮したデータと残りのデータとを他の装置に転送する。前記圧縮と転送処理とは、並行して実行される。

Description

本発明は、データ転送装置、データ転送方法、及びプログラムに関する。
近年、データを高速に並列処理して分析する技術が確立されつつある。例えば、データを分散して保持しておき、データを保持しているマシンで並列に処理を行う技術がある(非特許文献1を参照)。
一方、データを蓄積する蓄積装置からデータ処理装置にデータを移行(転送)する場合、当該データ処理装置における処理にあったデータ形式や構造にデータを変更する必要がある。
そのための処理として、蓄積装置からデータを読み込む処理(Extract)、データ形式の変換処理(Transform)、データ処理装置へのデータ読み込み処理(Load)を行う必要がある。これらの処理は、頭文字をとってETL処理と呼ばれる。
ETL処理においては、転送処理がボトルネックとなることが多い。これは、ストレージレイヤの広帯域化や演算器のマルチコア化による処理帯域の広帯域化が進んでいることが原因にある。
この問題を解決する方法として、データを圧縮して転送する技術がある(例えば、特許文献1、特許文献2を参照)。また、特許文献3には、データの圧縮と転送とを並列して実行する技術が開示されている。
また、特許文献4、特許文献5には、圧縮すべきデータと圧縮しないデータとを振り分けてデータの転送を行う技術が開示されている。
特開平08−147251号公報 特開平07−175707号公報 特開昭62−182919号公報 特開平01−108631号公報 特開2008−176420号公報
"Hadoop"、[online]、Apache Software Foundation、[2012年7月30日検索]、インターネット〈URL: http://hadoop.apache.org/〉
しかしながら、特許文献1、2に記載の技術のように、圧縮処理を実行した後に転送処理を行う場合、圧縮処理の性能がそのまま転送性能に影響を与えてしまうという問題がある。例えば、圧縮性能が転送性能より悪い場合、実効転送スループットが悪化するおそれがある。なお、実効転送スループットとは、転送すべきデータ形式での転送スループットのことである。
また、特許文献3に記載の技術によれば、圧縮処理と転送処理とを並列して実行するが、転送すべき全てのデータを圧縮する必要があるため、特許文献1、2と同様に、圧縮性能がそのまま転送性能に影響を与えてしまうという問題がある。
また、特許文献4に記載の技術は、圧縮すべきデータと圧縮しないデータとで振り分けて、圧縮処理と転送処理とを並行して行うが、圧縮すべきデータと圧縮しないデータとの振り分けを制御する手段が明記されていない。
また、特許文献5に記載の技術は、圧縮率が高いデータを圧縮すべきデータ、圧縮率が低いデータを圧縮しないデータにそれぞれ振り分けて圧縮処理と転送処理とを並行して行う技術である。しかしながら、例えば全てのデータが圧縮率が高いデータである場合、または全てのデータが圧縮率が低いデータである場合、特許文献1−3と同様の問題が生じる。
本発明の目的は、上述した課題を解決するデータ転送装置、データ転送方法、及びプログラムを提供することにある。
本発明は上記の課題を解決するためになされたものであり、データを圧縮する圧縮部と、前記圧縮部が単位時間あたりに圧縮することができるデータ量を示す圧縮性能値を算出する圧縮性能値算出部と、データを他の装置に転送する転送部と、前記転送部が単位時間あたりに転送することができるデータ量を示す転送性能値を算出する転送性能値算出部と、前記圧縮性能値と前記転送性能値とに基づいて、転送すべき全データに対する、前記圧縮部が圧縮した後に転送するデータの割合を示す圧縮割合を算出する圧縮割合算出部と、データを記憶する記憶部から転送すべきデータを抽出し、前記圧縮割合算出部が算出した圧縮割合に基づいて、抽出したデータの一部を前記圧縮部に出力し、残りを前記転送部に出力する圧縮判定部とを備え、前記圧縮部と前記転送部は並行して処理を行うことを特徴とするデータ転送装置を提供する。
また、本発明は、単位時間あたりに圧縮することができるデータ量を示す圧縮性能値を算出する圧縮性能値算出ステップと、単位時間あたりに転送することができるデータ量を示す転送性能値を算出する転送性能値算出ステップと、前記圧縮性能値と前記転送性能値とに基づいて、転送すべき全データに対する、圧縮した後に転送するデータの割合を示す圧縮割合を算出する圧縮割合算出ステップと、データを記憶する記憶部から転送すべきデータを抽出する抽出ステップと、前記圧縮割合に基づいて、抽出したデータの一部を圧縮する圧縮ステップと、前記圧縮ステップにおいて圧縮したデータと残りのデータとを他の装置に転送する転送ステップとを備え、前記圧縮ステップと前記転送ステップを並行して実行することを特徴とするデータ転送方法も提供する。
また、本発明は、コンピュータを、データを圧縮する圧縮部、前記圧縮部が単位時間あたりに圧縮することができるデータ量を示す圧縮性能値を算出する圧縮性能値算出部、データを他の装置に転送する転送部、前記転送部が単位時間あたりに転送することができるデータ量を示す転送性能値を算出する転送性能値算出部、前記圧縮性能値と前記転送性能値とに基づいて、転送すべき全データに対する、前記圧縮部が圧縮した後に転送するデータの割合を示す圧縮割合を算出する圧縮割合算出部、データを記憶する記憶部から転送すべきデータを抽出し、前記圧縮割合算出部が算出した圧縮割合に基づいて、抽出したデータの一部を前記圧縮部に出力し、残りを前記転送部に出力する圧縮判定部として機能させ、前記圧縮部と前記転送部は並行して処理を行うことを特徴とするプログラムも提供する。
本発明によれば、圧縮性能の良否に依存せずに実効転送スループットを向上させることができる。
本発明の第1の実施形態に係る蓄積装置を備える分析システムの構成を示す概略ブロック図である。 同第1の実施形態による蓄積装置のデータ取得処理の動作を示すフローチャートである。 同第1の実施形態による蓄積装置のデータ転送処理の動作を示すフローチャートである。 同第2の実施形態に係る分析システムの構成を示す概略ブロック図である。 本発明によるデータ転送装置の基本構成を示す概略ブロック図である。
《第1の実施形態》
以下、図面を参照しながら本発明の第1の実施形態について詳しく説明する。
図1は、本発明の第1の実施形態に係る蓄積装置1を備える分析システムの構成を示す概略ブロック図である。
分析システムは、蓄積装置1(データ転送装置)と分析装置2とを備える。
蓄積装置1は、サービスを提供するクライアントのデータや分析に用いるセンサのデータなど、分析処理を行う前の生データを蓄積する。
蓄積装置1と分析装置2とはネットワーク3で接続されており、蓄積装置1は、ネットワーク3を介してデータを分析装置2に送信する。
分析装置2は、蓄積装置1から転送されるデータに対して分析処理を行う。なお、本実施形態では、分析システムが分析装置2を1つだけ備える構成について説明するが、これに限られず、分析装置2に台数の制限はない。
蓄積装置1は、記憶部101、取得部102、圧縮判定部103、非圧縮データ保持部104、圧縮前データ保持部105、圧縮後データ保持部106、圧縮部107、転送部108、転送性能値算出部109、圧縮性能値算出部110、圧縮割合算出部111を備える。
記憶部101は、上述のクライアントのデータやセンサのデータなど、分析処理を行う前の生データを記憶する。具体的には、記憶部101は、データベースやファイルシステム、メッセージキューなどによって実装される。
取得部102は、記憶部101から分析装置2に送信すべきデータを取得する。
圧縮判定部103は、圧縮割合算出部111が算出した圧縮割合に基づいて、取得部102が取得したデータを圧縮するか否かを判定する。なお、圧縮割合とは、転送すべきデータに対する圧縮すべきデータ量の割合のことである。
例えば、圧縮した後に転送するデータのデータ量をc、圧縮せずに転送するデータのデータ量をsとすると、転送すべき全データが「c+s」であるため、圧縮割合は、「c/(c+s)」である。
また、圧縮判定部103は、データを圧縮すべきでないと判定した場合、当該データを非圧縮データ保持部104に記録し、データを圧縮すべきと判定した場合、当該データを圧縮前データ保持部105に記録する(enqueue、push)。
非圧縮データ保持部104は、圧縮せずにそのまま分析装置2に転送すべきデータを一時的に保持する。
圧縮前データ保持部105は、圧縮部107により圧縮される前のデータを一時的に保持する。
圧縮後データ保持部106は、圧縮部107により圧縮されたデータを一時的に保持する。
なお、各保持部(非圧縮データ保持部104、圧縮前データ保持部105、圧縮後データ保持部106)は、FIFO(First In First Out)バッファなどによって実装される。
圧縮部107は、圧縮前データ保持部105から逐次データを取り出し(dequeue、pop)、当該データを圧縮する。圧縮部107による圧縮方法に制限はない。また圧縮部107は、圧縮したデータを圧縮後データ保持部106に記録する。
なお、本明細書において「保持部からデータを取り出す」とは、保持部からデータを読み出した後に、当該データを削除することを示す。
転送部108は、非圧縮データ保持部104または圧縮後データ保持部106から逐次データを取り出し、ネットワーク3を介して分析装置2に転送する。
なお、転送部108は、非圧縮データ保持部104または圧縮後データ保持部106のうち一方の保持部を、データを取り出す保持部として選択し、当該保持部から全てのデータを取り出した後に、他方の保持部をデータを取り出す保持部として選択する。つまり、転送部108は、非圧縮データ保持部104が保持するデータの転送と圧縮後データ保持部106が保持するデータの転送のサイクルを繰り返し実行する。
なお、圧縮部107による圧縮処理と転送部108による転送処理とは並行して実行される。
転送性能値算出部109は、転送部108を監視し、転送部108が単位時間あたりに転送することができるデータ量を示す転送性能値を算出する。なお本実施形態において、転送性能値は、メガバイト毎秒を単位とする転送処理スループットを示す。
圧縮性能値算出部110は、圧縮部107を監視し、圧縮部107が単位時間当たりに圧縮することができるデータ量を示す圧縮性能値、及び圧縮部107によるデータの圧縮率を算出する。
なお本実施形態において、圧縮性能値は、メガバイト毎秒を単位とする圧縮処理スループットを示す。圧縮率は、圧縮後のデータ量を圧縮前のデータ量で除算することで算出する。例えば、圧縮部107の圧縮処理により100バイトのデータが10バイトになる場合、圧縮率は、10/100=0.1である。
圧縮割合算出部111は、転送性能値算出部109が算出した転送性能値と圧縮性能値算出部110が算出した圧縮性能値とに基づいて、圧縮割合を算出する。なお、圧縮割合算出部111は、圧縮性能値による圧縮に要する時間と転送性能値による転送に要する時間とが同一となるようなデータ量の割合を、圧縮割合として算出する。
圧縮割合算出部111が算出する圧縮割合により、圧縮判定部103は、圧縮に要する時間と転送に要する時間とが同一となるような割合で、データを圧縮前データ保持部105と非圧縮データ保持部104とに振り分ける。これにより、圧縮部107は、非圧縮データ保持部104が保持するデータを転送部108が全て転送したときに、圧縮前データ保持部105が保持するデータを全て圧縮し終えることとなる。
つまり、本実施形態によれば、転送部108が圧縮部107による圧縮処理が完了を待機することがないため、圧縮性能の良否によらず、実効転送スループットを確実に向上させることができる。
次に、本実施形態による蓄積装置1の動作について説明する。
まず、本実施形態による蓄積装置1のデータ取得処理について説明する。
図2は、本発明の第1の実施形態による蓄積装置1のデータ取得処理の動作を示すフローチャートである。
まず、初期設定として、圧縮判定部103は、管理者の入力に基づいて、蓄積装置1のデータ取得処理における単位データ量を設定して内部メモリに記録する(ステップS1)。
データ取得処理における単位データ量とは、圧縮判定部103が圧縮するデータ量を算出する際の基となるデータ量であって、転送部108による非圧縮データ及び圧縮後データの転送の1サイクルにおいて転送されるデータの総データ量である。
次に、圧縮割合算出部111は、転送性能値及び圧縮性能値を所定の式に当てはめることで、圧縮割合を算出する(ステップS2)。
なお、圧縮割合を算出するための式は、例えば数理計画法を用いて、転送性能値及び圧縮性能値をモデル化することで導出することができる。本実施形態においては、圧縮割合は、「C/(N+C−Ca)」によって算出する。ここで、Cとは圧縮性能値を示し、Nとは転送性能値を示し、aは圧縮率を示す。
例えば、圧縮性能値算出部110が算出した圧縮性能値が20メガバイト毎秒、圧縮率が0.3であり、転送性能値算出部109が算出した転送性能値が100メガバイト毎秒である場合、圧縮割合算出部111は、0.175を圧縮割合として算出する。
なお、初回実行時には、圧縮性能値算出部110及び転送性能値算出部109は、それぞれ予め測定しておいた圧縮性能値及び転送性能値の初期値を圧縮割合算出部111に出力する。
また、圧縮後のデータの転送処理時間が十分に小さい場合は、圧縮率を用いずに「C/(N+C)」によって圧縮割合を算出しても良い。
なお、圧縮割合の算出法は、「C/(N+C−Ca)」や「C/(N+C)」に限られず、転送性能値及び圧縮性能値をモデル化することで導出された他の式であっても良い。
次に、圧縮判定部103は、ステップS1で設定した単位データ量と、ステップS2で圧縮割合算出部111が算出した圧縮割合とに基づいて、非圧縮データの送出データ量閾値と、圧縮データの送出データ量閾値とを設定して、内部メモリに記録する(ステップS3)。
具体的には、圧縮データの送出データ量閾値は、単位データ量に圧縮割合を乗算することで算出し、非圧縮データの送出データ量閾値は、単位データ量に、圧縮割合の補数(1−圧縮割合)を乗算することで算出する。
例えば、単位データ量が1000キロバイトであり、圧縮割合が0.3である場合、圧縮判定部103は、圧縮データの送出データ量閾値が300キロバイトであり、非圧縮データの送出データ量閾値が700キロバイトであると算出する。
この場合、1000キロバイトのデータのうち、700キロバイト分のデータが圧縮されずに転送され、300キロバイト分のデータが圧縮された後に転送されることとなる。なお、この場合、圧縮部107による300キロバイトのデータの圧縮に要する時間と、転送部108による700キロバイトのデータの転送に要する時間は、ほぼ同じである。
次に、圧縮判定部103は、非圧縮データ保持部104または圧縮前データ保持部105に記録したデータ量を示す累積送出データ量を、初期値の0に設定して内部メモリに記録する(ステップS4)。
また、圧縮判定部103は、取得部102が取得したデータの記録先の保持部として、非圧縮データ保持部104を選択して内部メモリに記録する(ステップS5)。
以上がデータ取得処理の初期設定である。
初期設定を終えると、取得部102は、記憶部101を参照し、分析装置2に転送すべきデータがあるか否かを判定する(ステップS6)。
取得部102は、分析装置2に転送すべきデータがあると判定した場合(ステップS6:YES)、当該データを取得する(複数種類ある時は、そのうちの1つ)(ステップS7)。
次に、取得部102は、取得したデータのデータ量を算出する(ステップS8)。次に、圧縮判定部103は、内部メモリに記憶する累積送出データ量に、当該データ量を加算する(ステップS9)。
次に、圧縮判定部103は、内部メモリにおいてデータの記録先の保持部として非圧縮データ保持部104と圧縮前データ保持部105のいずれを選択しているかを判定する(ステップS10)。
圧縮判定部103は、データの記録先の保持部として非圧縮データ保持部104を選択している場合(ステップS10:非圧縮)、取得部102が取得したデータを非圧縮データ保持部104に記録する(ステップS11)。
次に、圧縮判定部103は、内部メモリに記憶する累積送出データ量が、非圧縮データの送出データ量閾値以上であるか否かを判定する(ステップS12)。累積送出データ量が非圧縮データの送出データ量閾値未満である場合(ステップS12:NO)、ステップS6に戻り、次のデータの処理を行う。
他方、累積送出データ量が非圧縮データの送出データ量閾値以上である場合(ステップS12:YES)、圧縮判定部103は、内部メモリに記憶するデータの記録先の保持部を、圧縮前データ保持部105に書き換え、累積送出データ量を0にリセットする(ステップS13)。
また、このとき転送性能値算出部109及び圧縮性能値算出部110は、それぞれ転送性能値及び圧縮性能値を算出する。
次に、圧縮割合算出部111は圧縮割合を算出し、圧縮判定部103は、当該圧縮割合に基づいて圧縮データの送出データ量閾値及び非圧縮データの送出データ量閾値を算出し、内部メモリに記録する(ステップS14)。
そして、ステップS6に戻り、次のデータの処理を行う。
また、ステップS10において圧縮判定部103は、データの記録先の保持部として圧縮前データ保持部105を選択している場合(ステップS10:圧縮前)、取得部102が取得したデータを圧縮前データ保持部105に記録する(ステップS15)。
次に、圧縮判定部103は、内部メモリに記憶する累積送出データ量が、圧縮データの送出データ量閾値以上であるか否かを判定する(ステップS16)。累積送出データ量が圧縮データの送出データ量閾値未満である場合(ステップS16:NO)、ステップS6に戻り、次のデータの処理を行う。
他方、累積送出データ量が圧縮データの送出データ量閾値以上である場合(ステップS16:YES)、圧縮判定部103は、内部メモリに記憶するデータの記録先の保持部を、非圧縮データ保持部104に書き換え、累積送出データ量を0にリセットする(ステップS17)。
また、このとき転送性能値算出部109及び圧縮性能値算出部110は、それぞれ転送性能値及び圧縮性能値を算出する。
次に、圧縮割合算出部111は圧縮割合を算出し、圧縮判定部103は、当該圧縮割合に基づいて圧縮データの送出データ量閾値及び非圧縮データの送出データ量閾値を算出し、内部メモリに記録する(ステップS18)。
そして、ステップS6に戻り、次のデータの処理を行う。
なお、ステップS6において取得部102は、分析装置2に転送すべきデータがないと判定した場合(ステップS6:NO)、つまり分析装置2に転送すべきデータを全て取得した場合、データ取得処理を終了する。
次に、本実施形態による蓄積装置1のデータ転送処理について説明する。
図3は、本発明の第1の実施形態による蓄積装置1のデータ転送処理の動作を示すフローチャートである。
まず、転送部108は、転送すべきデータを取得する保持部として、非圧縮データ保持部104を選択し、内部メモリに記録する(ステップS101)。
次に、転送部108は、転送すべき全てのデータの転送を完了しているか否かを判定する(ステップS102)。
データの転送が完了しているかの判定方法としては、例えば、管理者などによる操作や割り込み処理などにより、外部から処理の終了要求を入力した場合が挙げられる。
転送部108は、全てのデータの転送を完了していないと判定した場合(ステップS102:NO)、転送すべきデータを取得する保持部として選択している保持部(非圧縮データ保持部104または圧縮後データ保持部106)にデータが格納されているか否かを判定する(ステップS103)。
転送すべきデータを取得する保持部として選択している保持部にデータが格納されていると判定した場合(ステップS103:YES)、当該保持部からデータを取り出す(ステップS104)。
そして、転送部108は、取り出したデータに、当該データの種類を識別する情報を付与して、ネットワーク3を介して分析装置2に転送する(ステップS105)。
ここで、データの種類を識別する情報とは、当該データが圧縮されたものであるか否かを示す情報である。なお転送部108が、非圧縮データ保持部104が記憶するデータを転送している場合、当該転送処理に並行して、圧縮部107は、圧縮前データ保持部105が記憶するデータを圧縮し、逐次圧縮後データ保持部106に記録している。これにより、転送部108が、非圧縮データ保持部104が記憶するデータを転送し終えたときに、圧縮部107は、圧縮前データ保持部105が記憶するデータを全て圧縮し終えることとなる。
そしてステップS102に戻り、次のデータの転送を行う。
他方、ステップS103において、転送すべきデータを取得する保持部として選択している保持部にデータが格納されていないと判定した場合(ステップS103:NO)、転送部108は、内部メモリに記憶している、転送すべきデータを取得する保持部の情報を切り替える(ステップS106)。
つまり、内部メモリに記憶している転送すべきデータを取得する保持部が非圧縮データ保持部104である場合、転送部108は、転送すべきデータを取得する保持部を圧縮後データ保持部106に切り替える。
他方、内部メモリに記憶している転送すべきデータを取得する保持部が圧縮後データ保持部106である場合、転送部108は、転送すべきデータを取得する保持部を非圧縮データ保持部104に切り替える。そしてステップS102に戻り、次のデータの転送を行う。
他方、ステップS102において転送部108は、全てのデータの転送を完了したと判定した場合(ステップS102:YES)、データ転送処理を終了する。
なお、蓄積装置1からデータの転送を受けた分析装置2は、ステップS105で付与された情報に基づいてデータが圧縮されたデータであるか否かを判定し、それに応じた記憶部101にデータを振り分けて、圧縮されているデータのみを解凍処理する。これにより、分析装置2は、性能を落とすことなくデータを受信することができる。
このように、本実施形態によれば、蓄積装置1は、圧縮性能に見合った圧縮割合に従って圧縮すべきデータと圧縮すべきでないデータとに割り振ることで、転送性能を低下させることなく、圧縮処理と転送処理とを並行して実行することができる。これにより、圧縮による転送データ量の削減分だけ転送時間が短縮されるため、実効転送スループットを向上させることができる。
また、本実施形態によれば、蓄積装置1の転送性能値算出部109及び圧縮性能値算出部110は、転送処理及び圧縮処理の実行中に、転送性能と圧縮性能とを算出し、圧縮割合を算出しなおす(ステップS14、ステップS18)。これにより、常に状況に合った最適な圧縮割合を設定することができる。
《第2の実施形態》
次に、本発明の第2の実施形態について説明する。
図4は、本発明の第2の実施形態に係る分析システムの構成を示す概略ブロック図である。
第2の実施形態に係る分析システムの蓄積装置1は、第1の実施形態に係る蓄積装置1の構成に加えて、さらにリソース制御部112を備える。
リソース制御部112は、自装置の空き計算リソースを特定し、当該空き計算リソースの有無に基づいて、圧縮部107の処理並列数や計算リソースの利用優先度の制御を行う。
なお、計算リソースとは、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などの処理演算器や、RAM(Random Access Memory)などの主記憶装置などのことである。
ここで、蓄積装置1の計算リソースとして、4つのコアからなるCPUが使用されている場合を例に、第2の実施形態に係る蓄積装置1の動作について説明する。リソース制御部112が、転送処理中に計算リソースの負荷を計算し、2つのコアの使用率が100%であり、残りのコアの使用率が0%であると判定した場合、リソース制御部112は、圧縮部107の処理並列数を2つ上げる。
これにより、圧縮部107の圧縮性能が向上するため、圧縮割合算出部111が算出する圧縮割合は、処理並列数を上げる前と比較して高くなる。これにより、転送するデータに対する圧縮すべきデータ量が増えるため、実効転送スループットをさらに向上させることができる。
以上、図面を参照してこの発明のいくつかの実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
例えば、上述した実施形態では、本発明に係るデータ転送装置を蓄積装置1に実装する場合について説明したが、これに限られず、記憶部101を備える蓄積装置1とデータ転送装置とを別個に備える構成であっても良い。
また、上述した実施形態では、圧縮割合算出部111がデータ量に基づいて圧縮割合を算出する場合について説明したが、これに限られない。
例えば、取得部102が取得するデータのデータ量が一定である場合は、データ取得回数に基づいて圧縮割合を算出しても良いし、取得部102によるデータ取得スループットが一定である場合は、時間を基に圧縮割合を算出しても良い。
また、上述した実施形態では、初期設定において圧縮判定部103がデータの記録先の保持部として、非圧縮データ保持部104を選択し(ステップS5)、転送部108が転送すべきデータを取得する保持部として非圧縮データ保持部104を選択する(ステップS101)場合について説明したが、これに限られない。
例えば、初期設定において、データの記録先の保持部として、圧縮前データ保持部105を選択しても良いし、転送すべきデータを取得する保持部として圧縮後データ保持部106を選択しても良い。
但し、初期状態においては圧縮部107による圧縮処理が完了していないため、圧縮後データ保持部106にはデータが記録されていないので、この場合、転送部108はすぐに転送処理を開始することができない。
《基本構成》
図5は、本発明によるデータ転送装置の基本構成を示す概略ブロック図である。
上述した実施形態では、本発明によるデータ転送装置の一実施形態として図1、図4に示す構成について説明したが、本発明によるデータ転送装置の基本構成は、図5に示すとおりである。
すなわち、本発明によるデータ転送装置は、圧縮判定部103、圧縮部107、転送部108、転送性能値算出部109、圧縮性能値算出部110、圧縮割合算出部111を基本構成とする。
圧縮判定部103は、圧縮割合算出部111が算出した圧縮割合に基づいて、抽出したデータの一部を圧縮部107に出力し、残りを転送部108に出力する。
圧縮部107は、データを圧縮する。転送部108は、データを他の装置に転送する。
転送性能値算出部109は、転送部108が単位時間あたりに転送することができるデータ量を示す転送性能値を算出する。圧縮性能値算出部110は、圧縮部107が単位時間あたりに圧縮することができるデータ量を示す圧縮性能値を算出する。
圧縮割合算出部111は、上記圧縮性能値と上記転送性能値とに基づいて、転送部108が転送すべきデータに対する圧縮部107が圧縮すべきデータ量の割合を示す圧縮割合を算出する。
これにより、データ転送装置は、圧縮性能の良否に依存せずに実効転送スループットを向上させることができる。
上述のデータ転送装置は内部に、コンピュータシステムを有している。
そして、上述した各処理部の動作は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。
ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。
また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
この出願は、2012年8月7日に出願された日本出願特願2012−174802号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
本発明によれば、圧縮性能の良否に依存せずに実効転送スループットを向上させることができる。
1…蓄積装置
2…分析装置
3…ネットワーク
101…記憶部
102…取得部
103…圧縮判定部
104…非圧縮データ保持部
105…圧縮前データ保持部
106…圧縮後データ保持部
107…圧縮部
108…転送部
109…転送性能値算出部
110…圧縮性能値算出部
111…圧縮割合算出部
112…リソース制御部

Claims (10)

  1. データを圧縮する圧縮部と、
    前記圧縮部が単位時間あたりに圧縮することができるデータ量を示す圧縮性能値を算出する圧縮性能値算出部と、
    データを他の装置に転送する転送部と、
    前記転送部が単位時間あたりに転送することができるデータ量を示す転送性能値を算出する転送性能値算出部と、
    前記圧縮性能値と前記転送性能値とに基づいて、前記転送部が転送すべきデータに対する前記圧縮部が圧縮すべきデータ量の割合を示す圧縮割合を算出する圧縮割合算出部と、
    データを記憶する記憶部から転送すべきデータを抽出し、前記圧縮割合算出部が算出した圧縮割合に基づいて、抽出したデータの一部を前記圧縮部に出力し、残りを前記転送部に出力する圧縮判定部と
    を備え、
    前記圧縮部と前記転送部は並行して処理を行う
    ことを特徴とするデータ転送装置。
  2. 前記圧縮部により圧縮すべきデータを保持する圧縮前データ保持部と、
    前記圧縮部が圧縮したデータを保持する圧縮後データ保持部と、
    前記圧縮部による圧縮をせずに転送するデータを保持する非圧縮データ保持部と
    を更に備え、
    前記圧縮判定部は、データを記憶する記憶部から転送すべきデータを抽出し、前記圧縮割合算出部が算出した圧縮割合に基づいて、抽出したデータの一部を前記圧縮前データ保持部に記録し、残りを前記非圧縮データ保持部に記録し、
    前記転送部は、前記圧縮後データ保持部と前記非圧縮データ保持部との何れか一方の保持部が記憶するデータを他の装置に転送し、当該保持部が記憶する全てのデータを転送し終えたときに、他方の保持部が記憶するデータを他の装置に転送する
    ことを特徴とする請求項1に記載のデータ転送装置。
  3. 前記圧縮割合は、前記圧縮性能値による圧縮に要する時間と前記転送性能値による転送に要する時間とが同一となるようなデータ量の割合である
    ことを特徴とする請求項1または請求項2に記載のデータ転送装置。
  4. 前記圧縮性能値算出部は、前記圧縮部によるデータの圧縮率を算出し、
    前記圧縮割合算出部は、前記圧縮性能値と前記転送性能値と前記圧縮率とに基づいて、前記圧縮割合を算出する
    ことを特徴とする請求項1から請求項3の何れか1項に記載のデータ転送装置。
  5. 前記圧縮割合は、前記圧縮性能値と前記転送性能値の和から、前記転送性能値に前記圧縮率を乗じた値を減じた値で、前記圧縮性能値を除算した値である
    ことを特徴とする請求項4に記載のデータ転送装置。
  6. 自装置の余剰計算リソース量に応じて、前記圧縮部の処理に対するリソース割り当てを行うリソース制御部を備えることを特徴とする請求項1から請求項5の何れか1項に記載のデータ転送装置。
  7. 単位時間あたりに圧縮することができるデータ量を示す圧縮性能値を算出する圧縮性能値算出ステップと、
    単位時間あたりに転送することができるデータ量を示す転送性能値を算出する転送性能値算出ステップと、
    前記圧縮性能値と前記転送性能値とに基づいて、転送すべき全データに対する圧縮した後に転送するデータの割合を示す圧縮割合を算出する圧縮割合算出ステップと、
    データを記憶する記憶部から転送すべきデータを抽出する抽出ステップと、
    前記圧縮割合に基づいて、抽出したデータの一部を圧縮する圧縮ステップと、
    前記圧縮ステップにおいて圧縮したデータと残りのデータとを他の装置に転送する転送ステップと
    を備え、
    前記圧縮ステップと前記転送ステップを並行して実行する
    ことを特徴とするデータ転送方法。
  8. 前記圧縮割合に基づいて、前記抽出したデータの一部を圧縮前データ保持部に記録し、残りを非圧縮データ保持部に記録する圧縮判定ステップを更に備え、
    前記圧縮ステップは、前記圧縮前データ保持部が記憶するデータを逐次圧縮して圧縮後データ保持部に記録し、
    前記転送ステップは、前記圧縮後データ保持部と前記非圧縮データ保持部との何れか一方の保持部が記憶するデータを他の装置に転送し、当該保持部が記憶する全てのデータを転送し終えたときに、他方の保持部が記憶するデータを他の装置に転送する
    ことを特徴とする請求項7に記載のデータ転送方法。
  9. コンピュータを、
    データを圧縮する圧縮部、
    前記圧縮部が単位時間あたりに圧縮することができるデータ量を示す圧縮性能値を算出する圧縮性能値算出部、
    データを他の装置に転送する転送部、
    前記転送部が単位時間あたりに転送することができるデータ量を示す転送性能値を算出する転送性能値算出部、
    前記圧縮性能値と前記転送性能値とに基づいて、前記転送部が転送すべきデータに対する前記圧縮部が圧縮すべきデータ量の割合を示す圧縮割合を算出する圧縮割合算出部、
    データを記憶する記憶部から転送すべきデータを抽出し、前記圧縮割合算出部が算出した圧縮割合に基づいて、抽出したデータの一部を前記圧縮部に出力し、残りを前記転送部に出力する圧縮判定部
    として機能させ、
    前記圧縮部と前記転送部は並行して処理を行う
    ことを特徴とするプログラム。
  10. 前記コンピュータを、
    前記圧縮部により圧縮すべきデータを保持する圧縮前データ保持部と、
    前記圧縮部が圧縮したデータを保持する圧縮後データ保持部と、
    前記圧縮部による圧縮をせずに転送するデータを保持する非圧縮データ保持部としても機能させ、
    前記圧縮判定部は、データを記憶する記憶部から転送すべきデータを抽出し、前記圧縮割合算出部が算出した圧縮割合に基づいて、抽出したデータの一部を前記圧縮前データ保持部に記録し、残りを前記非圧縮データ保持部に記録し、
    前記転送部は、前記圧縮後データ保持部と前記非圧縮データ保持部との何れか一方の保持部が記憶するデータを他の装置に転送し、当該保持部が記憶する全てのデータを転送し終えたときに、他方の保持部が記憶するデータを他の装置に転送する
    ことを特徴とする請求項9に記載のプログラム。
JP2014529389A 2012-08-07 2013-07-04 データ転送装置、データ転送方法、及びプログラム Pending JPWO2014024610A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012174802 2012-08-07
JP2012174802 2012-08-07
PCT/JP2013/068368 WO2014024610A1 (ja) 2012-08-07 2013-07-04 データ転送装置、データ転送方法、及びプログラム

Publications (1)

Publication Number Publication Date
JPWO2014024610A1 true JPWO2014024610A1 (ja) 2016-07-25

Family

ID=50067850

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014529389A Pending JPWO2014024610A1 (ja) 2012-08-07 2013-07-04 データ転送装置、データ転送方法、及びプログラム

Country Status (4)

Country Link
US (1) US9769241B2 (ja)
EP (1) EP2884398A4 (ja)
JP (1) JPWO2014024610A1 (ja)
WO (1) WO2014024610A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9491103B2 (en) * 2014-02-28 2016-11-08 Qualcomm Incorporated Introducing uncompressed packets in compression flow based on flow control
US20150271023A1 (en) * 2014-03-20 2015-09-24 Northrop Grumman Systems Corporation Cloud estimator tool
WO2015145532A1 (ja) * 2014-03-24 2015-10-01 株式会社日立製作所 ストレージシステム及びデータ処理方法
JP6273969B2 (ja) * 2014-03-28 2018-02-07 富士通株式会社 データ加工装置、情報処理装置、方法、およびプログラム
US10412619B2 (en) * 2014-11-14 2019-09-10 Qualcomm Incorporated Buffer status report for eDCS
US10277248B2 (en) * 2015-07-07 2019-04-30 Tidal Systems, Inc. Compression engine with consistent throughput
CN110391873B (zh) * 2018-04-20 2022-02-11 伊姆西Ip控股有限责任公司 用于确定数据传送方式的方法、装置以及计算机程序产品

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62182919A (ja) 1986-02-07 1987-08-11 Fujitsu Ltd デ−タ転送制御装置
JPH01108631A (ja) 1987-10-21 1989-04-25 Fujitsu Ltd データ転送処理方式
JPH05145437A (ja) * 1991-11-21 1993-06-11 Hitachi Ltd データ伝送システム
JPH07162460A (ja) 1993-12-10 1995-06-23 Nec Eng Ltd データ転送装置
JP2746092B2 (ja) 1993-12-20 1998-04-28 日本電気株式会社 ファイル転送方式
JPH08147251A (ja) 1994-11-18 1996-06-07 Hitachi Ltd 並列計算機
US8001294B2 (en) 2004-09-28 2011-08-16 Sony Computer Entertainment Inc. Methods and apparatus for providing a compressed network in a multi-processing system
WO2006054618A1 (ja) 2004-11-17 2006-05-26 Naltec Inc. 周辺装置に対してデータを転送するための方法および装置
JP4615337B2 (ja) * 2005-03-16 2011-01-19 株式会社日立製作所 ストレージシステム
JP2008176420A (ja) 2007-01-16 2008-07-31 Matsushita Electric Ind Co Ltd データ転送方法、データ転送装置およびデバッグ装置
JP5104740B2 (ja) * 2008-12-10 2012-12-19 富士通株式会社 データ転送装置、データ転送方法及びデータ転送プログラム
JP5712609B2 (ja) * 2010-12-24 2015-05-07 富士通株式会社 データ処理装置及びデータ記録方法

Also Published As

Publication number Publication date
US20150180936A1 (en) 2015-06-25
EP2884398A4 (en) 2016-07-06
US9769241B2 (en) 2017-09-19
WO2014024610A1 (ja) 2014-02-13
EP2884398A1 (en) 2015-06-17

Similar Documents

Publication Publication Date Title
WO2014024610A1 (ja) データ転送装置、データ転送方法、及びプログラム
US8812639B2 (en) Job managing device, job managing method and job managing program
CN108446176B (zh) 一种任务分配方法、计算机可读存储介质及终端设备
EP3000050B1 (en) Efficient data compression and analysis as a service
US9698824B2 (en) Data transfer device, data transfer system, method for compressing and transferring data, and program
KR101867286B1 (ko) 작업 부하를 고려한 하드웨어 가속화 기반의 대규모 데이터의 분산 처리 장치 및 방법
US11080090B2 (en) Method and system for scalable job processing
WO2021159638A1 (zh) 集群队列资源的调度方法、装置、设备及存储介质
US9244737B2 (en) Data transfer control method of parallel distributed processing system, parallel distributed processing system, and recording medium
WO2017092582A1 (zh) 一种数据处理方法和装置
JP6191691B2 (ja) 異常検出装置、制御方法、及びプログラム
JP6269257B2 (ja) 情報処理装置、情報処理システム、情報処理装置の制御プログラム、および情報処理装置の制御方法
JP2008217332A (ja) 仮想マシン管理システム、その方法及びそのプログラム
JP6340481B2 (ja) データキャッシング方法、装置及び記憶媒体
CN107864391B (zh) 视频流缓存分发方法及装置
CN105094981B (zh) 一种数据处理的方法及装置
CN104008016A (zh) 信息处理装置、资源控制方法、以及程序
US8502710B2 (en) Methods and computer program products for providing a compressed circular buffer for efficient storage of network performance data
CN109213745B (zh) 一种分布式文件存储方法、装置、处理器及存储介质
JP4569614B2 (ja) データ変換システム
JP6772883B2 (ja) 読込プログラム、読込方法および情報処理装置
CN113452630B (zh) 数据合流方法、数据拆分方法、装置、设备及存储介质
CN102098215A (zh) 一种多应用收包的优先级管理方法
CN106534312A (zh) 一种面向移动设备的服务请求选择与调度方法
CN102427405A (zh) 话单关联方法、系统以及相关设备