Oracle Data Integrationによるビッグ・データの管理

概要:Oracle Data IntegrationによるHadoopの統合

    目的

    Oracle Data Integrationを使用すると、データの存在場所がOracle Database、Hadoop、サード・パーティのデータベース、アプリケーション、ファイルのいずれであっても、またこれらのソースの組合せであっても、すべてのデータを移動したり変換したりできます。このデモでは、その方法について説明します。"一度設計すればどこでも実行できる"という方法論を採用すると、データ変換および移動の論理的ルールに焦点を合わせることが可能になり、実装方法の選択肢は独立させ、ユースケースの変化や新しいテクノロジーの公開に合わせて進化させることができます。

    このデモでは仮想マシンBig Data Lite 4.2を使用しますが、この仮想マシンはhttp://www.oracle.com/technetwork/database/bigdata-appliance/oracle-bigdatalite-2104726.htmlからダウンロードできます。

    所要時間

    約1時間

    はじめに

    このチュートリアルは次の項に分かれています:

    1. シナリオの確認
    2. SqoopおよびOracle GoldenGateによるデータの取込み
    3. Hive、Spark、またはPigによるデータ変換
    4. Oracle Loader for HadoopによるOracle DBへのデータ・ロード
    5. Big Data SQLによるOracleからのHadoopデータ・アクセス
    6. Pigによるデータのセッション化
    7. ODIパッケージによる全ステップの実行

    シナリオ

    Oracle MoviePlexはオンラインの映画ストリーミング会社です。この会社のWebサイトでは、顧客のあらゆる対話をJSON形式の大規模なログ・ファイルに収集しています。また、映画のデータをOracleソース・データベースで管理しています。これらのソースに含まれる情報を解放し、会社のデータウェアハウスに含まれるエンタープライズ・データと結合することで、顧客の行動、提供しているサービスの効果、Webサイトのコンテンツ編成などについての理解を深めることができるに違いありません。

    この会社ではオラクルのBig Data Management Systemを使用してデータ・プラットフォームを統合し、データの分析をしやすくしていますが、これは、構造化データと非構造化データの両方を収集するデータ・リザーバ・パターンを実装し、さらなる分析のためにビッグ・データ・インスタンスにステージし、ターゲットDBにロードすることにより達成されています。

     

    Oracle Big Data Management System

    Oracle Data Integrationには、すべてのデータの統合を宣言的に定義するための統一されたツール主導のアプローチが用意されています。"一度設計すればどこでも実行できる"という考え方は、実装言語とは無関係に統合プロセスを定義でき、さまざまな環境でプロセスを実行できることを意味します。現在RDBMS上で実行されている変換は、Hadoopクラスタの実行に再利用したり、将来、Hadoop言語や最適化が利用できるようになったときにそれらに利用したりできます。


    Oracle MoviePlexで使用されている各種メカニズムを紹介します。ソース・データベースからHiveの表にデータがロードされます。このとき使用される方法は、SqoopとOracle Data Integrator(ODI)によるバルク・ロードと、Oracle GoldenGate(OGG)を使用したチェンジ・データ・キャプチャによるロードの両方です。ODIでは、Hive、Spark、またはPigを使用して結合、フィルタ、集計を適用してデータが変換されます。結果データは、最適化されたOracle Loader for Hadoop(OLH)またはOracle SQL Connector for Hadoop(OSCH)を使用してターゲットのOracle DBにアンロードできます。Oracle Big Data SQLを使用すると、HadoopデータもOracle DBで使用できます。ここではODIが、Hive表を公開するのに必要な外部表を、SQL問合せで使用されるOracle DBに透過的に生成します。

    では、Oracle Data Integration for Big Dataによるデータの移動方法と変換方法をチュートリアルで確認しましょう。

    デモのリセット

    以前にデモやハンズオン・ラボを実行したデモ環境をリセットするには、次のスクリプトを実行します:
      /home/oracle/movie/moviework/odi/reset_ogg_odi.sh
    なお、このスクリプトを実行すると、ODIリポジトリやターゲット表への変更はすべて消去されます。

準備ステップ

    Big Data Lite仮想マシンのダウンロードとインストール

    Big Data Lite 4.2のダウンロード、インストール、起動について詳しくは、Big Data Liteのデプロイメント・ガイド(英語)に書かれている手順を参照してください。

    必要なサービスの起動

      デスクトップにある「Start/Stop Services」をダブルクリックします

      Oracle Big Data Management System

      次のサービスが起動していることを、Start/Stop Servicesウィンドウで確認します:

      • ORCL Oracle Database 12c
      • Zookeeper
      • HDFS
      • Hive
      • YARN (need to scroll down)

      起動していないサービスがあれば、それを選択して「OK」をクリックします。

      Oracle Big Data Management System

    Oracle GoldenGate向けのOracle Databaseの準備

    タスクバーにある「Terminal」アイコンを1回クリックしてターミナル・ウィンドウを開きます。Terminalウィンドウに次のコマンドを入力してセットアップ・スクリプトを実行します:
    cd /home/oracle/movie/moviework/ogg
    ./enable_ogg_on_orcl.sh
    .

    これを1回だけ実行しておけば、VMのリブート後も構成は引き続き有効です。このスクリプトで実行された変更を元に戻すには、同じディレクトリにあるdisable_ogg_on_orcl.shを実行します

