2017-09-05 113 views
0

我見過的所有例子都與Java程序有關嗎?如何實現Amazon EMR從我的API調用中讀取數據?

我希望能夠跟蹤,同時通過查看該用戶所做的所有API調用瀏覽我的網站的用戶的行爲。所有的API調用都基於存儲在SQL數據庫中的數據。

我還例如要檢查傳遞給我的搜索API的所有關鍵字最有搜索詞的列表。

我想過使用Oozie的,但沒有任何人有任何其他建議?

+0

你所說的「由用戶做出API調用」是什麼意思?用戶是否通過正常的網頁HTTP請求導航,還是他們調用您提供的後端API服務? –

+0

他們正在調用我提供的後端API服務。例如,如果他們搜索「熊貓」,我的API將搜索數據庫並返回所有相關結果。 – noor

+0

您是否在某處記錄了這樣的請求,例如原始日誌文件或數據庫中?你還存儲所有的搜索請求?請注意,像EMR這樣的服務需要從某個地方讀取數據,並且您的應用程序負責存儲該數據以便進行分析。隨意編輯您的問題以提供更多詳細信息。 –

回答

1

有在你的數據庫分析數據的幾個選項。

普通SQL實驗

我建議用你的數據庫正常的SQL語句開始尋找數據感興趣什麼實驗。如果您擁有數百萬條記錄,這可能會稍微慢一些,但可以讓您充分靈活地使用數據。

亞馬遜EMR

一旦你已經確定的分析類型要定期運行(如每天或每週),你可以啓動一個EMR集羣進行分析。請注意,這是一個功能強大但相當複雜的工具集,充分利用它的時間可能並不值得。

您可以啓動一個瞬態集羣,這意味着一旦集羣完成所給的工作,集羣就會終止。因此,羣集可以通過預定的API調用觸發並自動終止。

亞馬遜雅典娜

亞馬遜雅典娜提供了一個SQL接口存儲在亞馬遜S3的數據。常見的用例是分析S3中的日誌文件,而不必將它們加載到數據庫中。雅典娜功能強大並且可以並行處理數據,以便快速返回結果。

底線:從簡單的開始。玩現有的數據來找出你想要發現的東西。然後優化。

+0

如果我想創建一個批量GET請求到我的API,我該怎麼做?然後我會將數據保存到我的s3,對不對? – noor

+0

對不起,但我不明白你的問題。如果你創建了API,它完全在你的管理之下。 –