728x90 반응형 전체 글187 WMS/WFS 개요 들어가며... 새로운 프로젝트에 필요한 공간 데이터베이스(Spatial DB)를 구축하기 전 관련 내용을 정리해보려고 한다. GIS(Geographic Information System) 인간 생활에 필요한 지리 정보를 컴퓨터 데이터로 변환하여 효율적으로 관리할 수 있는 시스템 지리적 위치를 갖고 있는 대상에 대한 위치자료와 (spatial data)와 속성자료(attribute data)를 통합·관리하여 지도, 도표 및 그림들과 같은 여러 형태의 정보를 제공 GIS의 활용분야는 토지, 자원, 도시, 환경, 교통, 농업, 해양 및 국방에 이를 수 있다. WMS(Web Map Service) 데이터 서버에 저장된 레이어 또는 분석을 통해 생성된 벡터 및 래스터 데이터를 시각화(Visualization)하는.. 2022. 5. 17. WBS로 프로젝트 관리하기 들어가며... 소규모 프로젝트를 포함하는 모든 프로젝트는 책임 추적 및 완료 추정을 위해 WBS 등 문서로 관리해야 한다. 직장에서 지원하는 협업 툴 활용 시 자체 지원 간트차트 등을 활용하여 구성할 수 있지만, 실제 해당 요소가 왜 필요한지 파악하기 위해서는 직접 구성하여 터득할 필요를 체감했다. 일반적으로 우측 부분에 달력을 삽입하는 것과 달리 보다 적은 수정 및 관리 요소로 마감일을 기준으로 확인 유무를 넣게 되었다. 전체 설명 문서 번호(No.) : 작업 시 산출물(알고리즘 도식화, 문서 등)에 대한 식별 번호와 매칭할 수 있다. 작업 계획(Tasks) : 대/중/소 분류 체계로 구성하여 최대한 잘게 쪼개어 관리할수록 완료 추정을 용이하게 할 수 있다. 산출물 : 해당 작업 계획을 수행한 후 관련.. 2022. 5. 11. Deamon 관리 (systemctl, journalctl) 들어가며... Ubuntu 서버에 프로그램을 Command 단위로 테스트를 진행하는 것 보다 Daemon 형태로 만들어서 로그 확인 등 테스트를 더욱 용이하게 만들어본다. Daemon 생성 1. Daemon 스크립트 준비 # sudo vi /etc/systemd/system/{프로그램명}.service [Unit] Description=unicorn instance to backend # 설명부 After=network.target [Service] User=ubuntu# 동작 권한 (유저) Group=www-data # 동작 권한 (그룹) # 작업 디렉토리 WorkingDirectory=/home/ubuntu/{프로젝트}/src # 환경변수 설정 Environment="PATH=/home/ubuntu/.. 2022. 5. 9. Python3 가상환경 만들기 (venv) 들어가며... 프로젝트별 개발 환경을 구축하기 위해 가상환경을 생성하여 패키지 관리를 용이하게 수행할 수 있도록 생성해본다. 사전 준비 1. python3-venv 패키지 설치 # sudo apt-get install python3-venv 2. python3 프로젝트 생성 $ python3 -m venv {프로젝트명} 3. 가상환경 확인 # sudo apt-get install tree $ tree {프로젝트} {프로젝트} ├── bin │ ├── activate │ ├── activate.csh │ ├── activate.fish │ ├── easy_install │ ├── easy_install-3.7 │ ├── pip │ ├── pip3 │ ├── pip3.7 │ ├── python -> pyth.. 2022. 5. 9. 지도 검색 알고리즘 들어가며... 모바일에서 전달하는 검색어, 위도, 경도 데이터를 이용하여 데이터베이스에 적재된 데이터를 Map에 표시하기 위한 결과 리스트 처리를 개발해본다. 준비사항 위도(float) 경도(float) 검색어(str) 필요 사항 정리 위도 경도 값을 활용한 거리 계산 및 정렬 방법 business_latitude(float) 위도 business_longtitude(float) 경도 위도 경도 거리 계산 공식 활용 X = ( cos( 위도#1 ) * 6371 * 2 * 3.14 / 360 ) * | 경도#1 - 경도#2 | Y = 111 * | 위도#1 - 위도#2 | D = √ ( X² + Y² ) MySQL 검증 (거리 계산) SELECT business_idx, business_name, busi.. 2022. 5. 9. 커서 페이지네이션 구현 들어가며... 모바일 환경에서 적합한 스크롤 위주의 페이지 호출로 마지막 idx를 기준으로 다음 리스트를 호출하는 커서 페이지네이션을 개발한다. 준비사항 리스트 데이터를 호출하는 API 명세 Endpoint View를 개발하는 담당자와 협의 필요 마지막 idx 정보 필요 사항 정리 첫 번째 페이지 호출 N 번째 페이지 호출 코드 반영 if last_idx == 0: statement = select( Table.table_idx, ).order_by( Table.table_idx.desc() ).limit(20) else: statement = select( Table.table_idx, ).where( Table.table_idx < last_idx ).order_by( Table.table_idx.d.. 2022. 5. 9. 이전 1 ··· 28 29 30 31 32 다음 728x90 반응형