A segunda forma de fazer queries a partir de uma BD Greenplum a uma BD Oracle é através do SQL*Plus. A primeira hipotese foi com a utilzação de Java e driver JDBC, conforme este post.
O que pode ser uma vantagem, por ser um cliente nativo Oracle.
1) O utilizador gpadmin deve ter um cliente Oracle.
2) Criar um shell script/sql, exemplo:
[gpadmin@greenplum sqlplus]$ cat run.sh
export ORACLE_HOME=/oracle/app/oracle/product/11.2.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
sqlplus -s scott/oracle@localhost:1521/orcl <<EOF
set feedback off
set heading off
set pagesize 0
select empno||'|'||ename||'|'||deptno
from emp
/
EOF
3) Criar uma External Web Table:
CREATE EXTERNAL WEB TABLE oracle_emps_with_sqlplus
(empno int, ename character varying(20), deptno int)
EXECUTE ‘/home/gpadmin/dblink/sqlplus/run.sh’ on host
FORMAT ‘TEXT’ (DELIMITER ‘|’);
Agora já temos condições de executar o select 🙂
Categorias:Base de Dados, Big Data, Greenplum, Oracle