postgresql大數據解決方案
⑴ 若要玩轉大數據,在什麼應用場景使用Hadoop,PostgreSQL
但是由於「大數據」和「Hadoop」這兩個熱門詞,即使很多人實際上不需要Hadoop,他們也願意穿上「緊身衣」。
一、如果我的數據量是幾百兆,Excel可能沒法載入它
對於Excel軟體來說的「很大的數據」並非大數據,其實還有其它極好的工具可以使用——我喜歡的Pandas。Pandas構建於Numpy庫 之上,可以以矢量格式的方式有效地把數百兆的數據載入到內存中。在我購買已3年的筆記本上,它可以用Numpy在一眨眼的功夫把1億的浮點數乘在一起。 Matlab和R也是極好的工具。
對於幾百兆的數據量,典型的做法是寫一個簡單的Python腳本按行讀取文件行,並處理它,向另一個文件寫入。
二、如果我的數據是10GB呢
我買了個新筆記本,它有16GB的內存和256GB的SSD。如果你要載入一個10GB的CSV文件到Pandas,它佔用的內存實際上是很小的 ——其結果是以數字類型的字元串保存的,如「17284832583」作為4位元組貨8位元組的整數,或存儲「284572452.2435723」字元串作 為8位元組的雙精度浮點數。
最壞的情況是你或許不能把所有的數據都同時載入到內存中。
三、如果我的數據是100GB、500GB或1TB呢
買個2TB或4TB的硬碟,在桌面PC或伺服器上安裝一個Postgre來解決它。
四、Hadoop遠遠比不上SQL或Python腳本
在計算的表達方面,Hadoop弱於SQL,也弱於Python腳本。
SQL是一個很直接的查詢語言,適合做業務分析,SQL的查詢相當簡單,而且還非常快——如果你的資料庫使用了正確的索引,二級查詢或多級查詢另當別論。
Hadoop沒有索引的概念,Hadoop只有全表掃描,Hadoop有高度泄露抽象——我花了很多時間來處理Java的內存錯誤、文件碎片以及集群競爭,這些時間遠大於我花在數據分析上的時間。
如果你的數據並不是像SQL表那樣的結構化數據(比如純文本、JSON對象、二進制對象),通常是直接寫一個小的Python腳本來按行處理你的數據。把數據存儲於文件,處理每一個文件,等等。如果換成是Hadoop就很麻煩。
相比於SQL或Python腳本,Hadoop要慢的多。正確的使用索引後,SQL查詢總是非快——PostgreSQL簡單的查找索引,檢索確 切的鍵值。而Hadoop是全表掃描的,它會把整個表進行重新排序。通過把數據表分片到多台計算機上後,重排序是很快的。另一方面,處理二進制對 象,Hadoop需要重復往返於命名節點,目的是查找和處理數據。這適合用Python腳本來實現。
五、我的數據超過了5TB
你應該考慮使用Hadoop,而無需做過多的選擇。
使用Hadoop唯一的好處是可伸縮性非常好。如果你有一個包含了數TB數據的表,Hadoop有一個適合全表掃描的選項。如果你沒有這樣大數據量的表,那麼你應該像躲避瘟疫那樣避免使用Hadoop。這樣使用傳統的方法來解決問題會更輕松。
六、Hadoop是一個極好的工具
我並不討厭Hadoop,當我用其它工具不能很好處理數據時我會選擇Hadoop。另外,我推薦使用Scalding,不要使用Hive或Pig。Scalding支持使用Scala語言來編寫Hadoop任務鏈,隱藏了其下的MapRece。
⑵ 大數據解決方案都有哪些
在信息時代的我們,總會聽到一些新鮮詞,比如大數據,物聯網,人工智慧等等。而現在,物聯網、大數據、人工智慧已經走進了我們的生活,對於很多人看到的大數據的前景從而走進了這一行業,對於大數據的分析和解決是很多人不太了解的,那麼大數據的解決方案都有哪些呢?一般來說,大數據的解決方案就有Apache Drill、Pentaho BI、Hadoop、RapidMiner、Storm、HPCC等等。下面就給大家逐個講解一下這些解決方案的情況。
第一要說的就是Apache Drill。這個方案的產生就是為了幫助企業用戶尋找更有效、加快Hadoop數據查詢的方法。這個項目幫助谷歌實現海量數據集的分析處理,包括分析抓取Web文檔、跟蹤安裝在Android Market上的應用程序數據、分析垃圾郵件、分析谷歌分布式構建系統上的測試結果等等。
第二要說的就是Pentaho BI。Pentaho BI 平台和傳統的BI 產品不同,它是一個以數據流程為中心的,面向解決方案的框架。其目的在於將一系列企業級BI產品、開源軟體、API等等組件集成起來,這樣一來就方便了商務智能應用的開發。Pentaho BI的出現,使得一系列的面向商務智能的獨立產品如Jfree、Quartz等等,能夠集成在一起,構成一項復雜的、完整的商務智能解決方案。
然後要說的就是Hadoop。Hadoop 是一個能夠對海量數據進行分布式處理的軟體框架。不過Hadoop 是以一種可靠、高效、可伸縮的方式進行處理的。另外,Hadoop 依賴於社區伺服器,所以Hadoop的成本比較低,任何人都可以使用。
接著要說的是RapidMiner。RapidMiner是世界領先的數據挖掘解決方案,有著先進的技術。RapidMiner數據挖掘任務涉及范圍廣泛,包括各種數據藝術,能簡化數據挖掘過程的設計和評價。
Storm。Storm是自由的開源軟體,一個分布式的、容錯的實時計算系統。Storm可以非常可靠的處理龐大的數據流,用於處理Hadoop的批量數據。 Storm支持許多種編程語言,使用起來非常有趣。Storm由Twitter開源而來,其它知名的應用企業包括Groupon、淘寶、支付寶、阿里巴巴、Admaster等等。
最後要說的就是HPCC。什麼是HPPC呢?HPCC是High Performance Computing and Communications(高性能計算與通信)的縮寫。HPCC主要目標要達到:開發可擴展的計算系統及相關軟體,以支持太位級網路傳輸性能,開發千兆比特網路技術,擴展研究和教育機構及網路連接能力。
通過上述的內容,想必大家已經知道了大數據的解決方案了吧,目前世界范圍內擁有的大數據解決方案種類較多,只有開發並使用好最先進的,最完備的大數據解決方案,一個公司,甚至一個國家才能走在世界前列。
⑶ 大數據 解決方案能解決什麼問題
資源浪費抄,其實大數據這個概念就是資源整合,把數據集中。我給你舉幾個例子吧
在零售業大數據的就是把全國的零售店的銷量、銷售時間之類和賣的好的商品的數據找出來,然後通過查看所有商品的數據,選擇最優的捆綁銷售的方式或者促銷方式。
在政府行業應用就是智慧城市,拿智慧城市的智慧交通舉例,1路公交車你等了30分鍾才來,來的時候車上已經滿員了,可能要等幾輛車你才可以上去,如果通過大數據,進行分析挖掘這個數據,當天就可以緊急把多發幾輛車。緩解了壓力。智慧醫療,原先在一家醫院看完病醫生不是都讓人保留病史和診斷報告嗎?好下回再去醫院的時候方便。但是如果應用大數據,你覺得這家醫院看的不好,再去第二家的時候,不需要帶病史和診斷報告,因為醫生可以調出你在上家醫院的診斷報告和病史。
而且大數據節省了IT業的人力成本,數據都集中在某個機房中了,不需要每地都存有一個機房。
⑷ 一個典型的大數據解決方案,包含哪些組件
首先,一抄個典型的大數據解決方案,也就是大數據系統平台的構建,涉及到多個層次,數據採集和傳輸、數據存儲、數據計算、資源管理、任務調度等,每個流程階段當中,都有多個組件可選擇,關鍵是要能夠滿足實際的需求。
簡單舉例說明一下典型的一些組件:
文件存儲:Hadoop HDFS
離線計算:Hadoop MapRece、Spark
流式、實時計算:Storm、Spark Streaming
K-V、NOSQL資料庫:HBase、Redis、MongoDB
資源管理:YARN、Mesos
日誌收集:Flume、Scribe、Logstash、Kibana
消息系統:Kafka、StormMQ、ZeroMQ、RabbitMQ
查詢分析:Hive、Impala、Presto、Phoenix、SparkSQL、Flink、Kylin、Druid
分布式協調服務:Zookeeper
集群管理與監控:Ambari、Ganglia、Nagios、Cloudera Manager
數據挖掘、機器學習:Mahout、Spark MLLib
數據同步:Sqoop
任務調度:Oozie
⑸ 列舉三種大數據的解決方案
通常,Kafka和Spark Streaming基礎結構具有以下優點。該 Spark框架的高效率和低延遲確保了良好的實時專性和Spark Streaming操作的性能。而屬且,與Storm相比, Spark Streaming具有Spark提供的高級API和靈活性框架,它有助於以簡單的方式編寫更復雜的演算法。基礎設施的高度一致性使得車隊的主管可以輕松完成查詢實時數據,它還確保了流處理和批處理的平衡處理。
作者:二兵_d97a
鏈接:https://www.jianshu.com/p/9a4f3cf27735
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權並註明出處。