oracle direct for hdfs xi下载,ORACLE连接HDFS有个专项的解决方案
发布日期:2021-06-24 10:48:42 浏览次数:3 分类:技术文章

本文共 4999 字,大约阅读时间需要 16 分钟。

《ORACLE连接HDFS有个专项的解决方案》由会员分享,可在线阅读,更多相关《ORACLE连接HDFS有个专项的解决方案(5页珍藏版)》请在人人文库网上搜索。

1、Hadoop载 :(locati on使用 ORACLE 连接 HDFS 有个专项的解决方案Oracle Direct Connector forDistributed Files System,简称 ODCH。该 软 件 包 可 以 到 Oracle 官 网 下http:/www.oracle.com/tech network/bdc/big-data-c onn ectors/dow nloads/i ndex.html 选择第一项: Oracle SQL Conn ector for Hadoop Distributed File System Release 2.1.0 我们这里使用2。

2、.1版本,下载到安装包后,解压即可:rootora11g # un zip oraosch-2.1.0.zip变态呀,压缩包里还有压缩包:rootora11g # un zip orahdfs-2.1.0.zip -d /usr/local/rootora11g # chow n -R oraclein stall /usr/local/orahdfs-2.1.0在解压缩文件的bin中,hdfs_stream有两个环境变量需要手动指定,编辑该文件:rootora11g # vi /usr/local/orahdfs-2.1.0/bi n/hdfs_stream增加两行环境变量:OSCH_HOM。

3、E=/usr/local/orahdfs-2.1.0HADOOP_HOME=/usr/local/hadoop-0.20.2再次编辑grid用户环境变量:rootora11g $ vi /home/grid/.bash_profile增加下列内容:export DIRECTHDFS_HOME=/usr/local/orahdfs-2.1.0export OSCH_HOME=$DIRECTHDFS_HOMEexport ORAHDFS_JAR=$DIRECTHDFS_HOME/jlib/orahdfs.jarexport HDFS_BIN_PATH=$DIRECTHDFS_HOME/bi n以o。

4、racle用户身份登录,创建两个目录,分别用于保存 ODCH的操作日志和位置文件 files):oracleora11g $ mkdir /data/ora11g/ODCH/logs,extdir -poracleora11g $ chmod -R 777 /data/ora11g/ODCH/而后以sysdba身份登录到 ORACLE创建3个directory对象:SQL create or replace directory ODCH_LOG_DIR as 7data/ora11g/ODCH/logs: grant read, write on directory ODCH_LOG_DIR 。

5、to SCOTT;create or replace directory ODCH_DATA_DIR as 7data/ora11g/ODCH/extd;grant read, write on directory ODCH_DATA_DIR to SCOTT;create or replace directory HDFS_BIN_PATH as 7usr/local/orahdfs-2.1.0/bi n;grant read,write,execute on directory HDFS_BIN_PATH to SCOTT; Directory created.SQLGrant succe。

6、eded.SQLDirectory created.SQLGrant succeeded.SQLDirectory created.SQLGrant succeeded.HDFS_BIN_PATH: hdfs_stream!脚本所在目录.XTAB_DATA_DIR用来存放 位置文件” (locationfiles)的目录。 位置文件”(locationfiles)是 个配置文件,里面包含 HDFS的文件路径/文件名以及文件编码格式。ODCH_LOG_DIR, Oracle用来存放外部表的 log/bad等文件的目录.创建外部表,注意 location 目前是随便写的,随后还要再修改:SQL c。

7、onn scott/tigerConnected.SQL CREATE TABLE odch_ext_table2 ( ID NUMBER3 ,OWNER VARCHAR2(128)4 ,NAME VARCHAR2(128)5 ,MODIFIED DATE6 ,Val NUMBER7 ) ORGANIZATION EXTERNAL8 (TYPE oracle_loader9 DEFAULT DIRECTORY ODCH_DATA_DIR10 ACCESS PARAMETERS11 (12 records delimited by newline13 preprocessor HDFS_BIN_。

8、PATH:hdfs_stream14 badfile ODCH_LOG_DIR:odch_ext_table%a_%p.bad15 logfile ODCH_LOG_DIR:odch_ext_table%a_%p.log16 fields terminated by , OPTIONALLY ENCLOSED BY 17 missing field values are null18 (19 ID DECIMAL EXTERNAL,20 OWNER CHAR(200),21 NAME CHAR(200),22 MODIFIED CHAR DATE_FORMAT DATE MASK YYYY-M。

9、M-DD HH24:MI:SS,23 Val DECIMAL EXTERNAL24 )25 )26 LOCATION (odch/tmpdata.csv)27 ) PARALLEL REJECT LIMIT UNLIMITED;Table created.切换至 grid 用户,创建 hdfs 中的目录并上传文件到hdfs:gridora11g $ hadoop dfs -mkdir odchselectgridora11g $ hadoop dfs -put tmpdata.csv odch/Tmpdata.csv 文件是我们通过 all_objects 生成的,SQL脚本为 row num。

