Kurage
Kurage WikiKurageナレッジベース
Kurage.AIに聞く →
ホーム › Wiki › 概念 › 公的データの日次取り込み運用
概念

公的データの日次取り込み運用

公的機関の公開データを毎日取り込み、時点と出典を保ったまま業務システムの判断材料にする運用の型

官公庁・自治体・独法が公開する統計・台帳・公告・會議録などを、API または全件ファイルから定期的に取得して自前のデータベースに組み直し、その上に判定・検索・通知を載せる運用のこと。kurage-products の製品群では、この運用が「買い切り・オンプレミス・月額0円」という商品形態を成立させる中核になっている。

なぜ「取り込み運用」が主題になるのか

一度ダウンロードして同梱するだけでは、公的データはすぐ古くなる。制度の施行日は動き、事業所は新設・廃止され、入札公告は日々追加され、国会の質疑は会期中に毎日増える。したがって製品の価値は「データを持っていること」ではなく、取り込みを回し続けられることに移る。kappstore-ecosystem の各製品が「ソース同梱・改変自由」であることは、この運用を顧客側で維持できることを意味する。

取り込みの方式

方式 例 設計上の注意
公式 API の定期取得 官公需情報ポータル(knyusatsu)、Jグランツ(kurage-subsidy-navi)、国立国会図書館の国会会議録検索API(kseidocal、kurage-kokkai-tracker) 規約に沿った出典表示を実装まで含める(open-data-license-compliance)
全件ファイルの組み直し 国税庁の法人番号・インボイス全件ファイル(ktorihiki) 毎月、全件を再構築して差分ではなくスナップショットを作る
週報・PDF の読み取り 感染症の週報PDFから名古屋市16区を抽出(kkansen) PDF しか出ていない領域は自動化の難所になる
オープンデータの GIS 取り込み 国土数値情報、指定緊急避難場所、地番参考図(kurage-flood-hazard-map、kurage-refuge-map、kurage-earthquake-map) 整備年度が自治体ごとに違う
差分監視 RSS・API・HTML差分・SSL期限の4方式(kcheckit) 変更検知そのものを商品にする

実装は「標準ライブラリだけの Python で1日1回」のような小さなバッチに寄せる。常駐プロセスもポートも要らない構成は self-contained-php-app と相性がよく、閲覧側は PHP1ファイル+SQLite、取得側だけ Python、という分担が繰り返し現れる。

設計原則

1. データ時点を判定結果に必ず添える

evidence-traceability の中核。土砂災害ハザードマップは「データ時点 2026-03-06」を返し、時点を確認できないデータでは判定しない。津波浸水想定は県ごとに整備年度が違うため、結果にその県の時点を表示する。利用者が「いつの情報で判断したか」を知らないまま行動すると、この種のシステムはかえって危険になる。

2. 「区域外」と「未収録」を区別する

unknown-vs-outside-distinction。東京都・福井県・香川県は沿岸があるのに国の津波データに未収録で、黙って「区域外」と返すと安全だと誤解させる。盛土規制法の区域指定は都道府県ごとに進行中で、青森・香川・佐賀・沖縄は未公開。だから「未指定」と明示する。この区別は hazard-map-judgment の前提条件でもある。

3. 公表の有無そのものを情報として出す

学童保育の待機児童は国の公表が PDF だけで、市区町村名が出るのは待機児童50人以上の88市町村のみ。全国16,330人のうち31.4%はどこの市か分からない。製品はこれを「未公表」と書き、推定した数字を出さない。administrative-data-publication-gap は、取り込み運用を設計すると必ずぶつかる構造的な穴である。

4. 増えた側だけでなく消えた側も取る

facility-data-churn。訪問介護は1年半で差し引き667か所増えたが、同じ期間に3,242か所が公表データから消えた。グループホームは4年半で1.60倍になった一方1,618か所が消え、2024年9月末だけで473か所(うち202か所が1法人)。放課後等デイは1.71倍と3,114か所の消滅が同時に起きている。日次・月次のスナップショットを積む運用だからこそ、この「消えた」を測れる。ただし理由は公表されていないので「廃止した」とは書かない。

5. 取得できないときは「取得できない」と書く

防災AIチャットは、情報が取れなかった場合に「出ていない」ではなく「取得できない」と明示する。避難発令の取得失敗を「発令なし」と表示すれば、それは安全側の誤りではなく人命側の誤りになる。

6. 収集を控えるべき対象は取り込まない

国土交通省「川の防災情報」はツールによる定期的な収集を控えるよう求めているため、取り込まずリンクで案内する。技術的に可能かどうかと、運用してよいかどうかは別である。

鮮度と更新頻度の設計

頻度 対象 例
毎時 改ざん・侵害の兆候 ksecwatch(全ファイルを台帳と比較し、変わった PHP だけを YARA へ)
毎日 公告・会議録・新着・制度変更 knyusatsu、kseidocal、kcheckit
毎朝 前日の実績を日報化 kcallai、kadsai
毎週 感染症の定点報告 kkansen
毎月 全件ファイルの組み直し ktorihiki
随時(年次改定) 最低賃金・制度カレンダー kchingin、kseidocal

失敗の型

実測された落とし穴は measured-pitfall-catalog に集約されている。日次取り込みに固有のものは次のとおり。

取り込み済みデータの差し替え可能性

日次取り込みの仕組みを商品にすると、データだけを差し替えて他地域へ展開できる。municipality-data-swap-expansion がそれで、名古屋市版を同梱し「JSON 2ファイルの差し替えで他自治体へ」という形を繰り返す(kurage-seido-navi、kecnavi、kibasho、kposting)。nagoya が実質的な参照実装になっているのは、公表の粒度とオープンデータの整備状況が揃っているためである。

関連する製品と概念

まとめ

公的データの日次取り込み運用は、(1) 小さなバッチで回し、(2) 時点と出典を結果に貼り、(3) 未収録・未公表・取得失敗を正直に分け、(4) 消えたものも記録するという4点に集約される。この型を守る限り、月額0円・オンプレミス・AI 無しでも業務システムとして成立する。逆にこの型を外すと、データが新しくても判断を誤らせる道具になる。

「公的データの日次取り込み運用」についてもっと知りたいですか?
Kurage.AI に質問する