Configurar e Registar Data Gateway para Geração de Relatórios

Execute estes passos opcionais para ativar a conectividade remota para as funcionalidades Clássicas como as análises e os dashboards.

Se estiver apenas a implementar a visualização de dados (por exemplo, o Oracle Analytics Cloud Professional Edition), não precisa de seguir estes passos.
Antes de começar, siga os passos de configuração em Configurar o Data Gateway para Visualização de Dados.
  1. No computador onde instalou um agente do Data Gateway, obtenha o nome do computador e o número da porta.
    Numa implementação de servidor:
    1. Execute o comando /<Data Gateway install folder>/domain/bin/status.sh.
    2. Na saída de dados do comando, tome nota do nome do computador contido no URL apresentado em Estado do Data Gateway e tome nota do valor Porta de HTTP Jetty do Data Gateway.
    Numa implementação pessoal:
    1. Abra o ficheiro: %localappdata%\Temp\DataGateway\ports.properties.
    2. Tome nota do nome do computador e do número da porta.
  2. Inicie o agente do Data Gateway.
  3. Se pretender modelar os seus dados antes de começar a ligar aos mesmos remotamente, utilize o Modelador Semântico ou o Model Administration Tool (se a base de dados não for suportada pelo Modelador Semântico) para editar o seu modelo semântico.
  4. Se estiver a utilizar o Model Administration Tool, carregue os metadados da origem de dados de Java.
    1. No Model Administration Tool, a partir do menu Ficheiro, clique em Abrir, em seguida, em Na Cloud e utilize a caixa de diálogo Abrir na Cloud para especificar os detalhes do seu modelo semântico.
    2. A partir do menu Ficheiro, clique em Carregar Origens de Dados de Java.
    3. Na caixa de diálogo Ligar ao Servidor da Origem de Dados de Java:
      • No campo Nome do Host, introduza o nome do computador que anotou no Passo 1. Qualifique totalmente o nome do host. Por exemplo, se anotou machine no Passo 1, poderá especificar machine.us.example.com.
      • No campo Porta, introduza a porta que anotou no Passo 1. Por exemplo, 51811.
      • Nos campos Nome de Utilizador e Senha, introduza dummy ou qualquer cadeia de caracteres (estas credenciais não são validadas porque se trata de uma chamada pública para descobrir as capacidades anunciadas pelo Data Gateway).
  5. Se estiver a utilizar o Model Administration Tool, configure uma ligação à base de dados física:
    1. Na camada Física, crie uma ligação local (não remota) à sua origem de dados utilizando a interface de chamada standard adequada para a sua origem de dados e modele os dados, conforme necessário.
    2. Quando estiver preparado para criar uma ligação remota ao seu modelo semântico e publicá-la de novo na cloud, edite a ligação que criou.
    3. No separador Geral, no campo Interface de chamadas, selecione JDBC (Driver Direto) e, no campo Cadeia de Caracteres da Ligação, especifique a cadeia de caracteres de JDBC e as credenciais na ligação do modelo semântico. Consulte Modelos e Exemplos de JDBC e JNDI abaixo para obter uma lista das cadeias de caracteres e classes de driver JDBC suportadas.
    4. No separador Diversos, no campo Utilizar SQL Sobre HTTP, introduza true e, no campo Versão de RDC, introduza 2 e especifique a classe do driver de JDBC.
    5. Publique o modelo semântico na cloud.
Está pronto para testar a sua implementação ligando remotamente a uma base de dados on-premises.

Modelos e Exemplos de JDBC e JNDI

Ao configurar a conectividade remota para análises e dashboards, poderá ter de especificar cadeias de caracteres e classes de driver JDBC, assim como detalhes de ligação e detalhes de contexto de JNDI.

Padrões de Cadeias de Caracteres e Classes de Driver 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\"]  
Modelos de JNDI para Drivers Nativos
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" />
Modelos de JNDI para Drivers DD
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" 
/>
     

Acrescentar um Driver JDBC ao Data Gateway

Acrescente um driver JDBC à sua instalação do Data Gateway para que possa modelar dados numa base de dados on-premises.

Antes de começar, certifique-se de que o Data Gateway e o Model Administration Tool estão instalados no mesmo computador com o Windows no seu ambiente on-premises.
  1. Descarregue o driver JDBC que pretende implementar.
    Por exemplo, para modelar dados numa base de dados Snowflake, descarregue o driver JDBC Snowflake mais recente (por exemplo, no ficheiro snowflake-jdbc-3.9.0.jar).
  2. Copie o ficheiro JAR de JDBC descarregado para a pasta de instalação do Data Gateway.
    • Numa implementação de servidor, copie o ficheiro JAR para: <Data Gateway install_location>/domain/jettybase/thirdpartyDrivers.
    • Numa implementação pessoal no Windows, copie o ficheiro JAR para: <Data Gateway_extract_path>\thirdpartyDrivers.
    • Numa implementação pessoal no MacOS, copie o ficheiro JAR para: <Application->Show Package Contents>Resources->app.nw-> thirdpartyDrivers.
  3. Reinicie o Data Gateway. Consulte Manter Data Gateway.

Formatos de DSN para Especificar Origens de Dados

No Oracle Analytics, pode modelar os seus dados on-premises para muitos tipos de bases de dados. O Oracle Analytics suporta o acesso direto a algumas origens de dados on-premises através do modelo semântico. Quando criar a ligação à base de dados utilizando o Model Administration Tool, no campo Nome da origem de dados da caixa de diálogo Pool de Ligações (separador Geral), deve utilizar o formato de DSN adequado ao tipo de base de dados a que está a ligar.

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"]