(주)웨이버스 사원
2017.07~2018.03
1) Web
ㆍArcGIS, OpenLayers2를 이용한 서비스를 발행하여 이를 활용할 수 있는 사이트 구현
└ 도면 출력, 주소 검색 or 공간정보 파일을 읽은 결과 Drawing
ㆍST_Geometry 함수들을 이용한 Oracle 내 공간정보 처리
2) Android
ㆍWebView를 통한 Olleh Map 지도서비스 제공 및 이벤트 처리(Buffer, 거리 재기, 길 찾기 등)
ㆍ사진 촬영 및 Drawing 기능 구현(선 그리기, 텍스트 및 아이콘 추가)
└ 텍스트 및 아이콘 추가, 이동 관련은 오픈소스 활용
ㆍ웹 서버와의 통신(Volley) 및 외부 DB(SQLite, Sugar ORM) 이용하여 CRUD 구현
ㆍJava, Spring Framework, MyBatis, OracleDB(11g) 기반의 모바일 담당 서비스 개발
2005년 구글맵으로 부터 시작된 웹 기반 지도 API 서비스는 웹 2.0의 데이터 플랫폼 서비스의 주요 사례로 떠올랐다. 그 이후 야후!, 마이크로소프트 등에서 지도 플랫폼 서비스와 API 제공이 잇달았으며, 국내에서도 다음이 최초로 항공 사진(스카이뷰)과 거리 사진(로드뷰)을 제공하고 네이버도 참여함으로서 로컬 기반 서비스의 폭발적 성장의 견인차 역할을 하였다. 노키아의 Here 및 오픈스트릿맵 등 제 3의 사업자 및 협업 기반 플랫폼이 성장하였으며, Open Layer 라이브러리 및 Open GIS 등 다양한 공개 소프트웨어 들도 함께 성장하였다.
특히, 스마트폰의 보급과 아울러 모바일용 지도 SDK를 적극 보급 및 지원하는 추세로 기존의 Ajax 기반의 이미지 기반 웹 지도 표현 기술은 WebGL 혹은 Canvas를 통해 3차원 기술을 도입하면서 웹 호환성 및 성능을 동시에 높히고 있다. 구글 스케치업을 통해 시작된 공간 3차원 서비스는 약간 주춤하지만 45도 이미지너리 및 DEM 기반 데이터는 계속 추가되고 있다.
최근에는 구글맵 엔진 서비스와 같은 전문 사용자의 참여를 이끌어 내어 클라우드 소싱 형태의 지도 데이터 생성 커뮤니티를 통해 저개발 국가 및 북한과 같은 미공개 지도 데이터 생산을 만들고 있다.
2011년부터 구글 부터 지도 API 서비스 유료화를 단행하여 보안 강화 및 품질 및 성능 향상을 통해 제 3자 재판매를 통한 사업을 진행하고 있다. 또한, 최근 많은 기업들이 글로벌 홈페이지에 자사의 위치나 고객센터를 이용자들이 찾는데 활용하고 있으며, 이를 활용해 물류•관제•입지분석•위험관리•마케팅 등에 활용하고 있다.
현재 글로벌 지도 API 플랫폼은 단순히 베이스맵을 지원하는데 그치지 않고 공간 정보를 시각화 및 표현하는데 필요한 다양한 기능을 제공하면서, 정보 전달 역할을 강화하고 있다. 또한, Mapbox 등 지도 타일의 다양한 스타일과 테마 기능을 통해 좀 더 미려한 지도를 제공하기도 한다.
향후 글로벌 지도 API 플랫폼은 단보다 고도화된 시스템을 활용해 데이터 분석 및 2차원 시각화 그리고 3차원 공간 정보 활용으로 진화하고 있다.
1일 수천대의 서버에서 발생하는 30~50억건의 Log와 Metric을 처리하는 Planet Mon 을 지탱하는 기술인 Collection(Collectd, NXlog), Transport(Kakfa, Logstash), Log Stream Analytics, Storage(Elasticsearch), Visualization을 구성하는 Architecture에 대해 설명드리고 제가 개발한 Log Stream Analytics 서버들의 구현 기술에 대해 좀더 상세히 설명합니다.
2005년 구글맵으로 부터 시작된 웹 기반 지도 API 서비스는 웹 2.0의 데이터 플랫폼 서비스의 주요 사례로 떠올랐다. 그 이후 야후!, 마이크로소프트 등에서 지도 플랫폼 서비스와 API 제공이 잇달았으며, 국내에서도 다음이 최초로 항공 사진(스카이뷰)과 거리 사진(로드뷰)을 제공하고 네이버도 참여함으로서 로컬 기반 서비스의 폭발적 성장의 견인차 역할을 하였다. 노키아의 Here 및 오픈스트릿맵 등 제 3의 사업자 및 협업 기반 플랫폼이 성장하였으며, Open Layer 라이브러리 및 Open GIS 등 다양한 공개 소프트웨어 들도 함께 성장하였다.
특히, 스마트폰의 보급과 아울러 모바일용 지도 SDK를 적극 보급 및 지원하는 추세로 기존의 Ajax 기반의 이미지 기반 웹 지도 표현 기술은 WebGL 혹은 Canvas를 통해 3차원 기술을 도입하면서 웹 호환성 및 성능을 동시에 높히고 있다. 구글 스케치업을 통해 시작된 공간 3차원 서비스는 약간 주춤하지만 45도 이미지너리 및 DEM 기반 데이터는 계속 추가되고 있다.
최근에는 구글맵 엔진 서비스와 같은 전문 사용자의 참여를 이끌어 내어 클라우드 소싱 형태의 지도 데이터 생성 커뮤니티를 통해 저개발 국가 및 북한과 같은 미공개 지도 데이터 생산을 만들고 있다.
2011년부터 구글 부터 지도 API 서비스 유료화를 단행하여 보안 강화 및 품질 및 성능 향상을 통해 제 3자 재판매를 통한 사업을 진행하고 있다. 또한, 최근 많은 기업들이 글로벌 홈페이지에 자사의 위치나 고객센터를 이용자들이 찾는데 활용하고 있으며, 이를 활용해 물류•관제•입지분석•위험관리•마케팅 등에 활용하고 있다.
현재 글로벌 지도 API 플랫폼은 단순히 베이스맵을 지원하는데 그치지 않고 공간 정보를 시각화 및 표현하는데 필요한 다양한 기능을 제공하면서, 정보 전달 역할을 강화하고 있다. 또한, Mapbox 등 지도 타일의 다양한 스타일과 테마 기능을 통해 좀 더 미려한 지도를 제공하기도 한다.
향후 글로벌 지도 API 플랫폼은 단보다 고도화된 시스템을 활용해 데이터 분석 및 2차원 시각화 그리고 3차원 공간 정보 활용으로 진화하고 있다.
1일 수천대의 서버에서 발생하는 30~50억건의 Log와 Metric을 처리하는 Planet Mon 을 지탱하는 기술인 Collection(Collectd, NXlog), Transport(Kakfa, Logstash), Log Stream Analytics, Storage(Elasticsearch), Visualization을 구성하는 Architecture에 대해 설명드리고 제가 개발한 Log Stream Analytics 서버들의 구현 기술에 대해 좀더 상세히 설명합니다.
1. 무브뱅크(Movebank) 데이터 다운로드하기
2. 야생동물 행동권 분석
3. 좌표를 경로로 변환하기
4. 공간 시계열 데이터 가시화하기
5. 법정구역정보 · 수치표면모델(DSM) 다운로드
6. DSM을 이용한 구역 통계 · 지형 분석
7. 경사 방향-경사 지도 제작
8. 야생동물 서식지 적합성 분석
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Catch, Traffic!] : 지하철 혼잡도 및 키워드 분석 데이터 파이프라인 구축BOAZ Bigdata
데이터 엔지니어링 프로젝트를 진행한 Catch, Traffic! 팀에서는 아래와 같은 프로젝트를 진행했습니다.
수도권 교통의 혼잡성을 해결하기 위한 방안을 찾는 데이터 파이프라인 구축
18기 김인섭 숭실대학교 산업정보시스템공학과
18기 김재민 국민대학교 AI빅데이터융합경영학과
18기 서은유 동덕여자대학교 정보통계학과
18기 윤정원 숙명여자대학교 소프트웨어융합전공
18기 이현진 서울과학기술대학교 산업정보시스템전공
18기 조은학 명지대학교 융합소프트웨어학부
효율적 모바일 서비스를 위한 AWS 빌딩블럭 - API Gateway 및 Device Farm을 중심으로 (윤석찬, AWS 테크에반젤리스트)Amazon Web Services Korea
AWS 월간 웨비나 8월 녹화 동영상은 아래 링크를 참고하십시오.
https://aws.amazon.com/ko/blogs/korea/category/webinar/
---
모바일 시장이 확대됨에 따라 적은 비용으로 더 빠르게 모바일 사용자를 대상으로 한 모바일 앱 및 웹 서비스를 개발하는 것이 점차 더 중요해지고 있습니다.
이 강연에서는 AWS가 제공하는 Amazon Cognito, Mobile Analytics 및 SNS 등 모바일 서비스들과 SDK를 통해 더 빠르게 모바일 서비스를 개발해 사용자의 요구 사항에 대응하고 확장성을 갖춘 모바일 앱을 만드는 방법에 대해알아봅니다.
또한, AWS Lambda라는 클라우드 함수를 이용한 손쉬운 비지니스 로직 구현, 새로 나온 Amazon DeviceFarm을 통한 자동화된 앱 테스트 및 Amazon API Gateway를 통한 모바일 백엔드 구축 방법 등 서버 없이도 효율적인 모바일 서비스 아키텍처를 구성하는 방법을 알려드립니다
1. 무브뱅크(Movebank) 데이터 다운로드하기
2. 야생동물 행동권 분석
3. 좌표를 경로로 변환하기
4. 공간 시계열 데이터 가시화하기
5. 법정구역정보 · 수치표면모델(DSM) 다운로드
6. DSM을 이용한 구역 통계 · 지형 분석
7. 경사 방향-경사 지도 제작
8. 야생동물 서식지 적합성 분석
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [Catch, Traffic!] : 지하철 혼잡도 및 키워드 분석 데이터 파이프라인 구축BOAZ Bigdata
데이터 엔지니어링 프로젝트를 진행한 Catch, Traffic! 팀에서는 아래와 같은 프로젝트를 진행했습니다.
수도권 교통의 혼잡성을 해결하기 위한 방안을 찾는 데이터 파이프라인 구축
18기 김인섭 숭실대학교 산업정보시스템공학과
18기 김재민 국민대학교 AI빅데이터융합경영학과
18기 서은유 동덕여자대학교 정보통계학과
18기 윤정원 숙명여자대학교 소프트웨어융합전공
18기 이현진 서울과학기술대학교 산업정보시스템전공
18기 조은학 명지대학교 융합소프트웨어학부
효율적 모바일 서비스를 위한 AWS 빌딩블럭 - API Gateway 및 Device Farm을 중심으로 (윤석찬, AWS 테크에반젤리스트)Amazon Web Services Korea
AWS 월간 웨비나 8월 녹화 동영상은 아래 링크를 참고하십시오.
https://aws.amazon.com/ko/blogs/korea/category/webinar/
---
모바일 시장이 확대됨에 따라 적은 비용으로 더 빠르게 모바일 사용자를 대상으로 한 모바일 앱 및 웹 서비스를 개발하는 것이 점차 더 중요해지고 있습니다.
이 강연에서는 AWS가 제공하는 Amazon Cognito, Mobile Analytics 및 SNS 등 모바일 서비스들과 SDK를 통해 더 빠르게 모바일 서비스를 개발해 사용자의 요구 사항에 대응하고 확장성을 갖춘 모바일 앱을 만드는 방법에 대해알아봅니다.
또한, AWS Lambda라는 클라우드 함수를 이용한 손쉬운 비지니스 로직 구현, 새로 나온 Amazon DeviceFarm을 통한 자동화된 앱 테스트 및 Amazon API Gateway를 통한 모바일 백엔드 구축 방법 등 서버 없이도 효율적인 모바일 서비스 아키텍처를 구성하는 방법을 알려드립니다
3. 사용자 업로드 파일 처리
파일 전송
Jquery의 ajaxForm을 이용하여 파일 전송
파일 처리
확장명에 맞게 파일을 읽어 도형을 그릴 수 있는 정보
(좌표, 타이틀, 타입, 스타일 등)를 추출
타입별 List를 가진 resultVO를 리턴
결과 처리
타입, kml파일 여부에 맞게 drawing하여 Graphic Layer
에 추가
사용자 레이어 등록 메뉴의 상태를 변경
4. 사용자 업로드 파일 처리
파일 전송
Jquery의 ajaxForm을 이용하여 파일 전송
파일 처리
확장명에 맞게 파일을 읽어 도형을 그릴 수 있는 정보
(좌표, 타이틀, 타입, 스타일 등)를 추출
타입별 List를 가진 resultVO를 리턴
결과 처리
타입, kml파일 여부에 맞게 drawing하여 Graphic Layer
에 추가
사용자 레이어 등록 메뉴의 상태를 변경
5. 사용자 업로드 파일 처리
파일 처리
zip(shp, shx, dbf) 압축 해제 및 추출 과정
6. 사용자 업로드 파일 처리
파일 처리
readSpatialInfo() 메서드의
Shp 내 타입별 추출 과정
7. 문제 해결 사례 : 망도 그리기
망도
기준점들을 사용자가 지정한 순서에 맞게 선으로 연결한 것
기존 상태
생성한 순간 그래픽 레이어에 그려줌
DB에 저장되지 않아 일회성에 그침
요구사항 해결방안
공간 DB에 저장, ArcGIS 서비스
발행을 이용
선택한 기준점들과 선이 하나의
서비스로 발행할 것
Issue
Layer에는 한 가지 타입(symbol, polyline, polygon 등)만 담을 수 있음
Solution
1. 속성용 Table, symbol Layer, polyline Layer 로 구분해서 설계
2. 두 레이어를 하나의 서비스에 담아 발행하고 속성용 table의 pk를 이용하여 관리
첫 번째 선과 마지막 선은 빨간색
일 것
1. Polyline Layer에 처음이나 마지막임을 나타내주는 칼럼 추가
2. 조건식을 통해 style 적용
각 점은 다음 점의 방향을 가리키
는 화살표 심볼일 것(단, 첫 점과
끝 점은 제외)
1. 기준점들의 좌표를 이용하여 방위각 계산
2. Symbol Layer의 별도의 칼럼에 저장
3. 조건식을 통해 symbol image의 style 적용
9. 현황조사시스템
1. 현황자료 내려받기
Volly, JSON을 활용해 서버와 송수신
현황조사를 위해 서버 Oracle DB → Sqlite에 데이터 insert
기기에 저장, SugarORM을 이용하여 컨트롤
2. 현황조사
조사 프로세스 진행
3. 현황자료 올리기
조사 완료된 건 서버에 전송
4. 지도서비스
WebView를 이용해 OllehMap(기본도 & 위성도 & 길찾기)
ArcGIS 서비스(공간DB를 이용한 기준점 정보) 제공
위치 찾기
앱 ↔ JS 간 송수신을 통해 이벤트 처리
5. 공지사항 , QnA
게시판. 기간 내 공지사항이 있을 경우 AlertDialog로 표출
10. 현황조사시스템
1. 현황자료 내려받기
Volly, JSON을 활용해 서버와 송수신
현황조사를 위해 서버 Oracle DB → Sqlite에 데이터 insert
기기에 저장, SugarORM을 이용하여 컨트롤
2. 현황조사
조사 프로세스 진행
3. 현황자료 올리기
조사 완료된 건 서버에 전송
4. 지도서비스
WebView를 이용해 OllehMap(기본도 & 위성도 & 길찾기)
ArcGIS 서비스(공간DB를 이용한 기준점 정보) 제공
위치 찾기
앱 ↔ JS 간 송수신을 통해 이벤트 처리
5. 공지사항 , QnA
게시판. 기간 내 공지사항이 있을 경우 AlertDialog로 표출
11. 현황조사시스템
1. 현황자료 내려받기
Volly, JSON을 활용해 서버와 송수신
현황조사를 위해 서버 Oracle DB → Sqlite에 데이터 insert
기기에 저장, SugarORM을 이용하여 컨트롤
2. 현황조사
조사 프로세스 진행
└ Drawing – 선 그리기(직선, 점선, 방향선 등)
아이콘, 텍스트 입력(오픈소스 MotionViews)
3. 현황자료 올리기
조사 완료된 건 서버에 전송
4. 지도서비스
WebView를 이용해 OllehMap(기본도 & 위성도 & 길찾기)
ArcGIS 서비스(공간DB를 이용한 기준점 정보) 제공
위치 찾기
앱 ↔ JS 간 송수신을 통해 이벤트 처리
5. 공지사항 , QnA
게시판. 기간 내 공지사항이 있을 경우 AlertDialog로 표출
시연영상
12. 현황조사시스템
1. 현황자료 내려받기
Volly, JSON을 활용해 서버와 송수신
현황조사를 위해 서버 Oracle DB → Sqlite에 데이터 insert
기기에 저장, SugarORM을 이용하여 컨트롤
2. 현황조사
조사 프로세스 진행
└ Drawing – 선 그리기(직선, 점선, 방향선 등)
아이콘, 텍스트 입력(오픈소스 MotionViews)
3. 현황자료 올리기
조사 완료된 건 서버에 전송
4. 지도서비스
WebView를 이용해 OllehMap(기본도 & 위성도 & 길찾기)
ArcGIS 서비스(공간DB를 이용한 기준점 정보) 제공
위치 찾기
앱 ↔ JS 간 송수신을 통해 이벤트 처리
5. 공지사항 , QnA
게시판. 기간 내 공지사항이 있을 경우 AlertDialog로 표출
방향선 화살표 그리기 코드
13. 현황조사시스템
1. 현황자료 내려받기
Volly, JSON을 활용해 서버와 송수신
현황조사를 위해 서버 Oracle DB → Sqlite에 데이터 insert
기기에 저장, SugarORM을 이용하여 컨트롤
2. 현황조사
조사 프로세스 진행
3. 현황자료 올리기
조사 완료된 건 서버에 전송
4. 지도서비스
WebView를 이용, OllehMap(기본도 & 위성도 & 길찾기),
ArcGIS 서비스(공간DB를 이용한 기준점 정보) 제공
위치 찾기
앱 ↔ JS 간 송수신을 통해 이벤트 처리
5. 공지사항 , QnA
게시판. 기간 내 공지사항이 있을 경우 AlertDialog로 표출
맵서비스 위에 띄운 버튼(내 위치 찾기)의
이벤트를 통해 js의 function 호출
앱의 getPosition()
호출
14. WebView가 있는 Activity 내의 getPosition()
위치정보를 위해 생성한 GpsInfo 클래스 이용
GpsInfo 클래스 내의 function