
OCI와 FastAPI를 활용한 공간 데이터 기반 빌딩 관리 시스템 구축
비용 걱정 없이 고성능 인프라를 사용하고 싶은 개발자들에게 오라클 클라우드(OCI)의 Always Free는 그야말로 축복과도 같습니다. 특히 강력한 퍼포먼스를 자랑하는 파이썬 FastAPI와 결합하면, 기업급 빌딩 관리 시스템도 충분히 구축할 수 있죠.
부동산 자산과 인프라를 효율적으로 모니터링할 수 있는 '공간 데이터 기반 빌딩 관리 웹 애플리케이션' 기획안과 그 제작 과정을 솔직하게 공유해 드립니다.
1. 시스템 기획안 (System Proposal)
1.1. 기술 스택 (Tech Stack)
- 인프라: Oracle Cloud Infrastructure (OCI) Always Free (Ampere A1 사용)
- 데이터베이스: Oracle Autonomous Database (ATP) 20GB (Oracle Spatial 기능 활용)
- 백엔드: Python FastAPI + SQLAlchemy + Uvicorn
- 프론트엔드: HTML5/CSS3, Vanilla JavaScript, Tailwind CSS
- 지도 API: 카카오맵 또는 네이버 지도 API (국내 환경 최적화)
1.2. 화면 레이아웃 및 UI/UX 설계
브라우저 전체를 활용하는 Full-Screen Split View 레이아웃을 권장합니다.
- 좌측 패널 (30%): 키워드 검색바와 필터링된 빌딩 리스트, 무한 스크롤 적용.
- 우측 패널 (70%): 인터랙티브 지도 영역. 마커 클릭 시 상세 정보 팝업(InfoWindow) 출력.
- 플로팅 UI: 지도 우측 상단에 500m~5km 단위의 '거리 구간 필터' 배치.
2. 단계별 진행 순서 (Step-by-Step)
1단계: OCI 인프라 및 DB 프로비저닝
먼저 OCI 콘솔에서 Ampere A1 인스턴스를 생성합니다. 최대 4 OCPU와 24GB RAM을 무료로 쓸 수 있어 사양이 매우 넉넉합니다. VCN 설정에서 80, 443, 8000번 포트를 개방하고, DB 접속을 위한 mTLS Wallet 파일을 미리 챙겨두는 것이 핵심입니다.
2단계: 공간 데이터(Spatial) 세팅
오라클 DB의 진가는 Oracle Spatial 기능에 있습니다. 위경도 데이터를 SDO_GEOMETRY 타입으로 변환하여 저장하면, "내 위치에서 1km 이내 건물 찾기" 같은 복잡한 연산을 DB 단에서 초고속으로 처리할 수 있습니다.
3단계: FastAPI 백엔드 개발
가상환경을 설정하고 fastapi, oracledb 라이브러리를 설치합니다. 특히 /api/buildings/nearby 엔드포인트를 만들어 프론트엔드에서 보낸 좌표와 반경 정보를 바탕으로 공간 쿼리를 실행하도록 구현합니다.
4단계: 프론트엔드 및 지도 연동
JavaScript의 Fetch API를 사용해 사용자가 지도를 움직이거나 필터를 바꿀 때마다 실시간으로 데이터를 불러옵니다. 응답받은 JSON 데이터를 리스트와 마커로 렌더링하면 인터랙티브한 경험을 줄 수 있습니다.
5단계: 서비스 배포 및 최적화
Nginx를 리버스 프록시로 설정하여 보안과 성능을 잡고, Let's Encrypt로 HTTPS를 적용해 마무리합니다. 프로세스 관리는 systemd를 활용하면 서버가 재시작되어도 서비스가 자동으로 유지됩니다.
무료 리소스를 최대한 활용하면서도 성능을 타협하지 않는 이 방식은, 개인 프로젝트나 소규모 비즈니스 프로토타입을 만들 때 최고의 효율을 보여줄 것입니다.
'콩's WORK' 카테고리의 다른 글
| 자빅스(Zabbix) 7.0 설치 및 구축 가이드 (0) | 2026.03.16 |
|---|---|
| 구글 서치콘솔 활용법 5가지: SEO 성과 극대화하기 (0) | 2026.03.09 |
| 윈도우 11 Enterprise, Pro(기업용) ISO로 초보자도 쉽게 설치하기 (0) | 2026.03.09 |
| 윈도우 11 Enterprise vs LTSC 2024 차이점 (0) | 2026.03.09 |
| IT 소프트웨어 개발 비용 산정, 어떤 방식이 우리 회사에 유리할까? (0) | 2026.03.05 |