Настройка и регистрация Data Gateway для отчетности

Выполните эти дополнительные действия, чтобы включить удаленное подключение к классическим функциям, например информационным панелям и анализам.

Если развертывается только визуализация данных (например, Oracle Analytics Cloud Professional Edition), выполнять описанные ниже действия не требуется.
Сначала выполните инструкции по настройке из раздела Настройка Data Gateway для визуализации данных.
  1. На компьютере, на котором установлен агент Data Gateway, получите имя компьютера и номер порта.
    В серверном развертывании:
    1. Выполните команду /<Папка установки Data Gateway>/domain/bin/status.sh.
    2. В выводе команды отметьте для себя имя компьютера, которое содержится в URL-адресе, отображаемом в разделе Статус Data Gateway, а также значение HTTP-порт Jetty шлюза Data Gateway.
    В персональном развертывании:
    1. Откройте следующий файл: %localappdata%\Temp\DataGateway\ports.properties.
    2. Отметьте для себя имя компьютера и номер порта.
  2. Запустите агент Data Gateway.
  3. Для моделирования данных перед установкой удаленного подключения к ним отредактируйте семантическую модель с помощью средства семантического моделирования или инструмента администрирования моделей (если база данных не поддерживается средством семантического моделирования).
  4. Если вы используете инструмент администрирования моделей, загрузите метаданные источника данных Java.
    1. В инструменте администрирования модели в меню Файл выберите Открыть и В облаке, а затем в диалоговом окне "Открыть в облаке" укажите сведения о семантической модели.
    2. В меню Файл выберите Загрузить источники данных Java.
    3. В диалоговом окне Подключение к серверу источника данных Java:
      • В поле Имя хоста введите имя компьютера, которое было отмечено в ходе выполнения шага 1. Укажите полностью определенное имя хоста. Например, если в ходе выполнения шага 1 вы отметили для себя machine, можно указать machine.us.example.com.
      • В поле Порт укажите порт, отмеченный в ходе выполнения шага 1. Например, 51811.
      • В полях Имя пользователя и Пароль введите dummy или любую строку (эти учетные данные не проверяются, так как это общедоступный вызов для обнаружения возможностей, объявленных шлюзом Data Gateway).
  5. Если вы используете инструмент администрирования моделей, настройте подключение к физической базе данных:
    1. На физическом уровне создайте локальное (не удаленное) подключение к источнику данных с помощью стандартного интерфейса вызова, подходящего для источника данных, и смоделируйте данные требуемым образом.
    2. Если вы готовы создать удаленное подключение к семантической модели и опубликовать его в облаке, измените созданное подключение.
    3. На вкладке "Общие" в поле Интерфейс вызова выберите JDBC (прямой драйвер), а в поле Строка подключения укажите строку JDBC и учетные данные для подключения к семантической модели. Список поддерживаемых строк и классов драйверов JDBC см. в разделе Шаблоны и примеры JDBC и JNDI.
    4. На вкладке "Прочее" в поле Использовать SQL по HTTP введите 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" />
Шаблоны JNDI для драйверов 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" 
/>
     

Добавление драйвера JDBC в Data Gateway

Добавьте драйвер JDBC в установку Data Gateway, чтобы можно было моделировать данные в локальной базе данных.

Перед началом работы убедитесь, Data Gateway и инструмент администрирования моделей установлены на одном компьютере под управлением ОС Windows в вашей локальной среде.
  1. Выгрузите драйвер JDBC, который требуется развернуть.
    Например, чтобы смоделировать данные в базе данных Snowflake, выгрузите последний драйвер JDBC Snowflake (например, в файл Snowflake-jdbc-3.9.0.jar).
  2. Скопируйте выгруженный файл JDBC JAR в папку установки Data Gateway.
    • В серверном развертывании скопируйте файл 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. Перезапустите Data Gateway. См. раздел Обслуживание Data Gateway.

Форматы 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"]