보고를 위해 데이터 게이트웨이 구성 및 등록

분석 및 대시보드와 같은 클래식 기능에 대한 원격 접속을 사용으로 설정하려면 다음 단계(선택사항)를 수행하십시오.

데이터 시각화용(예: Oracle Analytics Cloud Professional Edition)으로만 배치하는 경우 다음 단계를 수행할 필요가 없습니다.
시작하기 전에 데이터 시각화를 위해 데이터 게이트웨이 구성의 구성 단계를 따르십시오.
  1. 데이터 게이트웨이 에이전트를 설치한 시스템에서 시스템 이름과 포트 번호를 얻습니다.
    서버 배치에서는 다음과 같이 합니다.
    1. /<Data Gateway install folder>/domain/bin/status.sh 명령을 실행합니다.
    2. 명령 출력에서 Data Gateway Status 아래에 표시되는 URL에 포함된 시스템 이름과 Data Gateway Jetty HTTP Port 값을 기록해 둡니다.
    개인 배치에서는 다음과 같이 합니다.
    1. %localappdata%\Temp\DataGateway\ports.properties 파일을 엽니다.
    2. 시스템 이름과 포트 번호를 기록해 둡니다.
  2. 데이터 게이트웨이 에이전트를 시작합니다.
  3. 원격으로 데이터 접속을 시작하기 전에 데이터를 모델링하려면 의미 모델러 또는 모델 관리 툴(의미 모델러에서 데이터베이스를 지원하지 않는 경우)을 사용하여 의미 모델을 편집합니다.
  4. 모델 관리 툴을 사용 중인 경우 Java 데이터 소스 메타데이터를 로드합니다.
    1. 모델 관리 툴의 파일 메뉴에서 열기, 클라우드에서를 차례로 누른 다음 [클라우드에서 열기] 대화상자에서 의미 모델의 세부정보를 지정합니다.
    2. 파일 메뉴에서 Java 데이터 소스 로드를 누릅니다.
    3. Java 데이터 소스 서버에 접속 대화상자에서 다음과 같이 합니다.
      • 호스트 이름 필드에 단계 1에서 기록해 둔 시스템 이름을 입력합니다. 전체 호스트 이름을 입력합니다. 예를 들어, 단계 1에서 machine을 기록해 둔 경우 machine.us.example.com을 지정할 수 있습니다.
      • 포트 필드에 단계 1에서 기록해 둔 포트를 입력합니다. 51811을 예로 들 수 있습니다.
      • 사용자 이름비밀번호 필드에 dummy 또는 원하는 문자열을 입력합니다(데이터 게이트웨이가 보급한 기능을 검색하기 위한 퍼블릭 호출이므로 해당 인증서는 검증되지 않음).
  5. 모델 관리 툴을 사용 중인 경우 물리적 데이터베이스 접속을 설정합니다.
    1. 물리적 층에서 데이터 소스에 적합한 표준 호출 인터페이스를 사용하여 데이터 소스에 대한 로컬(원격 아님) 접속을 생성하고, 필요에 따라 데이터를 모델링합니다.
    2. 의미 모델에 대한 원격 접속을 생성하여 클라우드에 다시 게시할 준비가 끝나면 생성한 접속을 편집합니다.
    3. 일반 사항 탭의 호출 인터페이스 필드에서 JDBC(직접 드라이버)를 선택하고 접속 문자열 필드에서 의미 모델 접속의 JDBC 문자열 및 인증서를 지정합니다. 지원되는 JDBC 문자열 및 드라이버 클래스 목록은 아래의 JDBC 및 JNDI 템플리트와 예를 참조하십시오.
    4. 기타 탭의 HTTP를 통해 SQL 사용 필드에 true를 입력하고 RDC 버전 필드에 2를 입력한 다음 JDBC 드라이버 클래스를 지정합니다.
    5. 클라우드에 의미 모델을 게시합니다.
이제 원격으로 온-프레미스 데이터베이스에 접속하여 배치를 테스트할 준비가 끝난 것입니다.

JDBC 및 JNDI 템플리트와 예

분석 및 대시보드에 대한 원격 접속을 설정할 때 JDBC 문자열 및 드라이버 클래스와 JNDI 접속 세부정보 및 컨텍스트 세부정보를 지정해야 할 수도 있습니다.

JDBC 문자열 패턴 및 드라이버 클래스
Oracle:
   Driver Class: oracle.jdbc.OracleDriver
   jdbc string: jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=[\"host-name\"])(PORT=[\"port\"]))(CONNECT_DATA=(SERVICE_NAME=[\"service-name\"])))              
Amazon Redshift:
   Driver Class: com.oracle.jdbc.redshift.RedshiftDriver 
   JDBC String: jdbc:oracle:redshift://[\"host-name\"]:[\"port\"];DatabaseName=[\"service-name\"];EncryptionMethod=SSL;ValidateServerCertificate=false
Apache Hive
    Driver Class: com.oracle.bi.jdbc.hive.HiveDriver
    JDBC String: jdbc:oracle:hive://[\"host-name\"]:[\"port\"];EncryptionMethod=SSL;ValidateServerCertificate=false
DB2
   Driver Class: com.oracle.bi.jdbc.db2.DB2Driver
   JDBC String: jdbc:oracle:db2://[\"host-name\"]:[\"port\"];DatabaseName=[\"service-name\"]
Impala
   Driver Class: com.oracle.bi.jdbc.impala.ImpalaDriver
   JDBC String: jdbc:oracle:impala://[\"host-name\"]:[\"port\"];EncryptionMethod=SSL;ValidateServerCertificate=false
MySQL
   Driver Class: com.mysql.cj.jdbc.Driver
   JDBC String: jdbc:mysql://[\"host-name\"]:[\"port\"]"[/database][?properties]
SQL Server
   Driver Class: com.oracle.bi.jdbc.sqlserver.SQLServerDriver
   JDBC String: jdbc:oracle:sqlserver://[\"host-name\"]:[\"port\"];DatabaseName=[\"service-name\"]
Teradata
   Driver Class: com.teradata.jdbc.TeraDriver
   JDBC String: jdbc:teradata://[\"host-name\"]/DBS_PORT=[\"port\"]  
고유 드라이버용 JNDI 템플리트
Oracle:
      <Resource               
      name="jdbc/myoracle"               
      global="jdbc/myoracle"               
      auth="Container"               
      type="javax.sql.DataSource"               
      driverClassName="oracle.jdbc.OracleDriver"                
      url="jdbc:oracle:thin:@localhost:1521:orcl"               
      username="my_user"               
      password="my_password"               
      maxActive="15"               
      maxIdle="1"                
      maxWait="-1"
      />

      <Resource               
      name="jdbc/oracleolap"               
      global="jdbc/oracleolap"               
      auth="Container"               
      type="javax.sql.DataSource"               
      driverClassName="oracle.jdbc.OracleDriver"                
      url="jdbc:oracle:thin:@localhost:1522:orcl112"               
      username="my_user"               
      password="my_password"          
      maxActive="15"               
      maxIdle="1"                
      maxWait="-1"
      />

      <Resource               
      name="jdbc/oraclenorthwind"               
      global="jdbc/oraclenorthwind"               
      auth="Container"               
      type="javax.sql.DataSource"               
      driverClassName="oracle.jdbc.OracleDriver"                
      url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=example.com)(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=MATSDB.EXMAPLE.COM)))"               
      username="my_user"               
      password="my_password"          
      maxActive="15"               
      maxIdle="1"                
      maxWait="-1"
      />

      DB2
      <Resource               
      name="jdbc/db2northdb"               
      global="jdbc/db2northdb"               
      auth="Container"               
      type="javax.sql.DataSource"               
      driverClassName="com.ibm.db2.jcc.DB2Driver"                
      url="jdbc:db2://example.com:58263/NORTHDB"               
      username="my_user"               
      password="my_password"              
      maxActive="15"               
      maxIdle="1"                 
      maxWait="-1" />

      SQLServer: 
      <Resource               
      name="jdbc/sqlservernorthwind"               
      global="jdbc/sqlservernorthwind"               
      auth="Container"               
      type="javax.sql.DataSource"               
      driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"               
      url="jdbc:sqlserver://example.com:61045;DatabaseName=Northwind"               
      username="my_user"               
      password="my_password"           
      maxActive="15"               
      maxIdle="1"                
      maxWait="-1" /> 

      Teradata:
      <Resource               
      name="jdbc/teranorthwind"               
      global="jdbc/teranorthwind"               
      auth="Container"               
      type="javax.sql.DataSource"               
      driverClassName="com.teradata.jdbc.TeraDriver"                
      url="jdbc:teradata://99.999.99.999"               
      username="my_user"               
      password="my_password"           
      maxActive="15"               
      maxIdle="1"                
      maxWait="-1" />

      Mysql_community
      <Resource        
      name="jdbc/CEmysql"        
      auth="Container"        
      type="com.mysql.jdbc.jdbc2.optional.MysqlDataSource"        
      factory="com.mysql.jdbc.jdbc2.optional.MysqlDataSourceFactory"        
      username="my_user"               
      password="my_password"    
      serverName="example.com"        
      portNumber="3306"        
      databaseName="my_database" />
