ATLas為數據挖掘和數據流應用的一個SQL擴展_第1頁
ATLas為數據挖掘和數據流應用的一個SQL擴展_第2頁
ATLas為數據挖掘和數據流應用的一個SQL擴展_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、ATLas:為數據挖掘和數據流應用的一個SQL擴展由于傳統的DBMS查詢語言本身功能有限,不能適應數據驅動的應用,如數據挖掘和數據流處理,因此Atlas在傳統的DBMS查詢語言基礎上定義了一套新的數據庫查詢語言,通過在傳統SQL上定義新的集合和表運算,使得Atlas成為圖靈完備的語言。Atlas的語言規范的核心是對user defined aggregates(UDAs)的定義,一個UDA包含三個部分:initialize,iterate和terminate。一個UDA的定義如下圖所示:在上圖中vdec(變量定義)的規范如下:<statement>就是傳統的SQL-like sta

2、tement。一個UDA有輸入參數,也有輸出參數,這些參數可以理解為元組。UDA的initialize部分是這個UDA的初始化部分,只運行一次。iterate部分是UDA的核心,在每當有一個元組輸入時便調用一次,這個可以滿足數據流處理的需求。Terminate部分是UDA的結束部分,當輸入元組是有限表中的元組時,terminate部分才是必需的,如果UDA的輸入是無限的數據流元組, terminate部分顯然不再需要,這時terminate部分可以缺省,也可以由revise來代替。在iterate部分和terminate部分都可以產生輸出。如果在iterate部分產生輸出,那么輸出就可以看成是

3、一個流(這是因為atlas將UDA的運行時模型作為一個管道來處理,在iterate部分產生的輸出可以馬上傳遞給調用者)。在數據流處理中,initialize和iterate部分分別在UDA第一次啟動運行時和數據流的窗口邊界還沒到達時執行,一旦窗口邊界到達了,iterate部分將不再執行,對每個新來的元組,將由revise部分執行。同時,系統維護一個包含了剛剛過期的元組表EXPIRE,對于基于元組計數的窗口,EXPIRE表中只有一個元組,對于基于時間段的窗口,EXPIRE表中可能含有零個,一個或多個元組。下面圖一給出了數據流處理的一個例子,定義了窗口上的平均值。其中在revise部分的E表就是E

4、XPIRE表,它是系統表,不需要聲明。同時Atlas還支持窗口的定義,下面圖二給出了一個示例。圖一圖二由圖二可以看出窗口定義包含三部分:1 Partition子句(可選),將流數據分成幾個組,并為每個組分別維護一個窗口2 窗口大小(必需),可以基于元組數量,也可以基于時間段3 條件過濾謂詞(可選)Atlas既支持傳統數據庫表上的聚集挖掘操作(這里就不作介紹了),又支持數據流上的處理。因此在Storage Manager中便支持傳統Berkeley DB的接口,又有內存數據表及索引接口。下面兩幅圖就是描述了Atlas的體系結構。圖三是altas的流程框架,將altas腳本轉化成c+程序的步驟,將c+程序進行編譯鏈接,最后都會轉化成可執行程序。圖三圖四是對atlas核心部分的細化描述。其中stream engin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論