2016-03-06 24 views
7

Có một số tùy chọn để truy cập vào thư viện R trong Spark:Sử dụng R trong Apache Spark

  • trực tiếp sử dụng
  • sử dụng bindings ngôn ngữ như hoặc rscala
  • sử dụng dịch vụ độc lập như

Có vẻ như SparkR khá hạn chế, OpenCPU yêu cầu giữ thêm dịch vụ và các ràng buộc có thể có sta vấn đề bility. Có cái gì khác cụ thể cho kiến ​​trúc Spark mà làm cho việc sử dụng bất kỳ giải pháp không dễ dàng.

Bạn có kinh nghiệm nào về tích hợp R và Spark mà bạn có thể chia sẻ không?

Trả lời

4

Ngôn ngữ chính cho dự án có vẻ như là một yếu tố quan trọng.

Nếupyspark là một cách tốt để sử dụng Spark cho bạn (có nghĩa là bạn đang truy cập Spark từ Python) truy cập vào R qua rpy2 không nên thực hiện nhiều sự khác biệt từ việc sử dụng bất kỳ thư viện Python khác với một phần mở rộng C.

Có tồn tại báo cáo của người dùng làm như vậy (mặc dù với những câu hỏi thỉnh thoảng như How can I partition pyspark RDDs holding R functions hoặc Can I connect an external (R) process to each pyspark worker during setup)

Nếu R là ngôn ngữ chính của bạn, giúp các tác giả SparkR với thông tin phản hồi hoặc đóng góp mà bạn cảm thấy có những giới hạn sẽ là cách đi.

Nếu ngôn ngữ chính của bạn là Scala, rscala phải là lần thử đầu tiên của bạn.

Khi kết hợp pyspark + rpy2 có vẻ là "được thiết lập" nhất (như trong "sử dụng codebase cũ nhất và có thể được thử nhiều nhất"), điều này không nhất thiết có nghĩa là giải pháp tốt nhất (và gói trẻ có thể phát triển nhanh) . Tôi sẽ đánh giá đầu tiên ngôn ngữ ưa thích cho dự án là gì và thử các tùy chọn từ đó.

+0

Bạn có nghĩ rằng OpenCPU không phải là một lựa chọn tốt? –

+0

@CafeFeed Tôi không có kinh nghiệm với nó. – lgautier

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