特許
J-GLOBAL ID:202003009041464977

Hadoopに基づいて、データマージモジュールとHBaseキャッシュモジュールを備えるHDFSから複数の2MB以下の小さなファイルを読み込む方法

発明者:
出願人/特許権者:
代理人 (1件): 鄒 静文
公報種別:特許公報
出願番号(国際出願番号):特願2018-147288
公開番号(公開出願番号):特開2019-204472
特許番号:特許第6695537号
出願日: 2018年08月04日
公開日(公表日): 2019年11月28日
請求項(抜粋):
【請求項1】Hadoopに基づいて、データマージモジュールとHBaseキャッシュモジュールを備えるHDFSから複数の2MB以下の小さなファイルを読み込む方法であって、 前記HDFSが、前記読み込む方法はデータマージモジュールとHBaseキャッシュモジュールを備えるHDFSシステムに適用され、前記読み込む方法は:ユーサーによってインプットされる小さなファイルの読み込みコマンドを受信し、前記読み込みコマンド中に前記ユーザIDと小さなファイルの名前を含み、前記前記ユーザIDと前記小さなファイルの名前にしたがって前記HBaseキャッシュモジュールを照会し、対応するファイルコンテンツが出たら、前記HBaseキャッシュモジュールによって照会されたファイルコンテンツを戻し、そうでなければ、前記小さなファイルの名前によって前記HDFSシステムのデータベースを照会して対応するファイルコンテンツが照会されたかどうかを判断し、イエスであれば前記データベースによって照会されたファイルコンテンツを戻し、そうでなければ、HadooparchiveツールのAPIを呼び出して前記小さなファイルの名前の対応するHARファイルにアクセスして前記HARファイルを戻し、前記データマージモジュールの採用するデータマージメソッドが以下を含む:ステップA:クライアントがストレージされるファイルをアップロードした後で、HDFSのすべてのファイルをトラバースし、ユーザアクセスプリファレンスモデルを用いて、前記ストレージされるファイルの関連ファイルコレクションを見つけ、ここで、前記ユーザアクセスプリファレンスモデルはユーザアクセスログレコードに基づいている,ステップB:前記関連ファイルコレクションのミドルファイルと前記ストレージされるファイルを順にマージするキューに追加する,ステップC:前記マージするキューのすべてのファイルの総サイズが128 MBを超えるかどうかを判断し、イエスであれば、ステップDに進み、そうでなければ、ステップEに進む,ステップD:前記マージするキューのすべてのファイルを一つのデータブロックにマージし、前記マージするキューのファイル情報をクリアし、マージしたファイルのソースファイルを削除して、ステップBを戻す,ステップE:前記関連ファイルコレクションのミドルファイルと前記ストレージされるファイルが全部前記マージするキューに追加されたかどうかを判断し、イエスであれば、前記マージするキューのすべてのファイルを一つのデータブロックにマージし、前記マージするキューのファイル情報をクリアし、マージしたファイルのソースファイルを削除して、ステップFに進み、そうでなければ、ステップBに進む,ステップF:すべてのマージしたデータブロックをHDFSシステムにストレージする,前記ユーザアクセスプリファレンスモデルがユーザアクセスログレコードから統計されたものであり、具体的には:ユーザアクセスログレコードからアクティブユーザセットを統計し、beanオブジェクトが前記アクティブユーザセットによってアクセスされた小さなファイルを表すために使用され、その中に、前記beanオブジェクトのプロパティが該小さなファイルをアクセスするユーザID、ユーザがアクセスした小さなファイルの名前及び該小さなファイルがアクサスされた回数を含み、JDBCテクノロジを用いて、前記beanオブジェクトを永続にMysql前記データベースにストレージし、ストレージされたデータにしたがって、任意の二つの異なるアクセス動作の類似性を計算し、前記任意の二つの異なるアクセス動作の類似性が正の場合、前記任意の二つのアクセス動作のユーザが類似ユーザであり、類似ユーザのIDを記録し、関連ファイルコレクションを使って、類似ユーザによってアクサスされ、関連付けられたファイル情報をストレージし、前記関連ファイルコレクションにしたがって、前記ユーザアクセスプリファレンスモデルを構築し、前記HBaseキャッシュモジュールの採用するキャッスメソッドにおいて、ユーザアクセスログレコードを取得し、前記ユーザアクセスログレコードより前記アクティブユーザセットを統計し、対数線形モデルをあわせて、前記アクティブユーザセットの各アクティブユーザにアクサスされたファイルの人気予測値をアカウントして、人気予測値によって各ファイルを降順にソートし、ファイルの上位20%をホットスポットファイルとしてマークし、前記ホットスポットファイルを取得し、Hbaseデータベースを採用して前記ホットスポットファイルの関連情報をキャッシュし、前記前記ユーザアクセスログレコードからアクティブユーザセットを統計するについて、具体的には、アクセスされたソースの接尾辞がjpgであるレコード行を前記ユーザアクセスログレコードからフィルタリングし、前記レコード行がユーザID、アクセスページURL、アクセス開始時刻、アクセス状況、アクセストラフィックを含み、レコード解析クラスを作成して前記レコード行を解析し、二次元配列を使用してビジターIPと小さなファイルの名前をストレージし、ビジターIPを前記二次元配列でトラバースし、HashMapコレクションを使用して各ビジターIPのトラフィックを統計し、前記HashMapコレクションのKey値がビジターIPであり、Value値がトラフィックであり、前記HashMapコレクションをValue値の降順でソートし、ビジターIPの上位20%をフィルタリングし、ArrayListコレクションを使用して該IPサブセットをストレージし、アクティブユーザセットとしてマークし、前記対数線形モデルをあわせて、前記アクティブユーザセットの各アクティブユーザにアクサスされたファイルの人気予測値をアカウントして、人気予測値によって各ファイルを降順にソートし、ファイルの上位20%をホットスポットファイルとしてマークし、具体的には、ArrayListコレクションから抽出されたビジターIPを、前記二次元配列から抽出されたビジターIPと照合し、一致が出たら、合致するビジターIPをキーワードとして、各ユーザのアクセス開始時刻を照会して、対数線形モデを用いて、前記アクティブユーザセットの各アクティブユーザにアクセスされたファイルの人気予測値をアカウントし、人気予測値によって各ファイルを降順にソートし、ファイルの上位20%をホットスポットファイルとしてマークし、前記対数線形モデルは: であり、その中に、 がファイルiの人気予測値であり、 がファイルiが観測期間中のトラフィックであり、観測期間の長さがtであることを特徴とするHadoopに基づいて、データマージモジュールとHBaseキャッシュモジュールを備えるHDFSから複数の2MB以下の小さなファイルを読み込む方法。
IPC (3件):
G06F 16/13 ( 201 9.01) ,  G06F 16/182 ( 201 9.01) ,  G06F 16/185 ( 201 9.01)
FI (3件):
G06F 16/13 100 ,  G06F 16/182 ,  G06F 16/185
引用特許:
出願人引用 (1件) 審査官引用 (1件)

前のページに戻る