SpatialHadoop中空间索引系列之(四)空间格网索引实现
? 有關空間格網索引原理詳見前面章節講述的內容。這里我們根據SpatialHadoop中具體的實現,來詳細講解下。格網索引是一級索引,格網的個數取決于兩個參數,一個是數據集的大小,另外一個就是格網的大小。那么在SpatialHadoop當中,具體怎么實現,我們先來拜讀下作者Ahmed的文章。
-----------------------------------------------------------------------------------------------------------------------------------------
?????【這部分主要描述普通索引算法的實現,該算法在V-B章節用于建立格網索引。格網文件是一個簡單的平衡索引,該索引根據格網去分割數據,覆蓋一個格網的所有記錄被存儲在一個文件塊內作為一個單獨的分區。為了簡單起見,我們假設數據均勻分布,采用均勻的網格。在數據分割階段,當得到切分塊數n之后,在一個區域內,塊的邊界通過創建一致的格網大小來確定?√n? × ?√n?,同時將格網單元的大小作為塊的邊界,如圖4(a)中所示。這樣生成的塊的個數可能要比n大,但是這樣可以確保平均塊的大小比HDFS塊大小要少。當物理分割這些數據時,一條帶有空間范圍的記錄r被復制到每一個他覆蓋的格網單元中。在局部索引過程中,每一個格網單元中所有的記錄將被寫入到一個堆文件當中,不建立任何局部索引,因為格網索引是一級平衡索引,存儲的內容不分先后。最后,全局索引階段將所有的文件生成一個全局索引文件,該文件是一個二維表文件,記錄了相對應的塊。】
=========================================================推薦看原文吧!!!
第一步:計算數據集mbr。
第二步:計算分塊數目n。
第三步:計算格網大小size。
第四步:確定n個分塊的mbr。
第五步:確定空間要素所屬。比較每一條空間要素,確定他們所屬的塊,并將同一塊的空間要素寫入到一個文件。
第六步:生成所有塊。
第七步:生成格網文件。
總結
以上是生活随笔為你收集整理的SpatialHadoop中空间索引系列之(四)空间格网索引实现的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 用GDAL/OGR去读shapefile
- 下一篇: Kali linux安装漏洞扫描工具Ne
