乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      性能優(yōu)化技巧 - 內(nèi)存關(guān)聯(lián)計(jì)算

       raqsoft 2019-04-10

      關(guān)聯(lián)動(dòng)作會(huì)嚴(yán)重影響性能,SPL支持內(nèi)存預(yù)關(guān)聯(lián),可以加快關(guān)聯(lián)動(dòng)作,從而提升性能。

      為了理解關(guān)聯(lián)動(dòng)作對(duì)性能的影響,下面設(shè)計(jì)一套Oracle關(guān)聯(lián)表,以及無(wú)關(guān)聯(lián)的寬表,并執(zhí)行同樣的計(jì)算。

      關(guān)聯(lián)表的結(jié)構(gòu)和關(guān)系如下:

                                                    undefined

      數(shù)據(jù)量:通話記錄表(百萬(wàn)條)、用戶(hù)表(十萬(wàn)條)、開(kāi)戶(hù)網(wǎng)點(diǎn)(一萬(wàn)條),代理商表(一萬(wàn)條)。

      計(jì)算目標(biāo):求通訊總成本,即所有呼出用戶(hù)和呼入用戶(hù)分別對(duì)應(yīng)的網(wǎng)點(diǎn)均攤成本、代理商均攤成本之和。

      將關(guān)聯(lián)結(jié)果寫(xiě)入另一張表,形成無(wú)關(guān)聯(lián)的寬表:

      下面的SPL腳本,用來(lái)說(shuō)明關(guān)聯(lián)動(dòng)作對(duì)性能的影響:

      可以看到,關(guān)聯(lián)比無(wú)關(guān)聯(lián)慢12.6倍(25802/2055),會(huì)嚴(yán)重影響計(jì)算性能。

      SPL可以通過(guò)預(yù)關(guān)聯(lián)來(lái)提升關(guān)聯(lián)動(dòng)作的性能。首先加載數(shù)據(jù)到內(nèi)存,代碼如下:

      為了直觀理解預(yù)關(guān)聯(lián)對(duì)計(jì)算性能的提升,下面同樣用SPL預(yù)關(guān)聯(lián)和寬表做比較。

      可以看到,預(yù)關(guān)聯(lián)比寬表慢6倍(13272/2210),相對(duì)于關(guān)聯(lián)表比寬表慢的12.6倍,已經(jīng)有較大幅度的提升。在寬表時(shí),SPL計(jì)算性能和ORACLE幾乎相同(2210:2055),但在有關(guān)聯(lián)時(shí),預(yù)關(guān)聯(lián)的SPL計(jì)算速度已經(jīng)明顯超出臨時(shí)關(guān)聯(lián)的ORACLE了(13272:25802)。

      需要注意的是,上述算法雖然使用了寬表做對(duì)比,但并不是說(shuō)寬表可以代替關(guān)聯(lián)表。事實(shí)上,寬表會(huì)浪費(fèi)大量空間,還會(huì)造成創(chuàng)建、同步等維護(hù)困難,實(shí)際項(xiàng)目中很少用到。而預(yù)關(guān)聯(lián)使用引用來(lái)建立關(guān)聯(lián),不會(huì)創(chuàng)造新表,不會(huì)浪費(fèi)空間,不需要同步數(shù)據(jù)。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶(hù) 評(píng)論公約

        類(lèi)似文章 更多