如何處理海量數據,發現數據價值?

7狐狸


隨著互聯網時代的發展,產生的數據也越來越龐大,然後慢慢衍生出大數據這個行業。沒錯,大數據就是專門處理海量數據的。

大數據的本質就是把大量無用數據變成價值,比如今日頭條的推薦系統,就是根據用戶畫像和行為分析出該用戶的喜好,進而給用戶推薦一些該用戶可能喜歡的內容出來。百萬千萬級別的用戶畫像構成了龐大的數據,所以說推薦系統本質上也是處理大數據的技術。



大數據是指無法在一定時間內用常規軟件工具對其內容進行抓取、管理和處理的數據集合。那麼,有沒有專業的技術專門處理大數據的呢?答案是有的,常見的技術主要有hadoop、spark、flink、hbase等等一系列專業處理大數據的工具。下面對這些工具簡單介紹一下。

hadoop是有分佈式計算map-reduce和分佈式文件系統hdfs構成的,在hadoop2.0之後還加了分佈式資源調度系統yarn。HDFS為海量的數據提供了存儲,而MapReduce則為海量的數據提供了計算。



spark是一個用於實時處理的開源集群計算框架,它是基於內存計算的,所以它的運算速度比hadoop快很多。在實時數據分析方面,spark在其他所有解決方案中脫穎而出,所以spark是當今非常強大、非常流行的框架。



Hbase是Hadoop database,即Hadoop數據庫。它是一個適合於非結構化數據存儲的數據庫,HBase基於列的而不是基於行的模式。主要適用於海量明細數據(十億、百億)的隨機實時查詢,如日誌明細、交易清單、軌跡行為等。列式存儲非常適合用來查詢分析,也就是所謂的OLAP。



至於flink,官網的定義是:Apache Flink 是一個框架和分佈式處理引擎,用於在無邊界和有邊界數據流上進行有狀態的計算。Flink 能在所有常見集群環境中運行,並能以內存速度和任意規模進行計算。Apache Flink 擅長處理無界和有界數據集 精確的時間控制和狀態化使得 Flink 的運行時(runtime)能夠運行任何處理無界流的應用。有界流則由一些專為固定大小數據集特殊設計的算法和數據結構進行內部處理,產生了出色的性能。



好了,關於大數據的簡介就到這裡。


龘的天空2


1.海量數據--- 一般是指數據容量和條數並重的模式,你描述的情況應該是不屬於“海量”一說

2.分析

2.1 隨著數據量的增加,磁盤的尋道時間會加長的;

2.2 服務器的內存也會使用耗盡;

2.3 隨數據量增加,以前寫的SQL可能逐漸存在性能問題,以及索引也不一定是最佳的,可能需要跟

隨調整優化;

2.4 多表關聯,在數據條數不多的情況下,可能符合MySQL支持的嵌套循環算法,隨數據條數增加,可能不屬於最佳的嵌套循環算法

2.5 你的硬件處理能力到底是什麼的水平,業務增長的水平是如何的?

所以你要從多個角度分析,硬件、業務、業務負載、數據分佈、索引和SQL優化、數據庫服務器端參數優化......


特侖科技


1.海量數據--- 一般是指數據容量和條數並重的模式,你描述的情況應該是不屬於“海量”一說

2.分析

2.1 隨著數據量的增加,磁盤的尋道時間會加長的;

2.2 服務器的內存也會使用耗盡;

2.3 隨數據量增加,以前寫的SQL可能逐漸存在性能問題,以及索引也不一定是最佳的,可能需要跟

隨調整優化;

2.4 多表關聯,在數據條數不多的情況下,可能符合MySQL支持的嵌套循環算法,隨數據條數增加,可能不屬於最佳的嵌套循環算法

2.5 你的硬件處理能力到底是什麼的水平,業務增長的水平是如何的?

所以你要從多個角度分析,硬件、業務、業務負載、數據分佈、索引和SQL優化、數據庫服務器端參數優化......


分享到:


相關文章: