淡江大學覺生紀念圖書館 (TKU Library)
進階搜尋


下載電子全文限經由淡江IP使用) 
系統識別號 U0002-1507201309165300
中文論文名稱 基於HBase雲端資料庫之智慧城市感測資訊存取服務設計與實作
英文論文名稱 Design and Implementation of a Sensor Data Access Service over HBase for Intelligent Cities
校院名稱 淡江大學
系所名稱(中) 資訊工程學系資訊網路與通訊碩士班
系所名稱(英) Master's Program in Networking and Communications, Department of Computer Science and Information En
學年度 101
學期 2
出版年 102
研究生中文姓名 黃韋勳
研究生英文姓名 Wei-Hsun Huang
學號 600420094
學位類別 碩士
語文別 中文
第二語文別 英文
口試日期 2013-06-28
論文頁數 79頁
口試委員 指導教授-林其誼
委員-蔡智強
委員-林振緯
委員-林其誼
中文關鍵字 Hadoop  HBase  Thrift  AJAX 
英文關鍵字 Hadoop  HBase  Thrift  AJAX 
學科別分類 學科別應用科學資訊工程
中文摘要 隨著資訊量大幅的增加,雲端服務的技術慢慢的被人們所重視,業者為了解決這種TB或是PB等級以上的巨量資料儲存和擴充的問題,開始研發各種成本較低的分散式開源資料庫,像是Google Bigtable、Yahoo、Amazon和Azure雲端平台都開始投入NoSQL資料庫的研發,主要在這篇論文中我們會探討Apache HBase這種NoSQL資料庫類型,探討它以Column-oriented為主的資料存取服務以及Apache Hadoop平台的HDFS檔案系統進行資料儲存,最後我們會討論如何對HBase資料庫進行存取的動作。
英文摘要 With the dramatic increase of information amount, the technology of cloud service is gradually valued by people. To resolve the problems of mass data storage and scalability above TB or PB level, the operators begin to develop various distributed open source databases at low cost. For example, Google Bigtable, Yahoo, Amazon and Azure cloud platforms are all engaged in the development of NoSQL databases, among which we will mainly focus on Apache HBase in this paper. It will explore its column-oriented data access service and data storage of HDFS file in Apache Hadoop platform. Finally we will discuss about how to access HBase database.
論文目次 目錄
第一章 緒論 1
1.1 研究背景與動機 1
1.2 研究目的與重要性 2
1.3 論文架構 4
第二章 相關研究 5
2.1 Google BigTable 5
2.2 Hadoop 8
2.3 HBase 11
2.4 Thrift 17
2.5 AJAX技術 23
2.6 分散式資料庫與關聯式資料庫之橋接機制 25
第三章 系統架構分析與研究方法 26
3.1 系統架構簡介 26
3.1.1 系統架構圖 27
3.1.2 系統操作流程圖 32
3.1.3 研究方法與進行步驟 33
第四章 系統實作與結果討論 34
4.1 系統實作說明 34
4.1.1 開發工具與環境 34
4.1.2 街景圖模式之實作 37
4.1.3 相片模式之實作 38
4.2 系統之介面與操作流程 39
4.2.1 街景圖模式 39
4.2.2 相片模式 55
4.3 實作成果與問題討論 60
4.3.1 實作成果 60
4.3.2 實作問題討論 63
第五章 結論與未來展望 72
5.1 結論 72
5.2 未來展望 72
參考文獻 73
附錄-英文論文 74

