Configuration et inscription de la passerelle de données en vue de la génération de rapports

Effectuez les étapes facultatives suivantes afin d'activer la connectivité distante pour les fonctionnalités classiques telles que les analyses et les tableaux de bord.

Ces étapes sont inutiles pour les déploiements destinés à la visualisation de données uniquement (par exemple, Oracle Analytics Cloud Professional Edition).
Avant de commencer, suivez les étapes de configuration dans Configuration de Data Gateway pour la visualisation de données.
  1. Recherchez le nom et le numéro de port de l'ordinateur sur lequel vous avez installé l'agent de passerelle de données.
    Dans le cas d'un déploiement de serveur :
    1. Exécutez la commande /<Dossier d'installation de la passerelle de données>/domain/bin/status.sh.
    2. Dans la sortie de commande, recherchez et notez le nom de l'ordinateur. Il figure dans l'URL affichée sous Data Gateway Status. Prenez également note de la valeur Data Gateway Jetty HTTP Port.
    Dans le cas d'un déploiement personnel :
    1. Ouvrez le fichier %localappdata%\Temp\DataGateway\ports.properties.
    2. Prenez note du nom et du numéro de port de l'ordinateur.
  2. Lancez l'agent de passerelle de données.
  3. Si vous voulez modéliser vos données avant de commencer à vous y connecter à distance, utilisez le modeleur sémantique ou l'outil d'administration de modèle (si la base de données n'est pas prise en charge par le modeleur sémantique) pour modifier votre modèle sémantique.
  4. Si vous utilisez l'outil d'administration de modèle, chargez les métadonnées de source de données Java.
    1. Dans l'outil d'administration de modèle, dans le menu Fichier, cliquez sur Ouvrir, puis sur Dans le cloud, et utilisez la boîte de dialogue Ouvrir dans le cloud pour indiquer les détails du modèle sémantique.
    2. Dans le menu Fichier, cliquez sur Charger des sources de données Java.
    3. Dans la boîte de dialogue Connexion au serveur de source de données Java, effectuez les opérations suivantes :
      • Dans le champ Nom d'hôte, entrez le nom d'ordinateur noté à l'étape 1. Qualifiez complètement le nom d'hôte. Par exemple, si vous avez noté machine à l'étape 1, entrez une chaîne de ce type : machine.us.example.com.
      • Dans le champ Port , entrez le port noté à l'étape 1. Par exemple : 51811.
      • Dans les champs Nom utilisateur et Mot de passe, entrez dummy ou une chaîne quelconque (ces informations d'identification ne sont pas validées, car il s'agit d'un appel public pour découvrir les fonctionnalités utilisées par la passerelle de données).
  5. Si vous utilisez l'outil d'administration de modèle, configurez une connexion de base de données physique :
    1. Dans la couche physique, créez une connexion locale (non distante) à votre source de données à l'aide de l'interface d'appel standard appropriée pour votre source de données, puis modélisez les données selon vos besoins.
    2. Une fois que vous êtes prêt à établir une connexion distante au modèle sémantique et à le republier vers le cloud, modifiez la connexion créée.
    3. Dans l'onglet Général, dans le champ Interface d'appel, sélectionnez JDBC (pilote direct), et dans le champ Chaîne de connexion, indiquez la chaîne JDBC et les informations d'identification dans la connexion de modèle sémantique. Reportez-vous à Modèles et exemples JDBC et JNDI ci-après pour obtenir la liste des chaînes et des classes de pilotes JDBC prises en charge.
    4. Dans l'onglet Divers, saisissez True dans le champ Utiliser SQL sur HTTP et 2 dans le champ Version RDC. Indiquez la classe de pilotes JDBC.
    5. Publiez le modèle sémantique dans le cloud.
Vous êtes maintenant prêt à tester votre déploiement en vous connectant à distance à une base de données sur site.

Modèles et exemples JDBC et JNDI

Lorsque vous configurez la connectivité distante pour les analyses et les tableaux de bord, vous pouvez avoir à indiquer des chaînes et des classes de pilotes JDBC, ainsi que des détails de contexte et de connexion JNDI.

Motifs de chaîne et classes de pilotes 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\"]  
Modèles JNDI pour les pilotes natifs
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" />
Modèles JNDI pour les pilotes 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" 
/>
     

Ajout d'un pilote JDBC à Data Gateway

Ajoutez un pilote JDBC à votre installation de Data Gateway de façon à pouvoir modéliser les données dans une base de données sur site.

Avant de commencer, vérifiez que Data Gateway et l'outil d'administration de modèle sont installés sur le même ordinateur Windows dans votre environnement sur site.
  1. Téléchargez le pilote JDBC à déployer.
    Par exemple, pour modéliser des données dans une base de données Snowflake, téléchargez le dernier pilote JDBC Snowflake (par exemple, dans le fichier snowflake-jdbc-3.9.0.jar).
  2. Copiez le fichier JAR JDBC téléchargé vers le dossier d'installation de Data Gateway.
    • Dans un déploiement de serveur, copiez le fichier JAR dans : <Data Gateway install_location>/domain/jettybase/thirdpartyDrivers.
    • Dans un déploiement personnel sous Windows, copiez le fichier JAR dans : <Data Gateway_extract_path>\thirdpartyDrivers.
    • Dans un déploiement personnel sous macOS, copiez le fichier JAR dans : <Application->Show Package Contents>Resources->app.nw-> thirdpartyDrivers.
  3. Redémarrez la passerelle de données. Reportez-vous à Gestion de la passerelle de données.

Formats DSN pour les sources de données

Dans Oracle Analytics, vous pouvez modéliser les données sur site pour de nombreux types de base de données. Oracle Analytics prend en charge l'accès direct à certaines sources de données sur site via le modèle sémantique. Lorsque vous créez une connexion à la base de données à l'aide de l'outil d'administration de modèle, utilisez le format DSN approprié pour le type de base de données auquel vous établissez cette connexion dans le champ Nom de source de données de la boîte de dialogue Pool de connexions (onglet Général).

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