Hive Create Table: внутренняя таблица, изменение, удаление с примерами

Таблица Operaтакие как Создание, изменение и удаление Таблицы в Hive можно увидеть в этом руководстве.

На снимке экрана ниже мы создаем таблицу со столбцами и меняем имя таблицы.

1. Создание таблицы guru_sample с двумя именами столбцов, такими как «empid» и «empname».

2. Отображение таблиц, присутствующих в базе данных guru99.

3. Отображение Guru_sample под таблицами

4. Изменение таблицы «guru_sample» на «guru_sampleNew».

5. Опять же, когда вы выполните команду «show», отобразится новое имя Guru_sampleNew.

Улей Создать таблицу

Dropping table guru_sampleNew:

Улей Создать таблицу

Типы таблиц и их использование

Подходит к таблицы это похоже на то, как мы создаем данные в традиционных реляционных базах данных. С таблицами можно выполнять такие функции, как фильтрация и соединения.

Hive имеет дело с двумя типами табличных структур, такими как Внутренний и внешний таблицы в зависимости от загрузки и дизайна схемы в Hive.

Внутренние таблицы

  • Внутренняя таблица по своей природе тесно связана. В таблицах этого типа сначала нам нужно создать таблицу и загрузить данные.
  • Мы можем назвать это как данные по схеме.
  • При удалении этой таблицы будут удалены и данные, и схема.
  • Место хранения этой таблицы будет /user/hive/warehouse.

Когда выбирать внутреннюю таблицу?

  • Если данные обработки доступны в локальной файловой системе
  • Если мы хотим, чтобы Hive управлял полным жизненным циклом данных, включая удаление

Пример фрагмента кода для внутренней таблицы

1. Создать внутреннюю таблицу

 Hive>CREATE TABLE guruhive_internaltable (id INT,Name STRING);
	 Row format delimited 
	 Fields terminated by '\t';

2. Загрузите данные во внутреннюю таблицу.

    Hive>LOAD DATA INPATH '/user/guru99hive/data.txt' INTO table guruhive_internaltable;

3. Отображение содержимого таблицы

    Hive>select * from guruhive_internaltable;

4. Удаление внутренней таблицы

    Hive>DROP TABLE guruhive_internaltable;

Если вы удалили таблицу guruhive_internal, включая ее метаданные и данные, они будут удалены из Hive.

На следующем снимке экрана мы можем наблюдать результат

Внутренние таблицы

В приведенном выше коде и на скриншоте мы делаем следующие вещи:

  • Создайте внутреннюю таблицу
  • Загрузите данные во внутреннюю таблицу
  • Отображение содержимого таблицы
  • Удаление внутренней таблицы

Внешние таблицы

  • Внешняя таблица по своей природе является слабосвязанной. Данные будут доступны в HDFS. Таблица будет создана на основе данных HDFS.
  • Другими словами, мы можем сказать, что это создание схема данных.
  • Во время удаления таблицы удаляется только схема, данные по-прежнему будут доступны в HDFS, как и раньше.
  • Внешние таблицы предоставляют возможность создавать несколько схем для данных, хранящихся в HDFS, вместо удаления данных каждый раз при обновлении схемы.

Когда выбирать внешнюю таблицу?

  • Если данные обработки доступны в HDFS
  • Полезно, когда файлы используются за пределами Hive.

Пример фрагмента кода для внешней таблицы

1. Создать внешнюю таблицу.

Hive>CREATE EXTERNAL TABLE guruhive_external(id INT,Name STRING)
	 Row format delimited
	 Fields terminated by '\t'
	 LOCATION '/user/guru99hive/guruhive_external;

2. Если мы не указываем местоположение во время создания таблицы, мы можем загрузить данные вручную.

    Hive>LOAD DATA INPATH '/user/guru99hive/data.txt' INTO TABLE guruhive_external;

3. Отображение содержимого таблицы

  Hive>select * from guruhive_external;

4. Удаление внутренней таблицы

  Hive>DROP TABLE guruhive_external;

На следующем снимке экрана мы можем наблюдать результат

Внешние таблицы

В приведенном выше коде мы делаем следующие вещи

  • Создайте внешнюю таблицу
  • Загрузите данные во внешнюю таблицу
  • Отображение содержимого таблицы
  • Удаление внешней таблицы

Разница между внутренними и внешними таблицами

Особенность внутренний Внешний
Схема Данные о схеме Схема данных
Место хранения /usr/улей/склад Расположение HDFS
Доступность данных В локальной файловой системе В HDFS