Ubuntu Server 22.04にNeo4jグラフデータベースをインストールする方法

Ubuntu Server 22.04にNeo4jグラフデータベースをインストールする方法
Ubuntu で Neo4j グラフ データベースを使用している開発者。
画像: Seventyfour/Adobe Stock

グラフデータベースは関係性を重視します。ノードを使用してデータエンティティを格納し、エッジを使用してそれらのID間の関係性を格納するグラフデータベースは、ソーシャルネットワーキング、レコメンデーションエンジン、不正検出などに最適なソリューションとなることがよくあります。データ間の関係性を構築する機能が必要なあらゆるユースケースにおいて、グラフデータベースは最適な選択肢です。

参照:知っておくべきオープンソースと Linux の用語 40 選(TechRepublic Premium)

Neo4jはそのようなデータベースの一つです。オープンソースで、SQLライクなクエリ言語を使用し、プロパティグラフデータモデルに準拠し、インデックス、UNIQUE制約、そして完全なACIDルールをサポートしています。それでは、Neo4jグラフデータベースのインストール手順を見ていきましょう。

ジャンプ先:

  • Neo4jをインストールするために必要なもの
  • Neo4jのインストール方法
  • ローカルホスト以外からNeo4j接続を有効にする方法
  • Neo4j接続をテストする方法
  • 簡単なインストールと強力なデータベース

Neo4jをインストールするために必要なもの

Ubuntu Server 22.04でこのデモを行います。動作させるには、Ubuntu Serverのインスタンスとsudo権限を持つユーザーが必要です。OSには最低でもシングルCPUと2GBのメモリが必要です。

このインストールは無料のコミュニティエディション用です。無制限の水平スケーリング、きめ細かなアクセス制御、高可用性、高度な管理性を備えたデータベースをご希望の場合は、エンタープライズエディションをご利用ください。エンタープライズエディションの価格については、Neo4jの営業担当者までお問い合わせください。

Neo4jのインストール方法

まず最初に、サーバーのアップデートとアップグレードを実施してください。カーネルをアップグレードした場合、変更を有効にするにはサーバーを再起動する必要があることに注意してください。そのため、サーバーを安全に再起動できるまでアップグレードを延期することをお勧めします。本番環境でない場合は、いつでもアップグレードできます。

Ubuntu を更新およびアップグレードするには、サーバーにログインして次のコマンドを発行します。

sudo apt-get update && sudo apt-get upgrade -y

アップグレードが完了したら、必要に応じて再起動してください。

アップグレードが完了したら、次のコマンドで Neo4j の依存関係をインストールします。

sudo apt-get install wget curl nano software-properties-common dirmngr apt-transport-https gnupg gnupg2 ca-certificates lsb-release ubuntu-keyring unzip -y

次に、次のコマンドで公式の Neo4j GPG キーを追加する必要があります。

curl -fsSL https://debian.neo4j.com/neotechnology.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/neo4j.gpg

次のようにして Neo4j リポジトリを追加します。

echo "deb [signed-by=/usr/share/keyrings/neo4j.gpg] https://debian.neo4j.com stable latest" | sudo tee -a /etc/apt/sources.list.d/neo4j.list

apt を次のように更新します:

sudo apt-get update

最後に、次のコマンドで Neo4j をインストールします。

sudo apt-get install neo4j -y

インストールが完了したら、次のコマンドでサービスを開始して有効にします。

sudo systemctl enable --now neo4j

ローカルホスト以外からNeo4j接続を有効にする方法

現時点では、Neo4jサーバーに接続できるマシンはlocalhostのみです。データベースがインストールされているマシン以外のマシンからデータベースを使用する場合は、リモート接続を有効にする必要があります。これを行うには、以下のコマンドでNeo4j設定ファイルを開いて編集します。

sudo nano /etc/neo4j/neo4j.conf

そのファイルで、次の行を探します。

#server.default_listen_address=0.0.0.0

# を削除すると、行は次のようになります。

server.default_listen_address=0.0.0.0

Ctrl+X キーボードショートカットでファイルを保存して閉じます。次のコマンドで Neo4j サービスを再起動します。

sudo systemctl restart neo4j

システムのhostsファイルも編集する必要があります。これを行うには、次のコマンドを実行します。

sudo nano /etc/hosts

ファイルの下部に次のような行を追加します。

SERVER_IP ホスト名

ここで、SERVER_IPはホスティングサーバーのIPアドレス、HOSTNAMEはマシンのホスト名です。ファイルを保存して閉じます。例えば、IPアドレスが192.168.1.7でホスト名がfossaの場合、以下の行になります。

192.168.1.7 fossa

Neo4j接続をテストする方法

Neo4j 接続をテストするには、コマンドは次のようになります。

cypher-shell -a 'neo4j://192.168.1.7:7687'

デフォルトのユーザー名とパスワードはどちらも neo4j です。デフォルトのパスワードを入力すると、新しいパスワードを作成するように求められます。新しいパスワードを入力すると、Neo4j コンソールが表示されます。

接続に失敗した場合は、サーバーのファイアウォールを開く必要があるかもしれません。そのためには、サーバーに接続するすべてのマシンのIPアドレスも知っておく必要があります。例えば、IPアドレス192.168.1.100から接続している場合は、次のコマンドでファイアウォールを開くことができます。

sudo ufw allow from 192.168.1.62 to any port 7687 proto tcp

ネットワーク上の任意のマシンへの接続を開きたい場合、コマンドは次のようになります。

sudo ufw allow from 192.168.1.0/24 to any port 7687 proto tcp

簡単なインストールと強力なデータベース

Neo4jは、プロジェクトにインストールできる最もシンプルなグラフデータベースかもしれません。そのシンプルさに加え、ニーズに合わせて拡張できる強力な機能も備えています。

Neo4jの唯一の欠点は、ノード数に制限があり、シャーディングをサポートしていないことです。それ以外は、グラフDBプロジェクトに最適なツールです。

TechRepublicのYouTubeチャンネル「How To Make Tech Work」を購読して、ジャック・ウォーレンによるビジネスプロフェッショナル向けの最新テクノロジーアドバイスをぜひご覧ください。TechRepublic Academyの「Mastering Linux Development Bundle」でUbuntuについてさらに詳しく学びましょう。

Tagged: