Re: kích thước của dữ liệu
Câu trả lời ngắn
Scala hoạt động cho cả dữ liệu nhỏ và lớn, nhưng sự sáng tạo và phát triển của nó được thúc đẩy bằng cách cần một cái gì đó có thể mở rộng. Scala là từ viết tắt của Ngôn ngữ có thể mở rộng .
Câu trả lời dài
Scala là một ngôn ngữ lập trình chức năng chạy trên jvm . Phần 'chức năng' của điều này là một sự khác biệt cơ bản trong ngôn ngữ khiến bạn nghĩ khác về lập trình. Nếu bạn thích cách nghĩ đó, nó cho phép bạn nhanh chóng làm việc với dữ liệu nhỏ. Cho dù bạn có muốn hay không, các ngôn ngữ chức năng về cơ bản dễ dàng hơn để mở rộng quy mô. Đoạn jvm cũng rất quan trọng vì jvm về cơ bản ở khắp mọi nơi và do đó, mã Scala có thể chạy cơ bản ở mọi nơi. (Lưu ý có rất nhiều ngôn ngữ khác được viết trên jvm và rất nhiều ngôn ngữ lập trình chức năng khác và các ngôn ngữ ngoài Scala sẽ xuất hiện trong cả hai danh sách.)
Bài nói chuyện này cung cấp một cái nhìn tổng quan tốt về động lực đằng sau Scala.
Re: các công cụ khác có hỗ trợ Scala tốt:
Như bạn đã đề cập, Spark (xử lý hàng loạt phân phối tốt hơn ở các thuật toán lặp so với đối tác của nó) là một vấn đề lớn. Với Spark là các thư viện Mllib cho máy học và GraphX cho đồ thị. Như Erik Allik và Tris Nefzger đã đề cập, Akka và Factorie tồn tại. Ngoài ra còn có Chơi .
Nói chung, tôi không thể biết liệu có trường hợp sử dụng cụ thể nào mà bạn đang đào không (nếu vậy, hãy biến nó thành một phần câu hỏi của bạn) hoặc chỉ muốn khảo sát các công cụ dữ liệu lớn và tình cờ biết Scala một chút và muốn để bắt đầu từ đó