DD 드라이버용 JNDI 템플리트
The JNDI for DD Drivers.
SQLServer:
<Resource
name="jdbc/DDsqlserver"
auth="Container"
type="com.oracle.bi.jdbcx.sqlserver.SQLServerDataSource"
factory="com.oracle.bi.jdbcx.sqlserver.SQLServerDataSourceFactory"
user="my_user"
password="my_password"
serverName="example.com\MSSQLSERVER16"
portNumber="61045"
databaseName="my_database" />

DB2:
<Resource
name="jdbc/DDdb2"
auth="Container"
type="com.oracle.bi.jdbcx.db2.DB2DataSource"
factory="com.oracle.bi.jdbcx.db2.DB2DataSourceFactory"
user="my_user"
password="my_password"
serverName="example.com"
portNumber="58263"
databaseName="my_database"
/> 

Impala:
<Resource
name="jdbc/DDimpala"
auth="Container"
type="com.oracle.bi.jdbcx.impala.ImpalaDataSource"
factory="com.oracle.bi.jdbcx.impala.ImpalaDataSourceFactory"
user="my_user"
password="my_password"
serverName="example.com"
portNumber="21050"
databaseName="my_database"
/>

Spark:
<Resource
name="jdbc/DDspark"
auth="Container"
type="com.oracle.bi.jdbcx.sparksql.SparkSQLDataSource"
factory="com.oracle.bi.jdbcx.sparksql.SparkSQLDataSourceFactory"
user="my_user"
password="my_password"
serverName="example.com"
portNumber="10000"
databaseName="my_database"
/>

HIVE:
<Resource
name="jdbc/DDhive"
auth="Container"
type="com.oracle.bi.jdbcx.hive.HiveDataSource"
factory="com.oracle.bi.jdbcx.hive.HiveDataSourceFactory"
user="my_user"
password="my_password"
serverName="example.com"
portNumber="10000"
databaseName="my_database"
/> 

MySQL:
<Resource
name="jdbc/DDmysql"
auth="Container"
type="com.oracle.bi.jdbcx.mysql.MySQLDataSource"
factory="com.oracle.bi.jdbcx.mysql.MySQLDataSourceFactory"
user="my_user"
password="my_password"
serverName="example.com"
portNumber="3306"
databaseName="my_database"
/>

MYSQL:
<Resource
name="jdbc/DDmysql"
auth="Container"
type="com.oracle.bi.jdbcx.mysql.MySQLDataSource"
factory="com.oracle.bi.jdbcx.mysql.MySQLDataSourceFactory"
user="my_user"
password="my_password"
serverName="example.com"
portNumber="3306"
databaseName="my_database" 
/>
     

데이터 게이트웨이에 JDBC 드라이버 추가

온-프레미스 데이터베이스의 데이터를 모델링할 수 있도록 데이터 게이트웨이 설치에 JDBC 드라이버를 추가합니다.

시작하기 전에 온-프레미스 환경의 동일한 Windows 컴퓨터에 데이터 게이트웨이 및 모델 관리 툴이 설치되어 있는지 확인합니다.
  1. 배치할 JDBC 드라이버를 다운로드합니다.
    예를 들어, Snowflake 데이터베이스의 데이터를 모델링하려면 최신 Snowflake JDBC 드라이버(예: snowflake-jdbc-3.9.0.jar 파일)를 다운로드합니다.
  2. 다운로드한 JDBC JAR 파일을 데이터 게이트웨이 설치 폴더에 복사합니다.
    • 서버 배치에서는 JAR 파일을 <Data Gateway install_location>/domain/jettybase/thirdpartyDrivers에 복사합니다.
    • Windows의 개별 배치에서는 JAR 파일을 <Data Gateway_extract_path>\thirdpartyDrivers에 복사합니다.
    • MacOS의 개별 배치에서는 JAR 파일을 <Application->Show Package Contents>Resources->app.nw-> thirdpartyDrivers에 복사합니다.
  3. 데이터 게이트웨이를 재시작합니다. 데이터 게이트웨이 유지보수을(를) 참조하십시오.

