Local Resources trong YARN
YARN
4
hadoop
11
White

Bùi Hồng Hà viết ngày 10/06/2015

Bài viết nằm trong loạt bài tìm hiểu YARN. Danh sách các bài viết khác:

  1. YARN và MapReduce2
  2. Chi tiết về Resource Manager / NodeManager

Giới thiệu

Các ứng dụng trong YARN chạy trên các containers (về bản chất là các Linux Process). Để chạy một process thì container cần rất nhiều files khác nhau, được load lúc khởi động hay load trong quá trình container chạy. Ví dụ: một process java cần jar file và các jars thư viện. Do YARN là ứng dụng phân tán, nên các tài nguyên này sẽ được load từ các máy ở xa. YARN cung cấp tính năng localize các files cho các ứng dụng

Ứng dụng (Application Master) lúc khởi động sẽ yêu cầu các container nên lưu các files ở local. Khi các file này được lên danh sách, YARN sẽ lo các phần còn lại: từ tải về máy local, quản lý, cho đến xoá file một khi không cần thiết.

LocalResource là một chức năng của NodeManager.

Các thuật ngữ

  • Localization: quá trình process copy và tải tài nguyên từ xa về máy local.
  • LocalResource: file / thư viện để có thể khởi động một container. LocalResource được ứng dụng chỉ định các thuộc tính sau:
    • URL
    • Kích thước
    • Thời gian thay đổi lần trước timestamp
    • Loại LocalResourceType: FILE, ARCHIVE hay PATTERN
    • Pattern: pattern được dùng để lấy thông tin từ archive
    • LocalResourceVisibility: PUBLIC, PRIVATE hay APPLICATION.

Các file mà container có thể yêu cầu localization

  • Thư viện (jar)
  • File cấu hình
  • File dữ liệu tĩnh

Các thuật ngữ khác

  • ResourceLocalizationService: là dịch vụ chạy trong NodeManager chịu trách nhiệm tải, quản lý các resource. Dịch vụ sẽ chia tài nguyên một cách đều nhất có thể ra các đĩa cứng trong hệ thống.
  • DeletionService: dịch vụ xoá các files ở local
  • Localizer: Thread và process trực tiếp làm nhiệm vụ Localization.
  • LocalCache: NodeManager quản lý một vài cache của các file tải về.

Phạm vi và thời gian sống của các LocalResources

  • Public: có thể được truy cập bởi tất cả các containers của bất cứ user nào. Loại resource này sẽ được sử dụng bất cứ khi nào được yêu cầu và được lưu ở LocalCache.
  • Private: được chia sẻ giữa các ứng dụng bởi cùng 1 user trên node. Loại tài nguyên này sẽ được copy vào user cache.
  • application là tài nguyên được chia sẻ bởi các containers trong cùng ứng dụng.

Tài nguyên Public và Private sẽ chỉ bị xoá khi đĩa cứng dành cho cache ở local đầy. Giá trị ngưỡng của dung lưỡng đĩa cứng tối đa dành cho cache là: yarn.nodemanager.localizer.cache.target-size-mb

Tài nguyên dành cho ứng dụng (application) sẽ bị xoá khi ứng dụng kết thúc.

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Bùi Hồng Hà

59 bài viết.
287 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
75 8
Bài viết tổng hợp cơ chế hoạt động của https Chút ít về chữ ký điện tử Chữ ký điện tử là cơ chế bao gồm 3 thuật toán: Thuật toán chọn một khóa...
Bùi Hồng Hà viết 3 năm trước
75 8
White
44 7
Giới thiệu Gần đây thấy bản thân chém gió rất nhiều về MapReduce, Hadoop v.v nhưng chưa thấy có bài viết nào tổng hợp + giải thích cụ thể về MapRe...
Bùi Hồng Hà viết hơn 2 năm trước
44 7
White
35 1
Giới thiệu Google là một công ty dẫn đầu về phần mềm xử lý Big Data. Hầu hết các phần mềm xử lý dữ liệu như Hadoop đều có nguồn gốc ý tưởng từ Goo...
Bùi Hồng Hà viết hơn 2 năm trước
35 1
Bài viết liên quan
White
1 0
Hiện nay, có khá nhiều công cụ giúp quản lý package javascript như npm, bower, component, ... phổ biến nhất hiện nay là npm. Lập trình viên có thể ...
Cuong Huynh viết hơn 1 năm trước
1 0
White
2 1
Mở đầu Sáng giờ hì hục ngồi cài đặt Hadoop trên windows để thực hành BigData, thế mà cài mãi mới được, nên viết cái log lại cho sau này lưu ý :smi...
Phạm Quốc Thắng viết hơn 2 năm trước
2 1
White
2 0
Tài liệu này làm gì Tài liệu này tổng hợp các tham số quản lý tài nguyên và hiệu năng trong YARN giải thích ý nghĩa cũng như cách tính toán giá tr...
Bùi Hồng Hà viết 3 năm trước
2 0
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
59 bài viết.
287 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!