Part 1 -  SqoopおよびOracle GoldenGateによるデータの取込み

    この項では、Sqoopのバルク・ロードとOracle GoldenGateのチェンジ・データ・キャプチャを使用して外部ソースからHadoopにデータを取り込む方法を説明します。

    Oracle Big Data Management System

    Oracle Data IntegratorでSqoopを使用したバルク・データの取込み

      Oracle Data Integratorを使用すると、データの移動および変換に必要なマッピングを作成できます。この手順では、Oracle DBソースからHiveのターゲット表にデータをロードするために必要な既存のマッピングを確認して実行します。

        Sqoopマッピングを開いて確認

        デスクトップのツールバーからODIを起動します。

        ODIリポジトリに接続します。


        ODI Movie Demo用にあらかじめ選択されているログインを使用します。


        左側の「Designer」ナビゲータを選択し、Projectsアコーディオンを開いて、Big Data DemoDemoMappingsA - Load Movie (Sqoop)マッピングにナビゲートします。マッピングをダブルクリックして開きます。


        Sqoopマッピングがマッピング・エディタに表示されます。Oracleのソース・データ・ストアMOVIEがHiveのターゲット・データ・ストアmovie_updatesにマッピングされている様子を確認できます。データ・ストアとは、表やデータの類似したエンティティを意味するODIの用語です。これはマッピングの論理ビューで、物理実装とは無関係に変換ルールが定義されています。
        なお、movie_updatesには、操作の種類を表すopフィールドとタイムスタンプを表すtsフィールドが追加されています。これらの列は、Oracle GoldenGateによって追加される更新を使用して、後から実行されるリコンシリエーションのデータを準備するために使用されます。フィールドopは文字列'i'で初期化され、フィールドtsはOracleソース上で実行されたときにSYSDATEをコールします。

        マッピングの下にある「Physical」タブをクリックして物理設計を確認します。


        物理設計には、ソースとターゲットの実行単位であるデータベースやHadoopクラスタなどが表示されます。2つの表は別々のシステムに含まれ、アクセス・ポイントMOVIE_APによってロードが制御されることを確認できます。

        アクセス・ポイント「MOVIE_AP」を選択してデータ・ロードの構成を確認します。


        Propertiesウィンドウに移動します。このウィンドウは通常、マッピング・エディタの下にあります。Loading Knowledge Moduleセクションまでスクロール・ダウンし、セクションを展開します。ロード・ナレッジ・モジュール(LKM)としてLKM SQL to Hive SQOOPが選択されています。Sqoopを使用したHadoopへのロードはこれによって実行されます。ナレッジ・モジュールの下には、Sqoopによるロードを構成したり、並列度を設定するなどしてチューニングしたりするためのオプションのリストがあります。AdvancedタブとParalellismタブでその他のオプションを確認してください。簡略化するために、オプションはすべてデフォルトのままにしますが、実際のユースケースでは、これらのオプションを使用してSqoopによるロードをチューニングします。


        Sqoopのマッピングの実行

        マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。変更を保存するかどうか訊ねられたら「Yes」をクリックします。


        Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。


        注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません。


        実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。

        実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。


        ロードが完了すると、警告アイコンが表示されます。警告アイコンが表示されてもこの実行では問題がなく、ロードが成功したことに変わりはありません。実行ツリーを開けば、実行に含まれる個々のタスクを確認できます。


        Designerナビゲータに移動し、Models下の「HiveMovie.movie」を右クリックします。メニューから「View Data」を選択し、ロードされた行を確認します。


        Hiveのmovie表のすべての行がロードされたDataエディタが表示されます。



    Oracle GoldenGate for Big Dataを使用した変更データの取込み

      Oracle GoldenGateを使用すると、完了したトランザクションをソース・データベースから取得して、変更内容をターゲット・システムにレプリケートすることができます。Oracle GoldenGateは、システムに負荷をかけずに優れたパフォーマンスでこうした変更を確実に取得および適用します。Oracle GoldenGate for Big Dataは、GoldenGateで取得した変更をさまざまなHadoopターゲット・テクノロジーにレプリケートするためのコンポーネントです。このチュートリアルでは、OracleのMOVIE表への挿入を、対応するHiveのmovie_updates表にレプリケートします。Oracle GoldenGateはGoldenGate for Big Dataを通じてこの機能を提供し、Hive、HDFS、HBase、Flume、およびKafka向けのアダプタを提供します。この例では、最初にHiveの例を使用し、その後、Kafkaへの配信メカニズムのデモも行います。

      Hiveの例でのGoldenGateのプロセスは次のとおりです:


        Oracle GoldenGateの起動とOracleからHiveへのレプリケーションのセットアップ

        メニュー・バーの「Terminal」アイコンを1回クリックしてターミナル・ウィンドウを起動します。
        まず、GoldenGateのExtractプロセスを起動します。ターミナル・ウィンドウで次のコマンドを実行します:
        cd /u01/ogg
        ./ggsci


        次のコマンドを実行して、Capture(EMOV)プロセスを追加および起動します:
        obey dirprm/bigdata.oby
        次のコマンドを実行して、新しく追加したプロセスのステータスを確認します
        info all
        次のコマンドを入力してggsciクライアントを閉じます:
        exit
        次に、GoldenGate for Big DataのReplicatプロセスを起動します。ターミナル・ウィンドウで次のコマンドを実行します:
        cd /u01/ogg-bd
        ./ggsci


        次のコマンドを実行して、Replicat(RMOV)プロセスを追加および起動します:
        obey dirprm/bigdata.oby
        次のコマンドを実行して、新しく追加したプロセスのステータスを確認します:
        info all

        Kafkaが起動していない場合はRKAFKAプロセスがSTOPPEDと表示されますが、ここでは無視して構いません。メニュー・バーから2つ目のターミナル・ウィンドウを起動して、次のコマンドを入力します:
        sqlplus system/welcome1@orcl
        Start Oracle sqlplus
        次のコマンドを実行して、Oracle表MOVIEに新しい行を挿入します:
        INSERT INTO "MOVIEDEMO"."MOVIE" (MOVIE_ID, TITLE, YEAR, BUDGET, GROSS, PLOT_SUMMARY) VALUES ('1', 'Sharknado', '2014', '500000', '20000000', 'Flying sharks attack city');
        commit;


        注:代わりに次のコマンドを実行することもできます:

          @ /home/oracle/movie/moviework/ogg/oracle_insert_movie.sql;
        ODI Studioに移動してDesignerナビゲータを開き、Modelsアコーディオンを開きます。データ・ストア「HiveMovie.movie_updates」を右クリックして「View Data」を選択します。
        View Dataウィンドウで、ツールバーにある「Move to last row」ボタンを選択します。movie_idが1の挿入された行が、最後の行にあるはずです。一番下までスクロールしないと確認できない場合があります。エントリが表示されない場合はスクリーンをリフレッシュしてください。
        次のコマンドを実行して、Oracle表MOVIEの既存の行を更新します:
        UPDATE "MOVIEDEMO"."MOVIE" SET BUDGET=BUDGET+'10000' where MOVIE_ID='1';
        commit;


        注:代わりに次のコマンドを実行することもできます:

          @ /home/oracle/movie/moviework/ogg/oracle_update_movie.sql;
        ODI Studioのデータ・ビューアに戻ります。再度スクリーンをリフレッシュし、最終行に移動します。操作タイプが"U"でBUDGETフィールドが前の行より10000多い510000のエントリが、新たに追加されていることを確認します。
        次のコマンドを実行して、Oracle表MOVIEの既存の行を削除します:
        DELETE FROM "MOVIEDEMO"."MOVIE" WHERE MOVIE_ID='1';
        commit;


        注:代わりに次のコマンドを実行することもできます:

          @ /home/oracle/movie/moviework/ogg/oracle_delete_movie.sql;

        ODI Studioのデータ・ビューアに戻ります。再度スクリーンをリフレッシュし、最終行に移動します。movie id 1のエントリとして、操作タイプが"D"の新しいエントリがもう1つあることを確認します。これは、表からの削除を意味します。

        メニュー・バーからターミナル・ウィンドウをもう1つ起動して、次のコマンドを入力します:
        hive
        これにより、結果表の問合せができるHiveのCLIが開きます。
        Start Hive CLI
        次のコマンドを入力します:
        show create table movie_view;

        これにより、Hiveのmovie表のリコンシリエーション済みバージョンの問合せに使用できるビューが表示されます。なお、このチュートリアルでは、リコンシリエーション済みの表を作成するためにOracle Data Integratorも使用します。Reconciliation by Viewはリアルタイムのステータスを提供しますが、頻繁に問い合わせるため、より多くのリソースが消費されます。 Reconciliated view
        このビューは、次のコマンドを入力して問い合わせることができます。
        select * from movie_view;

    OracleからKafkaへのデータ・レプリケーション

      Oracle GoldenGate for Big Dataには、GoldenGateで取得した変更をKafkaにレプリケートできるコンポーネントが組み込まれています。また、CSV形式だけでなく、JSON、XML、Avroなどさまざまな形式のデータを変換する機能を提供しています。Kafkaハンドラの例でのGoldenGateのプロセスは次のとおりです:



      Kafkaのセットアップ   

        デスクトップにある「Start/Stop Services」をダブルクリックします。
        Oracle Big Data Management System
        Start/Stop Servicesウィンドウで、次のサービスが起動していることを確認します:
        • ORCL Oracle Database 12c
        • Zookeeper
        • Kafka


        Kafkaサーバーの起動

        KafkaはZookeeperを使用するため、Zookeeperサーバーが起動していない場合は先に起動する必要があります。Zookeeperインスタンスが実行中でない場合は、Kafkaにパッケージされている便利なスクリプトを使用してシングル・ノードのZookeeperインスタンスを簡単に起動できます。

        >ps -eaf | grep -i kafkaを実行して、zookeeperとKafkaが実行中かどうかを確認します。

        Kafkaとzookeeperが実行中でない場合は、手順1に従って起動します。

        トピックの作成

        "oggtopic"という名前のkafkaトピックを作成します :

        cd /usr/lib/kafka

        >bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic oggtopic --from-beginning


        テスト・メッセージの送信

        Kafkaには、ファイルまたは標準入力から入力した内容をメッセージとしてKafkaクラスタに送信するコマンドライン・クライアントが付属しています。デフォルトでは、各行が独立したメッセージとして送信されます。

        プロデューサを実行し、いくつかのメッセージを別のコンソールに入力してサーバーに送信します。

        > /usr/lib/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic oggtopic
        Test message 1
        This is another test message 2

        上の各コマンドを別のターミナルで実行している場合は、プロデューサ・ターミナルに入力したメッセージがコンシューマ・ターミナルに表示されるのを確認できます。

        すべてのコマンドライン・ツールには追加オプションがあり、引数を付けずにコマンドを実行すると詳しい使用方法が表示されます。

      Kafkaハンドラの操作

        Oracleからのレプリケーションのセットアップ:
        メニュー・バーの「Terminal」アイコンを1回クリックしてターミナル・ウィンドウを起動します。
         
        ターミナル・ウィンドウで次のコマンドを実行します:
        cd /u01/ogg-bd
        ./ggsci


        ディレクトリ/u01/ogg-bd/dirprmでbigdata.obyファイルを実行してOGG Managerを起動し、Kafka Replicatを追加してKafka Replicatを起動します。
        ggsci> obey dirprm/bigdata.oby

        ビッグ・データのreplicatプロセスが稼働しているかどうか確認します:

        ggsci> info all

        次のコマンドを入力してOracle Database Extractプロセスを起動します:
        cd /u01/ogg
        ./ggsci
        >ggsci obey dirprm/bigdata.oby
        Oracleのextractプロセスが稼働しているかどうか確認します:

        ggsci> info all

        メニュー・バーからX-ウィンドウを起動して、次のコマンドを入力します。:
        >sqlplus system/welcome1@orcl

        次のコマンドを実行して、Oracle表MOVIEに新しい行を挿入します:
        INSERT INTO "MOVIEDEMO"."MOVIE" (MOVIE_ID, TITLE, YEAR, BUDGET, GROSS, PLOT_SUMMARY) VALUES ('1', 'Sharknado', '2014', '500000', '20000000', 'Flying sharks attack city');
        commit;




        Kafkaのreplicatプロセスが生成したAVRO形式のKafkaメッセージは、Kafkaのコンシューマ・コンソールによって取得されます。

    Oracle Data IntegratorでHiveを使用して更新をマージ

      このデモでは、SqoopとOracle GoldenGateによる初期データのロードと変更のリアルタイム・レプリケーションにOracle Data Integratorを使用しました。また、更新のリコンシリエーションを臨機応変に実行するためのビューも使用しました。ODIマッピングを使用してデータを一括でマージし、元のOracle表に保持されているのと同じデータを提供することもできます。

        Hiveのマージ・マッピングを開いて確認

        ODI Studioを開きます。ODI Studioを起動してログインする方法については、パート1を参照してください。
        左側の「Designer」ナビゲータを選択し、Projectsアコーディオンを開いて、Big Data Demo→Demo→Mappings→B - Merge Movies (Hive)マッピングにナビゲートします。マッピングをダブルクリックして開きます。

        マッピングに使用される変換がマッピングの論理ビューに表示されます:

        • ソース・テーブルmovie_updatesには各映画に関する情報があり、opには操作タイプとしてI、U、およびDが、tsにはタイムスタンプ値が保持されています
        • AGGREGATEは、movie_idに基づいてすべての映画をグループ化する操作と最新のタイムスタンプをmax_tsとして計算する操作で使用されます
        • JOINは、すべての映画更新エントリと、AGGREGATEで計算された各movie_idの最新のタイムスタンプを取得する操作で使用されます
        • FILTERは、操作タイプがDの行を除外する処理に使用されます。これは、最後の更新が削除だったことを意味します
        Merge Mapping

        なお、このマッピングでは、前の項で示したHiveビューと同じロジックを使用しています。このデモでは、リコンシリエーション・ビューと同様に、変換をグラフィカルに設計できるODIの機能について説明します。

        マッピングの物理ビューに切り替えます。変換はHive内で実行されるため、ソース・データ・ストアもターゲット・データ・ストアも同じ実行単位に含まれています。

        Merge Physical

        Hiveマージ・マッピングの実行

        マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。変更を保存するかどうか訊ねられたら「Yes」をクリックします。


        Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。

        注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません。

        実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。


        ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。タスク「40 - Load MOVIE」をダブルクリックすれば、生成されたコードをタスク・エディタで確認できます。

        Merge Operator

        Designerナビゲータに移動してModelsを開き、「HiveMovie.movie」を右クリックします。メニューから「View Data」を選択し、ロードされた行を確認します。

        Hiveのmovie表のすべての行がロードされたDataエディタが表示されます。
        Merge Data

