Object Storage + Sub Account の連携
    • PDF

    Object Storage + Sub Account の連携

    • PDF

    Article Summary

    Classic環境で利用できます。

    NAVERクラウドプラットフォームのCloud Hadoop、Object Storage、Sub Accountを連携して使用する方法を説明します。

    Bigdata Service

    • Cloud Hadoop:Hadoop、HBase、Spark、Hive、Prestoなどのオープンソースフレームワークを手軽に構築できます。
      Cloud Hadoopに関する詳細は、こちらをご参照ください。

    • Object Storage:安全な保管が必要な場合や大規模なデータを保存する場合に活用できます。
      提供されるAPIを用いてサーバデータのバックアップや復旧用途でも活用できます。
      Object Storageに関する詳細は、こちらをご参照ください。

    • Sub Account:ユーザーをサブアカウントとして登録して特定サービスに対する権限を付与できます。
      登録された内部ユーザーは権限を付与されたサービスに対してメインアカウントと同様にサービスを利用できます。
      Sub Accountに関する詳細は、こちらをご参照ください。

    Hadoop + Object Storage + Sub Accountの連携と使用

    Sub Accountの作成とポリシーの追加

    ユーザーをサブアカウントとして登録し、特定のサービスに対する権限を付与することができます。登録された内部ユーザーは権限を付与されたサービスに対してメインアカウントと同様にサービスを利用できます。

    Sub Accountに関する詳細は、サービス > Management & Governance > Sub Accountをご参照ください。

    Sub Accountの作成方法とポリシーを追加する方法は、以下のとおりです。

    1. NAVERクラウドプラットフォームコンソールでSub Accountsサービスを作成します。

      • Sub Accountsの作成時にObject StorageにアクセスするためのAPI Keyを使用できるように、アクセスタイプ項目にあるAPIアクセスを選択して設定します。

      cloudhadoop-subaccoun-policy1_ja

    2. Sub Accountsリストで、作成したSub Accountをクリックし、[ポリシー] タブで使用ポリシーを設定します。

      • Cloud HadoopNCP_CLOUD_HADOOP_MANAGERObject StorageNCP_OBJECT_STORAGE_MANAGERポリシーを追加します。
      • ACGの変更管理のためのNCP_SERVER_MANAGERも追加します。

      cloudhadoop-subaccoun-policy2_ja

      参考

      VPC環境では、NCP_VPC_CLOUD_HADOOP_MANAGERNCP_VPC_SERVER_MANAGERを追加してください。

    3. [API Key] タブでObject StorageにアクセスするためのAPI認証キーを作成して確認します。

      cloudhadoop-subaccoun-policy3_ja

    4. Sub Account > Dashboard > サブアカウントのログインページで、このSub Accountでアクセスします。

      cloudhadoop-subaccoun-policy4_ja

    このアカウントに設定されたポリシーにより許可されたサービスのみ使用できます。

    hadoop-chadoop-use-ex3_07_ja

    Object Storageバケットの作成

    Object Storageでデータを保存するバケットを作成します。作成されたバケットは、Bucket Managementメニューで確認できます。

    cloudhadoop-objectstorage-buket1_ja

    参考

    バケットの作成に関する詳細は、Object Storageご利用ガイドを参照してください。

    Cloud Hadoopクラスタの作成

    Cloud Hadoopクラスタを作成します。
    Cloud Hadoopの作成に関する詳細は、Cloud Hadoopを開始するをご参照ください。

    Object Storageにサンプルデータをアップロード

    1. こちらにデータセットをダウンロードします。

      • ダウンロードしたファイルの圧縮を展開します。
    2. Object Storage > Bucket Managementでは、上記で作成したバケットに圧縮を展開したファイルをアップロードします。

    データの照会

    Ambari、HUE、ZeppelinなどのウェブUIでサンプルデータを照会できます。

    1. Cloud Hadoopの作成が完了すると、Ambari、HUE、ZeppelinにアクセスするためのポートをACGに追加します。

      • Ambariにアクセス(8080 port)すると、クラスタモニタリングを確認できます。

    hadoop-use-ex3_4-1_ja

    1. HUEにアクセス(8000 port)してHiveクエリでmartデータベースを作成し、ordersテーブルを作成します。
    CREATE DATABASE mart;
    
    CREATE EXTERNAL TABLE `orders2` (
            `order_id` BIGINT,
            `order_number` BIGINT,
            `days_since_prior_order` DOUBLE
    
    )
    ROW FORMAT DELIMITED
    FIELDS TERMINATED BY ','
    STORED AS INPUTFORMAT
    'org.apache.hadoop.mapred.TextInputFormat'
    OUTPUTFORMAT
    'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
    location 's3a://ncp-bigdata/input';
    
    1. データを照会します。
      • 画像はサンプルデータです。

    hadoop-use-ex3_4-2_ja

    1. Zeppelin(9995 port)にアクセスします。

    hadoop-use-ex3_4-3_ja

    1. 新規のNotebookを作成します。
    2. Hiveメタストアに登録されたordersテーブルを照会します。
      • 基本インタプリタはJDBCに指定します。
      • 例としてアップロードされたCSVファイルを対象に単純分析のみ行います。

    Ordersテーブル

    order_id:注文番号
    order_number:注文回数
    days_since_prior:最後の注文からの期間
    

    ordersテーブルでdays_since_priorは最後の注文からどれくらい経過したのか最大30日まで表示したカラムで、order_numberはそのユーザーの注文回数です。

    注文回数が増えるほど再注文までの期間が短くなると仮定し、確認してみます。

    参考

    Instacartで提供するデータを参考にして、例のために作った仮想のデータです。

    %jdbc(hive)
    SELECT order_number, AVG(days_since_prior_order)
    FROM mart.orders
    WHERE 1=1
    AND order_number IS NOT NULL
    GROUP BY order_number
    ORDER BY order_number
    

    Cloud Hadoopを使用してHUEで作成した HiveテーブルをZeppelinで照会し、チャートで可視化してみました。

    hadoop-use-ex3_4-4_ja

    チャートを見ると、注文回数の多い顧客は、次の注文までかかる日数が短いと解釈できます。

    参考
    • Object Storageを使用すると、HDFSに比べて性能は劣りますが、クラスタの終了後にも必要に応じて再度作成して同じデータを照会できるというメリットがあります。
    • Hiveメタストアを別途分離しなかったため、新規作成時にHive DDLを実行する必要があり、Zeppelin Notebookも新規にインポート(import)する必要があります。

    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.