У меня есть три виртуальные машины, база данных Oracle, сервер Hadoop с Hive и Orcale Data Integrator. У каждого своя база данных. Моя цель - соединить все и выполнить сопоставление базы данных Hive с базой данных Oracle с помощью Oracle Data Integrator.
Я настраиваю свой Oracle и сервер данных Hive. Соединение не удалось, тогда я создаю модели данных улья и оракула, затем новое сопоставление для загрузки данных из моей таблицы улья в таблицу оракула mxy. на логической вкладке я выбираю для Target Control Append. на вкладке «Физика» я выбираю для LKM: lkm куст в Oracle OLH-OSCH.GLOBAL и для IKM: ikm oracle insert.GLOBAL, но после нажатия кнопки воспроизведения я получаю следующее исключение:
`ODI-1590: The execution of the script failed.
Caused By: org.apache.bsf.BSFException: exception from Groovy: java.sql.SQLException: [FMWGEN][Hive JDBC Driver][Hive]Error while processing statement: /usr/lib/hive/lib/hive-contrib.jar does not exist
at org.codehaus.groovy.bsf.GroovyEngine.exec(GroovyEngine.java:114)
at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.
execInBSFEngine(SnpScriptingInterpretor.java:396)
at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.
exec(SnpScriptingInterpretor.java:247)
at oracle.odi.runtime.agent.execution.interpreter.
SessionTaskScriptingInterpretor.scripting(SessionTaskScriptingInterpretor.java:190)
at oracle.odi.runtime.agent.execution.SessionTask.scripting
(SessionTask.java:105)
at oracle.odi.runtime.agent.execution.cmd.
ScriptingExecutor.execute(ScriptingExecutor.java:49)
at oracle.odi.runtime.agent.execution.cmd.
ScriptingExecutor.execute(ScriptingExecutor.java:21)
at oracle.odi.runtime.agent.execution.TaskExecutionHandler.
handleTask(TaskExecutionHandler.java:52)
at oracle.odi.runtime.agent.execution.SessionTask.
processTask(SessionTask.java:206)
at oracle.odi.runtime.agent.execution.SessionTask.
doExecuteTask(SessionTask.java:117)
at oracle.odi.runtime.agent.execution.AbstractSessionTask.
execute(AbstractSessionTask.java:886)
at oracle.odi.runtime.agent.execution.
SessionExecutor$SerialTrain.runTasks(SessionExecutor.java:2225)
at oracle.odi.runtime.agent.execution.SessionExecutor.
executeSession(SessionExecutor.java:610)
at oracle.odi.runtime.agent.processor.
TaskExecutorAgentRequestProcessor$1.doAction(TaskExecutorAgentRequestProcessor.java:718)
at oracle.odi.runtime.agent.processor.
TaskExecutorAgentRequestProcessor$1.doAction(TaskExecutorAgentRequestProcessor.java:611)
at oracle.odi.core.persistence.dwgobject.
DwgObjectTemplate.execute(DwgObjectTemplate.java:203)
at oracle.odi.runtime.agent.processor.
TaskExecutorAgentRequestProcessor.doProcessStartAgentTask(TaskExecutorAgentRequestProcessor.java:800)
at oracle.odi.runtime.agent.processor.impl.
StartSessRequestProcessor.access$1400(StartSessRequestProcessor.java:74)
at oracle.odi.runtime.agent.processor.impl.
StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:702)
at oracle.odi.runtime.agent.processor.task.
AgentTask.execute(AgentTask.java:180)
at oracle.odi.runtime.agent.support.
DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:108)
at java.lang.Thread.run(Thread.java:748)`