wfs를 불러올때 중요한 부분은 16행 부분이라 생각합니다. 여기에 선언한 ol.loadingstrategy.bbox 라이브러리는 wfs요청문에 bbox(Spatial Filter)가 자동으로 추가되어 서버에 요청을 하는것으로, 줌 레벨이 변결 될 경우, 이전 영역보다 작다면 서버에는 재요청을 하지 않도록합니다.
| ckan 은 라이선스의 제약이 없는 오픈소스기반의 강력한 데이터 플렛폼이다. 출처 - ckan.org
강력한 오픈소스 제품의 개발
모든 오픈소스 제품들은 모든 사람들이 정보이용에 평등 해야 한다는 GNU 선언 및 다양한 재능기부활동, 현장의 수요에 의해서 개발되고 배포된뒤 계속해서 개선과정을 거쳐 발전하는 생태계를 이루고 있다. 특히 수요가 많은 분야에서는 다양한 사람들의 참여로 상용제품을 능가하는 강력한 제품이 등장 하기도 한다. ckan의 활용 사례를 소개하기 전에 오픈소스 데이터플렛폼포털로 ckan이 개발되기 위해 수요를 제공한 공개데이터(OpenData) 에 대해 간략히 소개 한다.
지식 표현의 증대 , 공개데이터의 부각
인터넷이 발달 하고,인공지능등의 새로운 기술적 진보가 진행 되면서 다양한 지식의 표현 방법을 연구 하다 보니, 다수의 데이터를 필요로 하게 되었다. 이러한 수요로 데이터를 손쉽게 수급 받고, 자유롭게 활용하는 방법이 연구 되었다.
다양한 데이터의 수요 증가
다양한 데이터의 수요가 증대되었고, 다양한 데이터를 공공의 이익을 위해 제약조건없이 사용하기 위한 노력들을 하고 있으며, 이런 노력의 일환으로 데이터를 쉽게 개방하고 체계적으로 관리하기위한 OpenSource 프로그램 ckan (comprehensive knowledge archive network)을 개발하고 보급하여 사용하도록 하였다.
공개데이터(OpenData) 와 공공데이터
데이터를 공공데이터의 잠재성을 높게 평가하고 있는 외국의 사례를 조사하다 보니 개방형 데이터, 개방형 정부의 데이터로 볼 수 있으며 원문 그대로의 OpenData 는 포괄적인 의미이기 때문에 별도의 설명이 필요 하다.
공개데이터 (OpenData)란?
공개데이터 (OpenData)는 자유롭게 사용이 가능한 데이터를 의미 한다. 다양한 기관에서 많은 데이터를 생산하지만 생산기관의 제약 조건으로 데이터를 제대로 수급 받기 어렵고 사용하더라도 변경, 재 개방을 하기 어려운 점이 있으나. 간단하게 OpenData는 이런 제약조건이 없는 데이터이다.
이런 공개데이터를 활성화 시키기 위해서 영국의 Open Knowledge International에서는 공개데이터의 엄청난 잠재력을 인지 하고, 지속적으로 가치를 향상 시키는 활동을 하고 있다.
공공기관, 정부 에서 생산,개방하는 공공데이터를 개방데이터(OpenData) 조건으로 개방하여 공공데이터의 무한한 잠재력을 발전시키고, 데이터 개방으로 정부의 책임 강화, 건강한 삶 보장, 복지 증진 새로운 산업을 발굴하는데 사용하도록 하는 선순환 구조를 만들 수 있다.
ckan 은 공공데이터 및 오픈 데이터를 효율적으로 공개/공유하는 데이터 포털 플랫폼이다.
ckan의 개발 주체는 비영리 단체인 OKI(Open Knowledge International) 산하 Open Knowledge Labs이며, 공개데이터(OpenData)의 활성화를 위해 데이터 생산자, 생산기관에서 웹 상에서 단순하게 , 빠르게 공개 하는 것을 돕기위해서 만든 오픈소스데이터 포털이다.
ckan 의 장점
메타데이터기반으로 공개데이터를 체계적으로 관리 할 수 있다. 체계적으로 관리를 할 수 있어서 공개데이터의 가치를 올릴 수 있다. 공개데이터(OpenData)를 쉽게 이용하기 위해서 데이터 카탈로그 기능을 기반으로 데이터 검색, 메타데이터 제공, 데이터셋 제공을 하고 있다.
표준화된 데이터 적제 체계를 구성 하고 있어 ckan 을 도입한 기관간의 데이터 연계가 가능 하며, 다양한 익스텐션(Extension) 을 구성하여 시맨틱 웹(Semantic Web)과 같이 인터넷과 같은 분산환경에서 데이터에 대한 정보와 데이터 사이의 관계-의미 정보(Semanteme)를 공유하여 제공 할 수 있다.
Jack과 Laura Dangermond (둘은 부부이다.)가 1969 년컴퓨터 매핑과 공간 분석을 사용하여 광범위한 지리적 인 문제를 해결하기 위해 환경 시스템 연구소 (Environmental Systems Research Institute)를 설립하였으며, 이 회사는 토지이용 컨설팅 업무를 주로 수행 했었다 .
이 후 GIS 분야에서 지난 수십년간 다양한 토지이용 모델과 관련 컴퓨터 소프트웨어를 개발,공급 해 왔다. 시장의 수요와 기술의 발전에 관련 도메인의 거의 독점적인 입지를 다지며사업을 확장하여 미국내 10 개 지사와, 전세계 200개 국가에 80개 이상의 공급 업체와 제휴 하고 있다.
Web환경에서 GIS를 서비스 하기 위한 WebGIS 프로그램을 공급 하고 있으며, GIS 분야에서 세계 시장 점유율은 40.7 %이며(2011년 수치), 2014 년 Esri는 전 세계 GIS 소프트웨어 시장에서 약 43 %의 점유율을 차지했다. 이는 다른 어떤 공급 업체보다 월등히 높은 수치 이다. 아직 회사가 상장을 하지 않은 상태이며, 2016년 연매출 11억 달러로 추정된다.
지속적으로 전세계 사용자들을 대상으로 커뮤니티 운영, 학계와 연관된 esri 제품을 이용한 다양한 분야의 문제를 해결하는 GIS 모델 개발, 적극적인 마케팅을 진행 하여 경쟁사들에 비해서 완전히 차별된 제품신뢰성, 인지도를 쌓아 가고 있다.
주력제품은 유명한 ArcGIS for Desktop Ver.10.6 이다. ArcGIS for Desktop 은 ArcMap , ArcCatalog , ArcToolbox , ArcScene , ArcGlobe 및 ArcGIS Pro를 포함한 여러 통합 응용 프로그램으로 구성되어 있다. 이 제품군의 주요 구성 요소 인 ArcMap , ArcCatalog 및 ArcToolbox 를 사용하면 사용자가 지리 정보를 작성, 분석, 매핑, 관리, 공유 및 게시 할 수 있다.
서버 GIS
데스크탑 기반의 ArcGIS 기능을 웹브라우저 기반을 확장하는데 사용된다. ArcGIS Server , ArcGIS Online 등의 제품이 있다.
모바일 GIS
ArcPad 가 대표적인 제품으로 다양한 스마트디바이스에 배포 할 수 있는 제품 군이다. (ArcGIS 기반이 되는 Components 제작기반이 주로 Microsoft 의 기술을 많이 상속 받아서 Widows 기반 스마트 장치 제품에 편중이 심하다. )
개발자 GIS
전체 제품군이 Arc Object 로 불렸던것 같다. ArcGIS를 구성하는 Object 들을 제공하여 개발자가 ArcGIS를 특정 목적에 맞게 커스터마이징 하여 개발 할 수 있다.
온라인 GIS
ArcGIS Online 이 있다. Esri, ArcGIS 사용자 및 기타 신뢰할 수있는 데이터 공급자가 게시 한 컨텐츠, 지리 정보를 공유하고 검색 할 수있는 웹 응용 프로그램이다. 사용자는 그룹을 만들고 그룹에 가입 할 수 있으며, 공개 또는 그룹 내에서 공유 된 항목에 대한 액세스를 제어 할 수 있다.
클라우드의 SaaS(Software-as-a-Service) 개념으로 GIS 소프트웨어는 esri 가 공급 하고 사용자는 공간데이터분석, 매핑업무에 집중 한다. 라는 개념이다. 공간정보분석의 막강한 성능과 다양한 분야에서의 신뢰성은 esri 의 데스크탑GIS 에서 이미 달성 했지만, 시대가 변해 인터넷이 매우 빠른 속도로 정보를 교환하고, 대용량의 데이터를 필요로 하는 시대가 되었다. 클라우드 개념이 도입되면서 SaaS(Software-as-a-Service) 형태로 제품을 서비스 하는 시장이 개척 되었고, esri도 주력 제품인 ArcGIS for Desktop의 기능을 웹 기반 클라우드에 올리기 시작 한다.
분석기능이 무겁다
하지만 초창기에 웹 기반에서 모든 분석기능을 다 제공 하기 위해서는 하드웨어적인 한계가 분명 했고, 이어서 유연하게 GIS 데이터의 표출과 공유 쪽으로 초점이 모아졌다. 공유와 표출에 초점을 맞 추다 보니 무거운 공간분석을 수행하는 역할은 ArcGIS Desktop 을 이용하고, 데이터 분석 결과를 DBMS에 적재한 뒤 서버GIS 에서 Web기술을 이용해서 결과를 표출하고 조회 할 수 있는 기능을 제공하는 형태가 되었다.
웹 기반 클라우드를 활용 하다.
.net 이전시대에서 CGI 가 비주류로 물러나며, 웹 표준에 대한 논란 이전, 모질라와 MS 가 으르렁 거리며 독과점 소송을 이어가던 시절 이며, VB 스크립트 후발로 ASP가 생산성의 가치를 높이고 있던 시절 에 esri 제품에서 웹브라우저에서 지도를 표출 하는 것은 Map Object 나 ArcIMS를 이용해서 였다. 서버사이드에서 직접 오브젝트를 호출해서 웹 페이지에 지도 객체를 띄우거나 자바스크립트를 이용한 지도 라이브러리를 작성 해서 사용 했었다.
이후 ArcGIS Server 가 등판되고, esri 는 ArcGIS Desktop에서 편집한 지도를 손쉽게 웹으로 올릴 수 있는 체계를 공급 하였다. 이 시기에 IIS 에서 ASP 기반의 웹 서비스가 .net 으로 버전 업되고, 웹서버에 올라간 지도를 Restful API 로 공유를 하는 기술이 적용 되었다.
Arcgis Online 출시
발행된 지도가 손쉽게 웹에 배포 되자 웹의 특성을 이용한 여러 사람들의 동시접근 과 동시 이용을 위해서 Arcgis Online 이 출시 되었다. 실제 ArcGIS Server에서 출발한 웹 기능을 다수의 사용자와 데이터 공유, 할 수 있도록 ArcGIS Online 에서 제공 하고 있으며, Esri 의 개발자를 위한 레퍼런스 기술 관련 페이지 (esri Mapbook) 에서도 Arcgis Online 을 이용하여 지도를 공유하고 있다. 이후에 클라우드 기술이 중요하게 부각 되면서 서버 제품군을 클라우드환경에 맞춰서 개선하여 개발 하기 시작 했다.
ArcGIS Online - 출처 esri.com
사용자들의 공간정보 활용 및 공유가 중점
ArcGIS Server 에서 발행한 지도를 공유 하는 것이 중점이라고 생각 한다. ArcGIS Online 기반에서는 지도를 편집하거나 데이터를 공유하고 웹상에서 발행하는 작업이 가능 하다. 간단한 작업으로 지도에 POI를 생성해서 바로 발행 하고, 서비스에 반영하거나 Esri 에서 제공하는 배경지도와 전 세계에 다양한 지역의 주제도를 이용할 수 있었다. (안타깝게도 대한민국에서 활용할 수 있는것은 배경지도 정도였다. )
esri제품의 클라우드 유형
ArcGIS 의 Cloud Service Model 은 다음 세가지로 구분되었으며, ArcGIS 배포형태, 관리 주체에 따라 구분되어진다.
Non-Colud
- 일반적으로 사용자 머신에 배포 되는 ArcGIS Enterprise
Infrastructur-as-a-Service (IaaS)
- 클라우드 기반 머신에 배포 되는 ArcGIS Enterprise
Software-as-a-Service (SaaS)
- ArcGIS Online 과 Esri Managed Cloud Service(EMCS)
- 웹들 통해서 접근 되는 비 배포 방식
Esri Cloud 지원 제품의 관리 주체 별로 구분
사용자가 직접 관리하는 On-premise*, 혹은 AWS, Azure
Esri 에서 관리 하는 Esri Managed Cloud Service(EMCS)
* 온프레미스(On-premise)란
소프트웨어 등 솔루션을 클라우드 같이 원격 환경이 아닌 자체적으로 보유한 전산실 서버에 직접 설치해 운영하는 방식을 말합니다. 온프레미스는 클라우드 컴퓨팅 기술이 나오기 전까지 기업 인프라 구축의 일반적인 방식이었기 때문에 이전 또는 전통적인 이라는 단어와 함께 사용됩니다. (용어 - 출처 : 디지털 타임즈)
Esri Cloud 지원 제품의 IaaS방식 배포 방식에 따른 분류
아마존 AWS 와 MS Azure 에서 Esri 제품 이미지가 준비되어 클라우드 기반 가상머신에 이미지를 적용 한 뒤에 사용자가 제품을 설정 할 수 있도록 설정도구*를 제공 한다.
구글클라우드에 ArcGIS 이미지와 설정 도구는 아직 지원을 안 하는데 Google Earth 때문에 구굴을 경쟁사로 인식 해서가 아닌가 한다. 하지만 ArcGIS Enterprise 이미지가 없을 뿐이고, ArcGIS Enterprise 제품은 다양한 IaaS 기반에서 사용 할 수 있다.
데스크탑GIS 에서 클라우드 서비스까지 쭉 올라왔지만 최근 기술의 요구사항은 대용량 데이터를 이용한 분석 서비스를 제공하는데 어느정도의 효율성이 나오느냐가 관건 이다.(이 글에서는 DBMS에 저장되는 대용량 공간정보의 방식은 논하지 않았다.)
esri 에서 ArcGIS Enterprise를 이용한 클라우드기반 어플리케이션 배포를 제공 하지만 클라우드 고유의 기능인 Auto-Scaling을 이용한 기술 보다는 표출에 따라 유연한 서버 증설등에 무게를 두고 있는 것 같다.
앞서 이야기 했듯이 esri 의 클라우드 서비스는 사용자들의 공간정보 공유 및 활용이 중점 인지라 표출에 따른 성능을 우선으로 한다면 빠른 표출이 중요한 관건이다. 하지만 아직까지는 데스크탑GIS의 Components를 활용해서 ArcGIS Enterprise 제품을 IaaS 환경에서 특정 공간분석 모델을 대용량 데이터 기반으로 연산 할 수 있는 기능을 구현 하는 것 은 esri에서 제공하는 제품을 클릭 몇 번으로 기능을 구현 하는 것 보다 숙련된 소프트웨어 엔지니어의 역량 영역으로 봐야 할 것이다.
<FeatureTypeStyle><Rule><Name>SmallPop</Name><Title>Less Than 200,000</Title><ogc:Filter><ogc:PropertyIsLessThan><ogc:PropertyName>pop</ogc:PropertyName><ogc:Literal>200000</ogc:Literal></ogc:PropertyIsLessThan></ogc:Filter><PolygonSymbolizer><Fill><CssParametername="fill">#66FF66</CssParameter></Fill></PolygonSymbolizer></Rule><Rule><Name>MediumPop</Name><Title>200,000 to 500,000</Title><ogc:Filter><ogc:And><ogc:PropertyIsGreaterThanOrEqualTo><ogc:PropertyName>pop</ogc:PropertyName><ogc:Literal>200000</ogc:Literal></ogc:PropertyIsGreaterThanOrEqualTo><ogc:PropertyIsLessThan><ogc:PropertyName>pop</ogc:PropertyName><ogc:Literal>500000</ogc:Literal></ogc:PropertyIsLessThan></ogc:And></ogc:Filter><PolygonSymbolizer><Fill><CssParametername="fill">#33CC33</CssParameter></Fill></PolygonSymbolizer></Rule><Rule><Name>LargePop</Name><Title>Greater Than 500,000</Title><ogc:Filter><ogc:PropertyIsGreaterThan><ogc:PropertyName>pop</ogc:PropertyName><ogc:Literal>500000</ogc:Literal></ogc:PropertyIsGreaterThan></ogc:Filter><PolygonSymbolizer><Fill><CssParametername="fill">#009900</CssParameter></Fill></PolygonSymbolizer></Rule></FeatureTypeStyle>
도로명주소 전자지도 개발자센터에서 법정구역읍면동 데이터를 다운로드 후, 1. postgis 에서 simplify 작업을 실행 하고 2. simplify 작업으로 인하여 발생한 sliver를 QGIS를 사용하여 수작업을 통한 제거작업을 진행한 서울지역 읍면동 법정경계 파일