10、 ,ow ner,object_ name,created,data_object_id from all_objects然后,通过ODCH的jar包,生成位置文件:gridora11g $ hadoop jar $ORAHDFS_JAR oracle.hadoop.hdfs.exttab.ExternalTable -D oracle.hadoop.hdfs.exttab.tableName=odch_ext_table -D oracle.hadoop.hdfs.exttab.datasetPaths=odch -D oracle.hadoop.hdfs.exttab.datasetReg。

11、ex=tmpdata.csv -Doracle.hadoop.hdfs.exttab.c onnection. url=jdbcracle:thi n: /192.168.30.244:1521/jssdb -D oracle.hadoop.hdfs.exttab.c onnection. user=SCOTT -publishDEPRECATED: The class oracle.hadoop.hdfs.exttab.Exter nalTable is deprecated.It is replaced by oracle.hadoop.exttab.Exter nalTable.Orac。

12、le SQL Conn ector for HDFS Release 2.1.0 - ProductionCopyright (c) 2011,2013, Oracle an d/or its affiliates. All rights reserved.En ter Database Password:The publish comma nd succeeded.ALTER TABLE SCOTT.ODCH_EXT_TABLELOCATION(osch-20130516031513-6000-1);The follow ing locati on files were created.os。

13、ch-20130516031513-6000-1 con tai ns 1 URI, 4685141 bytes4685141 hdfs:/hd node1:9000/user/grid/odch/tmpdata.csvThe following location files were deleted.odch/tmpdata.csv not deleted. It was not created by OSCH.其中,-D:指定相关参数tableName:外部表名字datasetPaths:源数据存放路径(HDFSdatasetRegex:数据文件名connection.urlracle 数。

14、据库连接串connection.user:数据库用户名 scott这个生成的osch-20130516031513-6000-1就是所谓的位置文件,真正指明我们的目标数据文件,在HDFS保存的位置,查看下文件内容就明白了:rootora11g # more /data/ora11g/ODCH/extdir/osch-20130516031513-6000-11.0osch-20130516031513-6000-1 2013-05-16T13:54:022013-05-16T03:15:13Oracle SQL Co nn ector for HDFS Release 2.1.0 - Prod。

15、uctio n vproductVers ion 2.1.0hdfs:/hd no de1:9000/user/grid/odch/tmpdata.csv根据提示修改odch_ext_table外部表读取的文件:SQL ALTER TABLE SCOTT.ODCH_EXT_TABLE2 LOCATION3 (4 osch-20130516031513-6000-15 );Table altered.SQL set line 150 pages 1000;SQL col owner for a10SQL col name for a20SQL select * from odch_ext_tab。

16、le where row num 10;ID OWNER NAME MODIFIED VAL1 SYS ICOL$ 15-MAY-13 22 SYS I_USER1 15-MAY-13 463 SYS CON$ 15-MAY-13 284 SYS UNDO$ 15-MAY-13 155 SYS C_COBJ# 15-MAY-13 296 SYS I_OBJ# 15-MAY-13 37 SYS PROXY_ROLE_DATA$ 15-MAY-13 258 SYS I_IND1 15-MAY-13 419 SYS I_CDEF2 15-MAY-13 549 rows selected. 数据被读取出来了,竣工。转自 http:/blog.itpub.net/post/29894/530698。

转载地址:https://blog.csdn.net/weixin_32290249/article/details/116327965 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Centos下oracle开机自启动,设置CentOS下开机自动启动Oracle
下一篇:oracle 排序的分析函数,Oracle SQL:使用分析排序函数

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2024年04月23日 20时01分08秒