大數據工程教育的探索
來源:用戶上傳
作者:
摘 要:國內已經獲批“數據科學與大數據技術專業”的高校多達280所,但是由于概念不清,定位不明確,多數院校的人才培養目標及課程設置大而統。文章界定大數據產業中的不同角色,以該專業的一個主要方向——大數據工程教育為例,研究如何正確把握人才培養定位、科學地設置課程,給出了培養數據工程師途徑的實例。最后,指出了大數據工程教育將要面對“有大數據可用”,“高校必須與數據企業合作”等主要問題的挑戰。
關鍵詞:大數據工程;人才培養定位;跨學科融合;數據分析技能差異;課程體系改革
中圖分類號:G642 文獻標志碼:A 文章編號:2096-000X(2019)12-0076-03
Abstract: There are up to 280 colleges and universities in China whose the specialty provisions of Data Science and Big Data Technology Major have got approved. But due to the conception-confusing, orientation unclear, for most of colleges and universities their professional training goals and curriculum setting are large and unionized. This paper defines the different roles in big data industry, and take one of the main research branches in this major, big data engineering education as an example to discuss how to correctly form the orientation of talent cultivation and scientifically lay out the curriculum. Also, an illustration of the way to train data engineers is presented. Finally some challenges to be faced for big data engineering education, such as the problems of "big data is available", "universities must cooperate with data enterprises", and other major problems are pointed out in this paper.
Keywords: big data engineering; the orientation of talent cultivation; interdisciplinary integration; skill differences in data analysis ;curriculum system reform
引言
大數據時代的到來催生了大數據工程教育。我國從2014年中國科學院大學首個“大數據技術與應用”專業到2018年已有285所高校新開“數據科學與大數據技術專業”。國內現有文獻研究都局限于單一學科,例如統計學[1-5]、數學[6]、計算機學科[7-10]的大數據人才培養模式研究。但是對數據科學與大數據技術專業與大數據工程教育認識模糊,缺乏對數據工程師及數據科學家內涵的研究,導致對該專業課程體系認識不足,課程設置隨意性大,人才培養模式趨同,辦學特色不鮮明。
一、大數據工程教育有關概念
大數據工程。數據工程是工程計算系統、計算機軟件或部分通過數據分析提取信息的多學科實踐[11]。大數據工程是圍繞著大量數據的設計、部署、獲取、維護(存儲)和建模分析的計算機科學與統計學等學科的綜合實踐。與大數據分析涉及數據的高級計算不同,大數據工程只涉及系統和設置的設計和部署,是計算實施的前提。
數據分析員。做查詢和處理數據、提供報告、總結和可視化數據的人員。對如何利用現有的工具和方法來解決一個問題有很強的理解,并以特設報告和圖表去幫助他人了解具體的查詢。然而,不被期望去處理大數據分析,也不背期望具有數學或研究背景去開發新算法。
數據工程師。為數據科學家分析大數據準備“大數據”基礎設施的數據專業人士,是能設計、建設、整合各種資源的數據,并管理大數據的軟件工程師??蓪憦碗s的查詢,確保它是容易訪問、工作順利;還可以在大數據集上運行一些ETL(提取,轉換和加載),并創建大數據倉庫以可用于報告或供數據科學家分析。數據工程師注重設計和架構,通常不期望他們知道任何機器學習或大數據分析。
數據科學家。能夠把原始數據轉化為純凈見解的人。數據科學家應用統計,機器學習和分析方法來解決關鍵業務問題。他們的主要功能是幫助單位組織把他們的大數據量變成有價值和可操作的見解。與“數據分析師”相比,除了數據分析能力之外,數據科學家應具有較強的編程技能、設計新算法、處理大數據的能力、具備領域知識的一些專業知識。此外,數據科學家還被期望通過可視化技術,建立數據科學應用程序,或敘述有關他們的數據(業務)問題的解決方案的有趣的故事、解釋和提交他們的研究結果。
案例1:建立企業銷售數據池。這是一個大數據系統設計問題,需要數據工程師完成:通過集成來自多個來源的數據創建數據池、以規則的時間間隔(可能每周)自動更新數據、數據的可用性分析(24小時,甚至每天)、易于訪問和無縫部署分析儀表板的體系結構等目標。 案例2:企業銷售數據分析及應用。對數據分析員,需要了解企業的現狀與預期,收集數據,會用基本統計分析方法解決小問題,例如銷售額下降問題。會提取銷售商品信息、對數據進行整理匯總,用Python、Tableau可視化展示。對數據科學家,則需具有較強的R或Python等統計軟件編程技能,會利用交叉列表解決用戶流失問題、利用多元回歸解決廣告組合推薦問題、利用logistic回歸解決行為預測問題、利用K-Means聚類方法選擇目標用戶群,利用決策樹方法選擇長期用戶,能借助于深度學習方法,從用戶評價中提取用戶對事物的評價,分析用戶對產品的態度和情感等深刻問題。
二、不同角色的數據分析技能的差異
數據工程師、數據科學家等大數據產業中的不同角色決定他們所需技能與使用的工具的差異。
分析員一般不做大數據分析,只需要對一些核心技能有基本了解。數據分析員的必需技能是統計、數據修改、數據可視化、探索性數據分析,主要工具有:微軟Excel,SPSS,SAS,SPSS Modeler,SAS數據挖掘器,SQL,微軟Access,Tableau,SSAS。
數據工程師的目標是優化大數據生態系統的性能。其技能和工具是:Hadoop,MapReduce,Hive,Pig、MySQL、MongoDB、Cassandra、數據流、NoSQL、SQL編程。
數據科學家要探索數據,提出正確的問題,并提供有趣的發現。他應該有非常廣泛的關于機器學習,數據挖掘,統計和大數據基礎設施方面的不同技術知識;應該有與接觸過各種數據集的工作經驗,并能夠在大數據上有效和高效運行算法,保持最新的最前沿的技術。對于數據科學家,了解計算機科學基礎和編程,包括語言和數據庫技術的經驗是必不可少的,技能和工具是:Python,R,Scala,Apache Spark,Hadoop,數據挖掘工和算法,機器學習、統計。
數據工程師與數據科學家這兩個角色有很多重疊。例如,數據科學家可能使用Hadoop生態系統來為其數據問題提供答案,而數據工程師可能正在編程一個迭代機器學習算法以在Spark集群上運行。
三、大數據工程教育方向的人才培養定位
大數據工程教育方向的人才培養定位要依據計算機科學及統計學科的優勢,結合高校的層次及地域分布,還要迎合大數據行業崗位需求,不同高校的人才培養定位是不同的,但是都應以數據為中心。對于定位于數據科學家的,則還需以數學計算/統計分析為主。實踐中,普通本科院校很難在數據工程師與數據科學家之間只選其一,往往是對兩者進行折中,旨在培養大數據科學與工程領域的復合型中高級技術人才,畢業生熟練掌握大數據采集、處理、分析與應用的技術與核心技能,具備大數據處理、挖掘、可視化、大數據系統集成、管理維護等能力。具體培養要求主要有:1. 掌握數據采集、清洗、存儲、分析、挖掘和可視化的方法,具備從事相關工作的能力;2. 具備整合不同數據源,不同結構類型數據的能力和探索數據背后價值的能力;3. 經過系統化的訓練,具有參與實際軟件開發項目的經歷,具備作為大數據工程師從事工程實踐所需的專業能力;4. 掌握數理統計的基礎知識、形成數據統計分析的核心技能;特別是到達大數據處理的基本要求:掌握Linux和Bash腳本,能用Python或R替代大部分的大數據技術語言java或Scala的編碼。
四、大數據工程方向的課程設置
在“大數據”的領域,新的查詢和編程接口是必需的,還需要新的計算模式。如果高校是側重于數據工程方向,那么,數據工程課程應包括計算機科學的多個領域的主題:數據庫系統,分布式計算,算法和機器學習。具體是:Scala或java;數據并行計算、SQL查詢處理、流水線式的查詢執行、查詢計劃選擇、圖分析、迭代計算、分布式NoSQL系統、多租戶資源按規模分配、Spark并行計算導論、BTrace教程、MapReduce工作原理、數據分割和分配、Amazon網路服務簡介、Kafka在現代數據處理中的作用、分布式數據流處理(執行)、分布式數據流處理(容錯)。
主要實踐教學包括C語言程序設計實訓、數據可視化課程設計、數據挖掘實驗等。
五、成為大數據工程師的歷程
依據大數據從業者的不同的角色和要求,學生可以先根據個人興趣和目標選擇學習大數據,成為大數據工程師的路徑線路。
為方便,記Bash 腳本(Bash入門+大量實踐)→Python個性化Python(用Python 學習數據科學的路徑)或Java(編程入門:開始用Java代碼+中級和高級Java編程+面向對象的Java編程:數據結構+超越專業化)→云(大數據技術基礎+某個領域大數據+該領域大數據實踐)→Hadoop→HDFS9大數據和Hadoop要點+大數據基礎學習+Hadoop入門套件+閱讀:《Hadoop集群部署》)為“基礎”,則
對于大數據工程師:基礎→Kafka(完整Apache Kafka課程入門+Apache Kafka 基礎學習及高級主題+閱讀:《學習Apache Kafka》);
對于大數據分析,需在大數據工程師的線路上增加一點Apache:“對于大數據工程師”→Apache 風暴(實時分析與Apache風暴+閱讀材料:Apache風暴(文檔))或Apache 運動(閱讀材料:Apache 運動(文檔)+某運動流開發商資源)或Apache Spark(數據科學與工程與Apache+閱讀材料:Apache Spark 流(文檔))。
對于大數據工程師且大數據分析,有三條線路:
1. 基礎→Mapreduce(HDFS下覆蓋)→Procedural語言(選擇語言)→Pig(Apache Pig+Hadoop編程與Apache Pig+閱讀:《Pig編程》)→Apache Spark(數據科學與工程與Apache+閱讀材料:《學習Spark》); 2. 基礎→Mapreduce(HDFS下覆蓋)→SQL(使用MyS
QL管理大數據+SQL課程+PostgreSQL入門指南+書:《高性能MySQL》)→Hive(應用Hive 訪問Hadoop數據+學習Ap
ache Hadoop EcoSystem-Hive+閱讀:《Hive編程》)→Apache Spark(數據科學與工程與Apache+閱讀材料:《學習Spark》);
3. 基礎→Mapreduce(HDFS下覆蓋)→Apache Zookee
per(閱讀:《ZooKeeper》)。
各線路解讀如下:處理大數據的基本要求是掌握Linux和BASH腳本,由Java、Scala、Python或者R編寫的,建議選擇Python或Java。接下來,需要熟悉在云上的工作,在云上使用大數據。再接下來,需要了解分布式文件系統,例如Hadoop分布式文件系統。學習者還可以研究一些與自己的域名相關的NoSQL數據庫。以上是每個大數據工程師必須知道的強制性基礎。如果能使用數據流來開發實時或近實時分析系統,那么應該走學習Kafka的路。如果能使用閑置的大量數據,則采取MapReduce路徑,不需要學習Pig和Hive。
以上線路不是學習大數據技術的唯一途徑,例如,也可以是(1)大數據基礎(操作系統基礎+開發語言+關系數據庫+云數據庫+其它)-(2)大數據開發架構(交互式處理構架+批處理構架+流式處理構架+ lambda架構+其它)-(3)機器學習算法(分類+回歸+強化學習+其它)-(4)深度學習與人工智能(CNN+RNN+GAN+GNN+其它)。
最后,搞大數據工程教育,高校要有真正意義上的大數據可用。除了利用政府極為有限開放的數據資源外,高校必須與數據企業合作。高校還要培養具有行業企業實際工作經驗的數據挖掘人才。
參考文獻:
[1]田茂再.大數據時代統計學重構研究中的幾個熱點問題[J].統計研究,2015,32(5):3-13.
[2]祝丹,陳立雙.大數據驅動下統計學人才培養模式研究[J].統計與信息論壇,2016,31(2):87-92.
[3]孔曉瑞,劉夢玲,靳俊嬌.大數據時代背景下對應用統計學專業的思考[J].高教學刊,2016(18):41-44.
[4]張學新.大數據時代本科應用統計學專業課程改革探索[J].陰山學刊,2016,30(3):143-146.
[5]朱建平,張悅涵.大數據時代對傳統統計學變革的思考[J].統計研究,2016,33(2):3-9.
[6]孔環,李曉.大數據時代數學專業就業前景分析及培養研究[J].山東青年政治學院學報,2016,181(32):54-57.
[7]田緒紅,肖磊,黃瓊,等.大數據時代的計算機科學與技術專業綜合改革[J].計算機教育,2015(19):12-16.
[8]楊恒伏.數據視閾下計算機專業人才培養模式探討[J].開封教育學院學報,2015,35(9):69-70.
[9]趙永霞,彭玉華.大數據時代民辦高校計算機科學與技術專業人才培養模式研究[J].高等教育,2016(6):54.
[10]陳潔,張文翔.大數據視角下計算機科學與技術專業建設探究[J].軟件導刊,2016,15(10):185-288.
[11]Clark Glymour,David Madigan, Daryl Pregibon, and Padhraic Smyth. Statistical inference and data mining[J].Communications of the ACM,1996,39(11):35-41.
轉載注明來源:http://www.hailuomaifang.com/1/view-14846572.htm