== '''''Working Progress''''' == * 兩人小組會議:敲定每天討論半小時至一小時(成員:sunny and chwhs) * 2008/03/18 * 要在wiki補上"How it works" * 要安裝"Hypertables"在自己的測試主機上 * 安裝過程遇到檔案"not found"可以先參考此網頁[http://lxr.linux.no/linux/]再google一下 * 安裝後可以進行簡易測試 * 準備閱讀"Bigtable: A Distributed Storage System for Structured Data"這篇paper[http://209.85.163.132/papers/bigtable-osdi06.pdf] * 有空可以看一下"果蠅腦"相關的文件,及模擬資料方面的做法 * 2008/03/20 * 聽sunny 試報Hypertable Architecture,了解較粗略的Hypertable觀念 * 在自己本機上TEST * 要執行Hypertable回歸測試 * 要建構Hypertable文件樹 * 要測試HQL指令 * 這段日期 * 處理CA * 2008/04/10 * 要弄懂且修改Apache Log Query的程式 * 試用Ultimate++ * Hypertable範例測試 * 2008/05/05 * 應盡事宜 * 熟悉Hypertable與HBase,不僅要會應用並做效能比較 * 小知識survey * Object Database vs. 傳統的RDBMs * key/value storage 有名的代表(如:SQLite)有什麼應用 * 2008/05/06 * Object Database vs. 傳統的RDBMs * 傳統的資料庫在資料處理的應用上,概念上僅僅使用較為簡單且較少的資料型態。所以相對地,較少的資料型態只需要經過第一次正規化即可。 * 而在近幾年,複雜的資料型態已經發展的越來越重要了。 * 如:一個地址可以被看成是一個單一字串或是可由分開合成的屬性來組成,這可能就不僅僅是第一正規化就可以達到的。 * Object Database 可以很便利的去儲存multivalued attributes,不需要在第一正規化裡建立許多分別的關聯來儲存這些值。 * Object Database 可以應用在computer-aided design, computer-aided software engineering multimedia, image databases, 和document/hypertext databases等方面。 * 一般來說,一個物件相當於實體關係模型(Entity Relationship Model, ER Model)裡的一個實體(entity)。 * 物件導向的概念是基於將與一個物件有相關的資料封裝成single unit。 * Object-oriented data model 其實就是一種類似ER model 的logical data model。 * 2008/05/07 * SQLite的簡介與應用 * SQLite,一套 Open Source 的關聯式資料庫,是「小巧(small)、可內嵌(embeddable)而且支援 SQL 查詢語言的資料庫」。 * 它是一個「麻雀雖小卻五臟俱全」的資料庫,因為 其體積僅僅 250KB 左右的 C Library,很適合內嵌的應用。適用於手持式裝置運用(如iPhone),此外桌上型運算的應用程式也有使用,如OpenOffice.org 2.0版之後就有內建SQLite;因此主要支援PDA系統和個人電腦甚至擴及大型伺服器。 * SQLite可用於非服務式、零配置、事務化的嵌入式SQL資料庫引擎;它與其它大多數SQL資料庫不同在它沒有獨立的服務進程。 * SQLite直接讀寫原始的磁碟文件,一個擁有多個表、索引、觸發器和視圖的完整SQL資料庫就包含在一個獨立的磁碟文件中。 * 資料庫文件的格式是跨平臺的,你可以在32位元和64位元系統之間、甚至在Big-Endian和Little-Endian兩種不同的磁碟架構間自由地拷貝資料庫,這一特性讓SQLite成為應用文件格式的一種流行選擇。 * 2008/05/08~09 * 北群:MPI平行計算程式設計基礎訓練課程 * 2008/05/15~16 * 南群:GRID基礎平台建置實作課程 * 2008/06/12 * 根據Hypertable 在Google Code 上wiki 發佈的文件做測試 * 標題為 HQLTutorial - A brief introduction to Hypertable Query Language (HQL):[http://code.google.com/p/hypertable/wiki/HQLTutorial] * 發現1: * 在INSERT & DELETE部份, 他教我們可以插入過去跟未來時間的資料,但是過去時間的資料卻不給插入。 * hypertable> insert into Pages values ('2006-01-01 23:59:59', "www.hypertable.org", "refer-url", "www.zvents.com"); --> 此指令是不可以使用的 * 會有這樣的錯誤訊息 Error: Problem sending updates (table=PAGES) - RANGE SERVER supplied timestamp is not strictly increasing * 經過查證:他說timestamp一般只預設允許系統自動分派,才不會造成混亂。可參考:[http://groups.google.com/group/hypertable-user/browse_thread/thread/da5f987760497811] * 發現2: * && TIMESTAMP >= '2008-06-10 09:12:37' && TIMESTAMP <= '2008-06-10 09:12:38' --> TIMESTAMP <= '時間' 的設定條件 並無效用 (答案未明@@) * {{{ hypertable> select "refer-url" from Pages where ROW >= "www.zvents.com/events/buy_tickets/80283482" && ROW <= "www.zvents.com/events/buy_tickets/80310000" && TIMESTAMP >= '2008-06-10 09:12:37' && TIMESTAMP <= '2008-06-10 09:12:38' DISPLAY_TIMESTAMPS; 2008-06-10 09:12:39.154415952 www.zvents.com/events/buy_tickets/80283482 refer-url www.zvents.com/san-francisco-ca/events/show/80283482-steve-martin 2008-06-10 09:12:39.154415949 www.zvents.com/events/buy_tickets/80283482 refer-url www.zvents.com/san-francisco-ca/events/show/80283482-steve-martin 2008-06-10 09:12:37.063994904 www.zvents.com/events/buy_tickets/80283482 refer-url www.zvents.com/san-francisco-ca/events/show/80283482-steve-martin 2008-06-10 09:12:37.063994907 www.zvents.com/events/buy_tickets/80308810 refer-url www.zvents.com/las-vegas-nv/events/show/80308810-the-platters-coasters-and-the-legendary-lead-singers-of-the-temptations }}} * {{{ hypertable> select "refer-url" from Pages where ROW >= "www.zvents.com/events/buy_tickets/80283482" && ROW <= "www.zvents.com/events/buy_tickets/80310000" && TIMESTAMP >= '2008-06-10 09:12:38' DISPLAY_TIMESTAMPS; 2008-06-10 09:12:39.154415952 www.zvents.com/events/buy_tickets/80283482 refer-url www.zvents.com/san-francisco-ca/events/show/80283482-steve-martin 2008-06-10 09:12:39.154415949 www.zvents.com/events/buy_tickets/80283482 refer-url www.zvents.com/san-francisco-ca/events/show/80283482-steve-martin }}} * {{{ hypertable> select "refer-url" from Pages where ROW >= "www.zvents.com/events/buy_tickets/80283482" && ROW <= "www.zvents.com/events/buy_tickets/80310000" && TIMESTAMP <= '2008-06-10 09:12:38' DISPLAY_TIMESTAMPS; 2008-06-10 09:12:39.154415952 www.zvents.com/events/buy_tickets/80283482 refer-url www.zvents.com/san-francisco-ca/events/show/80283482-steve-martin 2008-06-10 09:12:39.154415949 www.zvents.com/events/buy_tickets/80283482 refer-url www.zvents.com/san-francisco-ca/events/show/80283482-steve-martin 2008-06-10 09:12:37.063994904 www.zvents.com/events/buy_tickets/80283482 refer-url www.zvents.com/san-francisco-ca/events/show/80283482-steve-martin 2008-06-10 09:12:37.063994907 www.zvents.com/events/buy_tickets/80308810 refer-url www.zvents.com/las-vegas-nv/events/show/80308810-the-platters-coasters-and-the-legendary-lead-singers-of-the-temptations }}} * 2008/06/18 * Data Challenge * [http://www.logos.t.u-tokyo.ac.jp/gxp/index.php?gxpc_make GXP 網頁] * [http://ieeexplore.ieee.org/iel5/9685/30569/01410681.pdf?tp=&isnumber=&arnumber=1410681 GXP paper] * (to-do list) HBase 和 Hypertable 的測試 * 查看是否有"like %XXX%"的query language (否) * 主機關機後,tables跟資料都一併消失,查看該如何先行flush,來將資料確切寫入主機 (目前NONE) * 2008/06/30 * GXP 與 Torque的初步簡易整合測試([wiki:chwhs/DataChallenge Data Challenge]) * To-do list * 測試HBase與Hypertable:若沒有flush 功能,那僅寫入記憶體,存多少資料量會爆掉不堪負荷? * Paper writing: key-value database, object database and relational database的差異比較。 (暫定~題目仍與sunny斟酌中) * memo: * 可以把之前比較過的資料整合過來(見2008/05/06) * 找國內外相關的conferences 資訊 * 找相關議題的reference papers 及web pages * 2008/07/03 * 處理請購流程 * 統計請購物品之品名、規格與數量,請廠商開報價單 * 申請請購上簽流程 * 2008/07/16 * java socket 程式之學習與測試 * 設定防火牆(iptables 指令) * 參考資料:[http://linux.vbird.org/linux_server/0250simple_firewall.php 按我] * ICMP(Internet Control Message Protocol,網際網路控制訊息通訊協定)及"ping"指令的處理 * 參考資料:[http://home.digitimes.com.tw/ShowNews.aspx?zCatId=A13&zNotesDocId=0000047852_A3X8Y873JB6YUQJ10NIUM 按我] * 2008/08/05 * 目前努力 * 學習DRBL * trace code: Gridway * 未來方向 * 整合之前研究所論文:在Grid上結合多個sites,不同sites可能由不同Local job managers做控管,及透過最上層的Global scheduler做集中管理,來選出最適合的resources來submit 各式jobs(包含single job or parallel jobs,如mpi程式或DSM程式) * step1:將DRBL 與scheduler-local job manager 整合在一起(如PBS,condor,和SGE等等) * step2:也將嘗試是否可以在DRBL之上安裝GLOBUS * step3:若以上步驟皆可順利完成,將可結合Metascheduler * 2008/08/25 * 進度及目前努力成果 * step1: 使用VMplayer 來模擬安裝Debian及測試Grid 環境 * step2: install DRBL server * step3: 測試DRBL client 是否可以網路開機正常運作 * step4: 在DRBL server上安裝Globus及PBS * step5: 測試DRBL server上之Globus及PBS是否能運作正常 * step6: 修改些微各自node該有所不同的目錄及檔案來使client可以正常run Globus及PBS * step7: 當Grid上有多個local schedulers,則可在Globus裡安裝Gridway來當meta-scheduler做控管[[BR]](不過Gridway有版本更換就需要變動系統的缺點,所以需要對Gridway內部程式做切割,或利用自行撰寫之meta-scheduler程式來做控管) * 遇到問題及解決方法 * 因為目前仍是在VM上做測試練習,一但之後移植到真實機器上RUN時,或許仍有不少實際環境中需要注意及操作之問題 * 等模擬的差不多後,若有機會,應該可以在實際環境上測試一下,以驗證其實作 * 目前PBS可以透過DRBL來完成server與client間的正常運作 * 僅需將各自擁有之目錄額外抽出處理即可 * Globus則是在server可以正常運作,client或許因為有某些共享之目錄權限不符或被佔用,而無法正常運作WS的部分(其他一般操作正常:如GRIDFTP...) * 或許仍需要找尋不能正常運作之原因是否與安裝在DRBL之上有關,因為以測試過將安裝目錄轉換到非NFS目錄下,仍無法運作(可能與JAVA方面問題有相關...) * 目前在DRBL server上之Globus與PBS則可以彼此結合運作,現在也正將Gridway整合進來中 * 因為對於Gridway,之前只看過其文件,並未真正玩過它,現在正努力摸索中,也好比較之前在研究所自行寫作之global scheduler(meta-scheduler)的用途來做個比較 * Grid環境的實現 * Linux+DRBL+Globus+meta-scheduler+local-schedulers * 之後打算會將完整文件寫在此(建構中):[wiki:chwhs/Grid_environment 按我] * 2008/08/27 * 已經成功(目前測試兩台:一台server,一台client) * Debian+DRBL+Globus+PBS: 兩台獨自可運作,也可以相互溝通 * 接著將針對與DRBL整合部分的各個小地方作改善,使得能夠讓使用者可以更容易上手