Part 2 - Hive、Spark、およびPigを使用したデータ変換

    この項では、SqoopとGoldenGateを使用して、事前にロードしておいた映画データをOracle Data Integratorを使用して変換します。このユースケースでは、表movieを顧客アクティビティ・イベント・データと結合します。このデータは、Flumeを使用して事前にHDFSファイルにロードされ、現在はHive表movieapp_log_odistageとして公開されています。アクティビティ・データにはレーティング・アクションが含まれているので、1つ1つの映画の平均レーティングを計算し、結果をHive表movie_ratingに格納します。論理マッピングを1つ作成し、ステージング場所の実行エンジンとしてHive、Spark、Pigのいずれを使用するか選択できます。ODIはHive SQL、Spark-Python、またはPig Latingのいずれかを生成し、適切なサーバー・エンジンでそれを実行します。

    また、この章の一部として、ネストしたJSON HDFSファイルを入力として使用し、コンテンツ上で映画レーティングを計算できるようにフラット化するマッピングも示します。使用する実装エンジンはSparkです。

    このデモは、ODIを使用すると、実装の詳細を考慮せずに論理マッピングを宣言的に作成できることを示します。これらは後から物理設計に追加できます。 Oracle Big Data Management System

    Hiveによる映画データの変換

      Hiveのマッピングを開いて確認

      ODI Studioを開きます。ODI Studioを起動してログインする方法については、パート1を参照してください。
      左側の「Designer」ナビゲータを選択し、Projectsアコーディオンを開いて、Big Data Demo→Demo→Mappings→C - Calc Ratings (Hive - Pig - Spark)マッピングにナビゲートします。マッピングをダブルクリックして開きます。

      マッピングに使用される変換がマッピングの論理ビューに表示されます:

      • ソース・テーブルmovieには各映画に関する情報があり、ソース表movieapp_log_avroには未加工の顧客アクティビティが含まれています
      • FILTERは、activity = 1のイベント(レーティング・イベント)を抽出するのに使用されます
      • AGGREGATEは、すべてのレーティングをmovieidに基づいてグループ化して、映画の平均レーティングを計算するのに使用されます
      • JOINは、movie表にある映画の基本情報と集計済みのイベントを結合して、ターゲット表movie_ratingに書き込むのに使用されます
      • ターゲット表movie_ratingには、結合の結果が格納されます。これは、すべての言語で丸め処理を可能にするユーザー定義関数XROUNDを使用します

      マッピングの物理ビューに切り替え、下部のタブHiveが選択されていることを確認します。3つの実装エンジンそれぞれに物理設計があります。変換はHive内で実行されるため、ソース・データ・ストアもターゲット・データ・ストアも同じ実行単位に含まれています。


      ターゲット「MOVIE_RATING」を選択し、PropertiesウィンドウのIntegration Knowledge Moduleタブを確認します。デフォルト設定でIKM Hive Appendが選択されています。



      Hiveマッピングの実行

      マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。変更を保存するかどうか訊ねられたら「Yes」をクリックします。


      Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。

      注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません
      実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。

      ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。タスク「40 - Load MOVIE_RATING」をダブルクリックすれば、生成されたコードをタスク・エディタで確認できます。



      Designerナビゲータに移動してModelsを開き、「HiveMovie.movie_rating」を右クリックします。
      メニューから「View Data」を選択し、ロードされた行を確認します。

      Hiveのmovie_rating表のすべての行がロードされたDataエディタが表示されます。


    Sparkによる映画データの変換

      マッピングを開いて確認

      ODI Studioを開き、Big Data Demo→Demo→Mappings→C - Calc Ratings (Hive - Pig - Spark)の順にナビゲートしてマッピングを開きます。詳しくは、前の章「Hiveによる映画データの変換」を参照してください。

      なお、同じ論理マッピングをHive、Spark、Pigに使用します。これらの実装エンジンに対応した個別の論理設計はありません。論理ダイアグラムのプロパティStaging Location Hintを使用して実装エンジンを選択してから、物理設計を生成します。

      マッピングの物理ビューに切り替え、下部のタブSparkが選択されていることを確認します。3つの実装エンジンそれぞれに物理設計があります。変換ではSparkを使用し、ソースとターゲットはHive Catalogメタデータを使用して定義されているため、ソース、ステージング(Spark)、ターゲット・データ・ストアは別々の実行単位で表示されます。


      コンポーネント「JOIN」を選択し、PropertiesウィンドウのExtract Optionsタブを確認します。Advancedタブに切り替えると、Extract Knowledge ModuleとしてXKM Spark Joinが自動的に選択されていることを確認できます。このようなXKMは、ユーザーに代わって各コンポーネントのSpark-Pythonコード生成を体系化します。Sparkのメモリの扱いや並列度をチューニングするには、OptionsタブでCACHE_DATA、NUMBER_OF_TASKSなどの詳細オプションを設定します。



      Sparkマッピングの実行

      マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。変更を保存するかどうか訊ねられたら「Yes」をクリックします。


      Runダイアログで、Physical Mapping Designドロップダウン・メニューをHiveからSparkに変更します。Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。


       
      注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません。
      実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。

      ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。タスク「30 - Load JOIN_AP」をダブルクリックすれば、生成されたSpark-Pythonコードをタスク・エディタで確認できます。



      結果データはデータ・ストアmovie_ratingで確認できます。詳しくは、前の章「Hiveによる映画データの変換」を参照してください。

    Pigによる映画データの変換

      マッピングを開いて確認

      ODI Studioを開き、Big Data Demo→Demo→Mappings→C - Calc Ratings (Hive - Pig - Spark)の順にナビゲートしてマッピングを開きます。詳しくは、前の章「Hiveによる映画データの変換」を参照してください。

      なお、同じ論理マッピングをHive、Spark、Pigに使用します。これらの実装エンジンに対応した個別の論理設計はありません。
      論理ダイアグラムのプロパティStaging Location Hintを使用して、次に生成する物理設計に対応する実装エンジンを選択します。

      マッピングの物理ビューに切り替え、下部のタブPigが選択されていることを確認します。3つの実装エンジンそれぞれに物理設計があります。変換ではPigを使用し、ソースとターゲットはHive Catalogメタデータを使用して定義されているため、ソース、ステージング(Pig)、ターゲット・データ・ストアは別々の実行単位で表示されます。

      Pigマッピングの実行

      Pigマッピングを実行する前に、ターゲット表を切り捨てる必要があります。ProjectsツリーのProceduresノードに移動し、「Truncate movie_rating」を右クリックして「Run...」を選択してプロシージャを実行します。Runダイアログではデフォルト設定を使用し、以降のダイアログではすべて「OK」を選択します。
      注:この手順をパッケージで自動化する方法については、パート6を参照してください。

      マッピング・エディタに戻り、マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。


      Runダイアログで、Physical Mapping Designドロップダウン・メニューをHiveからPigに変更します。Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。


       
      注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません
      実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。

      ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。タスク「30 - Load JOIN_AP」をダブルクリックすれば、生成されたSpark-Pythonコードをタスク・エディタで確認できます。



      結果データはデータ・ストアmovie_ratingで確認できます。詳しくは、前の章「Hiveによる映画データの変換」を参照してください。

    SparkによるネストしたJSONデータの変換

      ソースとなるHDFS JSONデータの準備と確認

      メニュー・バーの「Terminal」アイコンを1回クリックしてターミナル・ウィンドウを起動します。
      以降の変換に備えて、まずテスト用のJSONデータをHDFSに配置する必要があります。
      ターミナル・ウィンドウで次のコマンドを実行します:

      hdfs dfs -put ~/movie/moviework/odi/movie_ratings/movie_ratings.json /user/odi/demo/movie_ratings.json

      注:このコピー手順をパッケージで自動化する方法については、パート6を参照してください
      ターミナル・ウィンドウで次のコマンドを実行します:
      hdfs dfs -cat /user/odi/demo/movie_ratings.json

      映画とネストしたレーティング・レコード(1~5)を含むレコードが書き込まれたJSON形式のファイルが表示されます。これがマッピングの入力になります。データ・ストアmovie_ratings(JSONファイルのメタデータを含む)を使用するODI Model HDFSMovieが表示されます。なお、ratingsサブ配列のような複雑な属性に関するメタデータはデータ・ストアに保持されず、フラットなString型の属性として表示されます。


      マッピングを開いて確認

      ODI Studioを開きます。ODI Studioを起動してログインする方法については、パート1を参照してください。
      左側の「Designer」ナビゲータを選択し、Projectsアコーディオンを開いて、Big Data Demo→Demo→Mappings→D - Calc Ratings(JSON Flatten)マッピングにナビゲートします。マッピングをダブルクリックして開きます。

      マッピングに使用される変換がマッピングの論理ビューに表示されます:

      • ソースHDFSファイルmovie_ratingsには、各映画のレーティング・サブ配列とともに各映画の情報が、ネストしたJSON形式で収められています
      • Flattenは、レーティング情報のネストを解除するのに使用されます。各映画にネストされたレーティングのクロス積を計算します
      • AGGREGATEは、すべてのレーティングをmovie_idに基づいてグループ化して、映画の平均レーティングを計算するのに使用されます
      • ターゲット表movie_ratingには、結合の結果が格納されます。これは、すべての言語で丸め処理を可能にするユーザー定義関数XROUNDを使用します

      マッピングの物理ビューに切り替えます。

      マッピングの実行

      マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。変更を保存するかどうか訊ねられたら「Yes」をクリックします。


      Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。

      注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません
      実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。

      ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。タスク「40 - Load MOVIE_RATING」をダブルクリックすれば、生成されたコードをタスク・エディタで確認できます。



      Designerナビゲータに移動してModelsを開き、「HiveMovie.movie_rating」を右クリックします。
      メニューから「View Data」を選択し、ロードされた行を確認します。

      Hiveのmovie_rating表のすべての行がロードされたDataエディタが表示されます。movie_idが10、11、12、13、14のエントリを探してください。これらは、このマッピングによって追加されたものです。


