基于Redis的矢量數(shù)據(jù)組織研究
發(fā)布時間:2018-04-17 12:13
本文選題:Redis + 矢量數(shù)據(jù)。 參考:《南京師范大學》2013年碩士論文
【摘要】:目前空間信息應用遭遇到嚴重的瓶頸,一方面已經(jīng)積累了巨量空間數(shù)據(jù),并且還在繼續(xù)投巨資生產(chǎn)數(shù)據(jù),另一方面,大量的空間數(shù)據(jù)無法被綜合處理和有效利用。為了對數(shù)據(jù)進行高效存儲和管理,關系數(shù)據(jù)庫技術應運而生。但在web2.0時代,面對大規(guī)模和高并發(fā)的應用,關系數(shù)據(jù)庫疲態(tài)盡顯,究其原因,主要是關系數(shù)據(jù)庫考慮了過多的特性,如事務、范式約束等,極大地影響了數(shù)據(jù)庫的性能和擴展性。NoSQL數(shù)據(jù)庫摒棄了關系數(shù)據(jù)庫的事務一致性和范式的約束,在很大程度上解決了關系數(shù)據(jù)庫面臨的諸多挑戰(zhàn)。 本文研究基于Redis的矢量數(shù)據(jù)組織。作為一種key-value型NoSQL數(shù)據(jù)庫,Redis在高并發(fā)時依然具有很高的性能,同時具有豐富的數(shù)據(jù)結構,適合于對復雜的矢量數(shù)據(jù)進行組織管理。在矢量數(shù)據(jù)庫管理方面,本文按照矢量數(shù)據(jù)庫、空間數(shù)據(jù)集、圖層、要素的四級結構對矢量數(shù)據(jù)進行層次組織,針對性地設計了各層的元數(shù)據(jù)結構,并選用高效的Redis數(shù)據(jù)結構對元數(shù)據(jù)信息和矢量數(shù)據(jù)信息(幾何和屬性)進行存儲。在空間索引方面,本文深入研究了基于Redis的空間索引組織和查詢機制,并以網(wǎng)格索引為例,研究了基于Redis的網(wǎng)格索引的表達方式、存儲結構和查詢方法;針對傳統(tǒng)網(wǎng)格索引的缺點,提出了一種基于小角編碼的網(wǎng)格索引:首先對矢量數(shù)據(jù)進行小角編碼,然后利用Redis的有序set數(shù)據(jù)結構存儲網(wǎng)格單元索引信息表,在此基礎上,提出一種改進的網(wǎng)格索引方法——小角編碼算法進行快速索引查詢。利用小角編碼思想構建的網(wǎng)格單元索引信息表,自動分成重復區(qū)和非重復區(qū)兩部分,查詢時只需要針對重復區(qū)索引信息使用簡單的比較操作就能在0(N)時間內完成查重。由于查重時無需維護查找樹之類的數(shù)據(jù)結構,從而降低了空間復雜度,提高了矢量數(shù)據(jù)網(wǎng)格索引的效率。 最后,論文設計和實現(xiàn)了基于Redis的矢量數(shù)據(jù)引擎原型系統(tǒng),并利用大批量的矢量數(shù)據(jù)進行對比實驗和性能分析,實驗結果驗證了本文的基本思想。
[Abstract]:At present, the application of spatial information has encountered a serious bottleneck. On the one hand, it has accumulated a huge amount of spatial data, and continues to invest a large amount of production data. On the other hand, a large number of spatial data can not be comprehensively processed and effectively utilized.In order to store and manage data efficiently, relational database technology emerges as the times require.But in the era of web2.0, in the face of large scale and high concurrency application, the fatigue of relational database is obvious. The main reason is that the relational database takes too many characteristics into account, such as transaction, normal form constraint, etc.It greatly affects the performance and extensibility of database. NoSQL database abandons the constraints of transaction consistency and paradigm of relational database and solves many challenges faced by relational database to a great extent.This paper studies vector data organization based on Redis.As a kind of key-value NoSQL database, Redis still has high performance and rich data structure in high concurrency, so it is suitable for organizing and managing complex vector data.In the aspect of vector database management, according to the four-level structure of vector database, spatial data set, map layer and element, this paper organizes vector data hierarchically, and designs the metadata structure of each layer.An efficient Redis data structure is used to store metadata and vector data (geometry and attributes).In the aspect of spatial index, this paper deeply studies the spatial index organization and query mechanism based on Redis. Taking grid index as an example, the representation, storage structure and query method of grid index based on Redis are studied.Aiming at the shortcoming of traditional grid index, a grid index based on small angle coding is proposed. Firstly, vector data is encoded in small angle, then the grid cell index information table is stored by using Redis's ordered set data structure.In this paper, an improved mesh indexing method, small angle coding algorithm, is proposed for fast index query.The grid cell index information table which is constructed by using small angle coding idea is automatically divided into two parts: duplicate area and non-repetition area. When querying, we only need to use a simple comparison operation for the index information of repeat area to complete the search in 0 ~ N) time.Because the data structure such as lookup tree does not need to be maintained, the spatial complexity is reduced and the efficiency of vector data grid index is improved.Finally, the prototype system of vector data engine based on Redis is designed and implemented, and the comparison experiment and performance analysis are carried out by using large quantities of vector data. The experimental results verify the basic idea of this paper.
【學位授予單位】:南京師范大學
【學位級別】:碩士
【學位授予年份】:2013
【分類號】:P208
,
本文編號:1763557
本文鏈接:http://www.sikaile.net/kejilunwen/dizhicehuilunwen/1763557.html
最近更新
教材專著