2011-10-07 33 views
5

Tôi được thêm vào sau trong tôi conf/mapred-site.xmlHadoop - tăng nhiệm vụ bản đồ trong xml không tăng nhiệm vụ bản đồ khi chạy

<property> 
    <name>mapred.tasktracker.map.tasks.maximum</name> 
    <value>4</value> 
</property> 

<property> 
    <name>mapred.tasktracker.reduce.tasks.maximum</name> 
    <value>1</value> 
</property> 

Nhưng khi tôi chạy công việc, nó vẫn chạy 2 maps(which is default one)? Làm thế nào tôi có thể buộc con số này tăng lên?

P.S. Tôi đang sử dụng Ubuntu Quad core hộp

Cảm ơn bạn

Trả lời

4

Bạn có đang chạy trên một lượng nhỏ dữ liệu không? Có thể là công việc MapReduce của bạn chỉ chạy trên một phân tách đầu vào và do đó không yêu cầu nhiều người lập bản đồ hơn. Hãy thử chạy công việc của bạn trên hàng trăm MB dữ liệu thay vào đó và xem liệu bạn vẫn gặp sự cố tương tự.

Số tác vụ tối đa có thể chạy trên một nút đơn không có gì liên quan đến số lượng tác vụ bản đồ mà công việc có. Công việc của bạn có thể là 20 tác vụ bản đồ, trong khi cụm của bạn có 5 rãnh bản đồ và sẽ mất nhiều thời gian hơn. Hoặc, cụm của bạn có thể có 50 rãnh bản đồ, nhưng công việc của bạn chỉ có 2 khe bản đồ.

0
<property> 
    <name>mapred.tasktracker.map.tasks.maximum</name> 
    <value>1</value> 
    <final>true</final> 
</property> 

Hãy thử điều đó.

+0

Truy vấn ban đầu là về tác vụ bản đồ chứ không phải nhiệm vụ giảm. Tổng số nhiệm vụ bản đồ cho một công việc bằng với số lượng phân tách đầu vào. Chúng tôi chỉ có thể kiểm soát số lượng tác vụ bản đồ/giảm có thể chạy trong || el trên TaskTracker. –

+0

Đây là công việc nên chạy với nhiều tác vụ bản đồ hơn và không phải toàn bộ cụm. –

2

mapred.tasktracker.map.tasks.maximum là số tác vụ tối đa mà trình theo dõi tác vụ có thể chạy đồng thời. Nhưng khi bạn muốn đặt số lượng tác vụ bản đồ cho toàn bộ công việc, hãy đặt mapred.map.tasks thành 4.

Các vấn đề liên quan