Part 3 - Oracle Loader for HadoopによるOracle DBへのデータ・ロード

    このタスクでは、先ほどのHive変換で得られた結果をHive表からOracle DBのデータウェアハウスにロードします。ロード処理には、Oracle DBに特に最適化されたメカニズムを使用する、Oracle Loader for Hadoopという組込みデータ・ローダーを使用します。

    Oracle Big Data Management System

    ODIマッピングとOracle Loader for HadoopによるOracle DBへの映画データのロード

      ODI Studioを開きます。ODI Studioを起動してログインする方法については、パート1を参照してください。
      左側の「Designer」ナビゲータを選択し、Projectsアコーディオンを開いて、Big Data Demo→Demo→Mappings→E - Load Oracle (OLH)マッピングにナビゲートします。マッピングをダブルクリックして開きます。

      マッピングの論理ビューに表示されるのは、Hive表movieからOracle表MOVIEへのダイレクト・マップです。属性上の変換は実行されません。

      マッピングの物理ビューに切り替えます。ここには、HiveソースからOracleターゲットへの移動が表示されます。


      アクセス・ポイント「MOVIE_RATING_AP」(ラベルの一部が隠れている場合があります)を選択し、PropertiesウィンドウのIntegration Knowledge Moduleタブを確認します。LKM Hive to Oracle OLH-OSCH Directが選択され、マッピングの反復実行を許可するTRUNCATE=Trueと、ステージング・ステップが追加されないようにするUSE_HIVE_STAGING_TABLE=False以外はデフォルト設定になっています。出力モードOLH_OUTPUT_MODEはデフォルトでJDBCに設定されています。これは、デバッグ用や単純なユースケースに適した設定です。その他の設定は、OCIまたはData Pumpを介したOLHロードを実行するため、またはOSCHを介したロードを実行するためのものです。



      OLHマッピングの実行

      マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。変更を保存するかどうか訊ねられたら「Yes」をクリックします。


      Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。

      注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません
      実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。

      ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。さまざまなタスクをダブルクリックすれば、Loader ConfigとMapファイルがどのように生成されてローダーが実行されたのかを確認できます。



      Designerナビゲータに移動してModelsを開き、「OracleMovie.ODI_MOVIE_RATING」を右クリックします。
      メニューから「View Data」を選択し、ロードされた行を確認します。

      OracleのODI_MOVIE_RATING表のすべての行がロードされたDataエディタが表示されます。
      OLH data

