宋冬 李曙光
摘 要:在城市范圍內(nèi),高德地圖提供了多種類型的動(dòng)態(tài)大數(shù)據(jù)。文中嘗試?yán)眠@些數(shù)據(jù),以西安市為例,由步行可達(dá)性、公交可達(dá)性、地鐵可達(dá)性及商業(yè)POI出發(fā),研究影院分布與票房收入之間的關(guān)系。研究表明,在剔除影院排片影響后,多模式交通可達(dá)性與影院票房收入存在強(qiáng)相關(guān)關(guān)系,進(jìn)而對(duì)影院位置優(yōu)劣進(jìn)行量化評(píng)估,最終實(shí)現(xiàn)可視化呈現(xiàn)。
關(guān)鍵詞:數(shù)據(jù)庫(kù);影院選址;步行可達(dá)性;公交可達(dá)性;地鐵可達(dá)性;可視化
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2095-1302(2019)05-00-03
0 引 言
隨著經(jīng)濟(jì)社會(huì)的發(fā)展,許多大中城市正在從“生產(chǎn)城市”向“消費(fèi)城市”轉(zhuǎn)型,各商業(yè)體蓬勃發(fā)展。本文通過(guò)高德地圖采集西安市基礎(chǔ)路網(wǎng)、公交線路、地鐵線路和商業(yè)POI數(shù)據(jù),通過(guò)淘票票采集西安市影院數(shù)據(jù),將以上數(shù)據(jù)進(jìn)行預(yù)處理后,均存儲(chǔ)于數(shù)據(jù)庫(kù)(Structured Query Language,SQL)中,并在數(shù)據(jù)庫(kù)中進(jìn)行數(shù)據(jù)運(yùn)算,對(duì)各影院位置進(jìn)行評(píng)估,再通過(guò)Java進(jìn)行后端數(shù)據(jù)調(diào)用推送至前端網(wǎng)頁(yè)呈現(xiàn)。
SQL是由Microsoft開(kāi)發(fā)和推廣的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(Relational Database Management System,RDBMS),是關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)的標(biāo)準(zhǔn)語(yǔ)言。其擁有強(qiáng)大的數(shù)據(jù)處理能力,可處理千萬(wàn)級(jí)別的數(shù)據(jù)量,擁有圖形化用戶界面、豐富的編程接口以及對(duì)Web技術(shù)的支持,被廣泛應(yīng)用于動(dòng)態(tài)開(kāi)發(fā)、關(guān)系數(shù)據(jù)和商業(yè)智能。
1 數(shù)據(jù)預(yù)處理
本文采用的衡量影院位置優(yōu)劣的標(biāo)準(zhǔn)是票房收入,影院數(shù)據(jù)采集自淘票票專業(yè)版,該影院數(shù)據(jù)包括各月份的票房收入、影院廳數(shù)、座位數(shù)等屬性。在此基礎(chǔ)上,為了盡可能規(guī)避影院內(nèi)部因素對(duì)票房收入的影響,將各影院12個(gè)月的票房收入取平均值,且剔除3個(gè)廳數(shù)以下的影院。預(yù)處理影院數(shù)據(jù)后,重點(diǎn)關(guān)注外部因素對(duì)影院票房收入的影響。本文關(guān)注研究了步行可達(dá)性、公交可達(dá)性、地鐵可達(dá)性及商業(yè)POI等外部因素,如圖1所示。
通過(guò)高德地圖采集西安市基礎(chǔ)路網(wǎng)、公交線路、地鐵線路和商業(yè)POI數(shù)據(jù)。其中,基礎(chǔ)路網(wǎng)包括所有行人可通行的部分,即主干路網(wǎng)、支干路網(wǎng)及公園、小區(qū)路網(wǎng)等,該部分?jǐn)?shù)據(jù)能夠保證步行可達(dá)性計(jì)算的準(zhǔn)確性。公交可達(dá)性的計(jì)算中,剔除了站點(diǎn)較少的直達(dá)線路及偏遠(yuǎn)地區(qū)線路,著重分析西安市三環(huán)以內(nèi)主城區(qū)可達(dá)性。地鐵線路選擇已通車運(yùn)行的3條地鐵線路,未涉及規(guī)劃線路與在建線路。商業(yè)POI數(shù)據(jù)采集自西安市范圍內(nèi)的餐飲與購(gòu)物POI數(shù)據(jù),用POI的密度間接反映區(qū)域商業(yè)活力。
在Arcgis內(nèi),將西安步行路網(wǎng)按照每隔30 m的距離打斷為小路段,并將這些小路段轉(zhuǎn)換為路段采樣點(diǎn),而后通過(guò)臨近計(jì)算或插值的方法,將相關(guān)屬性數(shù)據(jù)轉(zhuǎn)換到采樣點(diǎn)上,把所有數(shù)據(jù)存入數(shù)據(jù)庫(kù)以分析調(diào)用。
2 用戶界面設(shè)計(jì)
用戶界面不僅是軟件應(yīng)用的重要組成部分,同時(shí)還應(yīng)是良好的人機(jī)交互界面,快捷方便,簡(jiǎn)明扼要,展示、引導(dǎo)用戶使用絕大部分程序功能。JSP(Java Server Pages)是Java服務(wù)器頁(yè)面,具備Java技術(shù)的簡(jiǎn)單應(yīng)用與完全的面向?qū)ο螅哂衅脚_(tái)無(wú)關(guān)性,且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn),具有多平臺(tái)支持。
窗口是人機(jī)對(duì)話的重要組成部分,用戶登錄界面包含賬戶、密碼及驗(yàn)證碼,用戶可通過(guò)該界面進(jìn)行登錄,并最終查詢數(shù)據(jù)可視化結(jié)果,可實(shí)現(xiàn)同時(shí)為多位用戶提供數(shù)據(jù)可視化界面。用戶登錄界面如圖2所示。
3 數(shù)據(jù)庫(kù)通信設(shè)計(jì)
數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)是連接數(shù)據(jù)庫(kù)與Java客戶端之間的必備橋梁。目前,Java語(yǔ)言訪問(wèn)數(shù)據(jù)庫(kù)已經(jīng)有了一套API。
3.1 JDBC編程接口
JDBC(Java Database Connectivity)是連接Java應(yīng)用程序和數(shù)據(jù)庫(kù)之間的橋梁,是一組標(biāo)準(zhǔn)Java語(yǔ)言中的接口和類,是一種對(duì)ODBC API面向?qū)ο蟮姆庋b和重新設(shè)計(jì),使得Java客戶端程序可以訪問(wèn)各種不同類型的數(shù)據(jù)庫(kù)。Java.sql提供了多種JDBC API,其中常見(jiàn)的有:Connection接口,代表與數(shù)據(jù)庫(kù)的連接,通過(guò)它調(diào)用createStatement對(duì)象;Statement接口,用來(lái)執(zhí)行SQL語(yǔ)句并返回結(jié)果記錄集;ResultSet接口,SQL語(yǔ)句執(zhí)行后的結(jié)果記錄集,必須逐行訪問(wèn)數(shù)據(jù)行,可用任何順序訪問(wèn)列。
3.2 Microsoft SQL Server數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)是按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)與管理數(shù)據(jù)的倉(cāng)庫(kù)。數(shù)據(jù)庫(kù)有很多種,其中應(yīng)用最為廣泛的是 SQL Server數(shù)據(jù)庫(kù),它具有使用方便、伸縮性好及相關(guān)軟件集成程度高等優(yōu)點(diǎn)。例如,可提供高性能的數(shù)據(jù)訪問(wèn);每個(gè)表可處理多達(dá)千萬(wàn)級(jí)別的數(shù)據(jù)量;可通過(guò)一個(gè)簡(jiǎn)單的T-SQL語(yǔ)句使一個(gè)對(duì)象在因特網(wǎng)上被訪問(wèn),從而創(chuàng)建一個(gè)HTTP終端;支持OLE DB與多種查詢方式;圖像化的用戶界面,使系統(tǒng)管理與數(shù)據(jù)庫(kù)管理更加直觀、簡(jiǎn)單。
3.3 SQL語(yǔ)言
SQL是結(jié)構(gòu)化查詢語(yǔ)言,也是一種數(shù)據(jù)庫(kù)查詢與程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。
SQL語(yǔ)言是高級(jí)的非過(guò)程化編程語(yǔ)言,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶指定對(duì)數(shù)據(jù)的存放方法,也無(wú)需用戶了解具體的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫(kù)系統(tǒng)可使用相同的結(jié)構(gòu)化查詢語(yǔ)言作為數(shù)據(jù)輸出與管理的接口,大幅度簡(jiǎn)化了用戶的工作。同時(shí),SQL語(yǔ)言可實(shí)現(xiàn)嵌套,具有極大的靈活性與強(qiáng)大的功能。
3.4 關(guān)鍵程序設(shè)計(jì)
應(yīng)用軟件時(shí),使用者通過(guò)用戶界面與數(shù)據(jù)庫(kù)進(jìn)行交流與通信,以實(shí)現(xiàn)數(shù)據(jù)傳輸、計(jì)算以及可視化功能。本文程序設(shè)計(jì)中,使用者通過(guò)外部設(shè)備操作瀏覽器,向前端控制器發(fā)送相應(yīng)請(qǐng)求,前端控制器收到請(qǐng)求后交由后端處理器進(jìn)行數(shù)據(jù)庫(kù)操作,數(shù)據(jù)由數(shù)據(jù)庫(kù)返回至后端處理器,經(jīng)前端控制器交由視圖渲染后呈現(xiàn)于瀏覽器上。評(píng)估系統(tǒng)流程如圖3所示。