Подключение: Oracle Autonomous DB и R - проблема с пакетом ROracle

Я пытаюсь подключить RStudio на вычислительном экземпляре к автономному хранилищу Oracle. Я прошел следующие шаги:

  • Provisioned Autonomous Data Warehouse
    (https://docs.oracle.com/en/cloud/paas/autonomous-data-warehouse-cloud/tutorial-provision-adw/)
    • Stored the DB connection Wallet;
    • Установленный базовый пакет Oracle Instant client: https://www.oracle.com/technetwork/topics/winx64soft-089540.html
    • Загружены и помещены в тот же каталог, что и мгновенный клиент: пакет SDK и пакет ODBC.
    • включен Мгновенный путь к пакету в проверяемой среде PATH ("C: / oracle_client / Instantclient_18_5") и создайте системную переменную OCI_LIB64 с тем же путем
    • установлен GTools, проверяющий параметры PATH
    • Распаковал кошелек в: C: \ oracle_client \ Instantclient_18_5 \ network \ admin

Теперь у меня возникла проблема с установкой пакета ROracle в RStudio. Я использую следующий сценарий:

Sys.setenv(OCI_LIB64="C:/oracle_client/instantclient_18_5") 
install.packages("ROracle")

Ошибка, которую я получил, заключается в том, что заголовки включения не найдены:

Warning in strptime(xx, f, tz = tz) :
  unable to identify current timezone 'C':
please set environment variable 'TZ'
* installing *source* package 'ROracle' ...
** package 'ROracle' successfully unpacked and MD5 sums checked
** using staged installation
Oracle Client Shared Library 64-bit - 18.5.0.0.0 Operating in Instant Client mode.
found Instant Client C:/oracle_client/instantclient_18_5
found Instant Client SDK C:/oracle_client/instantclient_18_5/sdk/include
ERROR: cannot find Oracle Client include headers in C:/oracle_client/instantclient_18_5/sdk/include.
       Please set OCI_INC to correct location.
ERROR: configuration failed for package 'ROracle'
* removing 'C:/Users/opc/Documents/R/win-library/3.6/ROracle'
Warning in install.packages :
  installation of package ‘ROracle’ had non-zero exit status

Все говорят, что нужно также установить OCI_INC таким образом (но у меня нет каталога в виде "... client_1 / oci / include /:

Sys.setenv(OCI_INC="C:/Oracle/product/11.2.0/client_1/oci/include")

Любая идея, что мне не хватает для ROracle или в целом?

Версия R: 3.6

Операционная система: Windows Server на вычислительном экземпляре


person Bullzeye    schedule 10.06.2019    source источник
comment
Ваши заголовки находятся в C:/oracle_client/instantclient_18_5/sdk/include или C:/Oracle/product/11.2.0/client_1/oci/include?   -  person cory    schedule 10.06.2019
comment
И, чтобы быть ясным, похоже, это проблема не с пакетом, а с пользователем.   -  person cory    schedule 10.06.2019
comment
Эй, я не виню посылку - просто прошу помощи. :) C: / oracle_client / Instantclient_18_5 / sdk / include - это то, что у меня есть из пакета SDK. У меня нет каталога вроде ... client_1 / oci / include   -  person Bullzeye    schedule 10.06.2019
comment
и по какой-то причине папка C: / oracle_client / Instantclient_18_5 / sdk / include пуста ... Я думаю, это не так, как должно быть   -  person Bullzeye    schedule 10.06.2019


Ответы (1)


Согласно документации (https://docs.oracle.com/en/database/oracle/r-enterprise/1.5.1/oread/installing-oracle-database-instant-client.html#GUID-8C502BDD-C1A1-4EA0-9E88-D2F8452D4AC2) вам необходимо загрузить «Пакет мгновенного клиента - SDK». Когда я проверил веб-страницу для мгновенного клиента, ссылки на версию SDK отсутствовали.

Однако, если вы перейдете сюда: https://www.oracle.com/database/technologies/instant-client/downloads.html и выберите O / S на следующей странице. Там должна быть ссылка на версию SDK. Например, я использую Mac, и правильная загрузка находится здесь: https://download.oracle.com/otn_software/mac/instantclient/193000/instantclient-sdk-macos.x64-19.3.0.0.0dbru.zip

После того, как я распаковал этот файл, в структуре каталогов была папка ... / include с файлами .h, которые, как мне кажется, установщик должен завершить. Следовательно, правильные настройки на моем Mac будут следующими:

OCI_LIB64 установлен в / Users / keithlaker / Downloads / Instantclient_19_3 OCI_INC установлен в / Users / keithlaker / Downloads / Instantclient_19_3 / sdk / include

Одно замечание ... Я не знаком с R, но в общих чертах реализация R в базе данных Oracle (репозиторий сценариев R в базе данных и хранилище данных объекта R), которая является частью теперь бесплатной опции EE «Advanced Analytics» не является частью автономной базы данных.

Следовательно, ваш проект R должен иметь возможность подключаться, но вы не сможете использовать какие-либо обычные пакеты R в базе данных, потому что они не существуют.

Надеюсь это поможет.

Только что нашел ветку на нашем внутреннем форуме, которой стоит поделиться. Вышеупомянутое может позволить вам установить клиент R, но ADB (ADW / ATP) не поддерживает использование ore.connect () и ore.disconnect (). Поддержка R находится на карте нашего продукта, см. Эту презентацию OpenWorld 2019 - https://static.rainfocus.com/oracle/oow19/sess/1553766982670001yXnT/PF/CON4719%20OOW%20SF%202019%20-%20Hornick%20-%20OML%20Overview%20and%20Roadmap%20v1.4_1568740954169001k3Df.pdf

person AutonomousDW    schedule 20.01.2020