圖目錄
圖 2-1 BigTable資料模型 6
圖 2-2 HDFS檔案系統之相片儲存 9
圖 2-3 抓取到的相片資料 10
圖 2-4 GetFromHDFS程式碼 10
圖 2-5 HBase Shell – put指令 12
圖 2-6 HBase Shell – get指令 12
圖 2-7 HBase Shell – scan指令 13
圖 2-8 關聯式資料庫-圖解 13
圖 2-9 NoSQL資料庫-圖解 14
圖 2-10 HBase邏輯模型 15
圖 2-11 HBase實體模型(1) 16
圖 2-12 HBase邏輯模型(2) 17
圖 2-13 HBase Shell畫面 18
圖 2-14 網頁呈現畫面 18
圖 2-15 Thrift架構[11] 19
圖 2-16 PHP抓取HBase資料-範例程式 21
圖 2-17 範例程式結果[12] 22
圖 2-18 AJAX運作架構 23
圖 3-1 HBase資料庫之儲存欄位 26
圖 3-2 整體系統架構圖 27
圖 3-3 系統架構圖-讀取數據資料 28
圖 3-4 系統架構圖-讀取相片資料 29
圖 3-5 Database Server與Web Server之關係 30
圖 3-6 系統操作流程 32
圖 4-1 街景圖模式之程式實作架構 37
圖 4-2 相片模式之程式實作架構 38
圖 4-3 系統首頁之介面 39
圖 4-4 街景圖模式-上半部 40
圖 4-5 街景圖模式-下半部 40
圖 4-6 篩選資料畫面 41
圖 4-7 氣溫之舒適度指標 42
圖 4-8 篩選資料畫面-溫度 42
圖 4-9 篩選資料畫面-搜尋結果(溫度) 42
圖 4-10 濕度之舒適度指標 43
圖 4-11 篩選資料畫面-濕度 43
圖 4-12 篩選資料畫面-搜尋結果(濕度) 44
圖 4-13 篩選資料畫面-搜尋結果(溫度+濕度) 45
圖 4-14 輸入畫面 46
圖 4-15 查看街景圖所用到之功能介面 46
圖 4-16 新增地標之畫面 47
圖 4-17 新增地標之畫面(多筆資料) 48
圖 4-18 取得地址之畫面 48
圖 4-19 查詢資料-單筆之畫面 49
圖 4-20 查詢資料-多筆之畫面 49
圖 4-21 搜尋系統初始畫面 50
圖 4-22 搜尋系統載入地圖畫面 51
圖 4-23 搜尋系統欄位顯示 51
圖 4-24 搜尋系統之地點搜尋結果 52
圖 4-25 搜尋系統之範圍限制畫面 52
圖 4-26 範圍限制之選單 53
圖 4-27 範圍限制之搜尋結果 53
圖 4-28 搜尋系統之搜尋點周邊加入地標功能 54
圖 4-29 搜尋系統之觀察周邊資訊功能 55
圖 4-30 相片模式之畫面 57
圖 4-31 HDFS檔案系統上放置的相片 58
圖 4-32 AJAX程式碼-A部分[15] 59
圖 4-33 AJAX程式碼-B部分 60
圖 4-34 網頁運作 63
圖 4-35 系統抓取資料之畫面 64
圖 4-36 ThriftServer運行狀態 64
圖 4-37 運行失敗之畫面 65
圖 4-38 安裝Thrift之畫面 66
圖 4-39 DemoClient.php運行之畫面 66
圖 4-40 HadoopThriftServer與ThriftServer 67
圖 4-41 Hadoop Thrift運行之失敗畫面 68
圖 4-42 Hadoop Thrift運行架構圖 68
圖 4-43 利用AJAX技術回傳之數據 69
圖 4-44 xmlhttp.status之狀態值討論 70
圖 4-45 xmlhttp.status狀態值意義 70
圖 4-46 AJAX程式碼-設定 71

表目錄
表 4-1 實驗環境 34
表 4-2 系統實作環境與開發軟體 36
參考文獻 [1] NoSQL, http://www.ithome.com.tw/itadm/article.php?c=63360&s=4
[2] Chang, F., Dean, J., Ghemawat, S., Hsieh, W. C., Wallach, D. A., Burrows, M., Chandra, T., Fikes, A., and Gruber, R. E. 2006. “Bigtable: a distributed storage system for structured data,” 7th Conference on USENIX Symposium on Operating Systems Design and Implementation, Seattle, WA, November 2006.
[3] Apache HBase, http://hbase.apache.org.
[4] Apache Hadoop, http://hadoop.apache.org./
[5] Apache Thrift , http://thrift.apache.org/
[6] AJAX, http://www.w3schools.com/PHP/PHP_ajax_intro.asp
[7] BigTable Data Model ,http://tc.itkee.com/database/detail-2c97.html
[8] Apache HDFS, http://hadoop.apache.org/hdfs
[9] HDFS shell, http://tdcq.iteye.com/blog/1340095
[10] HBase shell, http://trac.nchc.org.tw/cloud/wiki/NCHCCloudCourse100929_2_USE
[11] Thrift Architecture, http://www.ibm.com/developerworks/cn/java/j-lo-apachethrift/
[12] Thrift - DemoClient, http://trac.nchc.org.tw/cloud/wiki/waue/2010/HbaseThrift
[13] 曾坤福, “基於PHP與MySQL應用程式之Apache HBase分散式資料庫與關聯式資料庫中介橋接機制設計與實作”, 100學年度, 樹德科技大學資訊工程系碩士班-碩士論文
[14] Google Map API – Example, https://developers.google.com/maps/documentation/javascript/v2/examples/?hl=zh-TW
[15] AJAX PHP, http://www.w3schools.com/PHP/php_ajax_php.asp
論文使用權限
  • 同意紙本無償授權給館內讀者為學術之目的重製使用,於2014-07-17公開。
  • 同意授權瀏覽/列印電子全文服務,於2014-07-17起公開。


  • 若您有任何疑問,請與我們聯絡!
    圖書館: 請來電 (02)2621-5656 轉 2281 或 來信