Таблица 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 TABLE
на CREATE EXTERNAL TABLE
.
EXTERNAL
гарантирует, что SQL Spark не удалит данные при удалении таблицы.- Поле
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