2017-08-11 44 views
0

我要尋找一個解決方案來構建具有以下特點的應用程序:是Python和Hadoop的一個很好的選擇嗎?

  • 的-potentially-百萬錶行的數據庫的化合物,可能有一些小的相關。

  • 快速單的查詢,如「SELECT * FROM表WHERE LIKE字段值%」

  • 將Linux服務器上運行:單個節點,但在未來可能的多個節點。

您認爲Python和Hadoop是不錯的選擇嗎?

我在哪裏可以找到一個用Python編寫的快速示例來向Hadoop添加/檢索信息,以便查看運行我的一隻眼睛並做出決定的概念證明?

在此先感謝!

+2

這是一個太寬泛的問題,但它的聲音Hadoop似乎矯枉過正。支持SQL的傳統內存中框架(例如用於Web應用程序的Django,用於數據分析的Pandas等)應該足夠快速。 – jdehesa

+1

當你說hadoop你的意思是HDFS? 如果是這樣,那麼你會想看看Apache Parquet。 「無論數據處理框架,數據模型或編程語言的選擇如何,Apache Parquet都是Hadoop生態系統中任何項目可用的列式存儲格式。」 https://parquet.apache.org/ –

+0

我同意這個問題很廣泛,但幸運的是有一個直截了當的答案,所以我認爲它不需要關閉。 –

回答

1

不知道這些問題是否在這裏的話題,但幸運的是答案很簡單:

在這些日子裏一百萬行根本就不是那麼大了,甚至Excel可以容納超過一百萬。 如果你在一個大表中有幾百萬行,並且想要運行快速的小選擇語句,答案是你沒有Hadoop可能會更好。

Hadoop非常適合1億行數據集,但不會過度縮減(在性能和所需維護方面)。

因此,我建議您嘗試使用'正常'數據庫解決方案,如MySQL。至少直到你的數據開始顯着增長。


您可以使用python進行高級分析處理,但對於簡單查詢,我建議使用SQL。

+0

我的意思是數百萬,我已經檢查過Mysql有嚴重的問題來處理一個設計良好的數據庫,數據量很大 – hertsmael

+0

@hertsmael也許你可以給一些確切的數字,因爲數百萬(可能是SQL規模)和數億(hadoop變得有趣)之間仍然存在很大差異。 - 另外,如果您在一個盒子上使用Hadoop,Hadoop主要會增加開銷,所以如果您有一個可以處理數據的盒子,請不要打擾。 - 有關SQL可伸縮性的一些參考(也許MySQL不是最具可伸縮性的,但後來爲Oracle或其他)https://stackoverflow.com/a/1995078/983722 –

+0

我真的想給出具體的細節,我所知道的該數據庫大約有2.5TB的信息 – hertsmael

相關問題