如何用10個大數據技術方案解決一個問題

數據分析技術一直在不斷的發展。舊的關係數據庫系統變得越來越不受歡迎。現在,我們必須通過一些新的技術來找到我們的方法,這些技術可以處理大的(和流的)數據,最好是在分佈式環境中。

Python現在很流行當然也有很多其他的選擇。SQL大行其道,而其他一些老古董仍然存在。本文試圖為一個簡單的挑戰,提供10種不同技術編寫的10個解決方案:

通過這些技術,使用Grouplens網站提供的兩個CSV數據集列出十大最受歡迎的電影。

數據集

目標

我們將聚合收視率數據(u.data)來計算每個movie_id的平均收視率,並找到平均收視率最高的10部電影。

1. AWK

Step 1: Join the Datasets

Step 2: Sort, Cut and TR

Step 3: AWK

Step 4: Again AWK

Step 5: Sort, Head and TR

2. PERL

3. BASH

4. SQL(PostgreSQL)

5. Python with Pandas

6. MapReduce With MRJob in Python

7. Pig Latin

8. Hive

9. Spark with Scala

10. MongoDB

詳細原文:https://dzone.com/articles/one-challenge-with-10-solutions