Tôi đã đọc Tổng quan về Chế độ cụm và tôi vẫn không thể hiểu các quy trình khác nhau trong cụm Độc lập Spark và tính song song.
Công nhân có phải là một quy trình JVM hay không? Tôi đã chạy bin\start-slave.sh
và thấy rằng nó sinh ra công nhân, thực sự là một JVM.
Theo liên kết trên, một người thi hành là một quá trình được khởi chạy cho một ứng dụng trên nút worker chạy các tác vụ. Một người thi hành cũng là một JVM.
Đây là những câu hỏi của tôi:
Nhân viên điều hành là mỗi ứng dụng. Vậy thì vai trò của một công nhân là gì? Liệu nó có phối hợp với người thi hành và truyền lại kết quả cho người lái xe không? Hay người lái xe trực tiếp nói chuyện với người thi hành? Nếu vậy, mục đích của công nhân là gì?
Làm thế nào để kiểm soát số lượng người thi hành cho một ứng dụng?
Các tác vụ có thể được thực hiện để chạy song song bên trong người thực thi không? Nếu vậy, làm thế nào để cấu hình số lượng chủ đề cho một người thực thi?
Mối quan hệ giữa lõi công nhân, người thi hành và lõi thực thi (--total-execor-core) là gì?
Có nhiều công nhân hơn trên mỗi nút có nghĩa là gì?
Đã cập nhật
Hãy lấy ví dụ để hiểu rõ hơn.
Ví dụ 1: Một cụm độc lập có 5 nút worker (mỗi nút có 8 lõi) Khi tôi khởi động một ứng dụng có cài đặt mặc định.
Ví dụ 2 Cấu hình cụm tương tự như ví dụ 1, nhưng tôi chạy một ứng dụng với các cài đặt sau --executor-lõi 10 --total-execor-lõi 10.
Ví dụ 3 Cấu hình cụm tương tự như ví dụ 1, nhưng tôi chạy một ứng dụng với các cài đặt sau --executor-lõi 10 --total-execor-lõi 50.
Ví dụ 4 Cấu hình cụm tương tự như ví dụ 1, nhưng tôi chạy một ứng dụng với các cài đặt sau --executor-lõi 50 --total-execor-lõi 50.
Ví dụ 5 Cấu hình cụm tương tự như ví dụ 1, nhưng tôi chạy một ứng dụng với các cài đặt sau --executor-lõi 50 --total-execor-lõi 10.
Trong mỗi ví dụ này, có bao nhiêu người thực thi? Có bao nhiêu chủ đề cho mỗi người thi hành? Có bao nhiêu lõi? Làm thế nào là số lượng người thi hành quyết định cho mỗi ứng dụng? Có phải luôn luôn giống như số lượng công nhân?