Hive Tạo, Thay đổi & Bảng thả

Mục lục:

Anonim

Các thao tác trên bảng như Tạo, Thay đổi và Bỏ bảng trong Hive có thể được quan sát trong hướng dẫn này.

Trong ảnh chụp màn hình Dưới đây, chúng tôi đang tạo một bảng với các cột và thay đổi tên bảng.

1. Tạo bảng guru_sample với hai tên cột như "empid" và "empname"

2. Hiển thị các bảng có trong cơ sở dữ liệu guru99

3. Guru_sample hiển thị dưới các bảng

4. Thay đổi bảng "guru_sample" thành "guru_sampleNew"

5. Một lần nữa khi bạn thực hiện lệnh "show", nó sẽ hiển thị tên mới Guru_sampleNew

Dropping table guru_sampleNew:

Các loại bảng và cách sử dụng:

Đến với Bảng giống như cách chúng tôi tạo trong Cơ sở dữ liệu quan hệ truyền thống. Các chức năng như lọc, nối có thể được thực hiện trên các bảng.

Hive xử lý hai loại cấu trúc bảng như bảng Internal và bên ngoài tùy thuộc vào việc tải và thiết kế lược đồ trong Hive.

Bảng nội bộ

  • Bản chất Internal Table có liên kết chặt chẽ với nhau, trong kiểu table này, đầu tiên chúng ta phải tạo bảng và tải dữ liệu.
  • Chúng ta có thể gọi đây là dữ liệu trên lược đồ .
  • Bằng cách bỏ bảng này, cả dữ liệu và giản đồ sẽ bị xóa.
  • Vị trí lưu của bảng này sẽ là / user / hive / kho.

Khi nào nên chọn bảng nội bộ:

  • Nếu dữ liệu xử lý có sẵn trong hệ thống tệp cục bộ
  • Nếu chúng ta muốn Hive quản lý toàn bộ vòng đời của dữ liệu bao gồm cả việc xóa

Đoạn mã mẫu cho Bảng nội bộ

1. Để tạo bảng nội bộ

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

2. Tải dữ liệu vào bảng nội bộ

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

3. Hiển thị nội dung của bảng

 Hive>select * from guruhive_internaltable;

4. Để thả bảng nội bộ

 Hive>DROP TABLE guruhive_internaltable;

Nếu bạn bỏ guruhive_internaltable, bao gồm siêu dữ liệu và dữ liệu của nó sẽ bị xóa khỏi Hive.

Từ ảnh chụp màn hình sau, chúng ta có thể quan sát đầu ra

Trong đoạn mã trên và từ ảnh chụp màn hình, chúng tôi thực hiện những điều sau đây,

  • Tạo bảng nội bộ
  • Tải dữ liệu vào bảng nội bộ
  • Hiển thị nội dung của bảng
  • Để thả bảng nội bộ

Bảng bên ngoài

  • Bảng bên ngoài được kết hợp lỏng lẻo về bản chất. Dữ liệu sẽ có sẵn trong HDFS. Bảng sẽ tạo trên dữ liệu HDFS.
  • Theo cách khác, chúng ta có thể nói giống như việc tạo lược đồ trên dữ liệu của nó .
  • Tại thời điểm thả bảng, nó chỉ thả giản đồ, dữ liệu sẽ vẫn có sẵn trong HDFS như trước.
  • Các bảng bên ngoài cung cấp một tùy chọn để tạo nhiều lược đồ cho dữ liệu được lưu trữ trong HDFS thay vì xóa dữ liệu mỗi khi cập nhật lược đồ

Khi nào nên chọn bảng bên ngoài:

  • Nếu dữ liệu xử lý có sẵn trong HDFS
  • Hữu ích khi các tệp đang được sử dụng bên ngoài Hive

Đoạn mã mẫu cho Bảng bên ngoài

1. Tạo bảng bên ngoài

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

2. Nếu chúng tôi không chỉ định vị trí tại thời điểm tạo bảng, chúng tôi có thể tải dữ liệu theo cách thủ công

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

3. Hiển thị nội dung của bảng

 Hive>select * from guruhive_external;

4. Để thả bảng nội bộ

 Hive>DROP TABLE guruhive_external;

Từ ảnh chụp màn hình sau đây, chúng ta có thể quan sát kết quả đầu ra

Trong đoạn mã trên, chúng tôi thực hiện những điều sau

  • Tạo bảng bên ngoài
  • Tải dữ liệu vào bảng bên ngoài
  • Hiển thị nội dung của bảng
  • Bỏ bảng bên ngoài

Sự khác biệt giữa các bảng bên trong Vs bên ngoài

Đặc tính Nội bộ Bên ngoài
Lược đồ Dữ liệu trên lược đồ Lược đồ về dữ liệu
Khu vực lưu trữ / usr / hive / kho Vị trí HDFS
Tính khả dụng của dữ liệu Trong hệ thống tệp cục bộ Trong HDFS