GIS服務(wù)已經(jīng)逐步成為政府部門、企事業(yè)單位在信息化系統(tǒng)中引入GIS功能的*建設(shè)模式。
全書分為兩篇,通過兩個(gè)企業(yè)GIS平臺的構(gòu)建案例,詳細(xì)介紹如何利用Java、C#語言與ArcGIS Server開發(fā)企業(yè)GIS的重點(diǎn)內(nèi)容以及核心技術(shù)。第一篇以房屋全生命周期信息平臺案例介紹了如何在GIS環(huán)境中圍繞地理空間數(shù)據(jù)庫來實(shí)現(xiàn)商業(yè)智能,包括用戶需求分析、總體設(shè)計(jì)以及數(shù)據(jù)庫設(shè)計(jì)等。第二篇以數(shù)據(jù)航母案例的實(shí)現(xiàn)突出了企業(yè)Web 2.0以及一些新技術(shù)在GIS中的應(yīng)用,包括地圖環(huán)境下的情景分析、在線交流以及WebGL等。
本書既適合政府、企業(yè)相關(guān)部門的GIS研究與開發(fā)人員以及高等院校地理學(xué)、地理信息系統(tǒng)、房地產(chǎn)、環(huán)境科學(xué)、資源與城鄉(xiāng)規(guī)劃管理、區(qū)域經(jīng)濟(jì)學(xué)等專業(yè)的學(xué)生參考,也適合作為各種GIS培訓(xùn)學(xué)員的學(xué)習(xí)教材與參考書。
GIS服務(wù)已經(jīng)逐步成為政府部門、企事業(yè)單位在信息化系統(tǒng)中引入GIS功能的*建設(shè)模式。全書分為兩篇,通過兩個(gè)企業(yè)GIS平臺的構(gòu)建案例,詳細(xì)介紹如何利用Java、C#語言與ArcGIS Server開發(fā)企業(yè)GIS的重點(diǎn)內(nèi)容以及核心技術(shù)。*篇以房屋全生命周期信息平臺案例介紹了如何在GIS環(huán)境中圍繞地理空間數(shù)據(jù)庫來實(shí)現(xiàn)商業(yè)智能,包括用戶需求分析、總體設(shè)計(jì)以及數(shù)據(jù)庫設(shè)計(jì)等。第二篇以數(shù)據(jù)航母案例的實(shí)現(xiàn)突出了企業(yè)Web 2.0以及一些新技術(shù)在GIS中的應(yīng)用,包括地圖環(huán)境下的情景分析、在線交流以及WebGL等。本書既適合政府、企業(yè)相關(guān)部門的GIS研究與開發(fā)人員以及高等院校地理學(xué)、地理信息系統(tǒng)、房地產(chǎn)、環(huán)境科學(xué)、資源與城鄉(xiāng)規(guī)劃管理、區(qū)域經(jīng)濟(jì)學(xué)等專業(yè)的學(xué)生參考,也適合作為各種GIS培訓(xùn)學(xué)員的學(xué)習(xí)教材與參考書。
前 言隨著IT系統(tǒng)SOA架構(gòu)技術(shù)的成熟,以及企業(yè)IT系統(tǒng)中GIS應(yīng)用的大規(guī)模普及,GIS服務(wù)已經(jīng)逐步成為政府部門、企事業(yè)單位IT系統(tǒng)建設(shè)中的基礎(chǔ)設(shè)施。建立企業(yè)級GIS共享服務(wù)平臺,以標(biāo)準(zhǔn)化服務(wù)訪問接口方式為全單位各類應(yīng)用系統(tǒng)提供GIS服務(wù)功能,成為各政府部門、企事業(yè)單位在信息化系統(tǒng)中引入GIS功能的首選建設(shè)模式。然而當(dāng)前還沒有任何一本專門介紹如何搭建與開發(fā)企業(yè)GIS平臺的書籍,本書的出版將填補(bǔ)該方面的空白。本書分為兩篇,按照軟件工程技術(shù)的要求,以北京市房屋全生命周期管理平臺與北京市數(shù)據(jù)航母為例,介紹如何利用Java、C#語言與ArcGIS Server開發(fā)企業(yè)GIS應(yīng)用,包括系統(tǒng)的需求分析、總體設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)與編碼實(shí)現(xiàn)等幾部分內(nèi)容。第1篇介紹了北京市住房與城鄉(xiāng)建設(shè)委員會(huì)房屋全生命周期管理平臺的建設(shè),包括本書的前6章。第1章介紹了國內(nèi)外房屋GIS現(xiàn)狀,以及北京市房屋全生命周期管理平臺建設(shè)的背景及其目標(biāo)與意義。第2章從數(shù)據(jù)中心、功能、數(shù)據(jù)共享與非功能4個(gè)方面詳細(xì)介紹了房屋全生命周期管理平臺的建設(shè)需求。第3章結(jié)合當(dāng)前主流的系統(tǒng)及Web GIS開發(fā)技術(shù),主要介紹了房屋全生命周期平臺的總體設(shè)計(jì),包括設(shè)計(jì)的原則與思路、標(biāo)準(zhǔn)體系設(shè)計(jì)、系統(tǒng)總體架構(gòu)和系統(tǒng)所采用的關(guān)鍵技術(shù)等。第4章主要介紹數(shù)據(jù)中心的總體設(shè)計(jì)與邏輯設(shè)計(jì),以及應(yīng)用支撐數(shù)據(jù)庫的設(shè)計(jì),特別介紹了在數(shù)據(jù)中心建設(shè)過程中空間數(shù)據(jù)的組織與管理、數(shù)據(jù)的更新設(shè)計(jì)等。第5章主要介紹北京市房屋全生命周期平臺系統(tǒng)功能中的主要業(yè)務(wù)功能、數(shù)據(jù)共享功能和GIS空間分析等功能及其實(shí)現(xiàn)。第6章主要介紹房屋全生命周期平臺在市、區(qū)兩級住建委之間如何共享數(shù)據(jù),并以海淀區(qū)應(yīng)用為例介紹區(qū)縣業(yè)務(wù)系統(tǒng)應(yīng)用。第2篇介紹北京市測繪設(shè)計(jì)研究院數(shù)據(jù)航母平臺的建設(shè),包括本書的后6章。第7章在介紹數(shù)據(jù)航母平臺建設(shè)單位軟硬件環(huán)境、用戶和空間數(shù)據(jù)現(xiàn)狀的基礎(chǔ)上,充分分析了單位業(yè)務(wù)和單位內(nèi)、外用戶對平臺的需求。第8章主要介紹平臺的設(shè)計(jì)思路、分層邏輯架構(gòu)、系統(tǒng)開發(fā)架構(gòu)以及部署架構(gòu),還詳細(xì)介紹了數(shù)據(jù)資源與平臺的建設(shè)方案。第9章介紹了如何基于WCF和REST,利用C#語言實(shí)現(xiàn)面向服務(wù)架構(gòu)的Web GIS系統(tǒng)。第10章在簡單介紹NoSQL之后,詳細(xì)介紹了如何利用MongoDB實(shí)現(xiàn)個(gè)人數(shù)據(jù)在線交流。利用該方式,突破了原來普通Web GIS中只能利用已有Web服務(wù),而不能動(dòng)態(tài)發(fā)布服務(wù)的限制。第11章通過讀取客戶端數(shù)據(jù)、勘察選點(diǎn)與成果檢查,以及專題圖在線生成等功能的實(shí)現(xiàn),介紹了如何實(shí)現(xiàn)情境應(yīng)用功能。第12章介紹了企業(yè)混搭、空間ETL以及WebGL等新技術(shù)在數(shù)據(jù)航母中的應(yīng)用。本書除了封面署名作者之外,參與編寫的人員還有劉增良、韓光瞬、曾敬文、曾慶豐、唐大仕、劉小東、賀小飛、李珍貴與陳艷玲等。由于編者水平、經(jīng)驗(yàn)有限,書中難免存在一些疏漏,希望能夠得到廣大的專家和讀者的批評指正。編 者2016年10月
劉光,北京大學(xué)GIS專業(yè)博士,德國波恩大學(xué)波恩-亞琛信息技術(shù)國際中心訪問學(xué)者,現(xiàn)任職于北京市測繪設(shè)計(jì)研究院。近期出版了《ArcGIS Server JavaScript API開發(fā)GeoWeb 2.0應(yīng)用》、《Web GIS開發(fā):ArcGIS Server與.NET》、《Visual C .NET應(yīng)用教程》、《地理信息系統(tǒng)實(shí)習(xí)教程》、《地理信息系統(tǒng)二次開發(fā)教程組件篇》與《地理信息系統(tǒng)二次開發(fā)教程語言篇》等。主持的工程有北京市房屋全生命周期管理平臺、北京市交通專用地理信息系統(tǒng)、北京市勘察設(shè)計(jì)與測繪管理信息系統(tǒng)等。
目 錄
第1篇 北京市房屋全生命周期管理信息平臺
第1章 房屋平臺建設(shè)背景 2
1.1 國內(nèi)外房屋GIS現(xiàn)狀分析 2
1.1.1
青島房屋GIS建設(shè)現(xiàn)狀 3
1.1.2
上海房屋GIS建設(shè)現(xiàn)狀 4
1.2 北京市房屋GIS建設(shè)相關(guān)現(xiàn)狀 5
1.2.1
北京市房屋普查 5
1.2.2
北京市房屋GIS平臺現(xiàn)狀 6
1.3 北京市房屋平臺建設(shè)目標(biāo)與意義 6
1.3.1
建設(shè)目標(biāo) 6
1.3.2
建設(shè)意義 8
第2章 房屋平臺需求分析 10
2.1 數(shù)據(jù)中心需求 10
2.1.1
數(shù)據(jù)庫建庫需求 10
2.1.2
房屋空間數(shù)據(jù)需求 12
2.1.3
房屋屬性數(shù)據(jù)需求 14
2.2 系統(tǒng)應(yīng)用功能需求 23
2.2.1
業(yè)務(wù)追蹤 23
2.2.2
GIS空間分析 24
2.2.3
統(tǒng)計(jì)報(bào)表 27
2.2.4
監(jiān)測分析與預(yù)警 31
2.3 數(shù)據(jù)共享需求 32
2.3.1
數(shù)據(jù)交換共享服務(wù)中心 32
2.3.2
共享內(nèi)容 33
2.4 非功能性需求 33
2.4.1
存儲(chǔ)需求 34
2.4.2
處理需求 34
2.4.3
質(zhì)量需求 34
2.4.4
性能需求 35
2.4.5
其他需求 35
第3章 總體設(shè)計(jì) 36
3.1 設(shè)計(jì)原則與思路 37
3.1.1
設(shè)計(jì)原則 37
3.1.2
設(shè)計(jì)思路 38
3.2 標(biāo)準(zhǔn)體系設(shè)計(jì) 39
3.2.1
標(biāo)準(zhǔn)體系建設(shè)思路 40
3.2.2
標(biāo)準(zhǔn)體系建設(shè)原則 41
3.2.3
標(biāo)準(zhǔn)體系內(nèi)容 41
3.3 總體架構(gòu) 45
3.3.1
總體邏輯架構(gòu) 46
3.3.2
總體分層架構(gòu) 47
3.3.3
系統(tǒng)開發(fā)架構(gòu) 49
3.3.4
部署架構(gòu) 50
3.4 關(guān)鍵技術(shù) 50
3.4.1
GeoWeb 2.0與ArcGIS API for JavaScript 50
3.4.2
ETL技術(shù) 51
3.4.3
Web服務(wù) 55
3.4.4
數(shù)據(jù)倉庫技術(shù) 57
3.4.5
商業(yè)智能 59
第4章 數(shù)據(jù)中心設(shè)計(jì)與實(shí)現(xiàn) 61
4.1 數(shù)據(jù)中心總體設(shè)計(jì) 61
4.1.1
數(shù)據(jù)中心設(shè)計(jì)思路 62
4.1.2
數(shù)據(jù)中心設(shè)計(jì)原則 62
4.2 數(shù)據(jù)中心邏輯設(shè)計(jì) 63
4.2.1
房屋基礎(chǔ)業(yè)務(wù)數(shù)據(jù)庫設(shè)計(jì) 65
4.2.2
房屋基礎(chǔ)空間數(shù)據(jù)庫設(shè)計(jì) 68
4.2.3
決策支持?jǐn)?shù)據(jù)倉庫 74
4.2.4
共享數(shù)據(jù)庫設(shè)計(jì) 74
4.3 應(yīng)用支撐數(shù)據(jù)庫設(shè)計(jì) 76
4.3.1
元數(shù)據(jù)庫設(shè)計(jì) 76
4.3.2
指標(biāo)庫模型設(shè)計(jì) 77
4.4 空間數(shù)據(jù)組織與管理 81
4.4.1
ArcSDE空間數(shù)據(jù)庫管理機(jī)制 81
4.4.2
數(shù)據(jù)管理方案 83
4.4.3
房屋現(xiàn)狀一張圖 84
4.4.4
空間數(shù)據(jù)庫設(shè)計(jì) 86
4.5 數(shù)據(jù)交換服務(wù)設(shè)計(jì) 90
4.5.1
數(shù)據(jù)交換基本功能組件 91
4.5.2
數(shù)據(jù)連接設(shè)計(jì) 92
4.5.3
數(shù)據(jù)交換任務(wù)設(shè)計(jì) 93
4.5.4
數(shù)據(jù)交換流程設(shè)計(jì) 96
4.6 數(shù)據(jù)更新設(shè)計(jì) 96
4.6.1
數(shù)據(jù)處理與轉(zhuǎn)換 98
4.6.2
屬性數(shù)據(jù)更新流程 99
4.6.3
空間數(shù)據(jù)更新流程 101
4.7 數(shù)據(jù)安全設(shè)計(jì) 103
4.7.1
角色與權(quán)限 103
4.7.2
數(shù)據(jù)加密 104
4.7.3
數(shù)據(jù)庫安全管理 104
4.7.4
數(shù)據(jù)保護(hù) 104
第5章 系統(tǒng)功能及其實(shí)現(xiàn) 106
5.1 數(shù)據(jù)中心實(shí)現(xiàn) 106
5.1.1
數(shù)據(jù)ETL實(shí)現(xiàn) 106
5.1.2
數(shù)據(jù)倉庫建設(shè) 109
5.1.3
房屋一張圖實(shí)現(xiàn) 113
5.2 主要業(yè)務(wù)功能及其實(shí)現(xiàn)
116
5.2.1
業(yè)務(wù)應(yīng)用 116
5.2.2
房屋總量分析 121
5.2.3
監(jiān)測分析 127
5.3 數(shù)據(jù)共享功能實(shí)現(xiàn) 130
5.3.1
服務(wù)設(shè)計(jì)與實(shí)現(xiàn) 130
5.3.2
單位內(nèi)部共享 132
5.3.3
政府部門共享 136
5.3.4
公眾共享 136
5.4
GIS空間分析功能與實(shí)現(xiàn) 137
5.4.1
二維GIS展示與查詢 137
5.4.2
二維空間分析功能 142
5.4.3
三維GIS展示與查詢 143
5.4.4
三維空間分析 146
5.4.5
二三維聯(lián)動(dòng)與一體化 149
5.5 房屋交易多維分析案例
150
5.5.1
分析內(nèi)容 150
5.5.2
分析方法 150
第6章 區(qū)縣推廣 152
6.1 市區(qū)兩級數(shù)據(jù)共享模式
152
6.1.1
區(qū)縣直接訪問 152
6.1.2
業(yè)務(wù)數(shù)據(jù)落地 153
6.1.3
數(shù)據(jù)全部落地 154
6.2 區(qū)縣應(yīng)用 154
6.2.1
區(qū)縣房屋平臺應(yīng)用 155
6.2.2
區(qū)縣業(yè)務(wù)系統(tǒng)應(yīng)用 158
第2篇 北京市數(shù)據(jù)航母
第7章 數(shù)據(jù)航母需求分析
164
7.1 使用單位簡介 164
7.1.1
單位概況及軟硬件環(huán)境 164
7.1.2
單位業(yè)務(wù)及用戶分析 166
7.2 空間數(shù)據(jù)現(xiàn)狀分析 168
7.2.1
空間數(shù)據(jù)建設(shè)現(xiàn)狀 168
7.2.2
空間數(shù)據(jù)使用與分發(fā)現(xiàn)狀 170
7.3 數(shù)據(jù)資源建設(shè)需求 170
7.3.1
數(shù)據(jù)資源統(tǒng)一規(guī)劃需求 171
7.3.2
數(shù)據(jù)庫建設(shè)需求 171
7.4 平臺建設(shè)需求 173
7.4.1
數(shù)據(jù)管理需求 173
7.4.2
數(shù)據(jù)分發(fā)需求 174
7.4.3
數(shù)據(jù)展示需求 174
第8章 總體設(shè)計(jì) 175
8.1 設(shè)計(jì)思路 175
8.1.1
設(shè)計(jì)要求 175
8.1.2
設(shè)計(jì)原則 176
8.1.3
設(shè)計(jì)思路 177
8.2 總體架構(gòu) 179
8.2.1
分層邏輯架構(gòu) 179
8.2.2
系統(tǒng)開發(fā)架構(gòu) 181
8.2.3
部署架構(gòu) 182
8.3 數(shù)據(jù)資源建設(shè)方案 183
8.3.1
數(shù)據(jù)資源統(tǒng)一規(guī)劃 183
8.3.2
數(shù)據(jù)庫設(shè)計(jì) 185
8.3.3
數(shù)據(jù)加工方案 187
8.3.4
數(shù)據(jù)資源服務(wù)設(shè)計(jì) 189
8.4 平臺建設(shè)方案 190
8.4.1
數(shù)據(jù)資源管理及更新 190
8.4.2
數(shù)據(jù)應(yīng)用及分發(fā)的流程化 193
8.4.3
數(shù)據(jù)綜合展示及分析 195
第9章 面向服務(wù)架構(gòu)的實(shí)現(xiàn) 198
9.1 使用WCF面向服務(wù)編程 198
9.1.1
WCF簡介 198
9.1.2
WCF實(shí)現(xiàn)示例 201
9.2 基于REST架構(gòu)的 GIS服務(wù) 207
9.2.1
REST架構(gòu)簡介 207
9.2.2
基于REST架構(gòu)的GIS服務(wù)介紹 207
9.2.3
GIS服務(wù)實(shí)現(xiàn)及開發(fā)示例 209
第10章 NoSQL的應(yīng)用 215
10.1
數(shù)據(jù)庫技術(shù)發(fā)展歷史 215
10.1.1
層次和網(wǎng)狀數(shù)據(jù)庫系統(tǒng) 215
10.1.2
關(guān)系數(shù)據(jù)庫系統(tǒng) 216
10.2
NoSQL簡介 217
10.2.1
NoSQL的優(yōu)勢 218
10.2.2
NoSQL數(shù)據(jù)庫分類及流行產(chǎn)品 218
10.3
MongoDB實(shí)現(xiàn)個(gè)人數(shù)據(jù)在線交流 219
10.3.1
MongoDB簡介 220
10.3.2
MongoDB安裝與配置 221
10.3.3
MongoDB使用 222
10.3.4
MongoDB可視化工具 223
10.4
MongoDB實(shí)現(xiàn)個(gè)人數(shù)據(jù)在線交流 225
10.4.1
MongoDB開發(fā)環(huán)境配置 225
10.4.2
個(gè)人數(shù)據(jù)管理與共享 227
第11章 情景應(yīng)用功能的實(shí)現(xiàn) 232
11.1
讀取客戶端數(shù)據(jù) 232
11.1.1
獲取客戶端文件 232
11.1.2
客戶端數(shù)據(jù)解析 234
11.1.3
客戶端數(shù)據(jù)共享 245
11.2
探勘選點(diǎn)與成果檢查 245
11.2.1
探勘選點(diǎn)與成果檢查情景應(yīng)用分析 245
11.2.2
探勘選點(diǎn)與成果檢查功能實(shí)現(xiàn) 246
11.3
專題圖在線生成 253
11.3.1
讀取需要統(tǒng)計(jì)的數(shù)據(jù) 254
11.3.2
ArcGIS API for JavaScript提供的專題圖功能實(shí)現(xiàn) 256
11.3.3
柱狀、餅狀專題圖實(shí)現(xiàn) 257
第12章 其他新技術(shù)的應(yīng)用 262
12.1
Web 2.0 262
12.1.1
Web 2.0應(yīng)用 263
12.1.2
企業(yè)Web 2.0 263
12.2
企業(yè)混搭架構(gòu) 264
12.2.1
企業(yè)混搭架構(gòu)簡介 264
12.2.2
企業(yè)混搭架構(gòu)的應(yīng)用 265
12.3
基于空間ETL的智能聯(lián)動(dòng)更新 266
12.3.1
空間ETL介紹 267
12.3.2
空間ETL應(yīng)用 267
12.4
WebGL 268
12.4.1
WebGL簡介 268
12.4.2
Three.js 272
12.4.3
街景功能實(shí)現(xiàn) 277
12.5
二維地圖顯示立體效果 280