【實用】做Big Data 應該學邊種程式語言


SJ前言:如果你有定時睇 StealJobs.com ,提到未來行業發展,當中我們多次提及 「AI 人工智能」和「big data 大數據分析」將是未來不可忽略的趨勢。也收到SJ讀者表達對趨勢的了解,提供更多這方面的晉升前景

有關大數據的未來發展,你要如何入行這個明日行業,就從認識SQL開始:

 

SQL 是 Structured Query Language ( 結構化查詢語言 ) 的縮寫。

SQL 是專門為數據庫而建立的操作命令集,是一種功能齊全的數據庫語言。1974 年,由 IBM 公司 San Jose, California 研究實驗室的 DD Chamberlin 和 RF Boyce 對 Codd’s Relational Algebra 在研製關係數據庫管理系統 System R 中,研製出一套規範語言- SEQUEL (Structured English Query Language), 並在 1976 年 11 月的 IBM Journalof R&D 上公佈最新版本的SQL( 叫 SEQUEL/2)。

1980 年改名為 SQL. SQL 功能強大,簡單易學,使用方便,已經成為了數據庫操作的基礎,並且幾乎現在所有的數據庫都支持 SQL。

開發者問答網站Stack Overflow是頗受開發者歡迎的開發知識經驗問答網站。網站每年都會對用戶進行調查,了解開發者的構成、開發語言選擇等情況。今年該網站對約50000名用戶進行調查後的結果已經出爐,裡面不乏一些有趣同時也令人深思的發現:比如說JavaScript仍然是最受歡迎的編程語言,而將近一半的開發者沒擁有計算機的相關學位。


在語言方面,JavaScript仍然以壓倒性的優勢當選最受歡迎開發語言,超過55.4%的受訪者稱自己使用這語言。實際上前5名的排名同去年都是一樣的,分別是(JavaScript、SQL、Java、C#以及PHP)。但PHP的受歡迎程度則比去年下跌了4個百分點,Stack Overflow分析認為是由於Node和Angular的崛起。

 

SQL 語言集數據查詢( data query ),數據操縱( data manipulation ),數據定義( data definition )和數據控制( data control )功能於一體,主要特點包括:

 

  • 語言風格統一。SQL 語言將數據定義語言 DDL, 數據操縱語言 DML, 數據控制語言 DCL 的功能於一體,語言風格統一,可以獨立完成數據庫生命週期的全部活動,包括定義數據模式、插入數據、建立數據庫、查詢、更新、維護、數據庫重構、數據庫安全性控制等一系列操作要求,這就是為數據庫應用系統開發提供了良好的環境。用戶在數據庫系統運行投入後,還可以根據需要隨時、逐步地修改模式,且並不影響數據庫的運行,從而使系統具有良好的可擴展性。
  • 操作過程統一。在關係模型中實體和實體間的聯繫均用關係表示,這種單一的數據結構使數據的查找、插入、刪除、修改等每一種操作都只需要一種操作符,從而克服了非關係系統的信息表示方式的多樣性帶來的操作複雜性。例如,在 DBTG 中,需要兩種插入操作符: STORE 用來將記錄存入數據庫,CONNECT 用來把記錄插入系值以建立數據之間的聯繫。非關係模型(層次模型、網狀模型)的語言一般都分為模式數據定義語言( schema data definition language ,模式 DDL )、外模式數據定義語言( subschemadata definition language ,外模式 DDL )、與數據存儲有關的描述語言( data storage description language , DSDL )及數據操縱語言( datamanipulation language , DML ),分別用於定義模式、外模式、內模式和進行數據的存取與處理。當用戶數據庫投入運行後,如果需要修改模式,必須停止現有數據庫的運行、存儲數據、修改模式並編譯後再從裝數據庫,十分不便。
  • 高度非過程化。SQL 語言進行數據操作,只需提出“做什麼”,而無需指明“怎麼做”,因此無需了解具體的存取路徑,因為存取路徑的選擇以及 SQL 語句的操作過程由系統自動完成。這不僅大大減輕了用戶負擔,而且有利於提高數據獨立性。非關係數據模型的數據操縱語言是面向過程的語言。用戶為完成某項請求,必須自行指定詳細的存取路徑
  • 面向集合的操作方式。SQL 語言採用集合操作方式,請求只需一條 SELECT 命令即可獲得滿足所有條件的元組集合。SQL 不僅操作對象、查找結果可以是元祖的集合,而且一次插入、刪除、更新操作的對像也可以是元組的集合。非關係數據模型採用的是面向記錄的操作方式,操作對像是一條記錄。例如,查詢所有平均成績再 60 分及以上的學生姓名,用戶必須編寫一大段處理程序,指明存取路徑和循環控制方法等,才能一條一條地把所有滿足條件地學生記錄查找出來。

  • 一種語法,兩種使用方式。SQL 語言既是自含式語言,優勢嵌入式語言。
  • 語言簡潔,易學易用。
  • 支持三級模式結構。

 

為什麼要學SQL

尋找數據挖掘分析行業中, SQL 是最需要的技能之一,無論是申請數據分析工作,數據引擎工作,數據挖掘分析或者相關領域工作。在 O’ Reilly 發布的《 2016 數據科學從業者薪酬報告》中,有百分之七十左右的受訪者證實了這一點,表示他們需要在專業環境中使用 SQL。在此次調查中, SQL 遠勝於 R 等編程語言。所以在數據挖掘分析領域, SQL 是必備技能。

 

 

SQL 屹立不倒的原因

SQL 從 1970s 從早期開發出,到現在還持續被使用的原因:



 

  • 公司基本都將數據存儲在關係數據庫管理系統( RDBMS )或關係數據流管理系統( RDSMS )中,所以需要使用 SQL 來實現訪問。SQL 是通用的數據語言,可以使用 SQL 和幾乎其它任何數據庫進行交互,甚至可以在本地建立自己的數據庫!

 

  • 只有少量的 SQL 實現沒有遵循標準,在供應商之間不兼容。因此,了解 SQL 標準是在數據挖掘分析行業立足的必要要求。

 

  • 最重要的是 SQL 也被更新的技術所接受,例如 Hive 或者 Spark SQL 。Hive 是一個用於查詢和管理大型數據集的類似於 SQL 的查詢語言界面; Spark SQL 可用於執行 SQL 查詢。

 

綜上所述,我們總結了為什麼你應該學習這種查詢語言:

 

1.對於新手來說,SQL 很容易上手

2.  學習曲線很平緩,編寫 SQ 查詢幾乎不需要花費過多時間

3.  SQL 遵循 “學習一次,隨時隨地可用” 的原則,所以花費時間學習 SQL 是值得的。

4.  SQL 是對編程語言的一種極好的補充。在某些狀況下,編寫查詢甚至比編寫代碼更為優先。

 

就業前景

隨著SQL Server 2016 的重量級登陸,北美越來越多的企業特別是使用微軟技術的公司都在使用SQL Server 2016,  越來越多的IT 職位需要掌握SQL 技能。

在北美 IT 行業,隨著 .NET 技術越來越受到重視,與之相關的職位也被越來越多的雇主和求職者所看好;SQL Server 作為微軟 .NET 戰略的核心產品,它和 Visual Studio .Net 完美地整合在一起,所顯示出來的功能優越性和完美集成性能不僅讓已經使用微軟系統的企業愈發信任 MS 技術,同時也讓一些其他暫未使用微軟系統的企業蠢蠢欲動。而且,現在程序開發與數據庫之間的界限越來越模糊,越來越多的企業打破這種界限,要求程序員負責數據庫的設計與優化;要求 DBA  或 Database Designer  懂得越來越多的數據庫。

所以,是否精通數據庫知識已成為衡量合格程序員的標準,數據庫考題也在程序員面試之中屢見不鮮,各種程序員證書的考試也紛紛包含針對數據庫知識的考核,所以 SQL Server 已成為三個主要證書考試的必考內容,同時也是市場要求 IT  從業人員必備技能!當前,不論是 .NET 程序員,還是 DBA  或 Database Designer  ,或是從事其他編程或數據工作的人士同樣需要掌握它。

此外,商業智能 (BI) 引導我們進入一個新時代,對於分析、報表和績效管理,企業用戶擁有更多控制權。企業用戶不再依賴 IT 部門支持每一項需求,從而獲得了更快更好的決策;同時讓企業中的 IT 和業務部門開始和平共處,從此 IT 部門可以為企業增加價值。Microsoft 提供了一個全面的商業智能 (BI) ,它為數據倉儲、分析和生成報表提供了一個擴展的數據平台,並提供了終端用戶可以用來訪問和分析商業信息的強大的和直覺工具,它的結果就是公司裡所有階級的僱員都可以通過使用易於使用和功能強大的工具看到和幫助改變商業執行。

綜上所述,相信大家不難理解SQL Server 將成為2018 年的就業新寵。在IT 行業裡,IT 從業者必須不斷提高自己,挖掘自己的潛能,才能使自己立於不敗之地。

 

Also on SJ:AI / Big data 正改寫McKinsey等諮詢行業 你都有機會加入

 

SJ結語

SQL 係你 to learn list 未?

 

 

原文轉載至 BRC求職


關注高質內容,讀神科又想入行頂級MNC / Banking / Law firm?即時填妥以下表格,SJ將不定時推送獨家行業活動 (絕不SPAM!!!)
* Required
    .
    This is a required question
    .
    This is a required question
    This is a required question
    請50字以內講完,唔該晒!
    This is a required question
    Never submit passwords through Google Forms.


StealJobs全面透露各行各業人工,工時,晉升前景,以及入行攻略,歡迎匿名提供收入資料

而家仲可以上埋SJ House ==> SJ House,一個網睇晒各區的住宅Rating,快D上來Rate下自己住緊個屋苑啦!

Employers who object to or otherwise wish to complain about the above content please contact us via email or press here. The above is mere opinion of the submitter(s) (not this website) only on the working environment of the said company, not from an official source, might be inaccurate, and in no way indicates the quality of any products or services or the level of competence or integrity of the above mentioned company and its staff. Unauthorised reposting of the contents herein is strictly prohibited.
如對本網任何內容有任何意見或投訴,請按此聯絡本網,本網會盡快為您處理問題。以上內容僅為投稿者之個人意見,不代表本網立場,並非來自官方渠道,亦可能不準確,而評論亦僅限於投稿者對工作環境的意見及反饋,與上述公司的員工或產品或服務質素或工作能力及品格誠信完全無關。未經授權切勿轉載以上內容至第三方網站,違者必究。 


立即加入StealJobs@FB 更多90後上位攻略

Submit Job Review

comments

Tags: , ,

Comments are closed.