코드로 읽는 마니페스토: 지방정부 데이터·시스템 기술검증 리포트

IT 정책 제안
코드로 읽는 마니페스토: 지방정부 데이터·시스템 기술검증 리포트

どうも〜おかむーです!오늘은 정부·지방자치단체의 데이터 공개와 시스템을 엔지니어 관점에서 뜯어볼게요〜

  • 공개 포맷이 제각각이라 재현 가능성이 낮다! CSV·API가 일부 있긴 한데 산발적이다.
  • PDF 중심 배포가 아직 많아서 머신리더블화가 병목이다. 변환 파이프라인이 필수!
  • 엔지니어 관점의 해결책: API-first, 스키마 검증, CI로 데이터 신뢰도 자동화!

結論

요약하면 이거예요: 정부·지자체가 데이터는 공개하고 있지만 "기계가 바로 쓸 수 있는 수준"으로 일관되게 제공하는 곳은 드물다. PDF에 의존하면 재활용과 추적이 막히고, KPI(정책수치)와 실적을 비교해 검증하는 자동화 파이프라인을 못 만든다. 엔지니어적 해결책은 명확하다 — 표준화된 CSV/JSON API, 스키마와 검증, 공개된 메타데이터·버전관리, 그리고 배포 파이프라인을 도입하면 생산성이 바로 올라간다.

현황 리포트: 데이터 형식과 접근성

검색 결과로 본 실태

これ見てくださいよ: CSV 파일이 공개되어 있는 곳은 스크립트로 긁어서 바로 분석 가능한 반면, PDF로만 공개된 문서는 OCR·테이블 추출 파이프라인 없이는 자동화가 불가능하다!

PDF vs CSV: 기술적 문제와 비용

  • PDF: 레이아웃 변경에 취약, 구조화를 위해서는 tabula/pdfplumber 같은 툴로 전처리 필요. 자동화 실패율이 높음.
  • CSV/JSON: 인코딩(Shift-JIS vs UTF-8), 헤더 불일치, 컬럼 네이밍 체계 부재가 문제. 그러나 표준을 만들면 바로 파이프라인에 넣을 수 있다.

要するに: PDF는 "휴먼 리포트용", CSV/API는 "머신 리포트용"이라고 보면 된다.

개발자 관점의 구체적 검사·코드 예

API·파일 접근성 검사 예시 (Python)

import requests

from io import BytesIO

import pandas as pd

url = 'https://notice.go.jp/docs/status_nicter.csv'

r = requests.get(url)

print(r.headers.get('content-type'))

CSV라면 바로 로드

df = pd.read_csv(BytesIO(r.content))

print(df.head())

PDF만 공개된 경우 자동 추출 파이프라인 예시:

# pdfplumber로 표 추출 (간단 예)

import pdfplumber

with pdfplumber.open('report.pdf') as pdf:

table = pdf.pages[0].extract_table()

엔지니어적으로 말하면, "API 한 줄"로 해결되는 걸 PDF 파싱으로 우회하면 운영비가 훨씬 커진다!

KPI와 실적 갭 분석 (SQL 스타일)

  • 예시: 목표 2024년 신규 IT서비스 이용률 60% vs 실적 42%
  • 단순 계산:
SELECT year, target, actual, (actual - target) AS gap, ROUND((actual/target)*100,1) AS pct

FROM kpi_table

WHERE policy='デジタル田園都市'

이런 쿼리를 바로 돌리려면 데이터가 CSV/DB로 있어야 한다.

데이터 품질 체크리스트 (제안)

  • UTF-8 표준 인코딩 강제
  • CSV 헤더 표준(스네이크케이스 등) 및 데이터 유형 스키마(JSON Schema)
  • 메타데이터(作成年月、更新履歴、ライセンス) 포함
  • GoodTables/Frictionless Data로 자동 검증
  • Git/GitHub를 통한バージョン管理とCI(GitHub ActionsでCSV検証)

실무적 개선 제안(道具箱)

  • 중앙 데이터カタログ(CKAN/Data.go.jp 연동) 구축
  • API-first: OpenAPI 명세로 엔드ポイント 설계
  • 공개 SDK: Python/R/JS 샘플로 활용 문서 제공
  • 통합 대시보드(Metabase/Redash) + 퍼블릭 CSV 링크
  • 예산/조달/KPI 데이터는 1つのAPI로 묶기 (GraphQL 래퍼 제안)

사례: 具体的なステップ

  • 도시별 CSV 발행 정책 수립(UTF-8, 헤더, 라이センス)
  • 레포지토리(GitHub)로 데이터公開 + CI 검증
  • 스키마와サンプルデータ 공개
  • 오픈API로 기계독해 가능한 엔드포인트 제공
  • 대시보드와 예제 노트북 제공(Pandas/SQL)
  • まとめ

    • 현재: 데이터 공개는 늘었지만 기계가 바로 쓸 수 있는 형태는 부족하다.PDF依存が問題。
    • 핵심: 스키마・エンコード・自動検証を整備すれば再利用性が劇的に上がる。
    • 액션: API-first, Gitベースのデータ公開、CIによる品質担保をすぐに始めよう!

    おかむーから一言

    엔지니어로서 말하면 이건 그냥 기술문제예요. 한번 표준을 정하고 자동화하면 시민에게 돌아가는 가치가 훨씬 커집니다. 테크로 사회를 업그레이드합시다!

    공유하기