基於簡單sql語句的sql解析原理及在大資料中的應用

來源:互聯網
上載者:User

標籤:

基於簡單sql語句的sql解析原理及在大資料中的應用

        李萬鴻

老百姓呼籲打土豪分田地、共同富裕,總有一天會實現。
全面瞭解你所不知道的外星人和宇宙真想:http://pan.baidu.com/s/1c1utFDQ
http://blog.sina.com.cn/s/blog_89436e570102w8qs.html
http://blog.sina.com.cn/contn
8年後,  中國2024年將統一世界!
呵呵,地球正在從黑暗進入光明。外星人在協助地球村民!
呵呵,外星人是客觀存在的,星際聯盟正在解救地球。數百萬行星大小的星際飛船正環繞地球,協助地球文明的進化,人類文明將飛躍進入宇宙文明,每一個人物質財富、精神財富都會圓滿的大同盛世,請大家多看相關資料。就會明確,我們從哪裡來,地球的種種問題的根本原因何在,我們往哪裡去?。

。。
UFO=universe family one。我們是宇宙大家庭的一員,如今整個宇宙的光明力量都來協助地球剷除暴政。建立共產主義佛教的大同盛世。我們是一家人,大家要相親相愛團結一心,勇敢革命,地球將會更美好!
天下興亡匹夫有責,大家都有義不容辭的重任協助人類的解放和文明的進步,而每一個人都會是受益者!

功在當代利在千秋!

南無阿彌佗佛!

嗡嘛呢叭咪吽! 
人類意志的臨界點決定著事件發生的速度,即人類的覺醒程度、對事件的認知與渴盼程度決定著事件何時發生…so 請呼喚身邊的朋友們參與事件冥想,加速事件發生、加速地球解放吧!精彩自己。撒愛萬有!


我們在生死輪迴中,都以前在外星球生活過。外星人是我們的兄弟姐妹,天下一家人,相親又相愛。。如今,地球人被奴役,我們要反抗。要勇敢革命,建立光明正義的地球村,一個世外桃源的烏托邦,共產主義佛教地球村。大家都幸福快樂,永遠不用擔負沉重的經濟壓力。外星高科技,給地球帶來無窮無盡的物質財富,每一個人都快樂無限!

大家能夠把此文轉給朋友,提前分享8年後的幸福快樂!



                       通常sql文法解析都是以lex、yacc進行分析為基礎的,是逐個字元進行分析,效能不高。假設基於沒有子查詢的sql語句進行解析,則速度會提高很多,在此對其原理加以說明。

    一般sql語句十分複雜,包括多層嵌套。但當中有規律可循。其特點是全部的語句基本模式是一樣的,即:都是SELECT  FROM  WHERE類型的簡單語句。因此,能夠把嵌套的語句逐條解析為這樣的簡單語句。因為sql語句的文法是一樣的。所以能夠用遞迴的方法對語句加以解析,從而把sql語句解析為多條簡單的子SQL語句。然後通過一個方法分別解析這些子sql語句。這樣處理。演算法簡單有效。極大地提高效能,對於SQL文法解析來說是一個革命性的新思路。

      大資料通常使用HBASE等NOSQL,對於sql開發來說極為不便。為此,採用分布式的關聯式資料庫來儲存大資料極具有用價值,比方用ORACLE、MYSQL把一張表分庫儲存到多個資料庫,這樣既能夠處理海量資料又適用於傳統的編程,支援MYBATIS、SPRING、HIBERNATE。開發極為方便。

對應的痛點是各個分庫的表的ID的唯一性和SQL語句的處理。

      對於ID的唯一性解決不難,關鍵在於分布式SQL的處理。

隨著SPARK等大資料軟體應運而生,對於分布式資料的處理來說正當其時。

能夠用SPARK來處理分布的資料。那麼怎樣得到這些資料呢?為此,能夠通過本文提出的SQL解析原理對SQL語句進行解析,把一條複雜的SQL語句解析為多簡單的SQL語句,如 SELECT A.*FORM USER  A WHERE  A.ID>222,然後通過資料字典找到USER表相應的分庫,在各個分庫上執行查詢,然後把各個查詢結果用SPARK處理,對於其它的子SQL語句如法炮製,然後依據主SQL語句的條件如JOIN、GROUP BY、ORDER BY等對全部的查詢資料進行運算匯總處理,最後返回結果。

     總之,通過擷取各個簡單的子SQL語句進行文法解析或語句分解。是一個行之有效好辦法。簡單巧妙地攻克了一個公用的難題,尤其對於採用高效資料庫處理大資料有特殊的意義,為其奠定了基石。這是一個極為有效解決的方法。值得應用。

                           2014-10-17

 

 

 

基於簡單sql語句的sql解析原理及在大資料中的應用

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.