Giới thiệu về Hive

Bạn đang xem: Giới thiệu về Hive Tại VietFuture
Apache hive là gì

Thuật ngữ dữ liệu lớn đề cập đến các tập dữ liệu khổng lồ bao gồm khối lượng, tốc độ và sự đa dạng ngày càng tăng của dữ liệu. Với các hệ thống quản lý dữ liệu truyền thống, rất khó để xử lý dữ liệu lớn. Do đó, Quỹ phần mềm Apache đã giới thiệu một khung có tên Hadoop để đáp ứng những thách thức trong việc quản lý và xử lý dữ liệu lớn.

hadoop là một khung mã nguồn mở để lưu trữ và xử lý dữ liệu lớn trong môi trường phân tán. Nó chứa hai mô-đun, một là mapreduce và mô-đun còn lại là hệ thống tệp phân tán hadoop (hệ thống tệp phân tán hadoop – hdfs).

Xem thêm: Apache hive là gì

  • map​​​​reduce: Đây là mô hình lập trình song song để xử lý khối lượng lớn dữ liệu có cấu trúc, bán cấu trúc và phi cấu trúc trên các cụm phần cứng hàng hóa lớn. phần cứng thương mại.
  • hdfs: Hệ thống tệp phân tán hadoop là một phần của khung hadoop để lưu trữ và xử lý tập dữ liệu. Nó cung cấp một hệ thống tệp có khả năng chịu lỗi chạy trên phần cứng hàng hóa.
  • hệ sinh thái hadoop bao gồm các tiểu dự án (công cụ) khác nhau như sqoop, pig và hive để trợ giúp với các mô-đun hadoop.

    • sqoop: dùng để nhập và xuất dữ liệu từ hdfs và rdbms.
    • pig: Đây là một nền tảng ngôn ngữ thủ tục để phát triển tập lệnh cho hoạt động mapreduce.
    • hive: Đây là một nền tảng để phát triển các tập lệnh kiểu sql để thực hiện các thao tác mapreduce.
    • Đang xem: &quotOVER&quot: Định Nghĩa, Cấu Trúc và Cách Dùng trong Tiếng Anh

      Lưu ý: Có nhiều cách khác nhau để thực hiện thao tác mapreduce:

      • Phương pháp xử lý dữ liệu có cấu trúc, bán cấu trúc và phi cấu trúc truyền thống sử dụng chương trình java mapreduce.
      • mapreduce sử dụng phương thức câu lệnh của pig để xử lý dữ liệu có cấu trúc và bán cấu trúc.
      • ngôn ngữ truy vấn hive (hiveql hoặc hql) để mapreduce xử lý dữ liệu có cấu trúc bằng hive.
      • hive là một công cụ cơ sở hạ tầng kho dữ liệu để xử lý dữ liệu có cấu trúc trong hadoop. Nó nằm trên đầu trang của hadoop để tổng hợp dữ liệu lớn và làm cho việc truy vấn và phân tích trở nên dễ dàng.

        Hive ban đầu được phát triển bởi facebook, sau đó nền tảng phần mềm apache đã tiếp quản nó và phát triển nó thành một phần mềm mã nguồn mở có tên là apache hive. Nó được sử dụng bởi các công ty khác nhau. Ví dụ: amazon sử dụng nó trong bản đồ đàn hồi của amazon.

        Tổ ong không phải là:

        • Cơ sở dữ liệu quan hệ
        • Thiết kế xử lý giao dịch trực tuyến (oltp)
        • Ngôn ngữ dành cho truy vấn thời gian thực và cập nhật cấp hàng
          • Nó lưu trữ lược đồ trong cơ sở dữ liệu và xử lý dữ liệu thành hdfs.
          • Nó được thiết kế cho olap.
          • Nó cung cấp một ngôn ngữ kiểu SQL để truy vấn, được gọi là hiveql hoặc hql.
          • Nó quen thuộc, nhanh chóng và có thể mở rộng.
          • Tham khảo: IPhone trả bảo hành – Sự lựa chọn hoàn hảo cho bạn nếu muốn mua được iPhone gần như là mới nhưng với mức giá rẻ

            Sơ đồ sau đây mô tả kiến trúc của Hive: Giới thiệu về Hive Sơ đồ thành phần này chứa các đơn vị khác nhau.

            • Giao diện người dùng: hive là một phần mềm cơ sở hạ tầng kho dữ liệu tạo ra sự tương tác giữa người dùng và hdfs. Các giao diện người dùng được hive hỗ trợ là hive web ui, hive command line và hive hd insight (trong windows server).
            • Metastore: Hive chọn máy chủ cơ sở dữ liệu tương ứng để lưu trữ bảng, cơ sở dữ liệu, cột trong bảng, kiểu dữ liệu của chúng và lược đồ hoặc siêu dữ liệu để ánh xạ hdfs.
            • Hiveql process engine: hiveql tương tự như sql và được sử dụng để truy vấn thông tin giản đồ trên metastore. Đây là một trong những lựa chọn thay thế cho cách tiếp cận truyền thống của các chương trình mapreduce. Thay vì viết chương trình mapreduce bằng java, chúng ta có thể viết truy vấn cho công việc mapreduce và xử lý nó.
            • Công cụ thực thi: Sự kết hợp giữa công cụ xử lý hiveql và mapreduce là công cụ thực thi hive. Công cụ thực thi xử lý các truy vấn và tạo ra kết quả tương tự như mapreduce.
            • hdfs hoặc hbase: hệ thống tệp phân tán hadoop hoặc hbase là một công nghệ lưu trữ dữ liệu lưu trữ dữ liệu trong một hệ thống tệp.
            • Sơ đồ bên dưới mô tả quy trình làm việc giữa hive và hadoop.

              Cách tổ ong tương tác với khung hadoop:

              Tham khảo: Chủ nghĩa hiện thực (Realism)

              1. Thực thi truy vấn: giao diện hive như dòng lệnh hoặc web ui gửi truy vấn tới trình điều khiển (bất kỳ trình điều khiển cơ sở dữ liệu nào như jdbc, odbc, v.v.) để thực thi.
              2. Nhận kế hoạch: Trình điều khiển phân tích cú pháp truy vấn với sự trợ giúp của trình biên dịch truy vấn để kiểm tra cú pháp và kế hoạch truy vấn hoặc các yêu cầu của truy vấn.
              3. Nhận siêu dữ liệu: Trình biên dịch gửi yêu cầu siêu dữ liệu đến kho dữ liệu di động (bất kỳ cơ sở dữ liệu nào).
              4. Gửi siêu dữ liệu: Siêu dữ liệu gửi siêu dữ liệu dưới dạng phản hồi cho trình biên dịch.
              5. Gửi kế hoạch: Trình biên dịch kiểm tra yêu cầu và gửi lại kế hoạch cho trình điều khiển. Tại thời điểm này, quá trình biên dịch và phân tích cú pháp truy vấn đã hoàn tất.
              6. Kế hoạch thực hiện: Trình điều khiển gửi kế hoạch thực hiện tới công cụ thực thi.
              7. Thực thi công việc: Trong nội bộ, thực thi công việc là một công việc mapreduce. Người thực thi gửi công việc tới trình theo dõi công việc trong tên nút và gán công việc cho trình theo dõi tác vụ trong dữ liệu nút. Tại đây, truy vấn thực thi công việc mapreduce. Thao tác siêu dữ liệu: Trong khi thực thi, công cụ thời gian chạy có thể thực hiện các thao tác siêu dữ liệu bằng siêu dữ liệu.
              8. Nhận kết quả: công cụ thực thi nhận kết quả từ nút dữ liệu.
              9. Gửi kết quả: Bộ thực thi gửi các giá trị kết quả đó tới trình điều khiển.
              10. Gửi kết quả: Trình điều khiển gửi kết quả tới giao diện tổ ong.