Tôi đang sử dụng Jupyter máy tính xách tay với Pyspark với hình ảnh Docker sau: Jupyter all-spark-notebookThêm lọ tùy chỉnh để pyspark trong máy tính xách tay jupyter
Bây giờ tôi muốn viết một pyspark trực tuyến ứng dụng trong đó tiêu thụ thông điệp từ Kafka. Trong Spark-Kafka Integration guide, chúng mô tả cách triển khai một ứng dụng như vậy bằng cách sử dụng trình kích hoạt tia lửa (nó yêu cầu liên kết một bình bên ngoài - giải thích là trong 3. Triển khai). Nhưng kể từ khi tôi đang sử dụng máy tính xách tay Jupyter tôi không bao giờ thực sự chạy lệnh spark-submit
, tôi giả sử nó được chạy ở phía sau nếu tôi nhấn thực thi.
Trong lệnh spark-submit
bạn có thể chỉ định một số tham số, một trong số đó là -jars
, nhưng không rõ ràng cách tôi có thể đặt tham số này từ sổ ghi chép (hoặc bên ngoài qua biến môi trường?). Tôi giả sử tôi có thể liên kết bình bên ngoài này một cách linh động thông qua các đối tượng SparkConf
hoặc SparkContext
. Có ai có kinh nghiệm về cách thực hiện liên kết đúng cách từ sổ ghi chép không?
Điều đó thật thú vị. Docker có thể thiết lập các biến môi trường với 'docker run -e', nhưng chúng cũng có thể bị clobbered ở đâu đó. Dockerfile cho tất cả các tia lửa-máy tính xách tay sử dụng env 'SPARK_OPTS' nhưng tôi đã nhận thấy rằng tất cả các tia lửa-máy tính xách tay Toree (scala) đã clobbering một' --driver-memory' thiết lập cũng như '--master' và sử dụng' địa phương [2] 'trong một tệp kernel.json cụ thể. Xem, ví dụ: bài đăng của tôi về một số thử nghiệm thủ công trong https://github.com/jupyter/docker-stacks/pull/144. – Paul