グラフデータベースというキーワードが聞かれるようになっています。SNSのようなデータ同士の関連性を管理するような場合に向いており、用途を選ぶデータベースと言えます。有名なところではNeo4jであったり、Amazon Neptuneなどがあります。 GUNもグラフデータベースの一つです。特徴としては分散型、オフラインファーストという点が挙げられます。

GUNの使い方

デモです。分散型なので、二つのデータベースは分かれた存在です。

片方にデータを入れると、他方にも同期されます。

同期しているところです。

GUNは中央サーバがないのでスケーリングが容易になっています。データはWeb Socketを使うことでリアルタイムに更新されます。P2Pなのでネットワークがなかったり、携帯電話が圏外にあっても使えるのが利点となっています。

GUNはJavaScript製のオープンソース・ソフトウェア(ライセンスはZlib/MIT/Apache Lincese 2.0)です。

GUN - Graph Database amark/gun: A realtime, decentralized, offline-first, graph database engine.