2、為集群搭大數據環境(一般公司招大數據工程師環境都已經搭好了,公司內部會有現成的大數據平臺,但我這邊會私下搞一套測試環境,畢竟公司內部的大數據系統權限限制很多,嚴重影響開發效率)
3、維護大數據平臺(這個應該是每個大數據工程師都做過的工作,或多或少會承擔“運維”的工作)
4、數據遷移(有部分公司需要把數據從傳統的數據庫 Oracle、MySQL 等數據遷移到大數據集群中,這個是比較繁瑣的工作,吃力不討好)
5、應用遷移(有部分公司需要把應用從傳統的數據庫 Oracle、MySQL 等數據庫的存儲過程程序或者SQL腳本遷移到大數據平臺上,這個過程也是非常繁瑣的工作,無聊,高度重復且麻煩,吃力不討好)
6、數據采集(采集日志數據、文件數據、接口數據,這個涉及到各種格式的轉換,一般用得比較多的是 Flume 和 Logstash)
7、數據處理
7.1、離線數據處理(這個一般就是寫寫 SQL 然后扔到 Hive 中跑,其實和第一點有點重復了)
7.2、實時數據處理(這個涉及到消息隊列,Kafka,Spark,Flink 這些,組件,一般就是 Flume 采集到數據發給 Kafka 然后 Spark 消費 Kafka 的數據進行處理)
8、數據可視化(這個我司是用 Spring Boot 連接后臺數據與前端,前端用自己魔改的 echarts)
9、大數據平臺開發(偏Java方向的,大概就是把開源的組件整合起來整成一個可用的大數據平臺這樣,常見的是各種難用的 PaaS 平臺)
10、數據中臺開發(中臺需要支持接入各種數據源,把各種數據源清洗轉換為可用的數據,然后再基于原始數據搭建起寬表層,一般為了節省開發成本和服務器資源,都是基于寬表層查詢出業務數據)
11、搭建數據倉庫(這里的數據倉庫的搭建不是指 Hive ,Hive 是搭建數倉的工具,數倉搭建一般會分為三層 ODS、DW、DM 層,其中DW是最重要的,它又可以分為DWD,DWM,DWS,這個層級只是邏輯上的概念,類似于把表名按照層級區分開來的操作,分層的目的是防止開發數據應用的時候直接訪問底層數據,可以減少資源,注意,減少資源開銷是減少 內存 和 CPU 的開銷,分層后磁盤占用會大大增加,磁盤不值錢所以沒什么關系,分層可以使數據表的邏輯更加清晰,方便進一步的開發操作,如果分層沒有做好會導致邏輯混亂,新來的員工難以接手業務,提高公司的運營成本,還有這個建數倉也分為建離線和實時的)
想要了解更多關于大數據資訊信息,請關注中培偉業李老師二維碼: