天天看點

使用oracle的大資料工具ODCH通路HDFS資料檔案軟體下載下傳安裝Oracle伺服器Hadoop/Oracle架構安裝ODCH并設定環境變量啟動oracle并測試配置HDFS_STREAM和建表準備示例檔案生成位置檔案檢視位置檔案内容和外連結清單資訊

Oracle Big Data Connectors:ODCH

下載下傳位址:

<a href="http://www.oracle.com/technetwork/bdc/big-data-connectors/downloads/index.html">http://www.oracle.com/technetwork/bdc/big-data-connectors/downloads/index.html</a>

使用oracle的大資料工具ODCH通路HDFS資料檔案軟體下載下傳安裝Oracle伺服器Hadoop/Oracle架構安裝ODCH并設定環境變量啟動oracle并測試配置HDFS_STREAM和建表準備示例檔案生成位置檔案檢視位置檔案内容和外連結清單資訊

Jave SE 下載下傳位址:

<a href="http://www.oracle.com/technetwork/java/javase/downloads/jdk6u38-downloads-1877406.html">http://www.oracle.com/technetwork/java/javase/downloads/jdk6u38-downloads-1877406.html</a>

使用oracle的大資料工具ODCH通路HDFS資料檔案軟體下載下傳安裝Oracle伺服器Hadoop/Oracle架構安裝ODCH并設定環境變量啟動oracle并測試配置HDFS_STREAM和建表準備示例檔案生成位置檔案檢視位置檔案内容和外連結清單資訊

Oracle11g下載下傳位址:

使用oracle的大資料工具ODCH通路HDFS資料檔案軟體下載下傳安裝Oracle伺服器Hadoop/Oracle架構安裝ODCH并設定環境變量啟動oracle并測試配置HDFS_STREAM和建表準備示例檔案生成位置檔案檢視位置檔案内容和外連結清單資訊

Oracle Enterprise Linux下載下傳位址:需要注冊oracle帳号才能下載下傳:

<a href="https://edelivery.oracle.com/linux">https://edelivery.oracle.com/linux</a>

使用oracle的大資料工具ODCH通路HDFS資料檔案軟體下載下傳安裝Oracle伺服器Hadoop/Oracle架構安裝ODCH并設定環境變量啟動oracle并測試配置HDFS_STREAM和建表準備示例檔案生成位置檔案檢視位置檔案内容和外連結清單資訊

在虛拟機或者實體機下安裝都可以:

使用oracle的大資料工具ODCH通路HDFS資料檔案軟體下載下傳安裝Oracle伺服器Hadoop/Oracle架構安裝ODCH并設定環境變量啟動oracle并測試配置HDFS_STREAM和建表準備示例檔案生成位置檔案檢視位置檔案内容和外連結清單資訊

基本上就是一頓下一步。

然後安裝oracle11g,這個真是折騰了好幾天

最後按照這篇文章操作,安裝成功。

<a href="http://wenku.baidu.com/view/fc804254be23482fb4da4c63.html">http://wenku.baidu.com/view/fc804254be23482fb4da4c63.html</a>

我覺得這塊最好的文章就是oracle的官方給的教程:

<a href="http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm">http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm</a>

安裝hadoop

<a href="http://blog.csdn.net/lichangzai/article/details/8206834">http://blog.csdn.net/lichangzai/article/details/8206834</a>

遇到問題1:

ssh 免密碼登入設定後還是提示需要輸入密碼

解決方法如下:

遇到的問題2:

Agent admitted failure to sign using the key

解決辦法:

機器部署情況:

主機名

IP

系統版本

Oracle node

Hadoop node

hadoop程序名

Master

192.168.74.153

OEL6.4

Oracle11.2.0.2

master

namenode,jobtracker

Node1

192.168.2.147

Ubuntu12.04

slave

datanode,tasktracker

Node2

192.168.2.148

主要環境變量:

變量名

變量值

ORACLE_HOME

/oracle/11g

ORACLE_SID

orcl

HADOOP_HOME

/home/hadoop/hadoop-1.2

HADOOP_CONF_DIR

$HADOOP_HOME/conf

OSCH_HOME

/opt/odch/orahdfs-2.2.0

ORAHDFS_JAR

$OSCH_HOME/jlib/orahdfs.jar

HDFS_BIN_PATH

HADOOP_CLASSPATH

$OSCH_HOME/jlib/*

按照以上配置。

在opt下建立檔案夾odch,将檔案傳到這個目錄下解壓縮。

/opt/odch

解壓縮:

unzip orahdfs-2.2.0.zip

然後添加hadoop\oracle\ODCH主要要環境變量

進入hadoop使用者主目錄,vi .bash_profile

我的配置如下(可參考):

修改使用者組屬性:

說明:因為之前的hadoop安裝在hadoop系統使用者下,而oracle安裝在了oracle系統使用者下,為了操作友善,使hadoop使用者有操作oracle操作庫的權限,現在修改hadoop系統使用者屬組,添加到和oracle同樣的使用者組下。

--檢視之前的使用者屬組

--修改使用者屬組

然後重新開機一下計算機。

連接配接oracle啟動資料庫

然後啟動oracle的listener

進入目錄/opt/odch/orahdfs-2.2.0/bin,用vi打開hdfs_stream檔案,加入如下配置:

確定oracle使用者對$ODCH_LOG_DIR/logs目錄有讀寫權限

因為Oracle使用者需要在 {$ODCH_LOG_DIR} 目錄中建立log/bad檔案,是以要確定oracle使用者對$ODCH_LOG_DIR/log目錄有讀寫權限

--修改目錄權限,測試讀寫檔案

配置作業系統目錄和資料庫的Directory對象

--建立所用的系統目錄

--建立oracle Directory對象

--目錄對象說明

HDFS_BIN_PATH::hdfs_stream腳本所在目錄.

HDFS_DATA_DIR:用來存放“位置檔案”(location files)的目錄。“位置檔案”(location files) 是一個配置檔案,裡面包含HDFS的檔案路徑/檔案名以及檔案編碼格式。

ODCH_LOG_DIR:Oracle用來存放外部表的log/bad等檔案的目錄.

建立oracle外部表:

連上之後然後建立表:

--示例檔案内容

在附件中Tmpdata.csv

檔案的準備過程:

Tmpdata.csv檔案是我們通過all_objects生成的,SQL腳本為:select rownum,owner,object_name,created,data_object_id from all_objects

其中路徑檔案名等可根據實際情況修改。

啟動hadoop

--先在Hadoop中建立一個目錄,然後把empxt*.dat放入該目錄中

--執行下面的指令

參數說明:

ExternalTable:使用hadoop ExternalTable指令工具

-D:指定相關參數

tableName:外部表名字

datasetPaths:源資料存放路徑(HDFS)

datasetRegex:資料源格式

connection.url:oracle資料庫連接配接串

connection.user:資料庫使用者名scott

指令執行後還要輸入使用者名密碼:oracle

修改參數:

進入extdir目錄:

可以看出上面有了到hadoop的指向資訊。

檢視外鍊到hadoop表資訊:

在scott使用者檢視:

這些就是查詢到的hadoop中的資料資訊。