分享方式:


Hive 資料表 (舊版)

重要

此檔已淘汰,且可能未更新。

本文說明如何使用外部數據表,將 Hive 數據表從雲端記憶體匯入 Azure Databricks。

Databricks 不建議使用Hive資料表來儲存或組織數據。 本文件可協助您設定現有Hive資料表的連線,以從外部系統移轉或內嵌資料。

步驟 1:顯示 CREATE TABLE 語句

SHOW CREATE TABLE <tablename>在Hive命令行上發出命令,以查看建立資料表的語句。

hive> SHOW CREATE TABLE wikicc;
OK
CREATE  TABLE `wikicc`(
  `country` string,
  `count` int)
ROW FORMAT SERDE
  'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
STORED AS INPUTFORMAT
  'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
  '<path-to-table>'
TBLPROPERTIES (
  'totalSize'='2335',
  'numRows'='240',
  'rawDataSize'='2095',
  'COLUMN_STATS_ACCURATE'='true',
  'numFiles'='1',
  'transient_lastDdlTime'='1418173653')

步驟 2:發出 CREATE EXTERNAL TABLE 語句

如果傳回的語句使用 CREATE TABLE 命令,請複製 語句,並將 取代 CREATE TABLECREATE EXTERNAL TABLE

  • EXTERNAL 確定如果您卸除數據表,Spark SQL 不會刪除您的數據。
  • 您可以省略 TBLPROPERTIES 欄位。
DROP TABLE wikicc
CREATE EXTERNAL TABLE `wikicc`(
  `country` string,
  `count` int)
ROW FORMAT SERDE
  'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
STORED AS INPUTFORMAT
  'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
  '<path-to-table>'

步驟 3:對您的數據發出 SQL 命令

SELECT * FROM wikicc