Mapr與Hive工作(一)——Hive的的ODBC連接器

來源:互聯網
上載者:User

此頁麵包含有關設定和使用ODBC連接器登錄區的詳細資料。此頁麵包含了以下主題: 開始之前 在SQL連接器 軟體和硬體要求 安裝和配置 在DSN配置SSL 配置DSN的身分識別驗證 運行SQLPrepare最佳化 筆記 資料類型 HiveQL注意事項 在應用筆記 Microsoft Access中 微軟的Excel /查詢 畫面案頭 開始之前

該MAPR蜂房的ODBC連接器是一個ODBC驅動程式的Apache蜂巢0.7.0及更高版本,與符合ODBC 3.52規範。使用ODBC驅動程式,配置一個資料來源名稱(DSN)的定義,它指定如何串連到登錄區。的DSN通常是由作業系統進行管理,並且可以由多個應用程式。有些應用程式不使用的DSN。您將需要參考您的特定應用程式的文檔來瞭解如何串連使用ODBC。

標準查詢語言資料庫是SQL。HiveQL,標準查詢語言蜂房,包括ANSI SQL-92的子集。串連使用ODBC HIVE應用程式可能需要修改查詢,如果查詢使用的SQL功能,是不存在的蜂房。使用SQL應用程式會識別HiveQL,但可能無法提供進入HiveQL特定的功能,如多表插入。

請參閱HiveQL維基長達最新資訊HiveQL。 在SQL連接器

