ビッグデータフレームワークHadoopの総合的な分析は、毎分の性能を無駄にしません

様々な輸送寸法は、タスクのステータス、エラー、コンピューティングリソース、ストレージ、およびユーザーは、それによってHadoopのプラットフォーム上のユーザー体験を向上、プラットフォームの健康状態を把握するのに役立つ他の測定値に達するがあります。

製品の使用を理解するという点でプロダクトマネージャーのための最も重要なものの一つです。しかし、少し不安定なこの問題に関して、このような製品のHadoopプラットフォームのため。様々な輸送寸法は、タスクのステータス、エラー、コンピューティングリソース、ストレージ、およびユーザーは、それによってHadoopのプラットフォーム上のユーザー体験を向上、プラットフォームの健康状態を把握するのに役立つ他の測定値に達するがあります。消費者向けインターネット、モバイルインターネットのプロダクトマネージャーが懸念され、同じことがまた存在します。例えば、消費財に懸念している、彼らは通常、ユーザの活動を中心に測定し、婚約、収益、コンバージョン率、定着率を行いました。

本論文では、実行するために使用パターンを分析し、Hadoopのプラットフォーム上で、ユーザーが測定するために取得する基本的な方法のいくつかを提示し、その解析結果に基づいて、商品企画。

Hadoopのユーザーメトリックは、私がここで使用し、Hadoopのディストリビューションに使用基づいて変更しますClouderaのHadoopのの分布があります。Clouderaの会社は、Clouderaのナビゲーターと呼ばれる優れたツールを提供しています。設定ツールは、より良いデータとその使用の使用を理解するためには、イベント収集、表示、およびその他の監査機能を提供します。ツールの需要がはるかに簡単に展望台や監査を行う、ほとんどのアプリケーションシナリオを満たすことができます。Clouderaのナビゲーターは、既存の監視ツールとの統合のために、強力なAPIの範囲を提供しClouderaのマネージャーの一部です。さらに、Clouderaのマネージャは、各測定値がほぼリアルタイムトラッキングに可視化することができるための制御パネルは、構成することができる提供します。

ClouderaManagerのAPIの使用説明

プロダクトマネージャーはナビゲーターがない十分な機能を提供して感じて、彼らはより多くのカスタマイズされたメトリックを表示したい、とコントロールパネル上のより多くの豊富な可視化機能、そしてClouderaのマネージャーAPI(CMAPI)は素晴らしいツールですがあるかもしれません。REST APIを使用すると、KPIが重合し、それによって要約することができますしたいメトリックの数を提供します。本明細書で述べたように、すべてのアクセスポイントは、動作データの共通セットを有し、JSON API呼び出しは、オブジェクトが、様々なインターフェイスに適用することが返さ。

次の例では、我々はいくつかの時間YARN内部Hadoopクラスタのためのタスクを実行するために、ユーザー状態へのアクセスを照会するClouderaのマネージャーの使用があるでしょう。JSON形式で得られた結果の数を指定されたパラメータと期間を渡すなどのAPIを呼び出す方法を示すために、Pythonスクリプトを使用しました。

注:この記事は、Python 2.7のバージョンを使用しています。

私たちは、アクセスポイントを見て「yarnApplication」 - YARNコンテナのプロパティを実行するユーザーを返しますインターフェイスを呼び出します。アプリケーションID、アプリケーション名、開始時刻、終了時刻、ユーザー名、リソースプールおよびその他のプロパティ(リソースのプールに提出アプリケーション)を含む、APIを介して利用可能です。たとえば、「yarnmetrics.py」の観点から、という名前のファイルを作成し、ファイルを開き、次のように入力します。

1)必要なライブラリを導入

輸入JSON

輸入SYS

importurllib2

fromdatetimeインポート日時で、timedelta

2)返されるレコードの数、デフォルトでは、単一のコールレコード1000の最大数を設定します。

3)また、APIが利用可能なタイムスライスを抽出する必要があります。例えば、範囲は、オフセット時間がとら現在のタイムスライスに基づいて設定することができます。この場合、私は九時から午後五時にそのAPIが返すデータを願っています。

cur_time =(datetime.now() - はtimedelta(日= 1))

TO_TIME = cur_time.replace(時間= 17分= 00秒= 00マイクロ秒= 0).isoformat()

FROM_TIME = yes_time.replace(時間= 8、分= 0、第二= 0、マイクロ= 0).isoformat()

4)のパラメータは、スクリプトに渡されました。私たちは、スクリプトつのアクセスポイントのAPI呼び出しを伝えるためにパラメータを渡します。

リミッター= 20

メトリック= sys.argvの[1]

5)APIアクセスポイントフォーマット/ API / V7 /クラスタ/ {clusterNameの} /サービス/} {serviceNameを/ yarnApplications

この呼び出しは、Clouderaのマネージャのクラスタ上で、あなたの特定の構成に依存します。サービスやメトリクスの役割の詳細については、クリックしてください。

ここでは、シナリオを想定しています。入ってくる「アプリケーション」、次の呼び出しが実行された場合。FROM_TIME、TO_TIME ISO形式は、内側リミッタを含むタイムスタンプ、通過するために必要な三つのパラメータでなければなりません

6)Clouderaのマネージャーの構成に応じてインストールされている、あなたは、そのサーバーで認証する必要があります。だから我々はbase64エンコードを使用します。注意:異なるセキュリティ環境や構成のため、認証するさまざまな方法があるでしょう。デモの目的のために、次の例を簡潔にします:

"ベーシック" +( ":" ユーザー+ +パスワード)を返す。.encode( "BASE64")をrstrip()

7)今、私たちは、APIの呼び出しを行うことができ、通話要求は、符号化データに含まれています。

8)リクエストを送信し、JSONファイルに結果を出力します。

REQ =はurllib2.Request(URL)

req.add_header( '受け入れる'、 'アプリケーション/ JSON')

符号化されたユーザデータが取り込まreq.add_header(「認可」、「基本fsfadgibberishsdfdfsfF =」)#

9)今回は、アップ実行中のタスク、特定の期間のすべての情報が含まれているJSONファイルを取得することができます。

あなたは、次のコマンドでスクリプトを実行することができます:python yarnmetrics.pyアプリケーションを

このデータを使用すると、に基づいて、自分の好みにデータ可視化ツールを分析することができます。

観点たとえば、impalaQueriesを通じてインターフェースインパラデータベースにアクセスするユーザーのリストを取得することができます。

又は上記糸インターフェースの日常的な使用によって得られます。

 

 

このとき、任意の時間間隔までのクラスタの使用を得るためにこのようなクーロンOozieなどのツールや自動化されたプロセスを使用することが難しいことではありません。あなたがコントロールパネル、またはユーザ関連クエリを自動化する必要がある場合のHadoopも可能であるに、これらの構造化JSONデータを記述します。あなたはハイブテーブルにこれらのJSONファイルを書き込むことができ、簡単なワークフローは、その後、あなたはハイブに、さらにコントロールパネルにアクセスするための視覚化ツールを使用することができます。

推奨読書の記事

40 +すべてここにビッグデータ開発[W]チュートリアルの年俸!

ゼロベースのビッグデータクイックスタートチュートリアル

Javaの基礎コース

チュートリアルをWebベースのフロントエンド開発

ビッグデータ時代6つの事を知っている必要があります

ビッグデータフレームワークHadoopのトップ10の神話

ビッグデータ開発エンジニア給与30Kの概要を体験?

我々は問題が発生したビッグデータフレームワークのHadoop

おすすめ

転載: blog.csdn.net/yuyuy0145/article/details/92425651