Part 4 - Big Data SQLによるOracleからのHadoopデータ・アクセス

    次の項では、Oracle Big Data SQLを使用する1つのマッピングで、Oracle DBとHiveの両方のデータをODIで変換します。Big Data SQLを使用すると、Oracleの機能豊富なSQL言語を使用してOracle ExadataからOracle Big Data Appliance上のデータをシームレスに問い合わせることができます。Oracle Databaseに含まれる他のすべてのデータとまったく同じ方法で、Hadoopに格納されているデータに対して問合せが実行されます。

    このユースケースでは、先ほど使用したアクティビティ・データとOracle DBに格納されているCustomerデータを結合します。各顧客のすべての購買アクティビティを集計し、核となる顧客データにそれを結合します。

    Oracle Big Data Management System

    Big Data SQLを使用してHiveとOracle表から売上を計算

      Big Data SQLマッピングを開いて確認

      ODI Studioを開きます。ODI Studioを起動してログインする方法については、パート1を参照してください。
      左側の「Designer」ナビゲータを選択し、Projectsアコーディオンを開いて、Big Data Demo→Demo→Mappings→F - Calc Sales(Big Data SQL)マッピングにナビゲートします。マッピングをダブルクリックして開きます。

      マッピングに使用される変換がマッピングの論理ビューに表示されます:

      • Hiveソース・テーブルmovieapp_log_odistageには各映画に関する情報があり、Oracleソース表CUSTOMERには各顧客の情報が含まれています
      • FILTERは、activity = 11のイベント(販売イベント)を抽出するのに使用されます
      • JOINは、アクティビティ情報をそれぞれの顧客情報に結合するのに使用されます
      • AGGREGATEは、すべてのレーティングをCOUNTRYCONTINENT情報に基づいてグループ化し、所定の地域の全アクティビティのsalesの合計値を計算するのに使用されます

      マッピングの物理ビューに切り替えます。表movieapp_log_stageはHiveに含まれ、表CUSTOMERとすべての変換はターゲットOracle DBに含まれているのが分かります。

      アクセス・ポイント「MOVIEAPP」を選択し、PropertiesウィンドウのLoading Knowledge Moduleタブを確認します。外部表定義を介してOracleからHive表にリモート・アクセスできるように、LKM Hive to Oracle (Big Data SQL)が選択されています。LKMのオプションはすべてデフォルトです。

      注:LKM Hive to Oracle (Big Data SQL)はカスタムのサンプルKMで、Java.netからダウンロードできます


      このマッピングに選択されているIKMは標準のIKM Oracle Insertです。
      カスタムLKMのコードは、Designer→Global Objects→Global Knowledge Modules→Loading→LKM Hive to Oracle (Big Data SQL)で確認できます。LKMの主要部分は、Big Data SQL構文を使用して外部表を生成するためのテンプレートです。この外部表は、行をターゲット表に挿入する統合問合せで使用されます。

      Big Data SQLマッピングの実行

      マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。変更を保存するかどうか訊ねられたら「Yes」をクリックします


      Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。

      注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません。
      実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。

      ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。


      タスク「40 - Create external table」をダブルクリックして、生成されたBig Data SQLのコードをタスク・エディタで確認します。Codeタブに切り替えます。タイプがORACLE_HIVEの外部表を作成するcreate table式を確認できます。この式は、Hiveのメタデータを使用してODIによって生成されたものです。


      Designerナビゲータに移動してModelsを開き、「OracleMovie.ODI_COUNTRY_SALES」を右クリックします。
      メニューから「View Data」を選択し、ロードされた行を確認します。

      OracleのCOUNTRY_SALES表のすべての行がロードされたDataエディタが表示されます