在SQL連接器功能轉換標準的SQL-92查詢轉換為等效的HiveQL查詢。在SQL連接器進行文法翻譯和結構轉型。例如: 引號識別項:當引用標識符,HiveQL使用反引號(`),而SQL使用雙引號(“)即使在驅動程式報告後面引號作為引號字元,一些應用程式仍然會產生雙引號的標識符。 表別名:HiveQL不支援表之間的AS關鍵字
參考和它的別名。 在JOIN,INNER JOIN和CROSS JOIN的SQL文法被翻譯成HiveQL JOIN文法。 SQL TOP N查詢轉化為HiveQL 限制查詢。 軟體和硬體要求

要在Windows上使用MAPR蜂房的ODBC連接器要求: 使用Windows®7專業版或Windows®2008 R2。包括32位和64位版本都支援。 微軟的Visual C + + 2010可轉散發套件(運行使用Visual C + +中不具有的Visual C + + 2010的電腦上安裝開發的應用程式所需的已耗用時間。) Hadoop叢集安裝了蜂房的服務和運行。你應該從群集管理員的主機名稱或IP地址蜂房服務,該服務啟動並執行連接埠找出來。(為蜂巢的預設連接埠為10000。) 安裝和配置

有連接器的32位和64位應用程式的版本。64位版本的連接器僅適用於64位的DSN,32位連接器僅適用於32位的DSN。由於64位Windows機器上可以同時運行64位和32位應用程式,以建立的DSN與這兩種類型的應用程式一起使用安裝連接器的兩個版本。如果兩個32位連接器和64位連接器的安裝,您必須配置的DSN為各自獨立,在各自的資料來源管理員。 要安裝蜂巢的ODBC連接器: 運行安裝程式即可開始使用: 要安裝64位連接器,下載並運行http://package.mapr.com/tools/MapR-ODBC/MapR_odbc_2.1.0_x64.exe。 要安裝32位連接器,下載並運行http://package.mapr.com/tools/MapR-ODBC/MapR_odbc_2.1.0_x86.exe。 請執行下列步驟,點擊下一步後,每個: 接受許可協議。 選擇一個安裝資料夾。 在資訊視窗中,單擊下一步。 在完成... 視窗中,單擊Finish(完成)。 安裝對應你的蜂巢伺服器的DSN。 要建立一個資料來源名稱(DSN) 從開啟開始菜單中的資料來源管理器。例如:開始> MAPR蜂巢ODBC驅動程式2.0> 64位ODBC驅動程式管理器
使用者DSN選項卡中單擊添加以開啟建立新資料來源對話方塊。
選擇MAPR蜂房的ODBC連接器,然後單擊Finish(完成)以開啟蜂房ODBC驅動程式的DSN設定視窗。
輸入蜂房執行個體的串連資訊:
資料來源名稱 -指定的DSN的名稱。 說明 -輸入DSN的說明(可選)。 主機 -輸入運行HiveServer1或HiveServer2伺服器的主機名稱或IP地址。 連接埠 -輸入監聽連接埠為登錄區的服務。 資料庫 -保留為預設串連到預設登錄區資料庫,或者輸入特定的資料庫名稱。 蜂巢伺服器類型: -設定為HiveServer1或HiveServer2。 身分識別驗證 -如果您使用的是HiveServer2,設定如下。 機制: -設定為您所使用的身分識別驗證機制。該MAPR ODBC驅動程式支援使用者名稱,使用者名稱和密碼,使用者名稱和密碼通過SSL認證。 使用者名稱: -設定為執行查詢的使用者。 密碼: -使用者的密碼,如果你選擇的認證機制要求之一。 單擊測試以測試連接。
當你確定串連正常,請單擊Finish(完成)。你的新串連將出現在使用者資料 源列表。
在DSN配置SSL

請從DSN的ODBC資料來源管理器視窗,然後單擊配置以顯示設定對話方塊。從設定對話方塊,單擊進階選項...,以顯示進階選項對話方塊。 在SSL窗格中,單擊以旁邊的複選框允許通用名主機名稱不匹配,控制驅動程式是否允許一個CA的一般名稱
頒發的認證不匹配蜂房伺服器的主機名稱。對於自我簽署憑證,駕駛員總是允許該認證的公用名稱不匹配的主機名稱。 如果您希望指定一個本地受信任的認證檔案,請單擊瀏覽旁邊的可信認證欄位,瀏覽到您的位置cacerts.pem檔案。預設設定使用與安裝驅動程式的可信CA認證的PEM檔案。 表徵圖

該驅動程式總是接受一個自簽名的SSL認證。 進階選項 選擇使用原生查詢複選框來禁用SQL連接器功能。在SQL連接器功能已被添加到驅動程式轉換應用到由應用程式發出的將它們轉換成HiveQL一個等價形式的查詢。如果應用程式是蜂房知道,並且已經發出HiveQL然後關閉SQL連接器功能避免了
查詢轉換的額外開銷。 選擇快速運行SQLPrepare複選框延遲查詢執行SQLExecute。當使用原生查詢模式下,驅動程式將執行HiveQL查詢來檢索結果集中繼資料運行SQLPrepare。作為結果,運行SQLPrepare可能會很慢。如果調用後不需要結果集中繼資料啟用此選項運行SQLPrepare。 在取每塊行欄位中,鍵入每塊被提取的行數。任何正32位整數是有效。效能提升邊際超出10000的預設值
的行。 在預設的字串列長度欄位中,鍵入預設字串列的長度使用。蜂房不提供長度字串在其列中繼資料列。此選項允許您調整長度的字串列。 在十進位數列縮放欄位中,鍵入的最大位元到小數點的數字資料類型的權利。 要允許一個CA頒發SSL認證的通用名稱,以小組賽不蜂房伺服器的主機名稱,選擇允許通用名主機名稱不匹配的複選框。此設定僅適用於使用者名稱和密碼(SSL)身分識別驗證機制,並通過其他身分識別驗證機制忽略。 輸入包含在受信任的認證檔案的路徑信任認證編輯框來配置驅動程式從指定的檔案使用SSL時驗證蜂房伺服器載入認證。這是只適用於使用者名稱和密碼(SSL)身分識別驗證機制,並通過其他身分識別驗證機制被忽略。如果該設定沒有設定驅動程式將預設使用的驅動程式安裝可信CA認證的PEM檔案。 要建立一個伺服器端的屬性中,單擊添加按鈕,然後在Key和Value欄位中鍵入適當的值,然後單擊OK(確定)。點擊編輯按鈕來改變現有的屬性或刪除來刪除一個屬性。 表徵圖

輸入設定-V在蜂房CLI命令列或直線,以顯示你的實現支援的Hadoop和Hive伺服器端屬性的列表。 如果您選擇了蜂巢伺服器2作為蜂房伺服器類型,然後選擇或清除應用伺服器端效能的查詢需要複選框。如果您選擇了蜂巢伺服器2,然後將應用與查詢服務器端屬性複選框預設選中。選中該複選框配置驅動程式以應用您可以通過開啟一個會話到蜂巢伺服器時執行一個查詢設定每個伺服器端屬性。清除該複選框配置驅動程式使用一個更有效方法來應用伺服器端的屬性,並不涉及額外的網路往返跳閘。一些蜂房伺服器2產生是不與更有效方法相容。如果您將伺服器端屬性不生效時,複選框被清除,然後選中相應的複選框。如果您選擇了蜂巢伺服器1的蜂房伺服器類型,然後將應用伺服器端效能的查詢複選框被選中並且不可用。 配置DSN的身分識別驗證

某些用戶端應用程式,如畫面,提供用於串連到資料來源使用一個驅動程式,而不一個DSN一些支援。串連使用ODBC資料來源應用程式發送的資料來源中定義相應的身分識別驗證憑據的工作與蜂巢伺服器2。應用程式是蜂巢伺服器1察覺,但不能蜂巢伺服器2認識和串連使用一個DSN-less串連不會有一個裝置發送身分識別驗證憑據HIVE伺服器2。
您可以與身分識別驗證憑據使用驅動程式組態工具配置ODBC驅動程式。 表徵圖

在資料來源定義憑據優先認證
配置為使用驅動程式組態工具。使用驅動程式組態工具適用於所有的串連配置的憑據使用DSN-less串連,除非用戶端應用程式是蜂巢伺服器2認識和要求憑據的使用者進行。 要配置一個DSN-less串連驅動程式的身分識別驗證: 啟動驅動程式配置從程式開始菜單。 從下拉式清單中選擇一個蜂房伺服器類型。 請從下拉式身分識別驗證機制,然後再配置任何需要的欄位,適合於該機制。 (可選)單擊進階,並配置任何所需的進階選項。 表徵圖

該MAPR ODBC驅動程式僅支援使用者名稱使用者名稱和密碼,以及使用者名稱和密碼(SSL)的認證機制。 運行SQLPrepare最佳化

該連接器目前使用的查詢執行,以確定運行SQLPrepare的結果集的中繼資料。這樣做的缺點是,運行SQLPrepare是緩慢的,因為查詢執行趨於緩慢。您可以配置連接器以加快運行SQLPrepare如果你不需要的結果集的中繼資料。要更改運行SQLPrepare的行為,建立一個字串值NOPSQLPrepare根據您的DSN。如果該值被設定為非零值時,運行SQLPrepare將不使用查詢執行匯出結果集的中繼資料。如果該登錄機碼沒有定義,預設值是0。 筆記 資料類型

以下資料類型的支援:

類型

描述

TINYINT

1位元組的整數

SMALLINT

2 - 位元組整數

詮釋

4位元組整數

BIGINT

8位元組整數

持股量

單精確度浮點數

雙精確度浮點數

十進位

十進位數

布爾

TRUE / FALSE值

STRING

字元序列

TIMESTAMP

日期和時間值

尚未支援: 總的類型(ARRAY,MAP和結構) HiveQL注意事項 CAST功能

HiveQL不支援CONVERT函數,它使用CAST函數來執行類型轉換。例如: CAST(AS的<expression> <TYPE>)

使用CAST在HiveQL: 使用HiveQL名稱由蜂房中的所支援的八個資料類型CAST運算式。例如,轉換到1.0的整數,使用CAST(1.0 AS INT)的,而不是CAST(1.0 AS SQL_INTEGER)。 在蜂房不會做了一系列檢查CAST操作。例如,CAST(1000000 AS SQL_TINYINT)返回一個TINYINT值64,而不是預期的錯誤。 與SQL,蜂巢返回空值,而不是一個錯誤,如果它未能轉換資料。例如,CAST(“STRING”為INT)返回null。

使用CAST與布爾值: 布爾值TRUE轉換為數值1 布爾值FALSE轉換為數字值0 數值0轉換為布爾值FALSE,任何其他數字轉換為TRUE Null 字元串轉換為布爾值FALSE ;其他任何字串轉換為TRUE

該HiveQL STRING類型儲存文本字串,並對應於SQL_LONGVARCHAR資料類型。該CAST操作成功將字串轉換為數字,如果字串只包含數字字元,否則轉換失敗。

你可以調整用於列長度字串列。要更改報告的預設長度字串列,添加註冊表項DefaultStringColumnLength根據您的DSN,並指定一個值。如果該登錄機碼沒有定義,為1024個字元的預設長度被使用。 分隔字元

該連接器採用勤儉節約串連到蜂巢伺服器。蜂巢返回HiveQL查詢的結果集作為分行符號分隔行的欄位都是用定位字元分隔。蜂房目前並沒有逃脫在該領域的任何定位字元。請務必在逃跑的蜂房資料的任何選項卡或換行字元,indlucing平台特定的分行符號的字元序列,如分行符號(LF),用於在UNIX / Linux / Mac OS X上的/ etc,斷行符號/換行(CR / LF )對於Windows和斷行符號符(CR)為老年Macintosh平台。 在應用筆記 Microsoft Access中

測試版

“2010”(= 14.0),32位和64位。

筆記

連結的表不可用目前。

微軟的Excel /查詢

測試版

“2010”(= 14.0),32位和64位。

筆記

資料色帶,使用從OTH並選擇從資料連線嚮導從Microsoft Query。前者需要一個預先定義的DSN而後者支撐動態建立一個DSN。您可以通過OLE DB使用的ODBC驅動程式的ODBC驅動程式的橋樑。

畫面案頭

測試版

7.0,僅32位。作品只有ODBC驅動程式的卷。

筆記

在此之前7.0.n版本,你需要安裝一個貿發局最大化驅動程式的能力。 
從7.0.n版本開始,你可以通過指定駕駛員MAPR Hadoop的登錄區從選項串連到資料選項卡。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.