【干貨】教育大數(shù)據(jù)之數(shù)據(jù)集成系統(tǒng)
數(shù)據(jù)集成指的是把分散在各個系統(tǒng)中的各種類型的數(shù)據(jù)統(tǒng)一匯聚起來,而數(shù)據(jù)集成系統(tǒng)就是提供數(shù)據(jù)集成能力的平臺。如何做好一個數(shù)據(jù)集成系統(tǒng)呢?本文作者對此進行了分析,一起來看一下吧。
一個風雨交加的晚上,領導把我拉到會議室說:老影啊,公司接到一個項目,需要在3個月里完成一個大數(shù)據(jù)平臺的開發(fā),用于項目的交付,這個任務交給你了,加油搞!此刻的我:搞?搞事情啊!由此我開始了數(shù)據(jù)平臺的“闖關之路”,遇到的第一個boss就是數(shù)據(jù)集成系統(tǒng)……
01 什么是數(shù)據(jù)集成?
百科里的解釋是:把不同來源、格式、特點性質的數(shù)據(jù)在邏輯上或物理上有機地集中,從而為企業(yè)提供全面的數(shù)據(jù)共享;通俗講就是把分散在各個系統(tǒng)中的各種類型的數(shù)據(jù)統(tǒng)一匯聚起來,主要體現(xiàn)在一個“集”字。而數(shù)據(jù)集成系統(tǒng)就是提供數(shù)據(jù)集成能力的平臺,是一站式解決異構數(shù)據(jù)存儲互通,消除數(shù)據(jù)孤島的同步平臺,為大數(shù)據(jù)各系統(tǒng)和業(yè)務方提供數(shù)據(jù)集成的高效通道 。
拿現(xiàn)實中的實例類比來說,數(shù)據(jù)集成就好比把各種糧食通過不同的管道灌輸?shù)揭粋€大糧倉中,這些管道就是數(shù)據(jù)集成系統(tǒng),我們可以支持接入各式各樣的糧食,小麥、玉米、大豆等等,同時支持在這些管道中加一些濾網,比如在大豆的管道中加上5mm的濾網,此時從大豆管道過來的糧食只有5mm以下的大豆,這就相當于數(shù)據(jù)集成系統(tǒng)中的數(shù)據(jù)過濾功能;這個糧倉相當于集成目的,我們把數(shù)據(jù)集成進來之后存儲在這里,供其他各方消費。
02 教育為什么要做數(shù)據(jù)集成?
1. 數(shù)據(jù)大爆炸
現(xiàn)在是一個信息大爆炸時代,互聯(lián)網的高速發(fā)展、迅速普及,讓信息無處不在、無孔不入,每天在我們所生活在的這個世界出現(xiàn)了大量的信息,教育場景下也不例外,隨著各種信息化系統(tǒng)的涌入,信息以空前的速度增長,教育從業(yè)者體驗著信息時代便捷的同時,也給他們帶來了問題和“副作用”,從浩如煙海的信息海洋中迅速而準確地獲取他們最需要的信息,變得非常困難。
2. 數(shù)據(jù)來源多樣化
隨著《教育信息化2.0行動計劃》的提出,教學過程中的信息化系統(tǒng)越來越多,比如作業(yè)系統(tǒng)、考試系統(tǒng)、選課系統(tǒng)、智慧課堂等等,每個系統(tǒng)都會產生大量的數(shù)據(jù),存儲在各自的數(shù)據(jù)庫中,如果系統(tǒng)的服務商不同,可能數(shù)據(jù)的格式也不一樣,致使教育場景下的數(shù)據(jù)越來越多,越來越難以管理。
3. 數(shù)據(jù)集不同結構
教育場景下的數(shù)據(jù)集可能是結構化的、半結構化的,甚至非結構化的;比如:考試系統(tǒng)中的數(shù)據(jù)是結構化的,評價系統(tǒng)中的數(shù)據(jù)是半結構化的,課堂實錄中的數(shù)據(jù)是非結構化的;不同結構的數(shù)據(jù)需要整合成統(tǒng)一的結構才能夠進行統(tǒng)計和分析。
4. 數(shù)據(jù)冗余
數(shù)據(jù)中有很多冗余、錯誤、敏感數(shù)據(jù),如果不進行數(shù)據(jù)清洗,會影響數(shù)據(jù)分析的效率和結果;在這種情況下需要我們配置統(tǒng)一的標準,對數(shù)據(jù)進行簡單的處理,以便于后續(xù)進行統(tǒng)計分析。
03 數(shù)據(jù)集成系統(tǒng)對教育的價值是什么?
大數(shù)據(jù)技術能夠將隱藏于海量數(shù)據(jù)中的信息和知識挖掘出來,按照科學的教育評價準則,對教學數(shù)據(jù)進行科學的統(tǒng)計分析,提供有價值的教學質量測評與分析數(shù)據(jù),實現(xiàn)對教育活動,教育過程和教育結果的價值評判,為提高教育質量,教育決策以及學校改進日常教學方法提供科學的依據(jù),實現(xiàn)教育管理的智能化,提升教育管理與服務水平。
數(shù)據(jù)集成系統(tǒng)作為底層基礎支撐性服務,是大數(shù)據(jù)系統(tǒng)的核心組成部分。通過提供數(shù)據(jù)集成能力,將教育各部門和來自互聯(lián)網的結構化和非結構化的數(shù)據(jù)進行統(tǒng)一的匯聚接入,存儲到大數(shù)據(jù)存儲組件,并支持數(shù)據(jù)的預處理,為大數(shù)據(jù)系統(tǒng)提供原始數(shù)據(jù)支撐。
04 數(shù)據(jù)集成系統(tǒng)怎么做?
1. 建設原則
數(shù)據(jù)采集系統(tǒng)針對實際項目中復雜的、異構的數(shù)據(jù)環(huán)境,實現(xiàn)對多種數(shù)據(jù)源的集成,支持的關系數(shù)據(jù)庫有Oracle、MySQL、Sqlserver等,支持的文件類型有txt文件、csv文件、excel文件等,支持的接口類型有webservice接口、http接口、socket接口等。
對于不同的大數(shù)據(jù)存儲需求,實現(xiàn)對多種大數(shù)據(jù)存儲組件的支持,支持的大數(shù)據(jù)存儲組件包括HDFS、HBase、Hive、Solr、Elasticserach等。
針對數(shù)據(jù)的預處理需求,實現(xiàn)對數(shù)據(jù)的清洗、轉換、標準化等預處理的支持,并且支持清洗規(guī)則、轉換規(guī)則的用戶自定義,以及清洗、轉換、導入流程的用戶自定義。
在數(shù)據(jù)采集系統(tǒng)中,各類功能點模塊化、組件化,便于步驟獨立,保證系統(tǒng)內部模塊自治,同時便于多種步驟、方法的組合應用。
簡化用戶操作,通過圖形化的配置方式,簡單,靈活,使得用戶無需過分關心數(shù)據(jù)庫的各種內部細節(jié),而專注于功能。
2. 數(shù)據(jù)集成信息框架
數(shù)據(jù)集成信息流
3. 功能結構
為了快速實現(xiàn)數(shù)據(jù)集成系統(tǒng),滿足后續(xù)項目交付,經過和研發(fā)大佬的多次溝通,優(yōu)先實現(xiàn)為業(yè)務提供數(shù)據(jù)集成的能力的數(shù)據(jù)源管理和集成任務管理。明確了第一版需求,只要包含數(shù)據(jù)源管理和集成任務管理就可以支持項目交付,因此功能結構設計如下:
數(shù)據(jù)集成系統(tǒng)功能結構圖
4. 建設內容
1)數(shù)據(jù)源管理
數(shù)據(jù)源模塊主要管理平臺支持的數(shù)據(jù)組件的基礎信息,包含各種數(shù)據(jù)組件的新增,配置和管理,如關系型數(shù)據(jù)庫的數(shù)據(jù)庫IP,端口,訪問信息等。這里大家可以理解為一個中間層,先通過數(shù)據(jù)抽取組件將各系統(tǒng)數(shù)據(jù)抽取到這里,以備后續(xù)集成任務管理模塊的調用。
在這里可以對數(shù)據(jù)源進行增刪改查,前提是需要和數(shù)據(jù)來源方溝通好,需要提供數(shù)據(jù)庫IP相關信息,下方是頁面示例:
數(shù)據(jù)源管理列表
2)集成任務管理
當用戶創(chuàng)建好數(shù)據(jù)源之后,需要有一個模塊支持用戶創(chuàng)建集成任務,相當于上文中講到的,上游的所有糧食都準備好了,需要我們提供搭建管道的地方,讓用戶把所有的管道搭起來,然后把各種糧食都匯聚到一起。此時集成任務管理模塊誕生了,這個模塊下主要對數(shù)據(jù)集成的任務進行統(tǒng)一的管理,支持用戶對數(shù)據(jù)集成任務進行增刪改查。
①操作列表功能
- 上線:集成任務完成創(chuàng)建狀態(tài)默認為未上線,此時用戶可將集成任務上線,上線為就緒狀態(tài);
- 運行:上線狀態(tài)下的任務支持運行,運行自動調用任務執(zhí)行組件,開始數(shù)據(jù)集成;
- 下線:已上線的任務支持下線;
- 刪除:未上線和已下線的任務支持刪除;
- 編輯:未上線和已下線的任務支持編輯。
數(shù)據(jù)集成任務列表
②任務運行
- 集成任務創(chuàng)建好之后,如果需要周期性的拉取數(shù)據(jù),這時候需要支持進行例行周期配置,支持用戶配置定時任務;
- 同時支持用戶進行失敗策略、任務執(zhí)行優(yōu)先級等相關參數(shù)的配置。
3)新增集成任務
為了方便用戶填寫,支持用戶選擇不同的數(shù)據(jù)源類型,數(shù)據(jù)接口類型不同,需要配置的參數(shù)信息也不同;但是總體來說數(shù)據(jù)集成主要分為三步:
- 數(shù)據(jù)接入:回答數(shù)據(jù)從哪來的問題;
- 數(shù)據(jù)處理:回答對數(shù)據(jù)要做什么的問題;
- 數(shù)據(jù)輸出:回答數(shù)據(jù)要到哪去的問題。
下方以將第三方數(shù)據(jù)庫數(shù)據(jù)集成到hive中為例舉例說明。選擇數(shù)據(jù)庫之后,頁面進入數(shù)據(jù)集成任務配置頁,三個步驟依次如下:
①數(shù)據(jù)接入
主要配置數(shù)據(jù)源相關信息,需要用戶填寫數(shù)據(jù)源表相關信息:
- 數(shù)據(jù)源:數(shù)據(jù)集群相關信息;
- 數(shù)據(jù)庫:源數(shù)據(jù)存儲數(shù)據(jù)庫;
- 是否分表:如果分表存儲需要從多個表抽取數(shù)據(jù);
- 表名:源數(shù)據(jù)所在表名;
- 數(shù)據(jù)歸屬產品/系統(tǒng):這部分數(shù)據(jù)在目錄管理系統(tǒng)維護,這里直接引用;
- 數(shù)據(jù)預覽:支持用戶對所選表進行預覽,查看數(shù)據(jù)格式。
數(shù)據(jù)接入
②數(shù)據(jù)處理
到在數(shù)據(jù)集成過程中會對數(shù)據(jù)進行預處理,考慮到后續(xù)的擴展性,這里直接將各種處理步驟提煉為公共組件,支持用戶自定義選擇,第一期可支持:字段映射過濾、賬號匹配、數(shù)據(jù)脫敏、數(shù)據(jù)轉換;為了節(jié)省操作,數(shù)據(jù)處理默認以字段映射過濾開始,自動選擇一項,用戶可直接點擊下一步。
數(shù)據(jù)處理
③數(shù)據(jù)輸出
此時的數(shù)據(jù)經過預處理,已經完成了清洗、轉換的操作,接下來就需要將處理完的數(shù)據(jù)存下來,以備后續(xù)使用。
數(shù)據(jù)輸出
05 數(shù)據(jù)集成結束后做什么?
下面以學生畫像的思路和大家簡單聊聊。通過從各個系統(tǒng)中采集過來的數(shù)據(jù),包含但不限于:學生上網數(shù)據(jù)、網頁瀏覽時長、作業(yè)完成數(shù)據(jù)、作業(yè)完成時長、課堂互動數(shù)據(jù)等等,幫助學校管理者針對學生群體進行標簽化分析。幫助教育管理者從學習,網絡行為,生活等多維度分析學生群體的習慣和特點,為學校實現(xiàn)個性化培養(yǎng)教育提供數(shù)據(jù)支撐。
學生畫像整體分為個人畫像和群體畫像:
1)群體畫像
通過對學生行為數(shù)據(jù)和結果數(shù)據(jù)的分析,為每個學生貼上具有行為或思想的特征標簽,并按照群體分類,教育管理者可以查看每個分類的人群特征,并從學校、年級、男女比例等各方面進行群體標簽的分析,幫助學校定位不同標簽人群的特征和規(guī)律,實現(xiàn)精細化管理,同時通過對不同行為數(shù)據(jù)進行閾值設置,及時發(fā)現(xiàn)出現(xiàn)問題的學生,以便進行及時糾偏。
2)個人畫像
通過采集學生各場景數(shù)據(jù),如學習行為、學習結果、消費信息、飲食信息、運動信息等,綜合分析學生的學習狀態(tài),全面刻畫學生畫像,幫助教育管理者全方位了解一個學生,通過多維度分析學生的學習習慣和學習動機,逐步實現(xiàn)喊了2000多年的口號“因材施教”。
作者:一丁,“數(shù)據(jù)人創(chuàng)作者聯(lián)盟”成員。
本文由@一個數(shù)據(jù)人的自留地 原創(chuàng)發(fā)布于人人都是產品經理,未經許可,禁止轉載。
題圖來自Unsplash,基于CC0協(xié)議。
該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務。
寫的很好