大數據資料探勘必備技能 R語言日見火紅

不論資訊科技演進如何顛覆IT的樣貌,從大型主機(Mainframe)、主從式(Client-Server)架構,發展至今的第三平台(Third Platform),雲端運算、行動化、社交網路、大數據(Big Data)分析等應用模式,「資料」始終是支持企業營運的核心命脈。

隨著大數據相關議題被市場高度關注,企業也逐漸從模糊的概念,開始理解大數據應用之所以興起,其關鍵原因在於可經由資料分析,取得有助於未來營運方向的決策數據。儘管Gartner日前發布一份針對企業IT、業務決策者為主的線上調查統計顯示,未來兩年對於大數據的投資意願降低,但「以資料分析來輔助商業決策」的應用需求仍然持續走高。

倘若從關聯式資料庫系統(Database Management System,DBMS)發展的腳步來看,除了傳統結構化資料的處理能力,亦擴展支援非結構化(NoSQL),讓未來的商業智慧分析,不僅作為高層管理決策參考,更加擴展至第一線業務單位(Line-Of-Business),諸如行銷、精算等部門,皆得以科學化數據為基礎,執行日常工作。

資料庫欄位統整 以利未來分析應用

近年來企業端關注的議題主要圍繞在大數據如何拓展商業營運,甲骨文大中華區台灣技術諮詢部總監黃久安不諱言,確實無法帶動關聯式資料庫的成長。儘管如此,企業營運相關的重要資料,仍舊是以結構性為主,需要保存於成熟穩定、安全的環境,因此勢必仍有一席之地,不至於被新興應用浪潮所取代。但是,龐大的非結構化資料,確實存在可被分析的應用價值,因此現況大多是結構與非結構化資料共存。

「以Oracle資料庫近期實際成交的案例來看,其實跟以往相似度極高,企業仍舊有興建大型應用系統的需求。」黃久安觀察,即使ERP、CRM、帳務等核心系統都已建置完成,企業接下來仍會有興建Metadata Management系統的需求。例如金融業,顧客可能會採用單一銀行所提供的活存、信用卡、投資理財等服務,就金融核心系統架構來看,不同的業務內容均各自有一套獨立運行的應用服務,以存放客戶的基本資料。一旦顧客資料變更,例如地址、電話、姓名等,所有系統皆必須各自變更。其實多數銀行都想要改善現況,近來亦有相當多的討論,因而產生Metadata Management(或稱為Master Data Management)系統來解決。

同樣的概念套用在製造業,則是產品零件繁雜,例如依據手機型號有不同規格配置,欲追蹤零件成本,即需要把原本在各個不同資訊系統中的相同欄位先予以整合,才得以進行下一步的分析應用。


▲微軟SQL Server 2016新版中,內建PolyBase技術,提供以T-SQL陳述式,同時查詢關聯式資料庫與Hadoop平台,並且運用R語言執行合併分析。(資料來源:台灣微軟)

依經濟效益考量大數據保存方式

至於大數據的資料,最後也可能會存放到關聯式資料庫,進一步執行交叉比對與分析。黃久安從客戶端觀察發現,尤其是電子商務系統,近來各種行業都有建置需求,讓原本提供公司與產品簡介的官方網站,再增添可直接交易的機制,以網路平台為銷售管道。

針對社群媒體上的討論文字,典型的作法是蒐集顧客在社群媒體上發表使用心得文章,並且依照關鍵字採取反應;或者是批次方式先蒐集資料,之後再決定分析模型。不論哪一種實作方法,屬於營運相關的重要資料,最終仍須回到資料庫中存放。

首先外部資料要能夠落地存放,例如LINE即時溝通的文字,皆存放在App開發商的伺服器系統,只要企業認為具分析價值,即必須建立抓取外部資料的機制。至於保存資料的方式,究竟要寫入關聯式資料庫,還是處理非結構為主的Hadoop平台?黃久安認為,若資料僅在蒐集階段,尚未確認分析後可產生的價值,且數量又相當龐大,依經濟效益評估,存放在開放原始碼平台較為合理。外部蒐集回來的資料若經過萃取後,可比對系統資料庫,藉此發現是否具關聯性。對此,近兩年在開放原始碼領域相當活躍的R語言,主要即是應用於大數據分析。

從開放陣營崛起的R語言

著眼於大數據的統計、資料探勘應用,R語言幾乎可說是現代資料科學家必備的技能之一,不僅Oracle資料庫已納入支援,日前才正式發布的微軟SQL Server 2016,亦整合去年收購R語言工具公司Revolution Analytics所取得的Revolution R技術,可說是新版本中重要的特性之一。

黃久安說明,R實際上包含作業環境與程式語言,主要功能是統計與資料探勘(Data Mining),如同過去開放原始碼領域較著名的MATLAB,商業版本則是SAS、SPSS(已被IBM收購),現在的主流則是R。統計的目的主要是查看分佈狀態,資料採礦則較偏向分析,例如關聯(Association)、分類(Classification)、預測(Prediction)等模型,皆為R的範疇。

至於R與資料庫的共通性,即是資料本身。Oracle、SQL Server等關聯式資料庫的作法是把常見的探勘演算法,也就是關聯、分類、預測等資料模型,撰寫成預存程序(Stored Procedure),黃久安觀察,實際上資料庫系統內建的演算法至少超過十?種;但是在R的應用領域,則已有超過三千種以上的統計與資料探勘實作法,可說是吸引學術界教學時採用的主因,像是統計、數學等科系,即已把R列為基礎教材。

「R語言除了統計與演算法以外,也包含程式語言,就如同以往學校教的Basic等語法,皆為直譯式語言,為逐行執行指令,例如先把外部資料載入、接下來繪製成鐘形曲線。此外,R有許多視覺化圖表的呈現方式,亦可說是受歡迎的因素之一。」

同樣屬於資料分析領域,R與商業智慧工具又有何差異?黃久安提及,資料分析大致有多維度、統計、資料探勘等不同層次,商業智慧主要是基於線上分析處理(OLAP)技術,產出多維度分析的報表,再來才是R語言執行統計與資料採礦,兩者之間本質上即有所區隔。

如今的R社群,主要是由學術界領頭,影響力可見一斑,關聯式資料庫系統勢必也須跟進支援,才得以銜接未來人才應用需求。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!