国連ベクトルタイルツールキットがなぜ Raspberry Pi 実装(Misora)にリソースを割いているのか、について、技術者の立場から整理してみました。
地図情報をベクトルタイルで表現する目的
ある程度の規模で動いているウェブ地図は既にみなベクトルタイルに移行しつつあるため、公的機関のウェブ地図も、ウェブで生き残るためにはベクトルタイルに乗る必要があるためと考えています。
ウェブ地図運用上のベクトルタイルのメリットは、第1に送付データサイズの削減であると考えています。画像タイルに比較して、送付するデータのサイズを75%削減し、1/4程度に抑えられるというのが経験値です。Google Maps は既に 2010 年ころにはベクトルタイルへの移行を開始しています。
2015年ころにベクトルタイルのオープンソース仕様及び実装が Mapbox から提供されました。現在では、例えばマップル・オンさんのプロダクトや地図マピオン、Yahoo!地図などでもこの Mapbox 系統のオープンソースベクトルタイル技術が使われており、esri の ArcGIS API for JavaScript や Microsoft の Azure Maps でも、この Mapbox 系統のオープンソースベクトルタイル技術が採用されています。この流れの中で、海外では英国、スイス、カタルーニャ等で Mapbox 系統のオープンソースベクトルタイル技術が採用されています。
第2、第3のメリットとしては、地図情報からのハイパーリンクが容易になることと、地図のレンダリングがクライアントに任されることでレンダリング品質を上げたり、三次元描画を含む動的な描画を実現したりしやすくなるということが挙げられますが、このあたりは未だに未来の技術の範疇であるかもしれません。
火急のニーズは、通信帯域の圧縮であると思います。強いプラットフォーマーが通信帯域の圧縮技術を自在に使えるときに、ただでさえシェア弱者である上に通信技術にはむしろ弱い我々が、通信帯域の圧縮技術を持たないという選択はありえない、というのが1段目の論理であり、その圧縮技術を情報通信技術に素人の我々が独自開発することもありえない、というのが2段目の論理になります。
ベクトルタイルを国連や地理空間情報当局が進める目的
国連や地理空間情報当局のような公的機関は地図業務を止めることはできないが、ウェブ地図のシェアはますます高まっている。一方で、ベースマップのウェブ刊行能力については、自ら獲得するという選択肢がベストである、という理解に立っています。プラットフォーマーによるウェブ地図プラットフォームは、プラットフォーマーのベースマップに付加情報を与えるのには素晴らしいプラットフォームです。他方で、プラットフォーマー以外がベースマップを出すということは基本的には想定されていないと認識しています。
紙の時代にそうしてきたように、公的機関には公的機関のニーズのために地図を出す要求がある。その要求をウェブ時代にも満たしていくためには一定のウェブ地図能力を公的機関が獲得できるようになっていなければならない。ウェブ地図においてはベクトルタイルが当然のものとなってきている。この状況において、公的機関が効率的にベクトルタイルのウェブ地図能力を共用していくためのアプローチが「ベクトルタイルに関する既存のオープンソースソフトウェアを、公的機関関連の技術者にも使えるようにツールキット化する」というものでした。
国連ベクトルタイルツールキットを Raspberry Pi で動かす目的
デモと技術移転が Raspbery Pi 利用の目的です。
本質的には、ベクトルタイル技術の配備先はウェブ上のサーバであり、国連ベクトルタイルツールキット自身は、様々なサーバ環境と、様々なソースデータに対応できることを目的に柔軟なツールキットとして作られていますが、デモや技術移転の際には、アドホックな環境と、適当なサンプルデータを用いることになります。
ほとんどの公的機関にとって、ベクトルタイルは新技術であり、ベクトルタイルを扱うための計算機環境は存在しないと前提するべき状況です。
国連ベクトルタイルツールキットを広めるにあたって最初の主戦場となるのは、会議室や研修室のような場所であり、インターネット接続もなければ、開発環境が整った PC を持ってくるような参加者も少ないような場所です。
そのような場所で、一人当たり 50 ドル程度の支出は可能であるとして、最初の5分で確実にデモを行い、2時間ほど頂ければとりあえず作業を流してみるような技術移転ができる、ということを行うために、 Raspberry Pi の活用を行っています。
「インターネット接続を含む、何もないところから、できるだけ素直な Linux を触ってもらう」ための手段として、 Raspberry Pi を用いていることになると思います。
Raspberry Pi を用いることを覚える前には、研修員の持ち込んだ計算機環境それぞれに国連ベクトルタイルツールキットをインストールしてもらう方式(Docker を挟む形式を含む)を試していましたが、今のところ、Raspbery Pi を用いて行う方法が最も(トレーニング中の)準備作業時間やトラブルが少ないと感じています。
デモと技術移転以外の目的での Raspberry Pi の運用、例えばエンタープライズネットワーク内部での活用や災害対応時の活用、というのは有望なアイディアですが、まだまだユースケースの整理から必要なアイディアであると認識しています。また、私自身はデモと技術移転にもっぱら集中することが必要な状況にあります。この部分は、国連ベクトルタイルツールキットのパートナーの方の進捗に頼るべきところと私は認識しているところです。
おわりに
書き落としへの気付きやその他質問などあれば、ぜひコメントなどを通じてご教示いただけると助かります。