Part 5 - Pigによるデータのセッション化

    このデモでは、ODIとユーザー定義ファンクションとテーブル・ファンクションを使用できる機能を併用して、複雑なPigの複雑なマッピングを実行する方法を説明します。このマッピングでは、このHadoopディストリビューションに含まれるApache DataFuライブラリからPigのファンクションsessionizeを使用します。

    このマッピングの目的は、Hive表movieapp_log_odistageに含まれるアクティビティをユーザー別に独立したセッションに整理し、地域別にセッションの継続時間の最小値、最大値、平均値の統計を算出することです。

    Oracle Big Data Management System

    ODIでのPigによるセッション化のロードとユーザー・アクティビティの分析

      マッピングを開いて確認

      ODI Studioを開き、Big Data Demo→Demo→Mappings→G - Sessionize Data (Pig)マッピングにナビゲートします。

      マッピングに使用される変換がマッピングの論理ビューに表示されます:

      • Hiveソース表movieapp_log_odistageには各映画に関する情報があり、Hive表custには各顧客の情報が含まれています
      • SESSIONIZEは、DataFu.sessionize UDFをコールするカスタムPigコードを含むテーブル・ファンクション・コンポーネントです。このファンクションは、アクティビティの発生時刻を含む時間枠に基づいてアクティビティをセッションに結合します
      • AGGREGATEは、場所(州、国)別にセッション統計を集計する処理に使用されます
      • EXPRESSIONは、セッション統計を正規化および変換する処理に使用されます
      • SORTは、セッションの平均継続時間に基づいて集計レコードを順序付ける処理に使用されます
      • 結果はターゲットのHive表session_statsに格納されます

      マッピングの物理ビューに切り替えます。変換ではPigを使用し、ソースとターゲットはHive Catalogメタデータを使用して定義されているため、ソース、ステージング(Pig)、ターゲット・データ・ストアは別々の実行単位で表示されます。

      物理コンポーネント「SESSIONIZE」を選択してPropertiesウィンドウに移動します。「Extract Options」タブを選択し、PIG_SCRIPT_CONTENTオプションのValue列をダブルクリックします。

      このテーブル・ファンクションの実装に使用されるカスタムPigコードが、ダイアログに表示されます。この実装の核となるのは、DataFuのファンクションSessionizeです。なお、このコードでは、入力リレーションとしてMOVIEAPP_LOG_ODISTAGEを使用し、出力リレーションとしてSESSIONIZEを使用しています。

    Pigマッピングの実行

    Pigマッピングを実行する前に、ターゲット表を切り捨てることが必要な場合があります。ProjectsツリーのProceduresノードに移動し、「Truncate session_stats」を右クリックして「Run...」を選択してプロシージャを実行します。Runダイアログではデフォルト設定を使用し、以降のダイアログではすべて「OK」を選択します。

    注:この手順をパッケージで自動化する方法については、パート6を参照してください

    マッピング・エディタに戻り、マッピング・エディタの上のタスクバーにある「Run」ボタンをクリックします。


    Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。
     
    注:環境によっては、実行に数分かかることもあります。生成されるコードのみ表示するには、チェック・ボックス「Simulation」を選択します。そうすると、生成されたセッションがダイアログ・ウィンドウに表示され、オペレータには実行内容が何も表示されません。
    実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。

    ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。タスク「30 - Load JOIN_AP」をダブルクリックすれば、生成されたPigコードをタスク・エディタで確認できます。



    結果データはデータ・ストアsession_statsで確認できます。

