HBase
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> HBase

Bộ đếm Hadoop &Các loại bộ đếm trong MapReduce

Trong Hadoop trước đây của chúng tôi blog chúng tôi đã cung cấp cho bạn mô tả chi tiết về Hadoop InputFormat OutputFormat . Bây giờ chúng ta sẽ trình bày chi tiết về Bộ đếm Hadoop. Trong hướng dẫn Hadoop này, chúng ta sẽ thảo luận về các Bộ đếm MapReduce là gì, Vai trò của chúng là gì.

Cuối cùng, chúng tôi cũng sẽ đề cập đến các loại Bộ đếm trong Hadoop MapReduce. Chẳng hạn như Bộ đếm tác vụ MapReduce, Bộ đếm hệ thống tệp, Bộ đếm FileInputFormat, Bộ đếm FileOutputFormat, Bộ đếm công việc trong MapReduce, Bộ đếm động trong Hadoop.

Hadoop MapReduce

Trước khi bắt đầu với Hadoop Counters, trước tiên chúng ta hãy tìm hiểu Hadoop MapReduce là gì?

MapReduce là lớp xử lý dữ liệu của Hadoop. Nó xử lý dữ liệu lớn có cấu trúc và phi cấu trúc được lưu trữ trong HDFS. MapReduce cũng xử lý song song một lượng lớn dữ liệu. Nó thực hiện điều này bằng cách chia công việc (công việc đã nộp) thành một tập hợp các nhiệm vụ độc lập (công việc phụ). Trong Hadoop, MapReduce hoạt động bằng cách chia quá trình thành các giai đoạn: Bản đồ Giảm .

  • Giai đoạn Bản đồ- Đây là giai đoạn đầu tiên của quá trình dữ liệu. Trong giai đoạn này, chúng tôi chỉ định tất cả các logic phức tạp / quy tắc nghiệp vụ / mã tốn kém.
  • Giảm giai đoạn- Đây là giai đoạn thứ hai của quá trình xử lý. Trong giai đoạn này, chúng tôi chỉ định xử lý nhẹ như tổng hợp / tổng hợp.

Bộ đếm Hadoop là gì?

Bộ đếm trong Hadoop là một kênh hữu ích để thu thập số liệu thống kê về công việc MapReduce. Giống như để kiểm soát chất lượng hoặc cho cấp ứng dụng. Bộ đếm cũng hữu ích để chẩn đoán sự cố.

Bộ đếm đại diện cho bộ đếm toàn cầu Apache Hadoop, được định nghĩa bởi khung MapReduce. Mỗi bộ đếm trong MapReduce được đặt tên bởi một “Enum”. Nó cũng có giá trị lâu dài.

Bộ đếm Hadoop xác thực rằng:

  • Nó đọc và ghi đúng số byte.
  • Nó đã khởi chạy và chạy thành công đúng số lượng tác vụ hay chưa.
  • Bộ đếm cũng xác nhận rằng lượng CPU và bộ nhớ được sử dụng có phù hợp với công việc và các nút cụm của chúng ta hay không.

Các loại bộ đếm trong MapReduce

2 loại bộ đếm MapReduce là:

  • Bộ đếm tích hợp
  • Bộ đếm do người dùng xác định / Bộ đếm tùy chỉnh

1. Bộ đếm tích hợp trong Hadoop MapReduce

Apache Hadoop duy trì một số quầy tích hợp cho mọi công việc. Các quầy này báo cáo các số liệu khác nhau. Có bộ đếm cho số lượng byte và bản ghi. Điều này cho phép chúng tôi xác nhận rằng lượng đầu vào dự kiến ​​được tiêu thụ và lượng đầu ra dự kiến ​​được sản xuất.

Bộ đếm Hadoop cũng được chia thành nhiều nhóm. Có một số nhóm bộ đếm tích hợp sẵn. Mỗi nhóm cũng chứa bộ đếm công việc hoặc chứa bộ đếm công việc.

Một số nhóm bộ đếm tích hợp trong Hadoop như sau:

a) Bộ đếm tác vụ MapReduce

Bộ đếm tác vụ thu thập thông tin cụ thể về các tác vụ trong thời gian thực thi của nó. Trong đó bao gồm số lượng bản ghi được đọc và ghi.

Ví dụ:Bộ đếm MAP_INPUT_RECORDS là Bộ đếm Tác vụ. Nó cũng đếm các bản ghi đầu vào được đọc bởi mỗi tác vụ bản đồ.

b) Bộ đếm hệ thống tệp

Bộ đếm này thu thập thông tin như một số byte được đọc và ghi bởi hệ thống tệp. Tên và mô tả của bộ đếm hệ thống tệp như sau:

  • Số byte FileSystem đọc - Số byte được đọc bởi hệ thống tệp.
  • Các byte FileSystem được viết - Số byte được ghi vào hệ thống tệp.
c) Bộ đếm FileInputFormat

Các Bộ đếm này cũng thu thập thông tin về một số byte được các tác vụ bản đồ đọc qua FileInputFormat.

d) Bộ đếm FileOutputFormat

Các bộ đếm này cũng thu thập thông tin về một số byte được ghi bởi các tác vụ bản đồ (đối với các công việc chỉ có bản đồ) hoặc giảm bớt các tác vụ thông qua FileOutputFormat.

e) Bộ đếm công việc trong MapReduce

Bộ đếm công việc đo lường thống kê cấp công việc. Nó không đo lường các giá trị thay đổi trong khi tác vụ đang chạy.

Ví dụ:TOTAL_LAUNCHED_MAPS, đếm số tác vụ bản đồ đã được khởi chạy trong quá trình thực hiện công việc. Ứng dụng chính cũng đo lường các bộ đếm Công việc.

Vì vậy, chúng không cần phải được gửi qua mạng, không giống như tất cả các bộ đếm khác, kể cả các bộ đếm do người dùng xác định.

2. Bộ đếm do người dùng xác định hoặc bộ đếm tùy chỉnh trong Hadoop MapReduce

Ngoài các bộ đếm tích hợp, Hadoop MapReduce cho phép mã người dùng xác định một bộ bộ đếm. Sau đó, nó tăng chúng như mong muốn trong trình liên kết hoặc bộ giảm tốc . Giống như trong Java để xác định bộ đếm mà nó sử dụng, ‘ enum '.

Một công việc có thể xác định một số lượng 'enum' tùy ý. Mỗi trường có một số trường tùy ý. Tên của enum là tên nhóm. Các trường của enum là tên bộ đếm.

a) Bộ đếm động trong Hadoop

Các trường của Java enum được xác định tại thời điểm biên dịch. Vì vậy, chúng tôi không thể tạo bộ đếm mới tại thời điểm chạy bằng cách sử dụng enum. Vì vậy, chúng tôi sử dụng bộ đếm động để tạo bộ đếm mới tại thời điểm chạy. Nhưng bộ đếm động không được xác định tại thời điểm biên dịch.

Kết luận

Do đó, Bộ đếm kiểm tra xem nó có đọc và ghi đúng số byte hay không. Bộ đếm cũng đo tiến độ hoặc số lượng hoạt động xảy ra trong công việc MapReduce.

Hadoop cũng duy trì các bộ đếm tích hợp sẵn và bộ đếm do người dùng xác định để đo lường tiến trình xảy ra trong công việc MapReduce.

Hy vọng blog này đã giúp bạn, Nếu bạn có bất kỳ câu hỏi nào liên quan đến Hadoop Counter, hãy để lại bình luận trong phần bên dưới.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bên trong Kiến trúc nhập dữ liệu gần thời gian thực của Santander

  2. Cách thực hiện:Lập chỉ mục các tệp PDF được quét theo tỷ lệ bằng cách sử dụng ít hơn 50 dòng mã

  3. Đưa hỗ trợ giao dịch vào Cơ sở dữ liệu hoạt động của Cloudera

  4. Hadoop Mapper Class trong MapReduce là gì?

  5. NameNode Automatic Failover trong Hadoop HDFS là gì?