メインコンテンツまでスキップ
バージョン: 4.x

Oracle JDBCカタログ

Apache Doris JDBC Catalogは、標準のJDBCインターフェースを介してOracleデータベースへの接続をサポートしています。このドキュメントでは、Oracleデータベース接続の設定方法について説明します。

JDBC Catalogの概要については、次を参照してください:JDBC カタログ 概要

使用上の注意

Oracleデータベースに接続するには、以下が必要です

  • Oracle 19c、18c、12c、11g、または10g。

  • Oracleデータベース用のJDBCドライバー。これはMaven RepositoryからOjdbc8以上のバージョンのOracle JDBCドライバーをダウンロードできます。

  • Apache DorisのFEおよびBEノードとOracleサーバー間のネットワーク接続。デフォルトのポートは1521です。Oracle RACでONSが有効になっている場合は、ポート6200も必要です。

Oracleへの接続

CREATE CATALOG oracle_catalog PROPERTIES (
'type' = 'jdbc',
'user' = 'username',
'password'='pwd',
'jdbc_url' = 'jdbc:oracle:thin:@example.net:1521:orcl',
'driver_url' = 'ojdbc8.jar',
'driver_class' = 'oracle.jdbc.driver.OracleDriver'
)

jdbc_urlは、JDBCドライバに渡される接続情報とパラメータを定義します。Oracle JDBC Thinドライバを使用する場合、URLの構文はOracleの設定によって異なる場合があります。例えば、Oracle SIDまたはOracleサービス名に接続する場合、接続URLは異なります。詳細については、Oracle Database JDBC Driver Documentationを参照してください。上記のサンプルURLは、orclという名前のOracle SIDに接続します。

階層マッピング

Oracleをマッピングする際、Apache DorisのDatabaseはOracleのUserに対応します。そして、Apache DorisのDatabase下のTableは、そのOracleのUserがアクセス可能なTableに対応します。マッピング関係は以下のとおりです:

DorisOracle
カタログDatabase
DatabaseUser
TableTable

カラム型マッピング

Oracle タイプDoris タイプComment
number(P) / number(P, 0)tinyint/smallint/int/bigint/largeintDorisはPのサイズに基づいて対応する型を選択します:P < 3: TINYINT; P < 5: SMALLINT; P < 10: INT; P < 19: BIGINT; P > 19: LARGEINT
number(P, S), if (S > 0 && P > S)decimal(P, S)
number(P, S), if (S > 0 && P < S)decimal(S, S)
number(P, S), if (S < 0)tinyint/smallint/int/bigint/largeintS < 0の場合、DorisはPを`P +
numberDorisは現在、PとSが指定されていないnumber型をサポートしていません
decimal(P, S)decimal(P, S)
float/realdouble
datedate
timestampdatetime(S)
char/ncharstring
varchar2/nvarchar2string
long/raw/long raw/internalstring
BLOBvarbinaryCatalogのenable.mapping.varbinaryプロパティによって制御されます(4.0.2以降でサポート)。デフォルトはfalseで、stringにマッピングされます;trueの場合、varbinary型にマッピングされます。
otherUNSUPPORTED

よくある問題

  1. Oracle Catalogの作成またはクエリ時にONS configuration failedが発生する

    be.confのJAVA_OPTSに-Doracle.jdbc.fanEnabled=falseを追加し、ドライバをhttps://repo1.maven.org/maven2/com/oracle/database/jdbc/ojdbc8/19.23.0.0/ojdbc8-19.23.0.0.jarにアップグレードしてください

  2. Oracle Catalogの作成またはクエリ時にNon supported character set (add orai18n.jar in your classpath): ZHS16GBK例外が発生する

    orai18n.jarをダウンロードし、各FEとBEのcustom_lib/ディレクトリ(存在しない場合は手動で作成)に配置し、各FEとBEを再起動してください。