데이터 소스 지정을 위한 DSN 형식

Oracle Analytics에서는 여러 데이터베이스 유형에 대해 온프레미스 데이터를 모델링할 수 있습니다. Oracle Analytics는 의미 모델을 통해 일부 온-프레미스 데이터 소스에 대한 직접 액세스를 지원합니다. 모델 관리 툴을 사용하여 데이터베이스 접속을 생성할 때 접속 풀 대화상자(일반 사항 탭)의 데이터 소스 이름 필드에서 접속할 데이터베이스 유형에 적절한 DSN 형식을 사용합니다.

Amazon Redshift:
       DRIVER=Oracle 7.1 Amazon Redshift Wire Protocol;HOST=["host-name"];PORT=["port"];DB=["service-name"]
      SSL: DRIVER=Oracle 7.1 Amazon Redshift Wire Protocol;HOST=["host-name"];PORT=["port"];DB=["service-name"];EM=6;CPV=TLSv1.2,TLSv1.1,TLSv1, SSLv3, SSLv2;VSC=0
Apache Drill:
       DRIVER=MapR Drill ODBC Driver;Host=["host-name"];Port=["port"];CastAnyToVarchar=true;ExcludedSchemas=sys,INFORMATION_SCHEMA;AuthenticationType=Basic               Authentication;ConnectionType=Direct
Aster:
       DRIVER=Aster ODBC Driver;SERVER=["host-name"];PORT=["port"];DATABASE=["service-name"]
DB2:
      DRIVER=Oracle 7.1 DB2 Wire Protocol;IpAddress=["host-name"];PORT=["port"];DB=["service-name"]
      SSL:  DRIVER=Oracle 7.1 DB2 Wire Protocol;IpAddress=["host-name"];PORT=["port"];DB=["service-name"];EM=1;VSC=0
Greenplum:
       DRIVER=Oracle 7.1 Greenplum Wire Protocol;HOST=["host-name"];PORT=["port"];DB=["service-name"]
Hive:
       DRIVER=Oracle 8.0 Apache Hive Wire Protocol;HOST=["host-name"];PORT=["port"]
      SSL: DRIVER=Oracle 8.0 Apache Hive Wire Protocol;HOST=["host-name"];PORT=["port"];EM=1;VSC=0
Impala:
       DRIVER=Oracle 7.1 Impala Wire Protocol;HOST=["host-name"];PORT=["port"]
     SSL:  DRIVER=Oracle 7.1 Impala Wire Protocol;HOST=["host-name"];PORT=["port"];EM=1;VSC=0
Informix:
       DRIVER=Oracle 7.1 Informix Wire Protocol;HOSTNAME=["host-name"];PORTNUMBER=["port"];DATABASE=["service-name"]
MongoDB:
       DRIVER=Oracle 8.0 MongoDB;HOST=["host-name"];PORT=["port"];DB=["service-name"]
MySQL:
      DRIVER=Oracle 7.1 MySQL Wire Protocol;HOST=["host-name"];PORT=["port"];DB=["service-name"]
PostgresSql:
       DRIVER=Oracle 7.1 PostgreSQL Wire Protocol;HOST=["host-name"];PORT=["port"];DB=["service-name"]
Spark:
      DRIVER=Oracle 8.0 Apache Spark SQL;HOST=["host-name"];PORT=["port"]
      SSL:  DRIVER=Oracle 8.0 Apache Spark SQL;HOST=["host-name"];PORT=["port"];EM=1;VSC=0
SQL Server:
     DRIVER=Oracle 7.1 SQL Server Wire Protocol;HOST=["host-name"];PORT=["port"];DB=["service-name"]
     SSL:  DRIVER=Oracle 7.1 SQL Server Wire Protocol;HOST=["host-name"];PORT=["port"];DB=["service-name"];EM=1;VSC=0;CryptoProtocolVersion=TLSv1.2,TLSv1.1,TLSv1,SSLv3,SSLv2
Sybase:
       DRIVER=Oracle 7.1 Sybase Wire Protocol;NA=["host-name"], ["port"];DB=["service-name"]
Teradata:
       DRIVER=Oracle 7.1 Teradata;DBCName=["host-name"];port_name=["port"]