Video: [BigData Engineering] Phần 9-10: Tập batch streaming. Visualize dữ liệu. Bài toán kinh doanh 2025
Hive là một lớp dữ liệu theo lô, chứa dữ liệu dựa trên các thành phần cốt lõi của Hadoop (HDFS và MapReduce) rất hữu ích trong các dữ liệu lớn. Nó cung cấp cho người dùng biết SQL với một thực thi SQL-lite đơn giản được gọi là HiveQL mà không phải hy sinh truy cập thông qua người lập bản đồ và các trình giảm thiểu. Với Hive, bạn có thể đạt được điều tốt nhất của cả hai thế giới: Truy cập SQL vào dữ liệu có cấu trúc và phân tích dữ liệu phức tạp với MapReduce.
Không giống hầu hết các kho dữ liệu, Hive không được thiết kế để đáp ứng nhanh các truy vấn. Trên thực tế, các truy vấn có thể mất vài phút hoặc thậm chí hàng giờ tùy thuộc vào sự phức tạp. Do đó, Hive được sử dụng tốt nhất cho khai thác dữ liệu và phân tích sâu hơn mà không yêu cầu hành vi thời gian thực. Bởi vì nó dựa vào nền tảng Hadoop, nó có thể mở rộng, khả năng mở rộng và linh hoạt, cái mà kho dữ liệu trung bình thì không.
Các bảng:-
Các bảng Hive giống với các bảng RDBMS bao gồm các hàng và cột. Bởi vì Hive được xếp lớp trên HDR Hadoop, các bảng được ánh xạ tới các thư mục trong hệ thống tệp tin. Ngoài ra, Hive hỗ trợ các bảng được lưu trữ trong các hệ thống tập tin khác. Phân vùng:
-
Một bảng Hive có thể hỗ trợ một hoặc nhiều phân vùng. Các phân vùng này được ánh xạ tới các thư mục con trong hệ thống tệp nằm dưới và đại diện cho sự phân bố dữ liệu trong toàn bộ bảng. Ví dụ: nếu một bảng được gọi là ô tô, với giá trị khóa là 12345 và giá trị nhà sản xuất Ford, thì đường dẫn đến phân vùng sẽ là / hivewh / ô tô / kv = 12345 / Ford.
-
Lần lượt, dữ liệu có thể được chia thành các xô. Xô được lưu trữ dưới dạng tệp tin trong thư mục phân vùng trong hệ thống tệp tin nằm bên dưới. Xô được dựa trên băm của một cột trong bảng. Trong ví dụ trước, bạn có thể có một thùng gọi là Focus, có chứa tất cả các thuộc tính của một chiếc xe Ford Focus. Siêu siêu dữ liệu Hive được lưu trữ bên ngoài trong "metastore. "Metastore là một cơ sở dữ liệu quan hệ có chứa các mô tả chi tiết của lược đồ Hive, bao gồm các loại cột, chủ sở hữu, dữ liệu quan trọng và giá trị, bảng thống kê, v.v … Metastore có khả năng đồng bộ dữ liệu danh mục với các dịch vụ siêu dữ liệu khác trong hệ sinh thái Hadoop.
Hive hỗ trợ một ngôn ngữ giống như SQL gọi là HiveQL. HiveQL hỗ trợ nhiều nguyên mẫu SQL, chẳng hạn như chọn, tham gia, tổng hợp, kết hợp tất cả, v.v. Nó cũng hỗ trợ nhiều truy vấn và chèn bằng cách chia sẻ dữ liệu đầu vào trong một tuyên bố duy nhất của Hiveql. HiveQL có thể được mở rộng để hỗ trợ tập hợp do người dùng xác định, chuyển đổi cột và các tập lệnh MapReduce nhúng.