Khám phá this blog từ Cloudera giải thích việc quản lý bộ nhớ mới trong YARN.
Dưới đây là các bit thích hợp:
... Một chi tiết thi hành sự thay đổi này có thể ngăn chặn các ứng dụng từ đói dưới sự linh hoạt mới này là khái niệm về container dành riêng. Hãy tưởng tượng hai công việc đang chạy mà mỗi công việc có đủ nhiệm vụ để bão hòa hơn toàn bộ cụm. Một công việc muốn mỗi người lập bản đồ của mình nhận được 1GB và một công việc khác muốn người lập bản đồ của họ nhận được 2GB. Giả sử công việc đầu tiên bắt đầu và lấp đầy toàn bộ cụm. Bất cứ khi nào một trong những nhiệm vụ của nó kết thúc, nó sẽ để lại mở một khe 1GB. Mặc dù công việc thứ hai xứng đáng với không gian, một chính sách ngây thơ sẽ đưa nó cho người đầu tiên bởi vì đó là công việc duy nhất có nhiệm vụ phù hợp. Điều này có thể khiến công việc thứ hai bị bỏ đói vô thời hạn. Để ngăn chặn tình trạng không may này, khi không gian trên một nút được cung cấp cho ứng dụng, nếu ứng dụng không thể sử dụng ngay, nó dự trữ nó, và không ứng dụng nào khác có thể được cấp phát một container trên nút đó cho đến khi hoàn thành đặt chỗ. Mỗi nút có thể chỉ có một vùng chứa được đặt trước. Tổng số lượng bộ nhớ dành riêng được báo cáo trong giao diện người dùng ResourceManager. Số lượng lớn có nghĩa là có thể mất nhiều thời gian hơn cho công việc mới để có không gian. ,,,
Nguồn
2015-02-17 17:19:37