亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Oracle數據庫大對象數據存取的兩種實現方法及時間性能比較①

        2014-09-27 14:27:10
        關鍵詞:二進制編程對象

        袁 勇

        (遵義師范學院網絡管理中心,貴州 遵義 563000)

        0 引言

        當代,大數據無處不在,和云計算、物聯(lián)網一樣已經成為計算機學科中的一個熱門研究課題.隨著高清圖像、視頻的問世,大容量的存儲空間和大數據的操作越來越需要研究者去攻克.本文只是針對大對象數據在Oracle數據庫中的存取著手,利用SQL*Plus或借助JAVA編程語言,來實現了Oracle數據庫中大對象數據存取操作,并對兩種方法進行存取時間性能比較,為大對象在Oracle數據庫中的存取提出一些自己的見解.

        1 Oracle中大對象數據分類

        為了解決數據庫中非結構化數據存取問題,Oracle提出了LOB(Large Object),即大對象的概念,包含圖像、音視頻、文件等非結構化的數據.這類數據最大特點是:大小不確定,長度變化,要想在數據庫中進行存取,就必須使用到LOB[1].

        1.1 按數據類型分類[23]

        ①字符類型:包含CLOB和NLOB;

        ②二進制類型:BLOB,用來存儲較大,且無結構的二進制數據;

        ③二進制文件類型:BFILE,將數據在外部操作系統(tǒng)文件中進行存儲;

        1.2 按存取方式分類

        ①數據在內部表空間存儲:CLOB、NLOB以及BLOB;

        ②指向操作系統(tǒng)的目錄:BFILE,建立目錄、文件的映射關系

        2 Oracle中大對象數據存取的實現方法

        本章通過Oracle自帶的SQL*Plus以及用當前廣泛使用的JAVA語言來實現Oracle數據庫中圖片數據的存取.首先在Oracle10g數據庫中新建測試用表[4].

        創(chuàng)建文件操作目錄,用于大對象數據的存取.

        2.1 利用PL/SQL實現存取

        以下為兩個PL/SQL存儲過程,分別用來向數據庫中存儲、讀取大對象數據.可以根據修改具體的filename名,像數據庫中插入圖片、視頻等數據.具體如下:

        2.1.1 存入大對象的存儲過程:

        2.1.2 讀取的存儲過程:

        在完成存儲過程的創(chuàng)建后,通過執(zhí)行exec pic_insert或exec pic_read存儲過程,并加上相應的實際參數完成大對象的讀取.

        2.2 借助JAVA編程語言實現高效讀取

        由于使用PL/SQL存儲過程讀取的效率太低(見第三章),通常的系統(tǒng)開發(fā)都會選擇使用高級程序語言,其具有界面友好、可讀性強等優(yōu)勢,而JAVA語言由于其跨平臺等眾多優(yōu)點,在當前具有較大的應用市場,也是眾多編程愛好者首選的開發(fā)語言.在這里,通過JDBC來訪問oracle數據庫,實現其存取.主要實現代碼如下:

        2.2.1 存入大對象的JAVA函數片段:

        2.2.2 讀取大對象的JAVA函數片段:

        3 存取時間性能比較

        在性能分析過程中,以圖片(30.8KB4546KB,JPG 格式)、視頻(422MB,MP4格式)的存取為例,在執(zhí)行SQL*Plus存儲過程時,加入以下的命令獲取存儲過程執(zhí)行時的系統(tǒng)時間,比較執(zhí)行前后的執(zhí)行時間差值,從而得出存儲過程的運行時長.

        select to_char(current_timestamp(5),'DD -MON -YYYY HH24:MI:SSxFF')from dual;

        在java連接oracle數據庫讀取大對象的函數中加入函數currentTimeMillis()來獲取執(zhí)行的系統(tǒng)時間,通過執(zhí)行前后系統(tǒng)時間差來得出讀取的時長.

        在存儲過程、JAVA混合編程下分別運行三次,取平均數據得到耗時表如下(打斜線表格欄:表示執(zhí)行速度太長或太短,對結論不影響,而未做該項試驗.):

        表1 存取時間對比表(單位:s)

        由上表可知,在進行大對象的存取過程中,通過混合編程寫入數據流的方式在讀取方面遠優(yōu)于存儲過程,而在存入時性能低于存儲過程.

        4 總結

        本文通過BLOB大對象在oracle數據庫中的存取為背景,通過使用存儲過程的方式和用JAVA與Oracle混合編程的實現方式,作出系列實驗研究.得出用JAVA與Oracle混合編程的方式在讀取大對象的過程中,遠優(yōu)于通過存儲過程實現的結論.

        [1]金杰.基于OCCI技術存取數據庫大對象的方法及實現[J]. 計算機系統(tǒng)應用,2010,19(7):162-165.

        [2]余秋明.淺論大型數據對象在Oracle數據庫中的存儲方法[J].科技廣場 ,2008,10:61-63.

        [3]張文東,劉培剛.基于Java與Oracle數據庫的圖像處理技術[J].計算機系統(tǒng)應用,2004,11:34-36.

        [4]王彬,代彥波,顏鵬博.Oracle10g簡明教程[M].北京:清華大學出版社,2006.

        猜你喜歡
        二進制編程對象
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        神秘來電
        睿士(2023年2期)2023-03-02 02:01:09
        用二進制解一道高中數學聯(lián)賽數論題
        中等數學(2021年8期)2021-11-22 07:53:38
        有趣的進度
        二進制在競賽題中的應用
        中等數學(2019年4期)2019-08-30 03:51:44
        攻略對象的心思好難猜
        意林(2018年3期)2018-03-02 15:17:24
        基于熵的快速掃描法的FNEA初始對象的生成方法
        国产一精品一av一免费| 日本丶国产丶欧美色综合| 亚洲av无码第一区二区三区| 日韩欧美在线综合网| 精品乱码一区二区三区四区| 久久久久久免费播放一级毛片| 中文字幕人妻系列一区尤物视频| 亚洲美女国产精品久久久久久久久| 日本成人免费一区二区三区| 日韩性感av一区二区三区| 国产精品国产三级国产an不卡 | 中文字幕隔壁人妻欲求不满| 操风骚人妻沉沦中文字幕| 色偷偷偷在线视频播放| 国产精品欧美久久久久久日本一道| 久久综合精品国产一区二区三区无码| 久久精品国产亚洲av麻| 伊人久久大香线蕉在观看| 亚洲一区二区三区99区| 国产一区二区免费在线视频| 国内精品视频一区二区三区八戒| 中文字幕一区二区三区乱码| 欧美日韩一线| 国产精品一区二区av白丝在线| 三级黄片一区二区三区| 亚洲精品一区二区网站| 一区二区三区国产在线视频 | 粉嫩少妇内射浓精videos| 抖射在线免费观看视频网站| h视频在线观看视频在线| 国产成人自拍高清在线| 女人被狂躁高潮啊的视频在线看 | 久久亚洲中文字幕伊人久久大| 成人一区二区免费中文字幕视频 | 亚洲日韩国产精品第一页一区| 噜噜噜色97| 日韩精品一区二区三区视频| 国产农村妇女精品一区| 免费无遮挡禁18污污网站| 国产一级黄色录像| 国产一级黄色av影片|