Part 6. ODIパッケージによる全ステップの実行

    この項では、ODIパッケージを使用して、他のすべてのODIステップをまとめて順番に実行します。パッケージは、マッピング、プロシージャ、ツール、他のパッケージなどのさまざまなジョブを連携させるのに使用でき、条件付きロジックや変数を実行の一部としてパッケージに含めることもできます。このパッケージでは、JSONファイルをローカル・ファイル・システムからHDFSにコピーするFile Copyツールと、表の切捨てを実行するHive SQLコールを発行するプロシージャも使用します。

パッケージの確認

    ODI Studioを開きます。ODI Studioを起動してログインする方法については、パート1を参照してください。
    左側の「Designer」ナビゲータを選択し、Projectsアコーディオンを開いて、Big Data Demo→Demo→Packages→Big Data Loadパッケージにナビゲートします。パッケージをダブルクリックして開きます。
    Designer

    パッケージを確認します。マッピング、プロシージャ、ツールのコールがすべて1つのワークフローで接続され、1回の操作で実行されるようになっています。

    pkg
    Copy To HDFS」ステップを選択し、プロパティを確認します。パラメータSource Logical Schemaは空で、Target Logical SchemaHadoopLocalに設定されています。こうすると、ソースはローカル・ファイル・システム・パスとして、ターゲットはHDFSパスとして定義されます。



    C - Calc Ratings (Hive - Pig - Spark)」ステップを選択してプロパティを確認します。Physical Mapping DesignはHiveに設定されていますが、他のオプション(PigまたはSpark)に変更して別のエンジンで実行することもできます。


    パッケージ・エディタの上のタスクバーにある「Run」ボタンをクリックします。変更を保存するかどうか訊ねられたら「Yes」をクリックします。


    Runダイアログの「OK」をクリックします。すべてのデフォルトを使用して、ODI Studio UIに埋め込まれているローカル・エージェント上でこのマッピングを実行します。しばらくすると、Session startedというダイアログが表示されますので、ここでも「OK」をクリックします。

    注:環境によっては、実行に数分かかることもあります
    実行内容を確認するには、Operatorナビゲータに移動して、All Executionsノードを開いて現在の実行を確認します。実行が終了していない場合は、タスクが進行中であることを示すRunアイコンが表示されます。青色の「Refresh」アイコンをクリックしてビューをリフレッシュすることもできますが、ビューは5秒ごとに自動的にリフレッシュされます。
    ロードが完了すると、セッションのすべてのタスクが成功したものとしてオペレータに表示されます。

まとめ

    このチュートリアルで学習した内容は、次のとおりです:

    • SqoopおよびOracle GoldenGateによるデータの取込み
    • Hive、Pig、およびSparkによるデータ変換
    • Oracle Loader for HadoopによるOracle DBへのデータ・ロード
    • Big Data SQLによるOracleからのHadoopデータ・アクセス
    • Pigによるデータのセッション化
    • ODIパッケージによる複数ジョブの連携

    参考資料

    Oracle Data IntegrationOracle Big Data SQLOracle Data WarehousingおよびOracle Analytical SQLについて詳しくは、Oracle Technology Networkを参照してください。

    クレジット

To help navigate this Oracle by Example, note the following:

Hiding Header Buttons:
Click the Title to hide the buttons in the header. To show the buttons again, simply click the Title again.
Topic List Button:
A list of all the topics. Click one of the topics to navigate to that section.
Expand/Collapse All Topics:
To show/hide all the detail for all the sections. By default, all topics are collapsed
Show/Hide All Images:
To show/hide all the screenshots. By default, all images are displayed.
Print:
To print the content. The content currently displayed or hidden will be printed.