Bảng tạo Hive: Bảng nội bộ, Thay đổi, Thả kèm ví dụ

Bàn Operanhững điều như Sáng tạo, thay đổi và loại bỏ các 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 bên dưới, chúng tôi đang tạo một bảng có các cột và thay đổi tên bảng.

1. Tạo bảng guru_sample với XNUMX tên cột là “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 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

Bảng tạo Hive

Dropping table guru_sampleNew:

Bảng tạo Hive

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

Đến Bàn nó 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.

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

Bảng nội bộ

  • Bảng nội bộ có tính chất liên kết chặt chẽ. Trong loại bảng 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 cái này là dữ liệu trên lược đồ.
  • Bằng cách bỏ bảng này, cả dữ liệu và lược đồ sẽ bị xóa.
  • Vị trí lưu trữ của bảng này sẽ ở /user/hive/warehouse.

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 tôi 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 delimited 
	 Fields terminated by '\t';

2. Nạp 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 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 cả 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 đây, chúng ta có thể quan sát đầu ra

Bảng nội bộ

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:

  • 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ó tính chất liên kết lỏng lẻo. Dữ liệu sẽ có sẵn ở dạng HDFS. Bảng sẽ được tạo trên dữ liệu HDFS.
  • Nói cách khác, chúng ta có thể nói như việc nó tạo ra lược đồ trên dữ liệu.
  • Tại thời điểm bỏ bảng nó chỉ bỏ lược đồ, dữ liệu vẫn ở dạng HDFS như trước.
  • Các bảng bên ngoài cung cấp 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 xử lý dữ liệu 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 ngoài

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

2. Nếu chúng ta không chỉ định vị trí tại thời điểm tạo bảng, chúng ta 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 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 đầu ra

Bảng bên ngoài

Trong đoạn mã trên, chúng ta 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 bảng nội bộ và bảng bên ngoài

Tính năng nội Bên ngoài
Schema Dữ liệu trên lược đồ Lược đồ trên dữ liệu
Khu vực lưu trữ /usr/tổ/kho Vị trí HDFS
Dữ liệu sẵn có Trong hệ thống tập tin cục bộ Trong HDFS

Tóm tắt bài viết này với: