1、離線搜集工具:ETL
在數據倉庫的語境下,ETL基本上便是數據搜集的代表,包括數據的提取(Extract)、轉換(Transform)和載入(Load)。在轉換的過程中,需求針對具體的事務場景對數據進行治理,例如進行不合法數據監測與過濾、格式轉換與數據規范化、數據替換、確保數據完整性等。
2、實時搜集工具:Flume/Kafka
實時搜集首要用在考慮流處理的事務場景,比方,用於記錄數據源的履行的各種操作活動,比方網路監控的流量辦理、金融運用的股票記賬和 web 伺服器記錄的用戶訪問行為。在流處理場景,數據搜集會成為Kafka的顧客,就像一個水壩一般將上游源源不斷的數據攔截住,然後依據事務場景做對應的處理(例如去重、去噪、中心核算等),之後再寫入到對應的數據存儲中。
3、互聯網搜集工具:Crawler, DPI等
Scribe是Facebook開發的數據(日誌)搜集體系。又被稱為網頁蜘蛛,網路機器人,是一種按照一定的規矩,自動地抓取萬維網信息的程序或者腳本,它支持圖片、音頻、視頻等文件或附件的搜集。
除了網路中包含的內容之外,關於網路流量的搜集能夠運用DPI或DFI等帶寬辦理技術進行處理。
2. 什麼是大數據採集平台
大數據採集是大數據的基礎,通過採集的數據在平台上匯總和分析,最終形成一套完整的數據系統。海鰻雲旅遊大數據平台,就是專業做旅遊大數據的公司,擁有自己的旅遊大數據平台。
3. 大數據方面核心技術有哪些
大數據技術的體系龐大且復雜,基礎的技術包含數據的採集、數據預處理、分布式回存儲、資料庫、答數據倉庫、機器學習、並行計算、可視化等。
1、數據採集與預處理:
Flume NG實時日誌收集系統,支持在日誌系統中定製各類數據發送方,用於收集數據;
Zookeeper是一個分布式的,開放源碼的分布式應用程序協調服務,提供數據同步服務。
2、數據存儲:
Hadoop作為一個開源的框架,專為離線和大規模數據分析而設計,HDFS作為其核心的存儲引擎,已被廣泛用於數據存儲。
HBase,是一個分布式的、面向列的開源資料庫,可以認為是hdfs的封裝,本質是數據存儲、NoSQL資料庫。
3、數據清洗:MapRece作為Hadoop的查詢引擎,用於大規模數據集的並行計算
4、數據查詢分析:
Hive的核心工作就是把SQL語句翻譯成MR程序,可以將結構化的數據映射為一張資料庫表,並提供 HQL(Hive SQL)查詢功能。
Spark 啟用了內存分布數據集,除了能夠提供互動式查詢外,它還可以優化迭代工作負載。
5、數據可視化:對接一些BI平台,將分析得到的數據進行可視化,用於指導決策服務。
4. 大數據etl是幹嘛的
大數據是巨量數據的合集,ETL則是處理這些數據並且發掘其價值的手段。
我們都知道,大數據的價值不在於大量的數據,而在於分析這些數據並從中找出企業所需的有價值數據,助力企業發展。
5. 在做大數據的准備中,ETL流程是什麼意思
ETL是指獲取原始大數據流,然後對其進行解析,並產生可用輸出數據集的過程專。從數據源屬中提取(E)數據,然後經過各種聚合、函數、組合等轉換(T),使其變為可用數據。最終,數據會被載入(L)到對它進行具體分析的環境中。這就是ETL流程。
6. 大數據是什麼
作者:李麗
鏈接:https://www.hu.com/question/23896161/answer/28624675
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。
"大數據"是一個體量特別大,數據類別特別大的數據集,並且這樣的數據集無法用傳統資料庫工具對其內容進行抓取、管理和處理。 "大數據"首先是指數據體量(volumes)?大,指代大型數據集,一般在10TB?規模左右,但在實際應用中,很多企業用戶把多個數據集放在一起,已經形成了PB級的數據量;其次是指數據類別(variety)大,數據來自多種數據源,數據種類和格式日漸豐富,已沖破了以前所限定的結構化數據范疇,囊括了半結構化和非結構化數據。接著是數據處理速度(Velocity)快,在數據量非常龐大的情況下,也能夠做到數據的實時處理。最後一個特點是指數據真實性(Veracity)高,隨著社交數據、企業內容、交易與應用數據等新數據源的興趣,傳統數據源的局限被打破,企業愈發需要有效的信息之力以確保其真實性及安全性。
"大數據"是需要新處理模式才能具有更強的決策力、洞察發現力和流程優化能力的海量、高增長率和多樣化的信息資產。從數據的類別上看,"大數據"指的是無法使用傳統流程或工具處理或分析的信息。它定義了那些超出正常處理范圍和大小、迫使用戶採用非傳統處理方法的數據集。
亞馬遜網路服務(AWS)、大數據科學家JohnRauser提到一個簡單的定義:大數據就是任何超過了一台計算機處理能力的龐大數據量。
研發小組對大數據的定義:"大數據是最大的宣傳技術、是最時髦的技術,當這種現象出現時,定義就變得很混亂。" Kelly說:"大數據是可能不包含所有的信息,但我覺得大部分是正確的。對大數據的一部分認知在於,它是如此之大,分析它需要多個工作負載,這是AWS的定義。當你的技術達到極限時,也就是數據的極限"。 大數據不是關於如何定義,最重要的是如何使用。最大的挑戰在於哪些技術能更好的使用數據以及大數據的應用情況如何。這與傳統的資料庫相比,開源的大數據分析工具的如Hadoop的崛起,這些非結構化的數據服務的價值在哪裡。
二、大數據分析
從所周知,大數據已經不簡簡單單是數據大的事實了,而最重要的現實是對大數據進行分析,只有通過分析才能獲取很多智能的,深入的,有價值的信息。那麼越來越多的應用涉及到大數據,而這些大數據的屬性,包括數量,速度,多樣性等等都是呈現了大數據不斷增長的復雜性,所以大數據的分析方法在大數據領域就顯得尤為重要,可以說是決定最終信息是否有價值的決定性因素。基於如此的認識,大數據分析普遍存在的方法理論有哪些呢?
1、可視化分析
大數據分析的使用者有大數據分析專家,同時還有普通用戶,但是他們二者對於大數據分析最基本的要求就是可視化分析,因為可視化分析能夠直觀的呈現大數據特點,同時能夠非常容易被讀者所接受,就如同看圖說話一樣簡單明了
2、數據挖掘演算法
大數據分析的理論核心就是數據挖掘演算法,各種數據挖掘的演算法基於不同的數據類型和格式才能更加科學的呈現出數據本身具備的特點,也正是因為這些被全世界統計學家所公認的各種統計方法(可以稱之為真理)才能深入數據內部,挖掘出公認的價值。另外一個方面也是因為有這些數據挖掘的演算法才能更快速的處理大數據,如果一個演算法得花上好幾年才能得出結論,那大數據的價值也就無從說起了。
3、預測性分析能力
大數據分析最終要的應用領域之一就是預測性分析,從大數據中挖掘出特點,通過科學的建立模型,之後便可以通過模型帶入新的數據,從而預測未來的數據。
4、數據質量和數據管理
大數據分析離不開數據質量和數據管理,高質量的數據和有效的數據管理,無論是在學術研究還是在商業應用領域,都能夠保證分析結果的真實和有價值。
大數據分析的基礎就是以上五個方面,當然更加深入大數據分析的話,還有很多很多更加有特點的、更加深入的、更加專業的大數據分析方法。
三、大數據技術
1、數據採集:ETL工具負責將分布的、異構數據源中的數據如關系數據、平面數據文件等抽取到臨時中間層後進行清洗、轉換、集成,最後載入到數據倉庫或數據集市中,成為聯機分析處理、數據挖掘的基礎。
2、數據存取:關系資料庫、NOSQL、SQL等。
3、基礎架構:雲存儲、分布式文件存儲等。
4、數據處理:自然語言處理(NLP,NaturalLanguageProcessing)是研究人與計算機交互的語言問題的一門學科。處理自然語言的關鍵是要讓計算機"理解"自然語言,所以自然語言處理又叫做自然語言理解(NLU,NaturalLanguage Understanding),也稱為計算語言學(Computational Linguistics。一方面它是語言信息處理的一個分支,另一方面它是人工智慧(AI, Artificial Intelligence)的核心課題之一。
5、統計分析:假設檢驗、顯著性檢驗、差異分析、相關分析、T檢驗、方差分析、卡方分析、偏相關分析、距離分析、回歸分析、簡單回歸分析、多元回歸分析、逐步回歸、回歸預測與殘差分析、嶺回歸、logistic回歸分析、曲線估計、因子分析、聚類分析、主成分分析、因子分析、快速聚類法與聚類法、判別分析、對應分析、多元對應分析(最優尺度分析)、bootstrap技術等等。
6、數據挖掘:分類
(Classification)、估計(Estimation)、預測(Prediction)、相關性分組或關聯規則(Affinity grouping or
association rules)、聚類(Clustering)、描述和可視化、Description and Visualization)、復雜數據類型挖掘(Text,
Web ,圖形圖像,視頻,音頻等)
7、模型預測:預測模型、機器學習、建模模擬。
8、結果呈現:雲計算、標簽雲、關系圖等。
四、大數據特點
要理解大數據這一概念,首先要從"大"入手,"大"是指數據規模,大數據一般指在10TB(1TB=1024GB)規模以上的數據量。大數據同過去的海量數據有所區別,其基本特徵可以用4個V來總結(Vol-ume、Variety、Value和Veloc-ity),即體量大、多樣性、價值密度低、速度快。
1、
數據體量巨大。從TB級別,躍升到PB級別。
2、
數據類型繁多,如前文提到的網路日誌、視頻、圖片、地理位置信息,等等。
3、
價值密度低。以視頻為例,連續不間斷監控過程中,可能有用的數據僅僅有一兩秒。
4、
處理速度快。1秒定律。最後這一點也是和傳統的數據挖掘技術有著本質的不同。物聯網、雲計算、移動互聯網、車聯網、手機、平板電腦、PC以及遍布地球各個角落的各種各樣的感測器,無一不是數據來源或者承載的方式。
大數據技術是指從各種各樣類型的巨量數據中,快速獲得有價值信息的技術。解決大數據問題的核心是大數據技術。目前所說的"大數據"不僅指數據本身的規模,也包括採集數據的工具、平台和數據分析系統。大數據研發目的是發展大數據技術並將其應用到相關領域,通過解決巨量數據處理問題促進其突破性發展。因此,大數據時代帶來的挑戰不僅體現在如何處理巨量數據從中獲取有價值的信息,也體現在如何加強大數據技術研發,搶占時代發展的前沿。
五、大數據處理
大數據處理之一:採集
大數據的採集是指利用多個資料庫來接收發自客戶端(Web、App或者感測器形式等)的數據,並且用戶可以通過這些資料庫來進行簡單的查詢和處理工作。比如,電商會使用傳統的關系型資料庫MySQL和Oracle等來存儲每一筆事務數據,除此之外,Redis和MongoDB這樣的NoSQL資料庫也常用於數據的採集。
在大數據的採集過程中,其主要特點和挑戰是並發數高,因為同時有可能會有成千上萬的用戶來進行訪問和操作,比如火車票售票網站和淘寶,它們並發的訪問量在峰值時達到上百萬,所以需要在採集端部署大量資料庫才能支撐。並且如何在這些資料庫之間進行負載均衡和分片的確是需要深入的思考和設計。
大數據處理之二:導入/預處理
雖然採集端本身會有很多資料庫,但是如果要對這些海量數據進行有效的分析,還是應該將這些來自前端的數據導入到一個集中的大型分布式資料庫,或者分布式存儲集群,並且可以在導入基礎上做一些簡單的清洗和預處理工作。也有一些用戶會在導入時使用來自Twitter的Storm來對數據進行流式計算,來滿足部分業務的實時計算需求。
導入與預處理過程的特點和挑戰主要是導入的數據量大,每秒鍾的導入量經常會達到百兆,甚至千兆級別。
大數據處理之三:統計/分析
統計與分析主要利用分布式資料庫,或者分布式計算集群來對存儲於其內的海量數據進行普通的分析和分類匯總等,以滿足大多數常見的分析需求,在這方面,一些實時性需求會用到EMC的GreenPlum、Oracle的Exadata,以及基於MySQL的列式存儲Infobright等,而一些批處理,或者基於半結構化數據的需求可以使用Hadoop。
統計與分析這部分的主要特點和挑戰是分析涉及的數據量大,其對系統資源,特別是I/O會有極大的佔用。
大數據處理之四:挖掘
與前面統計和分析過程不同的是,數據挖掘一般沒有什麼預先設定好的主題,主要是在現有數據上面進行基於各種演算法的計算,從而起到預測(Predict)的效果,從而實現一些高級別數據分析的需求。比較典型演算法有用於聚類的Kmeans、用於統計學習的SVM和用於分類的NaiveBayes,主要使用的工具有Hadoop的Mahout等。該過程的特點和挑戰主要是用於挖掘的演算法很復雜,並且計算涉及的數據量和計算量都很大,常用數據挖掘演算法都以單線程為主。
整個大數據處理的普遍流程至少應該滿足這四個方面的步驟,才能算得上是一個比較完整的大數據處理
六、大數據應用與案例分析
大數據應用的關鍵,也是其必要條件,就在於"IT"與"經營"的融合,當然,這里的經營的內涵可以非常廣泛,小至一個零售門店的經營,大至一個城市的經營。以下是關於各行各業,不同的組織機構在大數據方面的應用的案例,在此申明,以下案例均來源於網路,本文僅作引用,並在此基礎上作簡單的梳理和分類。
大數據應用案例之:醫療行業
[1] Seton Healthcare是採用IBM最新沃森技術醫療保健內容分析預測的首個客戶。該技術允許企業找到大量病人相關的臨床醫療信息,通過大數據處理,更好地分析病人的信息。
[2] 在加拿大多倫多的一家醫院,針對早產嬰兒,每秒鍾有超過3000次的數據讀取。通過這些數據分析,醫院能夠提前知道哪些早產兒出現問題並且有針對性地採取措施,避免早產嬰兒夭折。
[3] 它讓更多的創業者更方便地開發產品,比如通過社交網路來收集數據的健康類App。也許未來數年後,它們搜集的數據能讓醫生給你的診斷變得更為精確,比方說不是通用的成人每日三次一次一片,而是檢測到你的血液中葯劑已經代謝完成會自動提醒你再次服葯。
大數據應用案例之:能源行業
[1] 智能電網現在歐洲已經做到了終端,也就是所謂的智能電表。在德國,為了鼓勵利用太陽能,會在家庭安裝太陽能,除了賣電給你,當你的太陽能有多餘電的時候還可以買回來。通過電網收集每隔五分鍾或十分鍾收集一次數據,收集來的這些數據可以用來預測客戶的用電習慣等,從而推斷出在未來2~3個月時間里,整個電網大概需要多少電。有了這個預測後,就可以向發電或者供電企業購買一定數量的電。因為電有點像期貨一樣,如果提前買就會比較便宜,買現貨就比較貴。通過這個預測後,可以降低采購成本。
[2] 維斯塔斯風力系統,依靠的是BigInsights軟體和IBM超級計算機,然後對氣象數據進行分析,找出安裝風力渦輪機和整個風電場最佳的地點。利用大數據,以往需要數周的分析工作,現在僅需要不足1小時便可完成。
大數據應用案例之:通信行業
[1] XO Communications通過使用IBM SPSS預測分析軟體,減少了將近一半的客戶流失率。XO現在可以預測客戶的行為,發現行為趨勢,並找出存在缺陷的環節,從而幫助公司及時採取措施,保留客戶。此外,IBM新的Netezza網路分析加速器,將通過提供單個端到端網路、服務、客戶分析視圖的可擴展平台,幫助通信企業制定更科學、合理決策。
[2] 電信業者透過數以千萬計的客戶資料,能分析出多種使用者行為和趨勢,賣給需要的企業,這是全新的資料經濟。
[3] 中國移動通過大數據分析,對企業運營的全業務進行針對性的監控、預警、跟蹤。系統在第一時間自動捕捉市場變化,再以最快捷的方式推送給指定負責人,使他在最短時間內獲知市場行情。
[4] NTT docomo把手機位置信息和互聯網上的信息結合起來,為顧客提供附近的餐飲店信息,接近末班車時間時,提供末班車信息服務。
7. 大數據etl工具有哪些
ETL是數據倉庫中的非常重要的一環,是承前啟後的必要的一步。ETL負責將分布的、異構數據源中的數據如關系數據、平面數據文件等抽取到臨時中間層後進行清洗、轉換、集成,最後載入到數據倉庫或數據集市中,成為聯機分析處理、數據挖掘的基礎。
下面給大家介紹一下什麼是ETL以及ETL常用的三種工具——Datastage,Informatica,Kettle。
一、什麼是ETL?
ETL,Extract-Transform-Load 的縮寫,用來描述將數據從來源端經過抽取(extract)、轉換(transform)、載入(load)至目的端的過程。
數據倉庫結構
通俗的說法就是從數據源抽取數據出來,進行清洗加工轉換,然後載入到定義好的數據倉庫模型中去。目的是將企業中的分散、零亂、標准不統一的數據整合到一起,為企業的決策提供分析依據。
ETL是BI項目重要的一個環節,其設計的好壞影響生成數據的質量,直接關繫到BI項目的成敗。
二、為什麼要用ETL工具?
在數據處理的時候,我們有時會遇到這些問題:
▶ 當數據來自不同的物理主機,這時候如使用SQL語句去處理的話,就顯得比較吃力且開銷也更大。
▶ 數據來源可以是各種不同的資料庫或者文件,這時候需要先把他們整理成統一的格式後才可以進行數據的處理,這一過程用代碼實現顯然有些麻煩。
▶ 在資料庫中我們當然可以使用存儲過程去處理數據,但是處理海量數據的時候存儲過程顯然比較吃力,而且會佔用較多資料庫的資源,這可能會導致數據資源不足,進而影響資料庫的性能。
而上述遇到的問題,我們用ETL工具就可以解決。ETL工具具有以下幾點優勢:
1、支持多種異構數據源的連接。(部分)
2、圖形化的界面操作十分方便。
3、處理海量數據速度快、流程更清晰等。
三、ETL工具介紹
1、Datastage
IBM公司的商業軟體,最專業的ETL工具,但同時價格不菲,適合大規模的ETL應用。
使用難度:★★★★
2、Informatica
商業軟體,相當專業的ETL工具。價格上比Datastage便宜一點,也適合大規模的ETL應用。
使用難度:★★
3、Kettle
免費,最著名的開源產品,是用純java編寫的ETL工具,只需要JVM環境即可部署,可跨平台,擴展性好。
使用難度:★★
四、三種ETL工具的對比
Datastage、Informatica、Kettle三個ETL工具的特點和差異介紹:
1、操作
這三種ETL工具都是屬於比較簡單易用的,主要看開發人員對於工具的熟練程度。
Informatica有四個開發管理組件,開發的時候我們需要打開其中三個進行開發,Informatica沒有ctrl+z的功能,如果對job作了改變之後,想要撤銷,返回到改變前是不可能的。相比Kettle跟Datastage在測試調試的時候不太方便。Datastage全部的操作在同一個界面中,不用切換界面,能夠看到數據的來源,整個job的情況,在找bug的時候會比Informatica方便。
Kettle介於兩者之間。
2、部署
Kettle只需要JVM環境,Informatica需要伺服器和客戶端安裝,而Datastage的部署比較耗費時間,有一點難度。
3、數據處理的速度
大數據量下Informatica與Datastage的處理速度是比較快的,比較穩定。Kettle的處理速度相比之下稍慢。
4、服務
Informatica與Datastage有很好的商業化的技術支持,而Kettle則沒有。商業軟體的售後服務上會比免費的開源軟體好很多。
5、風險
風險與成本成反比,也與技術能力成正比。
6、擴展
Kettle的擴展性無疑是最好,因為是開源代碼,可以自己開發拓展它的功能,而Informatica和Datastage由於是商業軟體,基本上沒有。
7、Job的監控
三者都有監控和日誌工具。
在數據的監控上,個人覺得Datastage的實時監控做的更加好,可以直觀看到數據抽取的情況,運行到哪一個控制項上。這對於調優來說,我們可以更快的定位到處理速度太慢的控制項並進行處理,而informatica也有相應的功能,但是並不直觀,需要通過兩個界面的對比才可以定位到處理速度緩慢的控制項。有時候還需要通過一些方法去查找。
8、網上的技術文檔
Datastage < Informatica < kettle,相對來說,Datastage跟Informatica在遇到問題去網上找到解決方法的概率比較低,kettle則比較多。
五、項目經驗分享
在項目中,很多時候我們都需要同步生產庫的表到數據倉庫中。一百多張表同步、重復的操作,對開發人員來說是細心和耐心的考驗。在這種情況下,開發人員最喜歡的工具無疑是kettle,多個表的同步都可以用同一個程序運行,不必每一張表的同步都建一個程序,而informatica雖然有提供工具去批量設計,但還是需要生成多個程序進行一一配置,而datastage在這方面就顯得比較笨拙。
在做增量表的時候,每次運行後都需要把將最新的一條數據操作時間存到資料庫中,下次運行我們就取大於這個時間的數據。Kettle有控制項可以直接讀取資料庫中的這個時間置為變數;對於沒有類似功能控制項的informatica,我們的做法是先讀取的資料庫中的這個時間存到文件,然後主程序運行的時候指定這個文件為參數文件,也可以得到同樣的效果
8. 大數據ETL工程師待遇如何
在IT技術領域,ETL工程師是長期存在需求的崗位之一,而到了大數據時代,數據的採集和處理過程中,ETL工程師更是不可或缺。關於薪資方面,分地域,一線15K到20K,二線8K到15K。
9. ETL工程師的發展前景怎麼樣
ETL工程師的發展前景非常不錯。
在IT技術領域,ETL工程師是長期存在需求的崗位之一,而到了大數據時代,數據的採集和處理過程中,ETL工程師更是不可或缺。
在大數據背景下,越來越多的企業開始涉足大數據,ETL作為企業搞大數據的重要技術平台,確實是需要重視的,也需要技術實力足夠的ETL工程師來支持企業大數據平台的建設和運營。所以,只要大數據的前景一直向好,那麼ETL工程師的發展前景也是不必擔心的。
主要工作
從業務角度講,隨著數據應用的日益豐富,不同平台、系統的相互大批量數據交互成常態,僅僅滿足於採集數據已經不適應業務需要,還需要能夠為數據的目的端落地提供支撐,ETL工程師需要一個端到端的更適應業務需要的數據交換系統。
從技術角度講,ETL做一定的擴展可以升級為兼具交換能力,兩者有傳承,可以實現平滑過渡,但交換卻要考慮用另一個工具實現,同時未來大數據平台組件將異常豐富,相互之間的數據交換將是常態,必要要有更高級別的交換工具滿足這些需求。
大數據時代的ETL工程師,除了從事傳統的系統編程、資料庫編程與設計,還需要熟悉主流資料庫技術,如oracle、Sql server、PostgeSQL等,並且得會數據etl開發工具,如Datastage,Congos,Kettle等。
10. 大數據的採集與分析專業學後能做什麼工作
互聯網數據公司,比如說,網路,每天的數據採集量是我們們平常人想像不到的