KR101654314B1 - 공간 데이터 분산 처리 시스템 및 그 동작 방법 - Google Patents

공간 데이터 분산 처리 시스템 및 그 동작 방법 Download PDF

Info

Publication number
KR101654314B1
KR101654314B1 KR1020150180231A KR20150180231A KR101654314B1 KR 101654314 B1 KR101654314 B1 KR 101654314B1 KR 1020150180231 A KR1020150180231 A KR 1020150180231A KR 20150180231 A KR20150180231 A KR 20150180231A KR 101654314 B1 KR101654314 B1 KR 101654314B1
Authority
KR
South Korea
Prior art keywords
spatial data
grid
index information
search
geometric
Prior art date
Application number
KR1020150180231A
Other languages
English (en)
Inventor
홍성학
김창수
Original Assignee
주식회사 포스웨이브
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 포스웨이브 filed Critical 주식회사 포스웨이브
Priority to KR1020150180231A priority Critical patent/KR101654314B1/ko
Application granted granted Critical
Publication of KR101654314B1 publication Critical patent/KR101654314B1/ko

Links

Images

Classifications

    • G06F17/30194
    • G06F17/30241
    • G06F17/30321
    • G06F17/30613

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 실시 형태는, 복수개의 데이터 저장 서버를 포함하는 분산 클러스터 장치가, 복수개의 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 복수개의 데이터 저장 서버에 분산하여 저장하는 공간 데이터 분산 저장 과정; 클라이언트 단말기가, 분산 클러스터 장치에 검색 영역 쿼리를 전송하여 검색 결과를 요청하는 검색 영역 쿼리 전송 과정; 상기 분산 클러스터 장치가, 데이터 저장 서버에 저장된 공간 데이터 중에서 상기 검색 영역 쿼리에 매칭되는 검색 결과를 추출하는 공간 데이터 검색 과정; 및 상기 분산 클러스터 장치가, 상기 검색 영역 쿼리에 매칭되는 검색 결과를 상기 클라이언트 단말기에 전송하는 검색 결과 전송 과정;을 포함하며, 상기 공간 데이터 분산 저장 과정은, 상기 공간 데이터를 상기 데이터 저장 서버에 분산하여 저장하는 과정; 상기 공간 데이터를 기하학 도형(geometry)을 기준으로 복수개의 그리드로 구획하는 그리드 구획 과정; 각 그리드별로 그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 생성하는 인덱스 정보 생성 과정; 및 각 그리드별로 인덱스 정보를 할당하여 저장하는 인덱스 정보 할당 과정;을 포함할 수 있다.

Description

공간 데이터 분산 처리 시스템 및 그 동작 방법{Distributed processing system in spatial data and method for operating the same}
본 발명은 공간 데이터 분산 처리 시스템으로서, 공간 데이터의 빅데이터를 분산하여 처리하는 시스템 및 그 동작 방법에 관한 것이다.
위키피디아의 정의에 따르면, 빅데이터란 기존 데이터베이스 관리도구의 데이터 수집, 저장, 관리 및 분석의 역량을 넘어서는 대량의 정형 또는 비정형 데이터 셋을 의미한다.
그리고, 빅데이터 처리 기술은 대량의 정형 또는 비정형 데이터 셋을 수집, 저장, 관리 및 분석하여 가치를 추출하거나 원하는 결과를 분석해내는 것을 의미한다.
다른 한편으로, 빅데이터 처리 기술은 낮은 비용으로 다양한 종류의 대규모 데이터로부터 가치를 추출하고, 초고속 수집, 발굴 및 분석 가능한 아키텍쳐 기술로 정의되고 있다.
최근 빅테이터 처리 기술은 하둡(Hadoop)이라는 대표적인 오픈 소스 기반 플랫폼과 그로부터 확장된 요소에 의해 사회 각 분야에서 활용되고 있다. 구체적으로, 빅데이터 처리 기술은 정치 및 사회 분야, 경제 분야, 경영 분야 및 문화 분야 등에서 그 활용도가 점점 높아지고 있으며, 인간 사회의 새로운 가치와 시장을 창출하는데 기여하고 있다.
GIS(Geographic Information System)로 통칭 되는 공간 데이터 처리 분야에서도 빅데이터 처리 기술을 접속 하려는 시도가 있다.
그런데 주요 기관 및 기업에서 현재 보유 하고 있는 공간 데이터는 데이터 크기로는 수십 ~ 수백 기가바이트 수준이지만 공간 데이터의 특성상 공간에 대한 인접성이 고려된 백터 기반 연산이 필요하므로 연산에 대한 부하가 아주 크다. 이로 인해 한번에 전국단위 분석이 불가능한 분석이 존재한다. 일부 분석 중 가능 한 경우 시군구 단위 또는 읍면동으로 나누어 분석하여 최장 4개월이 소요되는 경우도 있다.
하둡 기반에서 공간 데이터를 처리하는 경우 공간데이터에 대한 인덱스정보가 없으므로 공간 데이터 전체를 읽어들여 처리하게 되고, 공간 분석의 경우 두 개 이상의 공간 레이어가 한번에 처리 되어야 하는 경우 두 레이어 모두를 읽어 들여 처리 하게 되므로 분석의 효율성을 극대화 하지 못하는 문제가 발생한다.
한국공개특허 10-2015-0058709
본 발명의 기술적 과제는 공간 데이터의 빅데이터를 분산하여 처리하는 시스템 및 그 동작 방법을 제공하는데 있다. 또한 본 발명의 기술적 과제는 지리적 정보의 기하학 도형의 특성을 이용한 인덱스 정보를 이용하여 검색할 수 있는 수단을 제공하는데 있다.
본 발명의 실시 형태는, 복수개의 데이터 저장 서버를 포함하는 분산 클러스터 장치가, 복수개의 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 복수개의 데이터 저장 서버에 분산하여 저장하는 공간 데이터 분산 저장 과정; 클라이언트 단말기가, 분산 클러스터 장치에 검색 영역 쿼리를 전송하여 검색 결과를 요청하는 검색 영역 쿼리 전송 과정; 상기 분산 클러스터 장치가, 데이터 저장 서버에 저장된 공간 데이터 중에서 상기 검색 영역 쿼리에 매칭되는 검색 결과를 추출하는 공간 데이터 검색 과정; 및 상기 분산 클러스터 장치가, 상기 검색 영역 쿼리에 매칭되는 검색 결과를 상기 클라이언트 단말기에 전송하는 검색 결과 전송 과정;을 포함하며, 상기 공간 데이터 분산 저장 과정은, 상기 공간 데이터를 상기 데이터 저장 서버에 분산하여 저장하는 과정; 상기 공간 데이터를 기하학 도형(geometry)을 기준으로 복수개의 그리드로 구획하는 그리드 구획 과정; 각 그리드별로 그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 생성하는 인덱스 정보 생성 과정; 및 각 그리드별로 인덱스 정보를 할당하여 저장하는 인덱스 정보 할당 과정;을 포함할 수 있다.
상기 인덱스 정보는, 그리드를 식별할 수 있는 고유의 그리드 아이디, 기하학 도형(geometry)의 각 모서리를 둘러싸는 영역 정보인 인벨롭 영역, 그리드가 저장된 데이터 저장 서버의 위치 정보를 포함할 수 있다.
상기 인덱스 정보 할당 과정은, 하나의 기하학 도형(geometry)이 복수개의 그리드에 분할되어 속하는 경우, 기하학 도형이 걸치는 모든 그리드에 인덱스 정보를 할당하여 저장할 수 있다.
상기 공간 데이터 검색 과정은, 클라이언트 단말기로부터 수신한 검색 영역 쿼리에 존재하는 기하학 도형(geometry)의 인벨롭 영역을 산출하는 인벨롭 영역 산출 과정; 산출한 인벨롭 영역을 가지는 인덱스 정보를 검색하는 인덱스 정보 검색 과정; 검색된 인덱스 정보내의 그리드 아이디를 가지는 그리드를 추출하는 그리드 추출 과정; 및 인덱스 정보내의 그리드가 저장된 데이터 저장 서버의 위치 정보를 이용하여, 추출된 그리드에 매칭되는 공간 데이터를 검색 결과로서 추출하는 검색 결과 추출 과정;을 포함할 수 있다.
상기 그리드 추출 과정은, 동일한 기하학 도형(geometry)을 가지는 복수개의 그리드가 추출된 경우, 중복된 그리드를 제거하고 하나의 그리드만 선택함을 특징으로 할 수 있다.
또한 본 발명의 실시 형태는, 복수개의 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 대상으로 검색 영역 쿼리를 분산 클러스터 장치에 전송하여 검색을 요청하여 상기 검색 영역 쿼리에 매칭되는 검색 결과를 수신하는 클라이언트 단말기; 복수개의 기하학 도형(Geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 복수개의 데이터 저장 서버에 분산 저장하며, 그리드에 있는 기하학 도형의 특성을 나타낸 인덱스 정보를 그리드별로 생성하며, 상기 클라이언트 단말기로부터 검색 영역 쿼리가 수신되면 상기 인덱스 정보를 이용하여 검색 영역 쿼리에 매칭되는 공간 데이터를 추출하여 검색 결과로서 상기 클라이언트 단말기에 전송하는 분산 클러스터 장치; 및 상기 클라이언트 단말기 및 분산 클러스터 장치와 유선 통신 또는 무선 통신을 제공하는 유무선 통신망;을 포함할 수 있다.
상기 분산 클러스터 장치는, 상기 클라이언트 단말기와 통신하는 분산 클러스터 통신부; 복수개의 데이터 저장 서버; 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 데이터 저장 서버에 분산 저장하는 분산 저장 처리부; 그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 그리드별로 생성하여 저장하는 인덱스 정보 처리부; 및 클라이언트 단말기로부터 검색 영역 쿼리가 수신되면 상기 인덱스 정보를 이용하여 검색 영역 쿼리에 매칭되는 공간 데이터를 추출하여 검색 결과로서 상기 클라이언트 단말기에 전송하는 검색 처리부;를 포함할 수 있다.
본 발명의 실시 형태에 따르면 공간 빅데이터 수준의 대용랑 공간 데이터에서 1초 미만에서 수시간 내에 원하는 공간 검색 및 조회가 가능하여 공간데이터 검색의 조회 및 검색에 필요한 인적, 시간적 비용을 획기적으로 줄일 수 있다.
또한 본 발명의 실시 형태에 따르면 저가의 HDFS 클러스터를 사용하여 빅데이터 수준의 대용량 공간데이터의 저장 및 고속 검색이 가능하다. 따라서, 본 발명에서는 검색 엔진과 연계한 분산 병렬 검색을 통해 더 높은 확장성과 가용성을 제공하면서도, 종래의 상용 데이터베이스 대비 20~50% 수준의 비용으로 빅데이터 수준의 대용량 공간 데이터를 효율적으로 수집, 저장, 관리 및 분석할 수 있다. 더불어 두 개 이상의 기하학 도형을 중첩하여 처리하는 경우 공간 인덱스가 없으면 두 개의 레이어의 모든 조합의 쌍을 연산해야 하지만 본 발명에 의한 공간 검색기능을 통해 공간 레이어간 공간상 중첩되는 부분만을 연산할 수 있어 훨씬 더 효율적이고 고속의 공간데이터 처리가 가능하다.
도 1은 본 발명의 실시 예에 따른 공간 데이터 분산 처리 시스템을 도시한 구성도.
도 2는 본 발명에 따른 공간 데이터 분산 처리 시스템의 세부 구성도.
도 3은 본 발명의 실시예에 따른 인덱스 정보의 구성 필드를 도시한 그림.
도 4는 본 발명의 실시예에 따른 공간 데이터 분산 처리 과정을 도시한 흐름도.
도 5는 본 발명의 실시예에 따른 공간 데이터 분산 저장 과정을 도시한 플로차트.
도 6은 본 발명의 실시예에 따른 공간 데이터 검색 과정을 도시한 플로차트.
도 7은 본 발명의 실시예에 따라 클라이언트 단말기가 검색 영역을 선택하는 모습을 도시한 그림.
도 8은 본 발명의 실시예에 따라 기하학 도형의 인벨롭 영역의 예시 그림.
이하, 본 발명의 장점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은, 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것으로, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 또한, 본 발명을 설명함에 있어 관련된 공지 기술 등이 본 발명의 요지를 흐리게 할 수 있다고 판단되는 경우 그에 관한 자세한 설명은 생략하기로 한다.
도 1은 본 발명의 실시 예에 따른 공간 데이터 분산 처리 시스템을 도시한 구성도이고, 도 2는 본 발명에 따른 공간 데이터 분산 처리 시스템의 세부 구성도 이며, 도 3은 본 발명의 실시예에 따른 인덱스 정보의 구성 필드를 도시한 그림이다.
유무선 통신망(300)은, 클라이언트 단말기(200) 및 분산 클러스터 장치(100)와 유선 통신 또는 무선 통신을 제공한다. 이러한 유무선 통신망(300)이 무선 통신망으로 구현되는 경우, 기지국(BTS;Base Transceiver Station), 이동교환국(MSC;Mobile Switching Center), 및 홈 위치 등록기(HLR;Home Location Register)로 이루어진 무선 이동통신망을 이용하여 데이터 통신을 할 수 있다. 참고로, 이동 통신망(mobile radio communication network)은 기지국(BTS), 이동교환국(MSC), 홈 위치 등록기(HLR) 이외에, 무선 패킷 데이터의 송수신을 가능하게 하는 액세스 게이트웨이(Access Gateway), PDSN(Packet Data Serving Node) 등과 같은 구성 요소를 추가로 포함할 수 있다. 또한 유무선 통신망(300)이 유선 통신망으로 구현되는 경우, 네트워크 통신망으로 구현될 수 있는데 TCP/IP(Transmission Control Protocol/Internet Protocol) 등의 인터넷 프로토콜에 따라서 데이터 통신이 이루어질 수 있다.
클라이언트 단말기(200)는, 복수개의 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 대상으로 검색 영역 쿼리를 분산 클러스터 장치(100)에 전송하여 검색을 요청하여 검색 영역 쿼리에 매칭되는 검색 결과를 수신하는 단말기이다. 클라이언트 단말기(200)는, 데스크탑 PC(desktop PC)를 예로 들어 설명하나, 데스크탑 PC뿐만 아니라 스마트폰(smart phone), 태블릿 PC(tablet PC), 슬레이트 PC(slate PC), 노트북 컴퓨터(notebook computer) 등이 해당될 수 있다. 물론, 본 발명이 적용 가능한 단말기는 상술한 종류에 한정되지 않고, 외부 장치와 통신이 가능한 단말기를 모두 포함할 수 있음은 당연하다.
공간 검색을 하는 클라이언트 단말기(200)는, 공간데이터 I/O드라이버를 포함하며, 이러한 공간 데이터 I/O 드라이버는 클라이언트로부터 선택된 검색 영역에 대한 검색 영역 쿼리를 생성하여 분산 클러스터 장치(100)에 전송하며, 또한 분산 클러스터 장치(100)로부터의 검색 결과를 수신한다. 더불어 분산 클러스터 장치(100)로부터 공간 데이터의 각 그리드의 인덱스 정보를 수신할 수 있다.
분산 클러스터 장치(100)는, 하둡 기반의 분산 데이터 저장소인 HDFS 클러스터(Hadoop Distributed File Syste Cluster)로서, 적어도 하나 이상의 복수의 데이터 저장 서버(10)를 포함할 수 있다. 여기서 HDFS(Hadoop Distributed File System)은 파일 분산 시스템을 말하는 것으로서, 용량 큰 파일들을 복수개의 HDFS 서버인 데이터 저장 서버(10)에 분산하여 저장하는 시스템을 말한다.
분산 클러스터 장치(100)는, 복수개의 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 복수개의 데이터 저장 서버(10)에 분산하여 저장하며, 그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 그리드별로 생성하며, 상기 클라이언트 단말기(200)로부터 검색 영역 쿼리가 수신되면 인덱스 정보를 이용하여 검색 영역 쿼리에 매칭되는 공간 데이터를 추출하여 검색 결과로서 클라이언트 단말기(200)에 전송한다.
이를 위하여 분산 클러스터 장치(100)는, 도 2에 도시한 바와 같이 분산 클러스터 통신부(110), 데이터 저장 서버(10), 분산 저장 처리부(120), 인덱스 정보 처리부(130), 및 검색 처리부(140)를 포함할 수 있다.
분산 클러스터 통신부(110)는, 클라이언트 단말기(200)와 통신하는 기능을 수행한다. 클라이언트 단말기(200)의 공간 데이터 I/O드라이버로부터 전송되는 공간 데이터를 수신한다.
데이터 저장 서버(10)는, 공간 데이터가 저장되는 서버로서 복수개 마련된다.
분산 저장 처리부(120)는, 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 복수개의 데이터 저장 서버(10)에 분산하여 저장한다.
본 발명에서 공간 데이터라 함은 기하학 도형(Geometry)와 지리적 속성 정보를 포함한다. 기하학 도형은 지리정보시스템(GIS)에 널리 사용되는 Geometry포맷으로서, 지리 현상에 대한 기하학적 위치정보의 저장을 제공해 주는 데이터 포맷이다. Point, Line, MultiLine, Polygon, MultiPoint 등 2차원 사상(feature)을 지원하고 있으며, 본 발명에서는 2차원 사상(feature)를 예로 들어 설명하였으나, 3차원 사상(feature)도 지원할 수 있을 것이다.
또한 지리적 속성 정보는 각 기하학 도형(Geomery)이 공간적으로 나타내는 지역의 속성 정보(예컨대, 기하학 도형이 나타내는 영역의 인구밀도, 소비성향, 청년층 분포도 등)를 말한다. 즉, 공간데이터라 함은 기하학 도형들의 집합인 2차원 전자 지도에 기하학 도형이 나타내는 지역의 지리적 속성 정보를 함께 포함한 것을 말한다.
인덱스 정보 처리부(130)는, 그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 그리드별로 생성하여 저장한다. 기하학 도형의 특성이라 함은, 기하학 도형을 특정지울 수 있는 특성 정보를 말한다. 인덱스 정보의 구성 필드를 도 3에 도시하였는데, 인덱스 정보는, 그리드를 식별할 수 있는 고유의 그리드 아이디, 기하학 도형(geometry)의 각 모서리를 둘러싸는 영역 정보인 인벨롭 영역, 그리드가 저장된 데이터 저장 서버(10)의 위치 정보를 포함한다. 여기서 인벨롭(envelope) 영역이라 함은, 2차원의 기하학 도형의 각 모서리를 둘러싸는 영역 정보를 말하는 것으로서, 2차원으로 된 기하학 도형의 X축 최소값, X축 최대값, Y축 최소값, Y축 최대값에 대한 정보를 말한다.
검색 처리부(140)는, 클라이언트 단말기(200)로부터 검색 영역 쿼리가 수신되면 인덱스 정보를 이용하여 검색 영역 쿼리에 매칭되는 공간 데이터를 추출하여 검색 결과로서 클라이언트 단말기(200)에 전송한다. 예를 들어, 공간 데이터로 된 전자지도상에서 특정 영역을 검색 영역 쿼리로서 수신하면, 수신한 검색 영역 쿼리에 일부라도 있는 기하학 도형의 인벨롭 영역을 추출하여 이와 오차범위 내에서 매칭되는 인벨롭 영역을 가지는 인덱스 정보를 추출하여, 해당 인덱스 정보에 있는 데이터 저장 서버(10)의 위치 정보를 참조하여, 데이터 저장 서버(10)로부터 공간 데이터들을 추출할 수 있다.
도 4는 본 발명의 실시예에 따른 공간 데이터 분산 처리 과정을 도시한 흐름도이며, 도 5는 본 발명의 실시예에 따른 공간 데이터 분산 저장 과정을 도시한 플로차트이며, 도 6은 본 발명의 실시예에 따른 공간 데이터 검색 과정을 도시한 플로차트이며, 도 7은 본 발명의 실시예에 따라 클라이언트 단말기가 검색 영역을 선택하는 모습을 도시한 그림이며, 도 8은 본 발명의 실시예에 따라 기하학 도형의 인벨롭 영역의 예시 그림이다.
우선, 복수개의 데이터 저장 서버(10)를 포함하는 분산 클러스터 장치(100)가, 복수개의 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 복수개의 데이터 저장 서버(10)에 분산하여 저장하는 공간 데이터 분산 저장 과정(S410)을 가진다.
이러한 공간 데이터 분산 저장 과정(S410)은, 도 5에 도시한 바와 같이 공간 데이터를 데이터 저장 서버(10)에 분산하여 저장하는 과정(S411)과, 공간 데이터를 기하학 도형(geometry)을 기준으로 복수개의 그리드로 구획하는 그리드 구획 과정(S412)과, 각 그리드별로 그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 생성하는 인덱스 정보 생성 과정(S413)과, 각 그리드별로 인덱스 정보를 할당하여 저장하는 인덱스 정보 할당 과정(S414)을 가진다. 이와 같이 공간 데이터를 복수개의 그리드로 분할하여 저장하고, 그리드 위치별로 인덱스 정보를 생성하여 기록함으로써, 파일의 업데이트가 불가능한 분산 시스템의 단점을 보완하고, 인덱스 검색 시 해당 그리드만 엑세스하여 효율을 높일 수 있다.
여기서 공간 데이터 분산 저장 과정(S410)은, 데이터 자체를 저장하는 단계에서는 공간성을 상관하지 않고 데이터가 저장되는 크기만으로 분산 저장한다. 예컨대, 전체 200메가의 데이터가 블록사이즈 128MB로 저장되는 경우 2개블록으로 분산 저장된다. 따라서 본 발명은 인접성이나 구획으로 나누지 않고 저장한 데이터를 구획화된 공간 인덱스를 통해 조회할 수 있는 특징으로 가진다.
또한 그리드 구획 과정(S412)은 공간 데이터를 기하학 도형(geometry)을 기준으로 복수개의 그리드로 분할하는 것으로서, 예를 들어, 도 7에 도시한 바와 같은 공간 데이터에 포함된 복수개의 기하학 도형(geometry)을 대상으로 X축으로 N개, Y축으로 N개로 구획하여 총 N×N개의 그리드로 분할한 수 있다. 따라서 X축으로는 i_0 ~ i_N개로 분할되며 Y축으로는 j_0 ~ j_N개로 분할된다.
참고로, 이러한 그리드 구획은, 관리자 임의 또는 시스템에서 지정한 그리드 개수로 분할하여 그리드 분할 정보를 저장하여 추후 검색시에 활용한다. 또는 하기의 [수학식 1]와 같은 별도의 그리드 구획 관련식을 미리 설정해놓고 그리드 구획 개수를 설정할 수 있다. 여기서 레이어 전체의 인벨롭(envelope)라 함은 모든 기하학 도형 전체의 인벨롭 영역이다. 이밖에 그리드 구획에 대한 다양한 구획 방식이 있을 수 있을 것이다.
[수학식 1]
Figure 112015123440835-pat00001
Figure 112015123440835-pat00002
Figure 112015123440835-pat00003
Figure 112015123440835-pat00004
Figure 112015123440835-pat00005
Figure 112015123440835-pat00006
Figure 112015123440835-pat00007
Figure 112015123440835-pat00008
Figure 112015123440835-pat00009
한편, 인덱스 정보 생성 과정(S413)은, 각 그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 생성하는데, 여기서 인덱스 정보는, 도 3에 도시한 바와 같이, 그리드를 식별할 수 있는 고유의 그리드 아이디, 기하학 도형(geometry)의 각 모서리를 둘러싸는 영역 정보인 인벨롭 영역, 그리드가 저장된 데이터 저장 서버(10)의 위치 정보를 포함한다. 여기서 인벨롭(envelope) 영역이라 함은, 2차원의 기하학 도형의 각 모서리를 둘러싸는 영역 정보를 말하는 것으로서, 2차원으로 된 기하학 도형의 X축 최소값(xmin), X축 최대값(xmax), Y축 최소값(ymin), Y축 최대값(ymax)에 대한 정보를 말한다. 즉, 인벨롭(envelope) 영역은 도 8의 예처럼 어떤 기학학 도형(geometry)를 모두 포함하는 최소 크기의 사각영역이다. 인벨롭(envelope) 영역을 공간 레이어 전체에 대하여 설명하면 해당 레이어 전체를 포함하는 최소 크기의 사각 영역이 된다.
인덱스 정보 할당 과정(S414)은, 하나의 기하학 도형(geometry)이 복수개의 그리드에 분할되어 속하는 경우, 기하학 도형이 걸치는 모든 그리드에 인덱스 정보를 할당하여 저장되도록 한다. 예를 들어, 도 8과 같이 오각형의 기하학 도형이 있다고 가정할 경우, 기하학 도형은, 1사분면의 <i+1,j+1> 그리드, 2사분면의 <i,j+1>, 3사분면의 <i,j>, 4사분면의 <i+1,j>에 모두 걸쳐있게 된다. 이럴 경우, 1사분면의 <i+1,j+1> 그리드, 2사분면의 <i,j+1>, 3사분면의 <i,j>, 4사분면의 <i+1,j>에 모두 동일한 기하학 도형이 저장된다. 참고로 이와 같이 해당 기하학 도형(geometry)이 여러 그리드 영역에 걸쳐 중복 저장되는 경우, 해당하는 그리드에 모두 인덱스 정보를 기록하고 향후 인덱스 호출 시 중복에 관련한 처리를 한다.
이와 같이, 본 발명에서는 오픈 소스 프로젝트인 하둡(Hadoop)과 맵리듀스(MapReduce)로 대표되는 빅데이터 처리 플랫폼 및 기술을 응용하여 공간데이터를 HDFS(Hadoop Distributed File System) 기반으로 HDFS 클러스터와 같은 분산 클러스터에 분산 저장하고 인덱싱 처리 후 인덱스 정보 또한 분산 클러스터 장치(100)내에 분산 저장할 수 있다.
한편, 상기와 같이 공간 데이터 분산 저장 과정(S410)이 있은 후, 도 4에 도시한 바와 같이 클라이언트 단말기(200)가, 분산 클러스터 장치(100)에 검색 영역 쿼리를 전송하여 검색 결과를 요청하는 검색 영역 쿼리 전송 과정(S420)을 가진다.
검색 영역 쿼리를 수신한 분산 클러스터 장치(100)가, 데이터 저장 서버(10)에 저장된 공간 데이터 중에서 검색 영역 쿼리에 매칭되는 검색 결과를 추출하는 공간 데이터 검색 과정(S30)을 가진다.
그리고, 검색 영역 쿼리에 매칭되는 검색 결과를 클라이언트 단말기(200)에 전송하는 검색 결과 전송 과정(S440)을 가진다.
상기에서 공간 데이터 검색 과정(S430)은, 도 6에 도시한 바와 같이, 우선, 클라이언트 단말기(200)로부터 수신한 검색 영역 쿼리에 존재하는 기하학 도형(geometry)의 인벨롭 영역을 산출하는 인벨롭 영역 산출 과정(S431)과, 산출한 인벨롭 영역을 가지는 인덱스 정보를 검색하는 인덱스 정보 검색 과정(S432)과, 검색된 인덱스 정보내의 그리드 아이디를 가지는 그리드를 추출하는 그리드 추출 과정(S433)과, 인덱스 정보내의 그리드가 저장된 데이터 저장 서버(10)의 위치 정보를 이용하여 추출된 그리드에 매칭되는 공간 데이터를 검색 결과로서 추출하는 검색 결과 추출 과정(S434)을 가진다.
상술하면, 도 7에 도시한 바와 같이 특정 영역이 클라이언트로부터 선택되어 검색 영역으로 결정되면, 해당 검색 영역에 걸쳐있는 각 기하학 도형의 인벨롭 영역을 산출하는 것이다. 기하학 도형의 인벨롭 영역을 산출하면, 산출한 인벨롭 영역과 매칭되는 값을 가지는 인덱스 정보를 검색하여, 해당 인덱스 정보에 있는 그리드 아이드를 가지는 그리드를 추출하는 것이다. 도 7에서는, (i,j)와 (i+1,j)가 검색 영역 쿼리의 그리드로 추출된다. 참고로 이러한 그리드 추출은, 전자지도 상의 구획되어 저장된 그리드 구획 정보를 이용하여 그리드를 추출할 수 있다. 또는 [수학식 1]과 같은 다양한 관련 수식을 적용하여 그리드를 추출할 수 있다.
다만, 동일한 기하학 도형(geometry)을 가지는 복수개의 그리드가 추출된 경우, 중복된 그리드를 제거하고 하나의 그리드만 선택할 수 있다. 예를 들어, 사용자로부터 선택된 영역에 걸쳐있는 기하학 도형이 도 8에 도시한 바와 같이 1사분면의 <i+1,j+1> 그리드, 2사분면의 <i,j+1>, 3사분면의 <i,j>, 4사분면의 <i+1,j>에 걸쳐 있어, 4개의 그리드가 추출되는 경우 동일한 기하학 도형의 정보를 가지고 있는 4개의 그리드가 중복되어 추출된다.
이럴 경우, 미리 설정된 인덱스 호출 순서가 <i, j>, <i, j+1>, <i+1, j>, <i+1, j+1>인 경우, 인덱스 호출 순서에 의해 그리드<i, j+1>, <i+1, j>, <i+1, j+1>의 인덱스 호출 시 해당 기하학 도형(geometry)는 그리드 <i, j>에서 이미 호출 되었음을 알 수 있으므로 중복 처리하여 인덱스 탐색 결과에서 제외할 수 있다.
상술한 본 발명의 설명에서의 실시예는 여러가지 실시가능한 예중에서 당업자의 이해를 돕기 위하여 가장 바람직한 예를 선정하여 제시한 것으로, 이 발명의 기술적 사상이 반드시 이 실시예만 의해서 한정되거나 제한되는 것은 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 다양한 변화와 변경 및 균등한 타의 실시예가 가능한 것이다.
10:데이터 저장 서버
100:분산 클러스터 장치 110:분산 클러스터 통신부
120:분산 저장 처리부 130:인덱스 정보 처리부
140:검색 처리부 200:클라이언트 단말기

Claims (7)

  1. 복수개의 데이터 저장 서버를 포함하는 분산 클러스터 장치가, 복수개의 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 복수개의 데이터 저장 서버에 분산하여 저장하는 공간 데이터 분산 저장 과정;
    클라이언트 단말기가, 분산 클러스터 장치에 검색 영역 쿼리를 전송하여 검색 결과를 요청하는 검색 영역 쿼리 전송 과정;
    상기 분산 클러스터 장치가, 데이터 저장 서버에 저장된 공간 데이터 중에서 상기 검색 영역 쿼리에 매칭되는 검색 결과를 추출하는 공간 데이터 검색 과정; 및
    상기 분산 클러스터 장치가, 상기 검색 영역 쿼리에 매칭되는 검색 결과를 상기 클라이언트 단말기에 전송하는 검색 결과 전송 과정;을 포함하며,
    상기 공간 데이터 분산 저장 과정은,
    상기 공간 데이터를 상기 데이터 저장 서버에 분산하여 저장하는 과정;
    상기 공간 데이터를 기하학 도형(geometry)을 기준으로 복수개의 그리드로 구획하는 그리드 구획 과정;
    각 그리드별로 그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 생성하는 인덱스 정보 생성 과정; 및
    각 그리드별로 인덱스 정보를 할당하여 저장하는 인덱스 정보 할당 과정;
    을 포함하고,
    상기 인덱스 정보는,
    그리드를 식별할 수 있는 고유의 그리드 아이디, 기하학 도형(geometry)의 각 모서리를 둘러싸는 영역 정보인 인벨롭 영역, 그리드가 저장된 데이터 저장 서버의 위치 정보를 포함하며,
    상기 인덱스 정보 할당 과정은,
    하나의 기하학 도형(geometry)이 복수개의 그리드에 분할되어 속하는 경우, 기하학 도형이 걸치는 모든 그리드에 인덱스 정보를 할당하여 저장하는 공간 데이터 분산 처리 방법.
  2. 삭제
  3. 삭제
  4. 청구항 1에 있어서, 상기 공간 데이터 검색 과정은,
    클라이언트 단말기로부터 수신한 검색 영역 쿼리에 존재하는 기하학 도형(geometry)의 인벨롭 영역을 산출하는 인벨롭 영역 산출 과정;
    산출한 인벨롭 영역을 가지는 인덱스 정보를 검색하는 인덱스 정보 검색 과정;
    검색된 인덱스 정보내의 그리드 아이디를 가지는 그리드를 추출하는 그리드 추출 과정; 및
    인덱스 정보내의 그리드가 저장된 데이터 저장 서버의 위치 정보를 이용하여, 추출된 그리드에 매칭되는 공간 데이터를 검색 결과로서 추출하는 검색 결과 추출 과정;
    을 포함하는 공간 데이터 분산 처리 방법.
  5. 청구항 4에 있어서, 상기 그리드 추출 과정은,
    동일한 기하학 도형(geometry)을 가지는 복수개의 그리드가 추출된 경우, 중복된 그리드를 제거하고 하나의 그리드만 선택함을 특징으로 하는 공간 데이터 분산 처리 방법.
  6. 청구항 1, 청구항 4 및 청구항 5 중 어느 한 항에 기재된 공간 데이터 분산 처리 방법을 실행하는 공간 데이터 분산 처리 시스템이고,
    복수개의 기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 대상으로 검색 영역 쿼리를 분산 클러스터 장치에 전송하여 검색을 요청하여 상기 검색 영역 쿼리에 매칭되는 검색 결과를 수신하는 클라이언트 단말기;
    복수개의 기하학 도형(Geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 복수개의 데이터 저장 서버에 분산 저장하며, 그리드에 있는 기하학 도형의 특성을 나타낸 인덱스 정보를 그리드별로 생성하며, 상기 클라이언트 단말기로부터 검색 영역 쿼리가 수신되면 상기 인덱스 정보를 이용하여 검색 영역 쿼리에 매칭되는 공간 데이터를 추출하여 검색 결과로서 상기 클라이언트 단말기에 전송하는 분산 클러스터 장치; 및
    상기 클라이언트 단말기 및 분산 클러스터 장치와 유선 통신 또는 무선 통신을 제공하는 유무선 통신망;
    을 포함하는 공간 데이터 분산 처리 시스템.
  7. 청구항 6에 있어서, 상기 분산 클러스터 장치는,
    상기 클라이언트 단말기와 통신하는 분산 클러스터 통신부;
    복수개의 데이터 저장 서버;
    기하학 도형(geometry) 및 지리적 속성 정보를 포함하는 공간 데이터를 데이터 저장 서버에 분산 저장하는 분산 저장 처리부;
    그리드내의 기하학 도형의 특성을 나타낸 인덱스 정보를 그리드별로 생성하여 저장하는 인덱스 정보 처리부; 및
    클라이언트 단말기로부터 검색 영역 쿼리가 수신되면 상기 인덱스 정보를 이용하여 검색 영역 쿼리에 매칭되는 공간 데이터를 추출하여 검색 결과로서 상기 클라이언트 단말기에 전송하는 검색 처리부;
    를 포함하는 공간 데이터 분산 처리 시스템.
KR1020150180231A 2015-12-16 2015-12-16 공간 데이터 분산 처리 시스템 및 그 동작 방법 KR101654314B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150180231A KR101654314B1 (ko) 2015-12-16 2015-12-16 공간 데이터 분산 처리 시스템 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150180231A KR101654314B1 (ko) 2015-12-16 2015-12-16 공간 데이터 분산 처리 시스템 및 그 동작 방법

Publications (1)

Publication Number Publication Date
KR101654314B1 true KR101654314B1 (ko) 2016-09-06

Family

ID=56946211

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150180231A KR101654314B1 (ko) 2015-12-16 2015-12-16 공간 데이터 분산 처리 시스템 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR101654314B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101794883B1 (ko) 2016-12-23 2017-11-09 주식회사 포스웨이브 분산 파일 시스템에서의 대용량 공간 데이터의 고속 분산 색인 생성 및 저장 방법
KR20190042240A (ko) * 2017-10-16 2019-04-24 두산중공업 주식회사 인공 지능을 이용한 격자 생성 장치 및 방법
CN110399566A (zh) * 2018-04-20 2019-11-01 北京搜狗科技发展有限公司 一种位置搜索方法、装置和电子设备
KR102213817B1 (ko) 2019-10-16 2021-02-09 주식회사 포스웨이브 인메모리 기반의 분산 처리 시스템에서의 공간 분할 시스템 및 그 방법
KR102221737B1 (ko) * 2019-09-23 2021-03-02 주식회사 포스웨이브 인메모리 기반의 분산 처리 시스템에서의 공간 데이터 처리 시스템 및 그 방법
CN110399566B (zh) * 2018-04-20 2024-06-07 北京搜狗科技发展有限公司 一种位置搜索方法、装置和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101083245B1 (ko) * 2011-01-31 2011-11-14 주식회사 서전지구 지역정보 추출방법, 지역정보 출력방법, 및 이를 위한 장치
KR20150058709A (ko) 2013-11-20 2015-05-29 대우조선해양 주식회사 빅 데이터 해석기반의 연구 능률 관리 및 운영 통합 시스템, 그리고 그 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101083245B1 (ko) * 2011-01-31 2011-11-14 주식회사 서전지구 지역정보 추출방법, 지역정보 출력방법, 및 이를 위한 장치
KR20150058709A (ko) 2013-11-20 2015-05-29 대우조선해양 주식회사 빅 데이터 해석기반의 연구 능률 관리 및 운영 통합 시스템, 그리고 그 방법

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101794883B1 (ko) 2016-12-23 2017-11-09 주식회사 포스웨이브 분산 파일 시스템에서의 대용량 공간 데이터의 고속 분산 색인 생성 및 저장 방법
KR20190042240A (ko) * 2017-10-16 2019-04-24 두산중공업 주식회사 인공 지능을 이용한 격자 생성 장치 및 방법
KR101997140B1 (ko) 2017-10-16 2019-07-05 두산중공업 주식회사 인공 지능을 이용한 격자 생성 장치 및 방법
CN110399566A (zh) * 2018-04-20 2019-11-01 北京搜狗科技发展有限公司 一种位置搜索方法、装置和电子设备
CN110399566B (zh) * 2018-04-20 2024-06-07 北京搜狗科技发展有限公司 一种位置搜索方法、装置和电子设备
KR102221737B1 (ko) * 2019-09-23 2021-03-02 주식회사 포스웨이브 인메모리 기반의 분산 처리 시스템에서의 공간 데이터 처리 시스템 및 그 방법
KR102213817B1 (ko) 2019-10-16 2021-02-09 주식회사 포스웨이브 인메모리 기반의 분산 처리 시스템에서의 공간 분할 시스템 및 그 방법

Similar Documents

Publication Publication Date Title
US9933979B2 (en) Device and method for storing data in distributed storage system
CN104820714B (zh) 基于hadoop的海量瓦片小文件存储管理方法
KR101794883B1 (ko) 분산 파일 시스템에서의 대용량 공간 데이터의 고속 분산 색인 생성 및 저장 방법
CN105933376B (zh) 一种数据操作方法,服务器及存储系统
KR101654314B1 (ko) 공간 데이터 분산 처리 시스템 및 그 동작 방법
EP3076307A1 (en) Method and device for responding to a request, and distributed file system
CN105338113A (zh) 一种针对城市数据资源共享的多平台数据互联系统
CN103116610A (zh) 基于HBase的矢量空间大数据存储方法
CN108205562B (zh) 地理信息系统的定位数据存储、检索方法及其装置
CN103888499A (zh) 一种分布式对象处理的方法及系统
CN109542861B (zh) 一种文件管理方法、装置和系统
KR102068788B1 (ko) 사용자 타겟 서비스를 제공하는 서버 및 그 서비스 제공방법
CN105630919A (zh) 存储方法及系统
CN104834650A (zh) 一种有效查询任务生成方法及系统
KR101852597B1 (ko) 이동객체 빅데이터 정보저장 시스템 및 이를 이용한 이동객체 빅데이터 저장 및 색인 처리 방법
CN102103657A (zh) 虚拟世界系统及实现虚拟世界的方法
JP2012008854A (ja) ストレージ仮想化装置
CN108153759A (zh) 一种分布式数据库的数据传输方法、中间层服务器及系统
CN102724301B (zh) 云数据库系统以及云数据读写处理方法、设备
CN114281855A (zh) 数据请求方法、装置、计算机设备、存储介质和程序产品
CN104424189A (zh) 基于云平台的定位解算方法和系统
CN111274004B (zh) 进程实例管理方法、装置及计算机存储介质
CN107220003A (zh) 一种数据读取方法和系统
Jiang et al. MOIST: a scalable and parallel moving object indexer with school tracking
CN113905252B (zh) 直播间的数据存储方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190625

Year of fee payment: 4