日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Oracle處理多媒體信息的原理及展望

瀏覽:150日期:2023-11-16 16:08:57
引文: 長期以來,多媒體信息在計算機中都是以文件形式存放,由操作系統治理的,但是隨著計算機網絡,分布式計算的發展,對多媒體信息進行高效的治理,存取,查詢已經成了一種迫切需求。而關系數據庫卻有著強大的數據治理能力。兩方面結合,多媒體數據庫由此應運而生。本文將就Oracle對多媒體信息進行處理的方式,工具,特色以及一些基本原理做一個綜述。 但是我們不能不遺憾的看到,現有數據庫對一些多媒體數據所特有的操作能力還是很有限的。針對多媒體數據庫的性能調優現在也碰到了新的問題。雖然如此,多媒體數據庫仍然產生了廣闊的應用價值和前景。 當然本文不可能面面俱到,有關Oracle多媒體信息處理的具體內容,請查閱Oracle相關手冊。 一.應用前景綜述 隨著計算機處理能力的大副提高,多媒體早已經融入到了計算機當中了,假如缺少了多媒體,缺少了各種多姿多采的圖象,音頻,視頻,很難想象計算機如今會走入千家萬戶。長期以來,多媒體信息在計算機中都是以文件形式存放,由操作系統治理的,但是隨著計算機網絡,分布式計算的發展,  Oracle作為一家聞名的數據庫廠商,在多媒體信息處理上,更是走在了前邊。本文將就Oracle對多媒體信息進行處理的方式,工具,特色以及一些基本原理做一個綜述。希望對讀者有所啟發。當然,關系數據庫還有好多家,雖然開發工具,編程接口語句各異,但在數據類型、處理方式上比較相似。所以我們在此略過。 二.多媒體數據類型介紹 在關系型數據庫中,多媒體信息等大型對象是由lob型字段來進行存取的。在Oracle8i中,正式引入了此標準,以適應多媒體大對象處理的需求。Oracle數據庫中,lob型數據有以下幾種: Clob: 和Oracle7的long型相似,clob可以存儲單字節型數據。 Nclob: Nclob存儲定寬的多字節國家字符集數據。 Blob: 和Oracle7中的long raw類型相似。可以存儲無結構的二進制數據。Oracle8沒有對這種數據進行解釋 ,只是按照原來的形式存儲和檢索它。 Bfile: Bfile答應對Oracle數據庫以外存儲的大型二進制文件進行只讀形式的訪問。和其它三種lob類型數據 不同的是,bfile類型數據存儲在一個單獨的文件中,該文件不由Oracle來維護。 特點: 1.在Oracle7中,相應的long或long raw字段有2g的限制,而lob的限制是4g 。 2.lob可以使用調用接口OCI或者由pl/sql利用dbms_lob包進行操縱。 3.lob不象long型那樣每個表中最多只有一個字段的限制,其可以有多個,而又可以利用觸發器的特性。 4.lob數據處理可以獲得與其它數據同樣的事物特性。 5.lob的存儲比較非凡,它并不是跟其他數據存儲在同一個數據庫表中,而是可以單獨存放于不同的表空間中,由一個定位符指向實際的lob數據。 三.多媒體大對象存取例程舉例 按照如下步驟來完成各個操作: (1)先建立一個數據庫表: create table lobdemo(key NUMBER KEY, clob_col CLOB,blob_col BLOB,bifle_col BFILE);這個數據庫第一列存儲一個碼,另外三列存儲lob型數據。 (2)表建好以后,往表中插入一條數據:    insert intolobdemo(key,clob_col,blob_col,bfile_col) values(10,'abcdefghijklmnopqrsatuvwxyzasdffasfsdS',empty_blob(),null);在這一條數據中,第二列我們插入一個字符串,它被格式化為clob類型數據進行存儲;第二列我們使用empty_blob()函數來初始化一個定位符,以后就可以獲取這個定位符進行比如select,update等操作了;第三列賦空值,它并沒有獲得一個定位符,這是與empty_blob()函數的區別。 (3)查詢插入表中的數據    select blob_col from boldemo where key=20;注重:這一sql語句的返回結果是一個定位符(locator),而不是實際的數據本身。 (4)修改數據庫中數據    update lobdemo SET blob_col='aedevbagddgagdfdfasasdfdsa' where key=10;從這些sql語句當中,我們看到了lob型數據處理的基本方法,發現與其他類型數據處理相似。但是sql語句中lob型數據處理的非凡性在于以下方面: (1)bfile文件的處理: bfile類型有著非凡性,跟clob,blob不同。實際的數據文件存儲在操作系統的外面:所以有兩個特點:1.沒有事務性控制 2.bfile是只讀的,不能用dbms_lob或oracl8 oci進行修改。讓我們來看對bfile的操作步驟: <1> 為了訪問外部文件,服務器需要知道文件在操作系統中的位置。下面我們建立一個目錄: create DirectorY utils AS '/home/utils';utils表示目錄邏輯名,'/home/utils'是實際目錄。 <2>使用bfilename函數插入一行數據:    insert into lobdemo(key,bfile_col) values (-1,biflename('utils','file1')); bfilename函數的第一個參數是邏輯目錄名,第二個參數是文件名。注重:這一行中插入的是一個指向/home/utils/file1的lob定位符,并不是文件本身。 (2)利用dbms_lob包進行lob數據操作 sql僅可以操縱整個lob,而不能操縱數據片。dbms_lob包則放開了這個限制,它提供對lob數據中數據片的操作。這個包中包含十幾個例程,讀者可以查閱Oracle pl/sql手冊,本文只介紹三個函數:fileopen()用來打開一個操作系統文件;loadfromfile()例程用來往目標lob字段填充一個操作系統文件,這個函數很有實用價值,因為有許多lob內容在sql語句中是不可描述的,例如一個二進制音頻文件,而用這個函數可以將文件內容導入到數據庫;getlength函數計算文件的長度。請看下面一個存儲過程中這三個函數的使用:    create or replace procedure FileExec(p_Directory in VARCHAR2,p_Filename IN VARCHAR2) ASv_FileLocator BFILE;v_CLOBLocator CLOB;BEGIN--為update初始化一個定位符SELECT clob_colINTO v_CLOBLocatorFROM lobdemoWHERE key=-1FOR UPDATE; 為讀文件初始化一個BFILE定位符:    v_FileLocator:=BFILEOPEN(p_Derectory,p_Filename);用dbms_lob包的fileopen打開一個操作系統文件: DBMS_LOB.FILEOPEN(v_FileLocator,DBMS_LOB.FILE_READONLY);將整個操作系統文件裝入lob中: DBMS_LOB.LOADFROMFILE(v_CLOBLocator,v_FileLocator, DBMS_LOB.GETLENGTH(v_FileLocator));END FileExec;四.Oracle InterMedia工具介紹 interMedia是Oracle推出的對Oracle8i多媒體功能進行擴充的一個集成部件,它使得Oracle能夠更方便的治理圖象、音頻、視頻、文本等信息。使得Oracle在internet,電子商務等領域多媒體數據的治理上可靠性與可用性增強。它包括image, audio, video三部份。interMedia使用對象類型,類似于Java或C++,來描述image, audio, video類型數據,Oracle在這三類對象類型中定義了許多方法來操作這些數據,如對于 image類型數據來說,你可以很方便地進行圖形格式轉換,壓縮,拷貝,截取圖形的任何一部份等,而這些是普通LOB類型數據所無法比擬的,普通sql語句也無法完成這些操作。 Internet的發展更突出了interMedia在WEB應用中的價值,現有的WEB應用絕大多數將image,audio,video等多媒體信息存在文件系統中,其優點是操作簡單,速度快,缺點是治理復雜,尤其是治理大量image時就受到目錄數等的限制。假如將image保存在數據庫中,由數據庫來統一維護,統一備份,這樣就可以簡化治理。 Intermedia中定義了幾個多媒體對象類型,例如ORDAUDIO就是其中一個,它提供一些audio對象類型數據的操縱函數。下面我們來看一個例子,在這個例子中我們定義一個歌曲對象,建立一個歌曲對象的表,并對該表進行插入與查詢操作。 (1)定義一個歌曲對象: CREATE TYPE songObject as OBJECT (songId VARCHAR2(20), --歌曲號title VARCHAR2(4000), --題目artist VARCHAR2(4000), --作家awards VARCHAR2(4000), --獎項timePeriod VARCHAR2(20), --日期時間txtinrodUCtion CLOB, --簡介audioSource ORDSYS.ORDAUDIO --音頻數據,這個字段由ORDAUDIO對象來定義。);(2)建立一個名為songtable的表: CREATE TABLE SongsTable of songObject (UNIQUE (songId), songId NOT NULL);(3)插入一行數據到SongsTable表中 INSERT INTO SongsTable VALUES ('00','Under Pressure','Queen','no awards','80-90',243,NULL,EMPTY_CLOB(),ORDSYS.ORDAudio(NULL,ORDSYS.ORDSource(EMPTY_BLOB(),NULL,NULL,NULL,NULL,NULL),NULL, NULL, EMPTY_CLOB(), NULL, NULL, NULL, NULL, NULL, NULL));注重:。EMPTY_CLOB,EMPTY_BLOB()函數只是初始化一個lob數據定位符,而沒有存儲實際的數據。 (4)向SongsTable表中載入一行數據: DECLAREaudioObj ORDSYS.ORDAUDIO;ctx RAW(4000) := NULL;BEGIN--取得audioSource字段定位符SELECT S.audioSource INTO audioObjFROM SongsTable SWHERE S.songId = '00'FOR UPDATE;下面的四個函數是ORDAUDIO對象的成員函數,具體功能請查看Oracle開發手冊: audioObj.setSource('FILE', 'AUDDIR', 'UnderPressure.au');--設定文件audioObj.setMimeType('audio/basic'); --設定類型audioObj.import(ctx); --載入ctxaudioObj.setProperties(ctx); --設置屬性將歌曲對象載入到數據庫表中:    UPDATE SongsTable SSET S.audioSource = audioObjWHERE S.songId = '00';COMMIT;END;五.多媒體數據庫技術難點與展望 可以說,多媒體數據的高效治理是IT技術發展的必然要求,隨著多媒體信息需求的進一步加強,多媒體數據庫技術將會有更大的發展,從Oracle數據庫中我們可以看出,無論在數據類型,數據治理,還是開發治理工具上,現在的主流關系數據庫已經具有很強的多媒體信息治理能力。但是我們不能不遺憾的看到,對一些多媒體數據所特有的操作(比如對多媒體信息的查詢)能力還是很有限的。 一個問題就是多媒體數據的非凡操作實現,因為lob型數據是二進制的大對象,他不能簡單的按照一般數據的操作符來進行計算。比如,要查出一個數據表中與某首歌相似的音頻。那么對于這個'相似'操作來說,它得不到傳統的操作符的支持,而且它將涉及很復雜的算法。可喜的是,Oracle9i Intermedia已經具有多媒體數據的查詢與匹配功能,例如,可以從質地(texture),外形,顏色,顏色分量等要素進行相似圖象的查詢,在查詢時可以設置各個要素的權值,測試的結果還是差強人意的。但是對audio,video等類型數據的查詢仍然不夠理想。 另外,如何描述多媒體信息,怎樣根據你對多媒體信息的描述來檢索,也是一個難點問題,比如這個查詢任務:查詢出顏色比較暗的并且有森林的風景照片,這就是根據描述性信息進行查詢的例子。這將需要某種行業標準和技術實現。總之,如何實現和優化針對多媒體數據的非凡操作(如相似查詢等),將是以后多媒體數據庫研究和應用中的熱點問題。 另外一個重要的問題就是針對多媒體數據庫的性能調優,原先的調優方法如索引優化等仍然適用,但是現在碰到了新的問題:多媒體數據是龐大的,那么對多媒體信息的操作(尤其是檢索)開銷巨大,那么如何降低這種開銷,縮短操作時間,又是一個重要課題。
標簽: Oracle 數據庫
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美福利一区| 日韩欧美在线中字| 夜鲁夜鲁夜鲁视频在线播放| 亚洲色图网站| 另类国产ts人妖高潮视频| 91久久亚洲| 在线亚洲一区| 亚洲一区二区三区高清不卡| 在线亚洲国产精品网站| 免费人成在线不卡| 亚洲开心激情| 欧美亚洲免费| 国产精品www994| 亚洲天堂av影院| 成人美女视频| 午夜国产欧美理论在线播放| 欧美精品激情| 在线一区二区三区视频| 欧美在线资源| 中文在线日韩| 欧美日韩一区二区国产| 高清久久精品| 99国内精品| 麻豆视频一区| 久久久久久久久久久9不雅视频| 国产一区精品福利| 亚洲精品一二三区区别| 欧美伊人影院| 日韩美女一区二区三区在线观看| 中文字幕高清在线播放| 亚洲黄色影院| 国产精品久久久久久久久久齐齐| 91亚洲人成网污www| 久久国产直播| 日本一区二区三区视频在线看 | а√天堂8资源中文在线| 蜜桃成人av| 国产精品一区二区av日韩在线 | 久色成人在线| 捆绑调教日本一区二区三区| 午夜在线精品| 欧美好骚综合网| 日韩美女国产精品| 国精品一区二区三区| 一本色道久久精品| 麻豆国产精品777777在线| 另类av一区二区| 亚洲一级影院| 日本一二区不卡| 国产精品**亚洲精品| 日本99精品| 伊人国产精品| 9国产精品视频| 91麻豆国产自产在线观看亚洲| 亚洲少妇在线| 亚洲经典在线| 亚洲一级网站| 成人午夜国产| 欧美天堂视频| 91免费精品国偷自产在线在线| 激情欧美一区二区三区| 日韩精品影视| 日本欧美不卡| 91精品国产调教在线观看| 精品伊人久久| 蜜臀国产一区| 精品捆绑调教一区二区三区| 中文在线中文资源| 中文字幕在线官网| 欧洲一级精品| 亚洲精品网址| 亚洲一区免费| 亚洲日本免费电影| 久久国产婷婷国产香蕉| 日韩国产一二三区| 国产欧美激情| 日韩1区2区| 婷婷综合五月| 亚洲一区二区三区中文字幕在线观看| 精品91久久久久| 中文字幕亚洲精品乱码| 国产欧美一区| 亚洲综合电影| 美国欧美日韩国产在线播放| 欧美欧美黄在线二区| 女生影院久久| 四虎在线精品| 麻豆视频在线看| 免费久久99精品国产| 日韩一区精品| 精品久久美女| 亚洲一区二区成人| 精品国产一区二区三区2021| 亚洲成av在线| 欧美伊人影院| 亚洲大全视频| 精品久久在线| 日本一区二区三区视频在线看 | 国产精品美女午夜爽爽| 伊人久久在线| 亚洲精品日韩久久| 日韩免费看片| 国产午夜精品一区二区三区欧美 | 99在线精品视频在线观看| 欧美日韩国产一区二区在线观看| 在线人成日本视频| 亚洲精品第一| 午夜av成人| 国产精品流白浆在线观看| 日韩伦理福利| 国产精品一区免费在线| 99视频在线精品国自产拍免费观看| 日韩av在线免费观看不卡| 久久高清精品| 欧美日韩1区| 日韩午夜免费| 99精品在线免费在线观看| 另类小说一区二区三区| 日韩av网站在线观看| 午夜一级久久| 午夜国产欧美理论在线播放| 超级白嫩亚洲国产第一| 国产精品**亚洲精品| 日本一区二区中文字幕| 亚洲激情中文在线| 日本国产精品| 中文字幕在线视频网站| 美女在线视频一区| 国产精品白丝久久av网站| 在线综合视频| 国内精品99| 亚洲男女av一区二区| 在线一区电影| 亚洲一区免费| 蜜桃久久久久久久| 中文一区一区三区免费在线观 | 国产精品久久亚洲不卡| 亚洲精品女人| 欧美在线综合| 在线精品一区二区| 久久婷婷久久| 五月天激情综合网| 天堂va蜜桃一区二区三区| 久久av一区二区三区| 亚州欧美在线| 久久精品天堂| 亚洲成a人片| av不卡在线| 日韩免费精品| 国产精品成人a在线观看| 日本精品影院| 热久久国产精品| 国产欧美69| 性感美女一区二区在线观看| 伊人成人网在线看| 中文在线一区| 国产精品网在线观看| 中文在线资源| 亚洲精品国产精品粉嫩| 欧美极品一区二区三区| 国际精品欧美精品| 国产亚洲欧洲| 麻豆国产精品一区二区三区| 亚洲午夜在线| 久久免费福利| 亚洲日本国产| 日韩一区电影| 久久精品凹凸全集| 不卡中文一二三区| 久久中文欧美| 亚洲精品va| 精品国产18久久久久久二百| 国产一区白浆| 成人日韩精品| 国产美女亚洲精品7777| 亚洲夜间福利| 福利一区二区免费视频 | 国产精品一区二区精品视频观看 | 综合在线一区| 在线日韩电影| 久久精品一区二区国产| 亚洲激情社区| 深夜福利视频一区二区| 国产精品成人**免费视频| 亚洲一区二区免费在线观看| 亚洲天堂1区| 加勒比视频一区| 国产精品亚洲综合在线观看| 免费看欧美美女黄的网站| 亚洲国产综合在线看不卡| 美女久久久精品| 男女精品网站| 精品国产欧美日韩| 国产麻豆精品| 国产麻豆一区| 麻豆亚洲精品| 中文字幕在线视频久| 久久精品国产99国产精品| 久久精品99国产精品日本| 日韩精品免费视频一区二区三区 |