A. 怎樣的架構設計才是真正的數據倉庫架構
一直想整理一下這塊內容,既然是漫談,就想起什麼說什麼吧。我一直是在互聯網行業,就以互聯網行業來說。
先大概列一下互聯網行業數據倉庫、數據平台的用途:
整合公司所有業務數據,建立統一的數據中心;
提供各種報表,有給高層的,有給各個業務的;
為網站運營提供運營上的數據支持,就是通過數據,讓運營及時了解網站和產品的運營效果;
為各個業務提供線上或線下的數據支持,成為公司統一的數據交換與提供平台;
分析用戶行為數據,通過數據挖掘來降低投入成本,提高投入效果;比如廣告定向精準投放、用戶個性化推薦等;
開發數據產品,直接或間接為公司盈利;
建設開放數據平台,開放公司數據;
。。。。。。
- 上面列出的內容看上去和傳統行業數據倉庫用途差不多,並且都要求數據倉庫/數據平台有很好的穩定性、可靠性;但在互聯網行業,除了數據量大之外,越來越多的業務要求時效性,甚至很多是要求實時的 ,另外,互聯網行業的業務變化非常快,不可能像傳統行業一樣,可以使用自頂向下的方法建立數據倉庫,一勞永逸,它要求新的業務很快能融入數據倉庫中來,老的下線的業務,能很方便的從現有的數據倉庫中下線;
- 其實,互聯網行業的數據倉庫就是所謂的敏捷數據倉庫,不但要求能快速的響應數據,也要求能快速的響應業務;
- 建設敏捷數據倉庫,除了對架構技術上的要求之外,還有一個很重要的方面,就是數據建模,如果一上來就想著建立一套能兼容所有數據和業務的數據模型,那就又回到傳統數據倉庫的建設上了,很難滿足對業務變化的快速響應。應對這種情況,一般是先將核心的持久化的業務進行深度建模(比如:基於網站日誌建立的網站統計分析模型和用戶瀏覽軌跡模型;基於公司核心用戶數據建立的用戶模型),其它的業務一般都採用維度+寬表的方式來建立數據模型。這塊是後話。
- 整體架構下面的圖是我們目前使用的數據平台架構圖,其實大多公司應該都差不多:
- 邏輯上,一般都有數據採集層、數據存儲與分析層、數據共享層、數據應用層。可能叫法有所不同,本質上的角色都大同小異。
- 我們從下往上看:
- 數據採集數據採集層的任務就是把數據從各種數據源中採集和存儲到數據存儲上,期間有可能會做一些簡單的清洗。
- 數據源的種類比較多:
網站日誌:
- 作為互聯網行業,網站日誌占的份額最大,網站日誌存儲在多台網站日誌伺服器上,
- 一般是在每台網站日誌伺服器上部署flume agent,實時的收集網站日誌並存儲到HDFS上;
業務資料庫:
- 業務資料庫的種類也是多種多樣,有Mysql、Oracle、SqlServer等,這時候,我們迫切的需要一種能從各種資料庫中將數據同步到HDFS上的工具,Sqoop是一種,但是Sqoop太過繁重,而且不管數據量大小,都需要啟動MapRece來執行,而且需要Hadoop集群的每台機器都能訪問業務資料庫;應對此場景,淘寶開源的DataX,是一個很好的解決方案(可參考文章 《異構數據源海量數據交換工具-Taobao DataX 下載和使用》),有資源的話,可以基於DataX之上做二次開發,就能非常好的解決,我們目前使用的DataHub也是。
- 當然,Flume通過配置與開發,也可以實時的從資料庫中同步數據到HDFS。
來自於Ftp/Http的數據源:
- 有可能一些合作夥伴提供的數據,需要通過Ftp/Http等定時獲取,DataX也可以滿足該需求;
其他數據源:
- 比如一些手工錄入的數據,只需要提供一個介面或小程序,即可完成;
- 數據存儲與分析毋庸置疑,HDFS是大數據環境下數據倉庫/數據平台最完美的數據存儲解決方案。
- 離線數據分析與計算,也就是對實時性要求不高的部分,在我看來,Hive還是首當其沖的選擇,豐富的數據類型、內置函數;壓縮比非常高的ORC文件存儲格式;非常方便的SQL支持,使得Hive在基於結構化數據上的統計分析遠遠比MapRece要高效的多,一句SQL可以完成的需求,開發MR可能需要上百行代碼;
- 當然,使用Hadoop框架自然而然也提供了MapRece介面,如果真的很樂意開發Java,或者對SQL不熟,那麼也可以使用MapRece來做分析與計算;Spark是這兩年非常火的,經過實踐,它的性能的確比MapRece要好很多,而且和Hive、Yarn結合的越來越好,因此,必須支持使用Spark和SparkSQL來做分析和計算。因為已經有Hadoop Yarn,使用Spark其實是非常容易的,不用單獨部署Spark集群,關於Spark On Yarn的相關文章,可參考:《Spark On Yarn系列文章》
- 實時計算部分,後面單獨說。
- 數據共享這里的數據共享,其實指的是前面數據分析與計算後的結果存放的地方,其實就是關系型資料庫和NOSQL資料庫;
- 前面使用Hive、MR、Spark、SparkSQL分析和計算的結果,還是在HDFS上,但大多業務和應用不可能直接從HDFS上獲取數據,那麼就需要一個數據共享的地方,使得各業務和產品能方便的獲取數據;和數據採集層到HDFS剛好相反,這里需要一個從HDFS將數據同步至其他目標數據源的工具,同樣,DataX也可以滿足。
- 另外,一些實時計算的結果數據可能由實時計算模塊直接寫入數據共享。
- 數據應用
業務產品
- 業務產品所使用的數據,已經存在於數據共享層,他們直接從數據共享層訪問即可;
報表
- 同業務產品,報表所使用的數據,一般也是已經統計匯總好的,存放於數據共享層;
即席查詢
- 即席查詢的用戶有很多,有可能是數據開發人員、網站和產品運營人員、數據分析人員、甚至是部門老大,他們都有即席查詢數據的需求;
- 這種即席查詢通常是現有的報表和數據共享層的數據並不能滿足他們的需求,需要從數據存儲層直接查詢。
- 即席查詢一般是通過SQL完成,最大的難度在於響應速度上,使用Hive有點慢,目前我的解決方案是SparkSQL,它的響應速度較Hive快很多,而且能很好的與Hive兼容。
- 當然,你也可以使用Impala,如果不在乎平台中再多一個框架的話。
OLAP
- 目前,很多的OLAP工具不能很好的支持從HDFS上直接獲取數據,都是通過將需要的數據同步到關系型資料庫中做OLAP,但如果數據量巨大的話,關系型資料庫顯然不行;
- 這時候,需要做相應的開發,從HDFS或者HBase中獲取數據,完成OLAP的功能;
- 比如:根據用戶在界面上選擇的不定的維度和指標,通過開發介面,從HBase中獲取數據來展示。
其它數據介面
- 這種介面有通用的,有定製的。比如:一個從Redis中獲取用戶屬性的介面是通用的,所有的業務都可以調用這個介面來獲取用戶屬性。
- 實時計算現在業務對數據倉庫實時性的需求越來越多,比如:實時的了解網站的整體流量;實時的獲取一個廣告的曝光和點擊;在海量數據下,依靠傳統資料庫和傳統實現方法基本完成不了,需要的是一種分布式的、高吞吐量的、延時低的、高可靠的實時計算框架;Storm在這塊是比較成熟了,但我選擇Spark Streaming,原因很簡單,不想多引入一個框架到平台中,另外,Spark Streaming比Storm延時性高那麼一點點,那對於我們的需要可以忽略。
- 我們目前使用Spark Streaming實現了實時的網站流量統計、實時的廣告效果統計兩塊功能。
- 做法也很簡單,由Flume在前端日誌伺服器上收集網站日誌和廣告日誌,實時的發送給Spark Streaming,由Spark Streaming完成統計,將數據存儲至Redis,業務通過訪問Redis實時獲取。
- 任務調度與監控在數據倉庫/數據平台中,有各種各樣非常多的程序和任務,比如:數據採集任務、數據同步任務、數據分析任務等;
- 這些任務除了定時調度,還存在非常復雜的任務依賴關系,比如:數據分析任務必須等相應的數據採集任務完成後才能開始;數據同步任務需要等數據分析任務完成後才能開始;這就需要一個非常完善的任務調度與監控系統,它作為數據倉庫/數據平台的中樞,負責調度和監控所有任務的分配與運行。
- 前面有寫過文章,《大數據平台中的任務調度與監控》,這里不再累贅。
- 總結在我看來架構並不是技術越多越新越好,而是在可以滿足需求的情況下,越簡單越穩定越好。目前在我們的數據平台中,開發更多的是關注業務,而不是技術,他們把業務和需求搞清楚了,基本上只需要做簡單的SQL開發,然後配置到調度系統就可以了,如果任務異常,會收到告警。這樣,可以使更多的資源專注於業務之上。
B. 移動檔案密集架的優勢表現在哪裡
手動檔案密集架可以節省大量空間。而密集架與使用普通文件櫃相比手動檔案密集架可節省約30%的空間,並且操作簡單的程度與使用文件櫃差不多,使用手動檔案密集架的管理人員可以更方便地存儲和查找相關數據文件的速度比使用文件櫃提升60%以上有效提高工作效率。
手動檔案密集架相比文件櫃而言,更加高端的地方就在於它有更大的儲物空間可以使用更好的防火防潮技術進行加工。普通的文件櫃比較適合剛剛成立的小公司,要處理的檔案資料並不是太多,而且也不需要進行多精細的管理,那麼使用文件櫃是完全足夠的。
C. 數據存儲架構
全國地質鑽孔基本信息資料庫主要採用關系資料庫管理方法,柵格圖片、與文本等非結構化數據採用擴展的關系資料庫管理方法。
根據全國地質鑽孔資料的管理狀況,以保管單位為基本單元構建全國及各省(區、市)地質鑽孔資料庫建設構架,具體架構如圖2.2所示。
圖2.2 地質鑽孔基本信息數據架構
D. 傳統大數據存儲的架構有哪些各有什麼特點
數據源:所有大數據架構都從源代碼開始。這可以包含來源於資料庫的數據、來自實時源(如物聯網設備)的數據,及其從應用程序(如Windows日誌)生成的靜態文件。
實時消息接收:假如有實時源,則需要在架構中構建一種機制來攝入數據。
數據存儲:公司需要存儲將通過大數據架構處理的數據。一般而言,數據將存儲在數據湖中,這是一個可以輕松擴展的大型非結構化資料庫。
批處理和實時處理的組合:公司需要同時處理實時數據和靜態數據,因而應在大數據架構中內置批量和實時處理的組合。這是由於能夠應用批處理有效地處理大批量數據,而實時數據需要立刻處理才能夠帶來價值。批處理涉及到長期運轉的作業,用於篩選、聚合和准備數據開展分析。
分析數據存儲:准備好要分析的數據後,需要將它們放到一個位置,便於對整個數據集開展分析。分析數據儲存的必要性在於,公司的全部數據都聚集在一個位置,因而其分析將是全面的,而且針對分析而非事務進行了優化。
這可能採用基於雲計算的數據倉庫或關系資料庫的形式,具體取決於公司的需求。
分析或報告工具:在攝入和處理各類數據源之後,公司需要包含一個分析數據的工具。一般而言,公司將使用BI(商業智能)工具來完成這項工作,而且或者需要數據科學家來探索數據。
「大數據」 通常指的是那些數量巨大、難於收集、處理、分析的數據集,亦指那些在傳統基礎設施中長期保存的數據。大數據存儲是將這些數據集持久化到計算機中。
E. 存儲的架構有哪些
目前市場上的存儲架構如下:
(1)基於嵌入式架構的存儲系統
節點NVR架構主要面向小型高清監控系統,高清前端數量一般在幾十路以內。系統建設中沒有大型的存儲監控中心機房,存儲容量相對較小,用戶體驗度、系統功能集成度要求較高。在市場應用層面,超市、店鋪、小型企業、政法行業中基本管理單元等應用較為廣泛。
(2)基於X86架構的存儲系統
平台SAN架構主要面向中大型高清監控系統,前端路數成百上千甚至上萬。一般多採用IPSAN或FCSAN搭建高清視頻存儲系統。作為監控平台的重要組成部分,前端監控數據通過錄像存儲管理模塊存儲到SAN中。
此種架構接入高清前端路數相對節點NVR有了較高提升,具備快捷便利的可擴展性,技術成熟。對於IPSAN而言,雖然在ISCSI環節數據並發讀寫傳輸速率有所消耗,但其憑借擴展性良好、硬體平台通用、海量數據可充分共享等優點,仍然得到很多客戶的青睞。FCSAN在行業用戶、封閉存儲系統中應用較多,比如縣級或地級市高清監控項目,大數據量的並發讀寫對千兆網路交換提出了較大的挑戰,但應用FCSAN構建相對獨立的存儲子系統,可以有效解決上述問題。
(3)基於雲技術的存儲方案
當前,安防行業可謂「雲」山「物」罩。隨著視頻監控的高清化和網路化,存儲和管理的視頻數據量已有海量之勢,雲存儲技術是突破IP高清監控存儲瓶頸的重要手段。雲存儲作為一種服務,在未來安防監控行業有著客觀的應用前景。
與傳統存儲設備不同,雲存儲不僅是一個硬體,而是一個由網路設備、存儲設備、伺服器、軟體、接入網路、用戶訪問介面以及客戶端程序等多個部分構成的復雜系統。該系統以存儲設備為核心,通過應用層軟體對外提供數據存儲和業務服務。
F. 海量數據離線存儲櫃有誰用過
海量數據離線存儲系統分為:
1、 數據存儲的備份登記管理系統
2、 數據存儲管理系統
3、 離線存儲設備——硬碟離線存儲櫃
4、 海量離線存儲的綜合管理系統
每個系統又分為多個分支系統。北京漢龍思琪研發的離線存儲櫃保證整個海量數據離線存儲系統的運行流暢性,便捷性,安全性,保密性,數據的可讀取性,檢索便捷性等。
G. 搭建家用數據存儲系統|磁碟陣列|硬碟組
1.
這是和你存儲容量有關的,如果是1TB-3TB,一個PC
就可以解決
2.
3TB-16TB
一個存儲伺服器(包含整列)可以解決
3.
16TB+
像你所說的100TB+
的話最好還是自己搞個機房,搭建一個分布式存儲的系統,openstack
比較適合你
4.
遠程終端的要求很簡單,大家現在都是這樣做的,伺服器上裝上ssh
就可以了
5.
你的存儲需求比較大,可以找專門的公司提供解決方案
H. 數據存儲的三類簡介
一、DAS(Direct Attached Storage)直接附加存儲,DAS這種存儲方式與我們普通的PC存儲架構一樣,外部存儲設備都是直接掛接在伺服器內部匯流排上,數據存儲設備是整個伺服器結構的一部分。
DAS存儲方式主要適用以下環境:
(1)小型網路
因為網路規模較小,數據存儲量小,且也不是很復雜,採用這種存儲方式對伺服器的影響不會很大。並且這種存儲方式也十分經濟,適合擁有小型網路的企業用戶。
(2)地理位置分散的網路
雖然企業總體網路規模較大,但在地理分布上很分散,通過SAN或NAS在它們之間進行互聯非常困難,此時各分支機構的伺服器也可採用DAS存儲方式,這樣可以降低成本。
(3)特殊應用伺服器
在一些特殊應用伺服器上,如微軟的集群伺服器或某些資料庫使用的原始分區,均要求存儲設備直接連接到應用伺服器。
(4)提高DAS存儲性能
在伺服器與存儲的各種連接方式中,DAS曾被認為是一種低效率的結構,而且也不方便進行數據保護。直連存儲無法共享,因此經常出現的情況是某台伺服器的存儲空間不足,而其他一些伺服器卻有大量的存儲空間處於閑置狀態卻無法利用。如果存儲不能共享,也就談不上容量分配與使用需求之間的平衡。
DAS結構下的數據保護流程相對復雜,如果做網路備份,那麼每台伺服器都必須單獨進行備份,而且所有的數據流都要通過網路傳輸。如果不做網路備份,那麼就要為每台伺服器都配一套備份軟體和磁帶設備,所以說備份流程的復雜度會大大增加。
想要擁有高可用性的DAS存儲,就要首先能夠降低解決方案的成本,例如:LSI的12Gb/s SAS,在它有DAS直聯存儲,通過DAS能夠很好的為大型數據中心提供支持。對於大型的數據中心、雲計算、存儲和大數據,所有這一切都對DAS存儲性能提出了更高的要求,雲和企業數據中心數據的爆炸性增長也推動了市場對於可支持更高速數據訪問的高性能存儲介面的需求,因而LSI 12Gb/s SAS正好是能夠滿足這種性能增長的要求,它可以提供更高的IOPS和更高的吞吐能力,12Gb/s SAS提高了更高的寫入的性能,並且提高了RAID的整個綜合性能。
與直連存儲架構相比,共享式的存儲架構,比如SAN(storage-area network)或者NAS(network-attached storage)都可以較好的解決以上問題。於是乎我們看到DAS被淘汰的進程越來越快了。可是到2012年為止,DAS仍然是伺服器與存儲連接的一種常用的模式。事實上,DAS不但沒有被淘汰,近幾年似乎還有回潮的趨勢。 二、NAS(Network Attached Storage)數據存儲方式
NAS(網路附加存儲)方式則全面改進了以前低效的DAS存儲方式。它採用獨立於伺服器,單獨為網路數據存儲而開發的一種文件伺服器來連接所存儲設備,自形成一個網路。這樣數據存儲就不再是伺服器的附屬,而是作為獨立網路節點而存在於網路之中,可由所有的網路用戶共享。
NAS的優點:
(1)真正的即插即用
NAS是獨立的存儲節點存在於網路之中,與用戶的操作系統平台無關,真正的即插即用。
(2)存儲部署簡單
NAS不依賴通用的操作系統,而是採用一個面向用戶設計的,專門用於數據存儲的簡化操作系統,內置了與網路連接所需要的協議,因此使整個系統的管理和設置較為簡單。
(3)存儲設備位置非常靈活
(4)管理容易且成本低
NAS數據存儲方式是基於現有的企業Ethernet而設計的,按照TCP/IP協議進行通信,以文件的I/O方式進行數據傳輸。
NAS的缺點:
(1)存儲性能較低(2)可靠度不高 三、SAN(Storage Area Network)存儲方式
1991年,IBM公司在S/390伺服器中推出了ESCON(Enterprise System Connection)技術。它是基於光纖介質,最大傳輸速率達17MB/s的伺服器訪問存儲器的一種連接方式。在此基礎上,進一步推出了功能更強的ESCON Director(FC SWitch),構建了一套最原始的SAN系統。
SAN存儲方式創造了存儲的網路化。存儲網路化順應了計算機伺服器體系結構網路化的趨勢。SAN的支撐技術是光纖通道(FC Fiber Channel)技術。它是ANSI為網路和通道I/O介面建立的一個標准集成。FC技術支持HIPPI、IPI、SCSI、IP、ATM等多種高級協議,其最大特性是將網路和設備的通信協議與傳輸物理介質隔離開,這樣多種協議可在同一個物理連接上同時傳送。
SAN的硬體基礎設施是光纖通道,用光纖通道構建的SAN由以下三個部分組成:
(1)存儲和備份設備:包括磁帶、磁碟和光碟庫等。
(2)光纖通道網路連接部件:包括主機匯流排適配卡、驅動程序、光纜、集線器、交換機、光纖通道和SCSI間的橋接器
(3)應用和管理軟體:包括備份軟體、存儲資源管理軟體和存儲設備管理軟體。
SAN的優勢:
(1)網路部署容易;
(2)高速存儲性能。因為SAN採用了光纖通道技術,所以它具有更高的存儲帶寬,存儲性能明顯提高。SAn的光纖通道使用全雙工串列通信原理傳輸數據,傳輸速率高達1062.5Mb/s。
(3)良好的擴展能力。由於SAN採用了網路結構,擴展能力更強。光纖介面提供了10公里的連接距離,這使得實現物理上分離,不在本地機房的存儲變得非常容易。 DAS、NAS和SAN三種存儲方式比較
存儲應用最大的特點是沒有標準的體系結構,這三種存儲方式共存,互相補充,已經很好滿足企業信息化應用。
從連接方式上對比,DAS採用了存儲設備直接連接應用伺服器,具有一定的靈活性和限制性;NAS通過網路(TCP/IP,ATM,FDDI)技術連接存儲設備和應用伺服器,存儲設備位置靈活,隨著萬兆網的出現,傳輸速率有了很大的提高;SAN則是通過光纖通道(Fibre Channel)技術連接存儲設備和應用伺服器,具有很好的傳輸速率和擴展性能。三種存儲方式各有優勢,相互共存,佔到了磁碟存儲市場的70%以上。SAN和NAS產品的價格仍然遠遠高於DAS.許多用戶出於價格因素考慮選擇了低效率的直連存儲而不是高效率的共享存儲。
客觀的說,SAN和NAS系統已經可以利用類似自動精簡配置(thin provisioning)這樣的技術來彌補早期存儲分配不靈活的短板。然而,之前它們消耗了太多的時間來解決存儲分配的問題,以至於給DAS留有足夠的時間在數據中心領域站穩腳跟。此外,SAN和NAS依然問題多多,至今無法解決。
I. 數據存儲盤櫃 是什麼,那個牌子的好!
IBM或者戴爾的都不錯,但是要用宏基的