亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

解剖SQLSERVER 第十二篇 OrcaMDF 行壓縮支持

系統 2916 0
原文: 解剖SQLSERVER 第十二篇 OrcaMDF 行壓縮支持(譯)

解剖SQLSERVER 第十二篇 ? OrcaMDF 行壓縮支持(譯)

http://improve.dk/orcamdf-row-compression-support/


在這兩個月的斷斷續續的開發工作中,我終于將OrcaMDF 壓縮功能分支合并到主分支
這意味著OrcaMDF 現在正式支持數據行壓縮功能


支持的數據類型
實現行壓縮需要我修改幾乎所有已實現的數據類型以將他們作為壓縮存儲。 integer類型 被壓縮了, decimal類型
變成可變長度,而可變長度類型基本上都被截斷了進而用0來填補。所有先前OrcaMDF已經實現的數據類型都支持行壓縮,并且在先前已經支持的數據類型的基礎上又添加了一些新支持的數據類型
當前的數據類型支持列表如下:

      
        bigint
      
      
        binary
      
      
        bit
      
      
        char
      
      
        

date


      
      
        datetime
      
      
        

mal
      
      
        /
      
      numeric (including vardecimal, both 
      
        with
      
      
        and
      
      
         without row compression)


      
      
        image
      
      
        int
      
      
        money
      
      
        nchar
      
      
        ntext
      
      
        nvarchar
      
      
        smallint
      
      
        smallmoney
      
      
        text
      
      
        

time


      
      
        uniqueidentifier
      
      
        varbinary
      
      
        varchar
      
    

?

Unicode壓縮
Nchar和nvarchar被證明是比其他類型還要棘手,因為他們使用 SCSU unicode壓縮格式。
我發現了在.NET里有一個對 SCSU的實現 ,但是當我將他的代碼嵌入到OrcaMDF里面他彈出了一個license 窗口
需要我購買license。
另外 有很多開源的java工具實現但是都不是我想要的。我選擇自己實現SCSU 解壓縮根據 Unicode.Inc 給出的參考實現。

我只實現解壓縮并最終完成了一個非常苗條和簡單的SCSU解壓縮器。

我將會單獨寫一篇博客來介紹decompressor 并且從OrcaMDF里獨立出來作為一個單獨的類并帶有一些默認值

?

?

體系結構更改
我想我應該可以在一到兩周時間內完成解壓縮功能,畢竟,解壓縮有很好的文檔記錄。我需要想一下
為了實現壓縮需要改多少東西。行記錄解析器必需要知道頁面是否被壓縮。但是行記錄解析器從哪里可以知道
頁面被壓縮過的?先前獲得的都是頁面指針,現在我必須查詢元數據(partition表)確保所有的數據傳遞路徑是從DataScanner 傳到page parser再傳到 record parser最后到data type parsers


我不得不在規則解析器上實現多種抽象以對壓縮的記錄和非壓縮的記錄進行抽象。
整體而言,這會是一個更好的體系結構,但是可能比預期需要多花更多時間。事實上解析被壓縮的數據格式只是磨難的一小部分 --因為有文檔而且格式比較簡單。然后數據類型 在我把他們研究出來為止需要更多的工作量

?


預覽
像往常一樣,代碼放在 Github 上,你可以下載下來進行研究!如果你不是程序員,我也上傳了可執行的OrcaMDF Studio二進制文件(日期為2012-02-06)

?


統計數據
作為一個數字情人,我喜歡看統計數據。這里有一組數據是對OrcaMDF的隨機統計:

123提交 ?第一個在2011年4月15日——這幾乎是一年前!
11700行 C#代碼(不含空格)。
1000行注釋。
35%的代碼是用于測試的,使用測試套件包含超過200個測試。
Ohloh 估計OrcaMDF開發成本為144090美元

?

第十二篇完

解剖SQLSERVER 第十二篇 OrcaMDF 行壓縮支持


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久久久久99 | 欧美网站黄 | 亚洲欧美精品天堂久久综合一区 | 亚洲欧美日韩人成 | 99热久久国产精品这里有99 | 亚洲日韩欧洲无码av夜夜摸 | 久久免费精品视频在线观看 | 亚洲精品麻豆一区二区 | 国产极品嫩模在线观看91精品 | 色综合久久综精品 | 九九久久精品这里久久网 | 干一干操一操 | 欧美特级爽毛片 | 草草影院1| 久热re国产手机在线观看 | 久99视频 | 久久精品国产清自在天天线 | 波多野吉衣一区二区三区四区 | 亚洲一区二区三区不卡在线播放 | 最新四虎4hu影库地址在线 | 午夜欧美精品久久久久久久 | 妞干网这里只有精品 | 成人国产在线24小时播放视频 | 精品成人一区二区 | 国产精品亚洲综合一区 | 日本伊人色综合网 | 日韩中文字幕在线亚洲一区 | 男女生性毛片免费观看 | 欧洲美女a视频一级毛片 | 亚洲人成影院午夜网站 | 亚洲综合视频 | 亚洲精品成人一区二区 | 手机看片福利日韩国产 | 人人看操| 伊人天伊人天天网综合视频 | 看全色黄大色黄大片色责看的 | 四虎精品国产一区二区三区 | 午夜免费播放观看在线视频 | 国产精品久久久久久久久久久搜索 | 9191精品国产免费不久久 | 亚洲一区二区三区高清不卡 |