『Oracle Big Data SQLユーザーズ・ガイド』では、Oracle Big Data SQL製品の使用方法と管理方法について説明します。
このガイドは、次に示すようにOracle Big Data SQLの管理者およびユーザーを対象としています。
アプリケーション開発者
データ・アナリスト
データ科学者
データベース管理者
システム管理者
このガイドでは、読者にOracle Databaseの単一ノード・システムとマルチノード・システム、Hadoopフレームワーク、Linuxオペレーティング・システム、およびネットワークの概念に関する基本的な知識があることを前提としています。
製品の使用方法の詳細は、『Oracle Big Data SQLユーザーズ・ガイド』を参照してください。
次の出版物には、Oracle Big Data ApplianceおよびOracle Big Data ConnectorsとのOracle Big Data SQLの使用に関する情報が記載されています。
『Oracle Big Data Applianceオーナーズ・ガイド』
『Oracle Big Data Applianceソフトウェア・ユーザーズ・ガイド』
『Oracle Big Data Connectorsユーザーズ・ガイド』
オラクル社のBig DataソリューションおよびOracle Databaseの詳細は、Oracleヘルプ・センターを参照してください。
Hortonworks HDPおよびAmbariの詳細は、Hortonworksドキュメント・サイト(http://docs.hortonworks.com/index.html)を参照してください。
ClouderaのCDHおよびConfiguration Managerの詳細は、http://www.cloudera.com/documentation.htmlを参照してください。
このマニュアルでは次の表記規則を使用します。
規則 | 意味 |
---|---|
太字 |
太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。 |
イタリック |
イタリックは、ユーザーが特定の値を指定するプレースホルダ変数を示します。 |
|
固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。 |
|
ナンバー記号( |
このリファレンスの構文は、次の記号と表記規則を使用するバッカスナウア記法(BNF)の単純なバリエーションで示されます。
記号または表記規則 | 説明 |
---|---|
[ ] |
大カッコは、オプション項目を囲みます。 |
{ } |
中カッコは、選択項目を囲み、そのうち1つのみが必須です。 |
| |
縦線は、大カッコまたは中カッコ内の代替項目を区切ります。 |
... |
省略記号は、先行する構文要素を反復できることを示します。 |
デリミタ |
大カッコ、中カッコおよび縦線以外のデリミタは、記載されているとおりに入力する必要があります。 |
太字 |
太字で示されている語は、キーワードです。それらは記載されているとおりに入力する必要があります。(キーワードは、一部のオペレーティング・システムでは大/小文字の区別があります。)太字ではない語は、名前または値に置換する必要があるプレースホルダです。 |
Oracle Big Data SQLリリース3.2.1には、リリース3.2では使用できない機能がいくつか含まれています。リリース3.2.1には、その他の機能拡張や不具合の修正は含まれていません。リリース3.2の機能については、このサマリーにも含まれています。
Oracle Database 12.2.0.1のサポート
リリース3.2.1は、Oracle Database 12.2.0.1および12.1.0.2の両方にインストールできます。Hadoopクラスタ上の同一のOracle Big Data SQL 3.2.1インストールが、Oracle Database 12.2.0.1および12.1.0.2の両方に接続できます。
Oracle Big Data SQL 3.2を使用していて、Oracle Database 12.1.0.2にのみ接続する場合は、リリース3.2.1にアップグレードする必要はありません。
注意:
パッチは、Oracle Database 12.xおよびOracle Grid Infrastructure (使用する場合)に適用する必要があります。適用可能なパッチは、使用しているデータベース・バージョンに応じて異なります。詳細は、Oracle Supportドキュメント2119369.1 (Oracle Big Data SQL Master Compatibility Matrix)を参照してください。エッジ・ノードの除外
インストールでは、Hadoopエッジ・ノードが自動的に除外されるようになりました。以前のリリースでは、Copy to Hadoopを使用できるようにするために、エッジ・ノードにBDSエージェントがインストールされていました。BDSエージェントはインストールの前提条件をチェックしますが、こうしたチェックはエッジ・ノードでは失敗することがあります。BDSエージェントは、デフォルトではエッジ・ノードにインストールされなくなりました。
また、Oracle Big Data SQL構成ファイルには手動でノードを除外できる、オプションのexcluded_nodes
パラメータが含まれるようになりました。インストーラがノードをエッジ・ノードとして識別しないことがまれにあります。このパラメータを使用すると、見逃されたエッジ・ノードを手動で識別してからインストーラを再実行できます。ただし、その必要はほとんどありません。
このパラメータは、構成ファイルのネットワーク・セクションにあります。
excluded_nodes : [ "<fqdn_for_edge_node 1>","<fqdn_for_edge_node_2>","<fqdn_for_edge_node_3>" ]
関連項目:
すべての構成可能なインストール・パラメータについては、「Jaguar構成パラメータおよびコマンド・リファレンス」を参照してください。
JSON CLOB述語のプッシュダウンはリリース3.2.1では使用できない
Oracle Big Data SQL 3.2には、最大1 MBのCLOB列について、Oracle Big Data SQLがHadoopの処理セルでJSONデータをローカルにフィルタリングできるパフォーマンス最適化が含まれています。現在、この最適化はリリース3.2.1に含まれていません。今後のDBBP (データベース・バンドル・パッチ)で追加される予定です。
一部の条件下で記憶域索引が利用されない
記憶域索引は、データのスキャンを回避する問合せ処理の最適化です。リリース3.2.1では、次のDDL操作が実行されたときに、Oracle Big Data SQL表の記憶域索引が利用されないことがあります。ALTER TABLE table_name PROJECT COLUMN REFERENCED;
この問題を修正するには、外部表を再作成してください。
Oracle Big Data SQLリリース3.2には、パフォーマンス、セキュアなネットワーク接続、認証、ユーザー管理、さらにはインストールおよび構成の大幅な改善が含まれています。
Kafkaトピックの問合せのサポート
リリース3.2では、HiveおよびOracle Big Data SQLが新しいHiveストレージ・ハンドラを介してKafkaトピックを問い合せることができます。 このストレージ・ハンドラを使用して、Kafkaに存在するデータに裏付けられた外部Hive表を作成できます。その後、Oracle Big Data SQLまたはHiveでは、その外部表を介してKafkaデータに問い合せることができます。 Kafkaのキー、値、オフセット、トピック名およびパーティションIDは、Hive列にマップされます。 トピック/パーティション・ペアごとにオフセットを明示的に指定できます。そうしない場合、オフセットはパーティションごとにトピック内の最古のオフセットから開始し、トピック内の最新のオフセットで終わります。
Parquetファイルの処理の改善
Oracleは、Parquet形式でデータを処理するために独自のParquetリーダーを導入しました。この新しいリーダーでは、既存のHive Parquetドライバよりもパフォーマンスおよびリソース使用率が大幅に改善されています。これには、次のものがあります。
よりインテリジェントな列処理の取得。リーダーは、遅延実体化を使用して、フィルタを満たす行がある列のみを処理するため、I/Oが向上します。
フィルタ述語の処理時にディクショナリを活用して、CPU使用率を改善します。
データ変換を合理化して、CPUを効率的に使用します。
Big Data SQLのインストールでは、デフォルトでOracleのParquetリーダーが有効になります。これを無効にして、汎用的なParquetリーダーに戻すこともできます。
マルチユーザー認可
以前のリリースのOracle Big Data SQLでは、HadoopデータおよびHiveデータに対するすべての問合せはoracle
ユーザーとして実行され、ユーザーを変更するためのオプションはありません。oracle
は引き続きすべてのケースで基礎となるユーザーですが、Oracle Big Data SQL 3.2ではHadoop Secure Impersonationを使用して、oracle
アカウントに対し、他の指定のユーザーのかわりにタスクを実行することを指示できるようになりました。これにより、唯一のoracle
ユーザーだけでなく、問合せを現在実行しているユーザーに基づいてHDFSデータにアクセスできるようになります。
管理者は、問合せユーザーを識別するためのルールを設定します。また、現在接続されているユーザーを識別し、その接続されているユーザーを偽装ユーザーにマップするためのルールを指定できます。ユーザーがOracle Databaseに接続する多数の方法があるため、データベース・ユーザー、LDAPを元にするユーザー、Kerberosを元にするユーザー、他のソースを元にするユーザーなどがこのユーザーになります。ファイルに対する認可ルールがそのユーザーに適用され、HDFS監査によって問合せを実行している実際のユーザーが識別されます。
関連項目:
マルチユーザー認可の管理にはDBMS_BDSQL PL/SQLパッケージを使用し、これについては『Oracle Big Data SQLユーザーズ・ガイド』で説明しています。
Oracle DatabaseおよびOracle Big Data SQLセル間の認証
この認証はHadoopクラスタ上のOracle DatabaseとBig Data SQLセル間で行われ、通信を容易に保護できます。データベース認証拡張機能により、偽装攻撃から保護できます。偽装攻撃とは、不正なサービスがクラスタ・ノードで実行されているOracle Big Dataオフロード・サーバー・プロセスに接続しようとするものです。
Kerberosチケット更新の自動化
Kerberosで保護されたネットワークでは、Oracle Big Data SQLによって使用されるoracle
アカウントのために自動Kerberosチケット更新を設定するようにインストールを構成できます。これは、インストールのHadoopクラスタ側とOracle Database側の両方で行われます。bds-config.json
構成ファイルでプリンシパル名およびkeytabファイルへのパスを指定する必要があります。テンプレートは、構成ファイルで提供されます。
"kerberos" : { "principal" : "oracle/mycluster@MY.DOMAIN.COM", "keytab" : "/home/oracle/security/oracle.keytab" }
構成ファイルでKerberosパラメータを指定した場合、Oracle Big Data SQLインストールはHadoopクラスタとOracle Databaseサーバーの両方でcronジョブを設定します。これらのジョブは、プリンシパルのKerberosチケットを1日に1回更新します。
プリンシパルおよびkeytabファイルがすでに存在している必要があります。
自動アップグレード
現在のリリースは以前のリリースの上にインストールできるようになり、Hadoop側でもOracle Database側でも古いソフトウェアを削除する必要はありません。以前のインストールが現在のリリース・レベルにアップグレードされます。
すべてのプラットフォームに共通のインストール・バンドル
以前のリリースでは、顧客はOracle Big Data SQLインストール・バンドルを解凍する必要があり、自身のHadoopシステムに適切なパッケージ(CDHまたはHDP)を選択していました。バンドルには、サポートされるすべてのHadoopシステムに対して機能するインストール・パッケージが1つのみ含まれます。
新しいJaguarインストーラでのより簡単かつ高速なインストール
Jaguarインストーラは、以前のリリースのインストーラであるsetup-bds.sh
に置き換わるものです。Jaguarには次の変更が含まれています。
Hadoopノードでのインストール前提条件を自動的にチェックします
Jaguarは、各Hadoop DataNodeでのインストールの準備状況を検証し、満たされていない前提条件があればレポートします。
データベース側のインストール・バンドルを手動で生成する必要はありません
以前は顧客が手動で生成していたデータベース側のインストール・バンドルは、自動的に生成できるようになりました。引き続きバンドルをOracle Databaseノードにコピーしてインストールする必要があります。
Hadoop側でのインストール全体の時間を短縮します
インストール時間は様々ですが、Hadoop側ではすべてのリソースがローカルである場合は8分ほどかかり、Hadoopクライアントをインターネットからダウンロードする必要がある場合はダウンロード速度によっては20分かかることもあります。
CDHでの前提条件となるApacheサービスをパッケージまたはパーセルとしてインストールできるようになりました
以前は、CDHシステムの場合、Oracle Big Data SQLをインストールするには、HDFS、YARN、HIVEの各コンポーネントがパーセルとしてインストールされている必要がありました。これらのコンポーネントは、パッケージまたはパーセルとしてCDHにインストールできます。HDPでの変更はなく、スタックとしてインストールする必要があります。
注意:
CDHシステムで、Oracle Big Data SQLが必要とするHadoopサービスをパッケージとしてインストールする場合は、それらがCloudera Manager内からインストールされることを確認してください。そうでない場合、Cloudera Managerはこれらのサービスを管理できません。これは、パーセルでは問題になりません。CLIでは、Jaguarユーティリティが./setup-bdsに置き換わります
# ./jaguar install bds-config.json # ./jaguar reconfigure bds-config.json # ./jaguar uninstall bds-config.json
デフォルトの構成ファイル名はbds-config.jsonですが、代替ファイル名も認められています
bds-config.json
引数を削除できるようになり、次の最初の例に示すように、インストーラをbds-config.json
にデフォルトで設定できます。また、代替の構成ファイルを任意の名前で指定できます。ただし、bds-config.json
と同じ内部形式に準拠し、.json
ファイル・タイプを指定する必要があります。# ./jaguar install # ./jaguar install cluster2-config.json構成ファイルを作成し、その設定を各クラスタの要件にあわせて調整できます。たとえば、必要に応じてテストのクラスタと本番のクラスタで異なるセキュリティ・パラメータをOracle Big Data SQLインストールに適用できます。
構成パラメータが大幅に変更されています
以前のリリースのユーザーから見ると、Jaguar構成ファイルには多数の新しいパラメータが含まれています。その大部分は一貫して必須というわけではないという点でオプションですが、インストールによっては一部のパラメータが必須である場合があります。インストーラ・パラメータの表へのリンクおよび使用可能なすべてのパラメータを使用する構成ファイルの例については、後の「関連リンク」を参照してください。
新規updatenodesコマンドにより、保守が簡単になりました
Oracle Big Data SQLは、DataNodeロールがプロビジョニングされている各Hadoopクラスタ・ノードにインストールする必要があります。DataNodeが存在していないノードでは機能しません。新しいJaguarユーティリティにはupdatenodes
コマンドが含まれており、これは、クラスタをスキャンして、クラスタ内にDataNodeのインスタンスがないか確認します。DataNodeロールを削除または再配置した場合や、DataNodeがプロビジョニングされているノードを追加または削除した場合、スクリプトはOracle Big Data SQLコンポーネントをノードから必要に応じてインストールまたはアンインストールします。
一部のセキュリティ機能を有効にするには、別途インストール手順が必要です
Hadoopクラスタ内のOracle DatabaseとOracle Big Data SQLセル間のデータベース認証、またはHadoop Secure Impersonationを有効にすることにした場合は、追加でデータベース確認応答手順が必要です。このプロセスでは、データベース・サーバーでのインストールにより構成情報のZIPファイルが生成され、それを処理するにはHadoopクラスタ管理サーバーにコピーする必要があります。
データベース側では、クラスタへの接続がプライマリおよびセカンダリとして分類されなくなりました。
1つのOracle Databaseシステムが複数のHadoopクラスタに対してOracle Big Data SQL接続を確立できます。以前のリリースでは、最初のこれらの接続がプライマリと見なされ(また、最後にアンインストールする必要があり)、その他のものはセカンダリと見なされました。現在のリリースでは、複数のインストールの管理が簡単になり、データベース側のインストーラの--uninstall-as-primary
および--uninstall-as-secondary
パラメータは廃止されています。ただし、デフォルト・クラスタが存在するようになりました。このガイドの「重要な用語と概念」では、デフォルト・クラスタの重要性について説明しています。
HDFSでのOracle表領域のサポートが、システム以外のすべての永続表領域を含めるように拡張されました
以前のリリースでは、永続オンライン表領域をHDFSにのみ移動できました。この機能は、現在オンライン、読取り専用、オフラインの各永続表領域をサポートするようになりました。
mtactl startコマンドの動作に重要な変更が加えられました
Oracle Big Data SQL 3.1では、Oracle Grid Infrastructureが存在しないサーバーにOracle Big Data SQLをインストールするためのオプションが導入されました。これらの環境では、mtactlユーティリティのstartサブコマンド(mtactl start
)を使用して、MTA (マルチスレッド・エージェント) extprocを起動できます。
現在のリリースでは、mtactl start
コマンドの動作が元のリリース3.1実装とは異なることに注意してください。
現在の動作: mtactl start
は、リポジトリに格納されているinitパラメータ値を使用して、MTA extprocを起動します。リポジトリが存在しない場合にのみ、デフォルト値を使用します。
以前の動作(Oracle Big Data SQL 3.1): mtactl start
は、initパラメータ値がリポジトリに格納されているかどうかに関係なく、常にデフォルトのinitパラメータを使用します。
関連項目:
リソース要件
Hadoopクラスタのノードごとに8個のCPUコアおよび12GBのRAMが推奨されるようになりました。
カーネル、スワップ、コア・メモリーおよびソケット・バッファ・サイズに関しては、最適なパフォーマンスを得るために推奨されるsysctl設定がいくつかあります。これらは、インストレーション・ガイドの第2章で説明されているインストールの前提条件の一部です。