一部のデータベースについて必要な知識 - Cloud

Talend Cloud Real-Time Big Data Platform Studioユーザーガイド

author
Talend Documentation Team
EnrichVersion
Cloud
EnrichProdName
Talend Cloud
task
ジョブデザインと開発
EnrichPlatform
Talend Management Console
Talend Studio

MySQL

JDBCを使用してMySQLへの接続を作成する場合、データベース名をJDBC URLに含めることは必須ではありません。[JDBC URL]フィールドで指定したデータベース接続URLにデータベース名が含まれているかどうかに関係なく、全てのデータベースが取得されます。

たとえば、jdbc:mysql://192.168.33.41:3306/tbi?noDatetimeStringSync=true (tbiはデータベース名)、またはjdbc:mysql://192.168.33.41:3306/?noDatetimeStringSync=trueを指定した場合、全てのデータベースが取得されます。

代理ペアをサポートするには、MySQLサーバー設定ファイルの以下のプロパティを編集する必要があります。

[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
character-set-server=utf8mb4

Microsoft SQL Server

Microsoft SQL Server 2012以降がサポートされています。

Windows認証モードでMicrosoft SQL Serverデータベースに接続する場合は、[Db Version] (Dbバージョン)リストから[Microsoft]または[JTDS open source] (JTDSオープンソース)を選択します。

Microsoft SQL Serverデータベースを使用してレポート結果を保存する場合、ドライバーは[JTDS open source] (JTDSオープンソース)のみがサポートされています。その場合は、MicrosoftとjTDSのドライバー間のコンフリクトを避けるために、[Db Version] (Dbバージョン)リストから[JTDS open source] (JTDSオープンソース)を選択することをお勧めします。

jTDSドライバーを使用してMicrosoft SQL Serverデータベースへの接続を作成する前に:
  • jTDSドライバーバージョン1.3.1をhttp://jtds.sourceforge.net/からダウンロードします。
  • アーカイブからファイルを抽出し、オペレーティングシステムに応じてntlmauth.dllファイルをx64/SSOまたはx86/SSOの下にコピーします。
  • ntlmauth.dllファイルを%SYSTEMROOT%/system32に貼付けます。

次のエラーが発生した場合: SSOが失敗しました:ネイティブSSPIライブラリがロードされませんでした。Talend Studioによって使用されているJREのbinフォルダーにntlmauth.dllを貼付けます。

Microsoft SQL Serverデータベースでは、大文字小文字を区別しない照合を使用して下さい。そうでないと、レポートの生成に失敗するおそれがあります。java.sql.SQLException: カラム名'rep_runtime'が無効ですのようなエラーが発生するおそれがあります。照合ルールについては、https://docs.microsoft.com/en-us/sql/t-sql/statements/windows-collation-name-transact-sql?view=sql-server-2017を参照して下さい。

Teradata

Teradataデータベースへの接続を選択した場合、[USE SQL Mode] (SQLモードの使用)のとなりの[Yes] (はい)オプションを選択し、Studioでのメタデータの取得にSQLクエリーを使用できるようにします。JDBCドライバーはパフォーマンス不良となる可能性があるため、このデータベースでは推奨されません。

Teradataデータベースでは、正規表現関数は、バージョン14からのみデフォルトでインストールされます。このデータベースの以前のバージョンで正規表現を使用する場合、Teradataにユーザー定義関数をインストールし、Talend StudioにTeradataのインジケーター定義を追加します。

詳細は、Teradataでの正規表現の使い方を参照して下さい。

Netezza

Netezzaデータベースでは正規表現はサポートされません。このデータベースで正規表現を使用する場合は、次のいずれかを実行する必要があります。

  • NetezzaシステムにSQL Extensions Toolkitパッケージをインストールします。このツールキットに付属のregex_like関数をSQLテンプレートで使用します。方法は、http://pic.dhe.ibm.com/infocenter/ntz/v7r0m3/topic/com.ibm.nz.sqltk.doc/r_sqlext_regexp_like.htmlを参照して下さい。
  • Talend Studio[Libraries] (ライブラリ) > [Indicators] (インジケーター) > [System Indicators] (システムインジケーター)の下の[Pattern Matching] (パターンマッチング)フォルダーにNetezzaのインジケーター定義を追加します。

    Netezzaに対して定義する必要のあるクエリテンプレートは、SELECT COUNT(CASE WHEN REGEXP_LIKE(<%=COLUMN_NAMES%>,<%=PATTERN_EXPR%>) THEN 1 END), COUNT FROM <%=TABLE_NAME%> <%=WHERE_CLAUSE%>です。特定のデータベースにインジケーター定義を追加する詳細手順は、特定のデータベースに対するクエリテンプレートを定義するを参照して下さい。

Hive

Hiveデータベースへの接続を選択した場合、他のデータベースタイプのようにさまざまな分析を作成して実行できます。

接続ウィザードで、[Distribution] (ディストリビューション)からHiveをホストするプラットフォームを選択する必要があります。また、Hiveのバージョンとモデルも設定する必要があります。詳細は、データベースメタデータの一元管理およびhttp://hadoop.apache.org/を参照して下さい。

Hive接続の組み込みモードでユーザー名を変更する場合、接続を使用するプロファイリング分析を正常に実行するために、Studioを再起動する必要があります。

詳細は、Hive埋め込みモードでユーザークレデンシャルが動作する仕組みを参照して下さい。

使用するHadoopディストリビューションがHortonworks Data Platform V1.2またはHortonworks Data Platform V1.3の場合、マッピングのために適切なメモリの割り当てを行い、Hadoopシステムで実行される計算を減少する必要があります。接続ウィザードの2番目の手順で、次の操作を実行します。
  1. [Hadoop Properties] (Hadoopプロパティ)のとなりのボタンをクリックし、開いたダイアログボックスで[+]ボタンをクリックし、テーブルに2つの行を追加します。
  2. パラメーター名にmapred.job.map.memory.mbおよびmapred.job.reduce.memory.mbを入力します。
  3. それらの値をデフォルト値の1000に設定します。

    通常、この値は計算を実行するために適切です。

Hiveでは1つの分析タイプ、いくつかのインジケーターと機能がサポートされていないことに注意して下さい。詳細は、次の表を参照して下さい。
非対応のインジケーター 非対応の機能 非対応の分析
SQLエンジンを使った場合:

Soundex低頻度

パターン(低)頻度

上位クォータイルおよび下位クォータイル

中央

全ての日付頻度インジケーター

ユニーク値のインジケーター、複製のインジケーター、全てのテキストインジケーターを使ったカラム分析のための[View rows] (行の表示)コンテキストメニュー。[View rows] (行の表示)メニューの詳細は、分析されたデータの表示とエクスポートを参照して下さい。

ユニーク値のインジケーター、複製のインジケーター、全てのテキストインジケーターを使ったカラム分析のための[View match rows] (一致する行の表示)コンテキストメニュー。[View match rows] (一致する行を表示)の詳細は、異なるテーブルにある同一カラムの比較を参照してください。

関数従属性分析の分析結果に関するすべてのコンテキストメニュー。この分析の詳細は、カラム内の異常の検出(機能的な依存性の分析)を参照して下さい。

Hiveに対応していない唯一の分析は、[Time Correlation Analysis] (時間コリレーション分析)です。これはHiveにはDateデータ型がないためです。この分析タイプの詳細は、時間コリレーション分析を参照して下さい。

さらに、ジョブを生成して、データを検証、標準化、複製する分析結果での右クリックオプションは、Hiveに一切対応していません。これらのジョブの詳細は、データの検証を参照して下さい。

HiveおよびHBase

HiveまたはHBaseへの接続を選択して、さまざまな分析を作成し実行する場合、前述のように、接続ウィザードで、[Distribution] (ディストリビューション)からHiveまたはHBaseをホストするプラットフォームを選択する必要があります。

使用するHadoopディストリビューションがHortonworks Data Platform V2.0 (YARN)の場合、次のパラメーターを[Hadoop Properties] (Hadoopプロパティ)テーブルで設定する必要があります。
  • パラメーターは
    
                         yarn.application.classpath
                      
  • 値は次のとおりです。
    
                         /etc/hadoop/conf,/usr/lib/hadoop/,/usr/lib/hadoop/lib/,/usr/lib/hadoop-hdfs/,/usr/lib/hadoop-hdfs/lib/,/usr/lib/hadoop-yarn/,/usr/lib/hadoop-yarn/lib/,/usr/lib/hadoop-mapreduce/,/usr/lib/hadoop-mapreduce/lib/
                      

Oracle

代理ペアをサポートするには、データベースのNLS_CHARACTERSETパラメーターをUTF8またはAL32UTF8に設定する必要があります。

デフォルトのNLS_CHARACTERSETパラメーターは次のとおりです。

  • NLS_CHARACTERSET=WE8ISO8859P15

  • NLS_NCHAR_CHARACTERSET=AL16UTF16

注:

データベースパラメーターをチェックするには、次のSQLクエリを実行します。

SQL> SELECT * FROM NLS_DATABASE_PARAMETERS;