特許
J-GLOBAL ID:202003011920646307

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

発明者:
出願人/特許権者:
代理人 (1件): 鄒 静文
公報種別:特許公報
出願番号(国際出願番号):特願2018-147289
公開番号(公開出願番号):特開2019-204473
特許番号:特許第6642650号
出願日: 2018年08月04日
公開日(公表日): 2019年11月28日
請求項(抜粋):
【請求項1】Hadoopに基づいて、データマージモジュールとHBaseキャッシュモジュールを備えるHDFSに複数の2MB以下の小さなファイルを書き込む方法であって、前記HDFSが以下を実行する: ユーサーによってインプットされる小さなファイルの書き込みコマンドを受信し、前記書き込みコマンド中にユーザIDと小さなファイルの名前を含み、ユーザIDと前記小さなファイルの名前によって前記HBaseキャッシュモジュールを照会し、対応するファイル内容が出たら、前記HBaseキャッシュモジュールによって照会された第一のファイルコンテンツに前記小さなファイルを書き込み、小さなファイルの書き込まれた第一のファイルコンテンツを前記HBaseキャッシュモジュールにアップロードして更新し、対応するファイル内容が出ないと、前記小さなファイルのファイル名によって前記HDFSシステムのデータベースを照会して対応するファイルコンテツが照会されたかどうかを判断し、イエスであれば、前記データベースに照会された第二のファイルコンテンツに前記小さなファイルを書き込み、前記小さなファイルの書き込まれた第二のファイルコンテンツを前記データベースにアップロードして更新し、そうでなければ、HadooparchiveツールのAPIを呼び出して前記小さなファイルのファイル名と対応するHARファイルにアクセスし、前記小さなファイルを書き込み、前記小さなファイルの書き込まれたHARファイルを前記データベースにアップロードして更新し、前記データマージモジュールが採用するデータマージメソッドは以下を含む:ステップA:クライアントがストレージされるファイルをアップロードした後で、HDFSのすべてのファイルをトラバースし、ユーザアクセスプリファレンスモデルを用いて、前記ストレージされるファイルの関連ファイルコレクションを見つけ、ここで、前記ユーザアクセスプリファレンスモデルはユーザアクセスログレコードに基づいている、ステップB:前記関連ファイルコレクションのミドルファイルと前記ストレージされるファイルを順にマージするキューに追加し、ステップC:前記マージするキューのすべてのファイルの総サイズが128 MBを超えるかどうかを判断し、イエスであれば、ステップDに進み、そうでなければ、ステップEに進み、ステップD:前記マージするキューのすべてのファイルを一つのデータブロックにマージし、前記マージするキューのファイル情報をクリアし、マージしたファイルのソースファイルを削除して、ステップBに戻り、ステップE:前記関連ファイルコレクションのミドルファイルと前記ストレージされるファイルが全部前記マージするキューに追加されたかどうかを判断し、イエスであれば、前記マージするキューのすべてのファイルを一つのデータブロックにマージし、前記マージするキューのファイル情報をクリアし、マージしたファイルのソースファイルを削除して、ステップFに進み、そうでなければ、ステップBに進む。ステップF:すべてのマージしたデータブロックをHDFSシステムにストレージする。前記プリファレンスモデルがユーザアクセスログレコードから統計されたもので、具体的には:前記ユーザアクセスログレコードからアクティブユーザセットを統計し、前記アクティブユーザセットにアクセスされた小さなファイルをBeanオブジェクトで表し、前記小さなファイルがサイズが2MB又は2MB以下のファイルに指し、その中に、前記オブジェクトのプロパティが該小さなファイルにアクセスユーザ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である。
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件)

前のページに戻る