# mulesoft Neo4j Connector - Full Documentation # Neo4j Connector Neo4j Connector v3.0 Neo4j 用 Anypoint Connector では、CQL ステートメントを実行、および Neo4j Graph データベースインスタンスに対してノードの作成、更新、削除、選択などの基本操作を実行することができます。 リリースノート: [Neo4j Connector リリースノート](https://docs.mulesoft.com/jp/release-notes/connector/neo4j-connector-release-notes-mule-4)​ Exchange: [Neo4j Connector](https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-neo4j-connector/) ## [](#始める前に)始める前に この情報を使用するには、Neo4j、Mule、Anypoint Connector、Anypoint Studio、Mule の概念、Mule フローの要素、グローバル要素に精通している必要があります。 対象リソースへの接続をテストするには、ログイン情報が必要です。 ソフトウェアの要件および互換性情報については、「コネクタリリースノート」を参照してください。 ## [](#pom-ファイル情報)POM ファイル情報 ```xml com.mulesoft.connectors mule-neo4j-connector x.x.x mule-plugin ``` `x.x.x`​ を使用しているコネクタに対応するバージョンに置き換えます。 最新の ​`pom.xml`​ ファイル情報を取得するには、​ [Anypoint Exchange](https://www.mulesoft.com/exchange/)​ でコネクタにアクセスし、​**\[Dependency Snippets (連動関係スニペット)\]**​ をクリックします。 ## [](#Metadata)メタデータ Neo4j Connector のメタデータは、次の前提に基づいています。 - 操作の表示ラベルは、データベースでインスタンス化される表示ラベルである。 - データベースにはノードに対する次の制約がある。 - 一意のプロパティの制約。 - プロパティ存在の制約。 - データベースで制約値が定義されたノードが少なくとも 1 つある。 ## [](#studio-プロジェクトへのコネクタの追加)Studio プロジェクトへのコネクタの追加 Anypoint Studio には、Studio プロジェクトにコネクタを追加する 2 つの方法があります。Studio タスクバーの Exchange ボタンから追加するか、\[Mule Palette (Mule パレット)\] ビューから追加します。 ### [](#exchange-を使用してコネクタを追加する)Exchange を使用してコネクタを追加する 1. Studio で Mule プロジェクトを作成します。 2. Studio タスクバーの左上にある Exchange アイコン ​**(X)**​ をクリックします。 3. Exchange で、​**\[Login (ログイン)\]**​ をクリックし、Anypoint Platform のユーザー名とパスワードを指定します。 4. Exchange で、「neo4j」を検索します。 5. コネクタを選択して ​**\[Add to project (プロジェクトに追加)\]**​ をクリックします。 6. 画面の指示に従ってコネクタをインストールします。 ### [](#studio-でコネクタに追加する)Studio でコネクタに追加する 1. Studio で Mule プロジェクトを作成します。 2. \[Mule Palette (Mule パレット)\] ビューで、​**\[(X) Search in Exchange ((X) Exchange 内を検索)\]**​ をクリックします。 3. **\[Add Modules to Project (モジュールをプロジェクトに追加)\]**​ で、検索項目に「neo4j」と入力します。 4. **\[Available modules (使用可能なモジュール)\]**​ で、このコネクタの名前をクリックします。 5. **\[Add (追加)\]**​ をクリックします。 6. **\[Finish (完了)\]**​ をクリックします。 ### [](#studio-で設定する)Studio で設定する 1. Neo4j の操作を Studio キャンバスにドラッグします。 2. 操作を選択します。 ![Studio での Neo4j Connector の使用可能な操作のリスト](/mulesoft/current/ja-jp/neo4j-connector/3.0/_images/neo4j-operations-studio.png)
名前 説明

Execute

データベースに対して任意の CQL ステートメントを実行します。

Create Node

特定の初期表示ラベルを使用してノードを作成します。必要に応じてノードにプロパティを追加できます。

Select Nodes

特定の表示ラベルを使用するノードを照会します。必要に応じて、検索条件として使用するプロパティを指定できます。

Update Nodes

特定の表示ラベルを使用する 1 つまたは複数のノードのプロパティを変更します。必要に応じて検索条件としてプロパティを追加できます。

Delete Nodes

特定の表示ラベルに基づいて 1 つまたは複数のノードを削除します。インバウンド/アウトバウンドリレーションのあるノードを削除できます。必要に応じて検索条件としてプロパティを追加できます。

注意: Neo4j Connector の基本操作では、クエリで表示ラベルを 1 つだけ使用してノードを絞り込むことができます。クエリ内で複数の表示ラベルを使用して絞り込む場合は、\[Execute (実行)\] 操作で適切な CQL ステートメントを実行します。 3. コネクタのグローバル要素を設定します。 ![\[Global Element Properties (グローバル要素プロパティ)\]](_images/neo4j-config-studio1.png)
項目 説明

Username (ユーザー名)

ログインに使用するユーザー名を入力します。

Password (パスワード)

対応するパスワードを入力します。

BOLT URL

Bolt エンドポイント。

REST URL

Rest エンドポイント URL (HTTP または HTTPS で使用できる)。

## [](#ユースケース-ノードの基本-crud)ユースケース: ノードの基本 CRUD ![Listener、Transform Message、Create node、Select nodes、Delete node、および Transform Message を含む Studio フロー](/mulesoft/current/ja-jp/neo4j-connector/3.0/_images/neo4j-example-flow.png) 1. Anypoint Studio で新しい Mule プロジェクトを作成し、​`src/main/resources/automation-credentials.properties`​ で Neo4j 環境プロパティを設定します。 ```text config.username= config.password= config.boltUrl= config.restUrl= ``` 2. HTTP Connector をキャンバスにドラッグし、デフォルト値で設定します。 3. \[Transform Message (メッセージの変換)\] をキャンバスにドラッグし、次のコードを使用して params という名前でフロー変数を作成します。 ```dataweave %dw 2.0 %output application/json --- { "name":"Tom Hanks", "born": 1956 } ``` 4. Neo4j Connector をキャンバスにドラッグし、次の表に従って新しいグローバル要素を設定します。
パラメーター 値

Username (ユーザー名)

${neo4j.username}

Password (パスワード)

${neo4j.password}

BOLT URL

${neo4j.boltUrl}

REST URL

${neo4j.restUrl}

```xml ``` 5. プロパティエディターで次のように設定します。
パラメーター 値

Display Name (表示名)

Create node

Connector Configuration (コネクタ設定)

Neo4j__Basic_Authentication

操作

Create node

Label (表示ラベル)

Person

パラメーターリファレンス

#[payload]

![Create node のプロパティ設定ウィンドウ](/mulesoft/current/ja-jp/neo4j-connector/3.0/_images/neo4j-create-node.png) 注意: \[Test Connection (接続をテスト)\] をクリックして、Mule が Neo4j インスタンスに接続できることを確認します。正常に接続できた場合は、\[OK\] をクリックして設定を保存します。失敗した場合は、パラメーターを確認して修正し、もう一度テストを実行してください。 6. Neo4j Connector をキャンバスにドラッグして、プロパティエディターで次のパラメーターを設定します。
パラメーター 値

操作

Select nodes

Label (表示ラベル)

Person

7. Neo4j Connector をキャンバスにドラッグして、プロパティエディターで次のパラメーターを設定します。
パラメーター 値

操作

Delete nodes

Label (表示ラベル)

Person

8. \[Transform Message (メッセージの変換)\] をキャンバスにドラッグします。 ```dataweave %dw 2.0 %output application/json --- payload ``` 9. 変更内容を保存して、Mule アプリケーションとしてプロジェクトをデプロイします。ブラウザーを開いて、次の URL に要求を送信します。 ```none http://localhost:8081/CRUD ``` ノードが正常に作成および削除されたら、情報が JSON 形式で表示されます。 ```json {"born":1956,"name":"Tom Hanks"} ``` ### [](#複数の表示ラベルを使用するノードを作成する)複数の表示ラベルを使用するノードを作成する ![Listener、Transform Message、Create node、Select node、および Transform Message を含む Studio フロー](/mulesoft/current/ja-jp/neo4j-connector/3.0/_images/neo4j-create-node-with-multiple-labels.png) 1. Anypoint Studio で新しい Mule プロジェクトを作成し、​`src/main/resources/automation-credentials.properties`​ で Neo4j 環境プロパティを設定します。 ```text config.username= config.password= config.boltUrl= config.restUrl= ``` 2. HTTP Connector をキャンバスにドラッグし、デフォルト値で設定します。 3. \[Transform Message (メッセージの変換)\] をキャンバスにドラッグし、次のコードを使用して 2 つのフロー変数を作成します。 1. Variable-create ```dataweave %dw 2.0 %output application/json --- "CREATE (a:ACTOR:PERSON { name:\"Tom Hanks\", born:1956 })" ``` 2. Variable-select ```dataweave %dw 2.0 %output application/json --- "MATCH (a:ACTOR:PERSON) RETURN a" ``` 4. Neo4j Connector をキャンバスにドラッグし、次の表に従って新しいグローバル要素を設定します。
パラメーター 値

Username (ユーザー名)

${neo4j.username}

Password (パスワード)

${neo4j.password}

BOLT URL

${neo4j.boltUrl}

REST URL

${neo4j.restUrl}

```xml ``` 5. プロパティエディターで次のように設定します。
パラメーター 値

Display Name (表示名)

Create node (advanced)

Connector Configuration (コネクタ設定)

Neo4j__Basic_Authentication

操作

Execute

Query (クエリ)

#[vars.create]

パラメーターリファレンス

#[payload]

![Create node のプロパティ設定ウィンドウ](/mulesoft/current/ja-jp/neo4j-connector/3.0/_images/neo4j-execute-create.png) \[Test Connection (接続をテスト)\] をクリックして、Mule が Neo4j インスタンスに接続できることを確認します。正常に接続できた場合は、\[OK\] をクリックして設定を保存します。失敗した場合は、パラメーターを確認して修正し、もう一度テストを実行してください。 6. Neo4j Connector をキャンバスにドラッグして、プロパティエディターで次のパラメーターを設定します。
パラメーター 値

Display Name (表示名)

Select node (Multi-label)

操作

Execute

Query (クエリ)

#[vars.select]

7. \[Transform Message (メッセージの変換)\] をキャンバスにドラッグします。 8. \[Logger (ロガー)\] をキャンバスにドラッグします。 9. 変更内容を保存して、Mule アプリケーションとしてプロジェクトをデプロイします。ブラウザーを開いて、次の URL に要求を送信します。 ```none http://localhost:8081/createNodeMultiLabel ``` ノードが正常に作成および削除されたら、情報が JSON 形式で表示されます。 ```json [{"a":{"born":1956,"name":"Tom Hanks"}}] ``` ## [](#ユースケース-xml)ユースケース: XML ```xml ``` ## [](#関連情報)関連情報 - [Neo4j Connector リファレンス](https://docs.mulesoft.com/jp/neo4j-connector/3.0/neo4j-connector-reference) - [MuleSoft ヘルプセンター](https://help.mulesoft.com) # Neo4j Connector リファレンス Neo4j Connector v3.0 リリースノート: [Neo4j Connector リリースノート](https://docs.mulesoft.com/jp/release-notes/connector/neo4j-connector-release-notes-mule-4) ## [](#デフォルト設定)デフォルト設定 ### [](#パラメーター)パラメーター
名前 型 説明 デフォルト値 必須

Name (名前)

String (文字列)

この設定の名前。コネクタはこの名前の設定を参照します。

x

Connection (接続)

Connection (接続)

この設定に指定できる接続種別。

x

Expiration Policy (有効期限ポリシー)

ExpirationPolicy

動的設定インスタンスがアイドル状態を続けられる最小時間を設定します。この時間が経過すると、Runtime で期限切れに相当するとみなされます。これは、インスタンスが有効期限の対象となった瞬間にプラットフォームでそのインスタンスが期限切れになるということではありません。ランタイムによって適切と判断されたときに、インスタンスがパージされます。

## [](#config_connection)接続種別 ### [](#パラメーター-2)パラメーター
名前 型 説明 デフォルト値 必須

Username (ユーザー名)

String (文字列)

x

Password (パスワード)

String (文字列)

x

BOLT URL

String (文字列)

x

REST URL

String (文字列)

x

Reconnection (再接続)

Reconnection (再接続)

アプリケーションがデプロイされると、すべてのコネクタで接続テストが実行されます。true に設定されている場合、関連する再接続戦略をすべて実行した後にテストに合格しないと、デプロイメントが失敗します。

### [](#関連操作)関連操作 - createNode - deleteNodes - 実行 - selectNodes - updateNodes ## [](#操作)操作 ## [](#createNode)Create Node `` ### [](#パラメーター-3)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Label (表示ラベル)

String (文字列)

x

Input (入力)

Binary (バイナリ)

Reconnection Strategy (再接続戦略)

  • reconnect (再接続)

  • reconnect-forever (繰り返し再接続)

接続エラーが発生した場合の再試行戦略。

### [](#次の設定の場合)次の設定の場合 - config ### [](#スロー)スロー - NEO4J:CONNECTIVITY - NEO4J:RETRY\_EXHAUSTED ## [](#deleteNodes)Delete Nodes `` ### [](#パラメーター-4)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Label (表示ラベル)

String (文字列)

x

Remove Relationships (リレーションを削除)

Boolean (ブール)

false

パラメーター

Binary (バイナリ)

Reconnection Strategy (再接続戦略)

  • reconnect (再接続)

  • reconnect-forever (繰り返し再接続)

接続エラーが発生した場合の再試行戦略。

### [](#次の設定の場合-2)次の設定の場合 - config ### [](#スロー-2)スロー - NEO4J:CONNECTIVITY - NEO4J:RETRY\_EXHAUSTED ## [](#execute)Execute `` ### [](#パラメーター-5)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Query (クエリ)

String (文字列)

#[payload]

Input (入力)

Binary (バイナリ)

Streaming Strategy (ストリーミング戦略)

  • repeatable-in-memory-stream

  • repeatable-file-store-stream

  • non-repeatable-stream

反復可能ストリームを使用すべきかどうか、およびその動作を設定します。

Target Variable (対象変数)

String (文字列)

操作の出力が配置される変数の名前。

Target Value (対象値)

String (文字列)

操作の出力に対して評価する式。その式の結果は対象変数に保存されます。

#[payload]

Reconnection Strategy (再接続戦略)

  • reconnect (再接続)

  • reconnect-forever (繰り返し再接続)

接続エラーが発生した場合の再試行戦略。

### [](#出力)出力 | 型 | Binary (バイナリ) | | --- | --- | ### [](#次の設定の場合-3)次の設定の場合 - config ### [](#スロー-3)スロー - NEO4J:CONNECTIVITY - NEO4J:RETRY\_EXHAUSTED ## [](#select-nodes)Select Nodes `` ### [](#パラメーター-6)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Label (表示ラベル)

String (文字列)

x

Input (入力)

Binary (バイナリ)

Target Variable (対象変数)

String (文字列)

操作の出力が配置される変数の名前。

Target Value (対象値)

String (文字列)

操作の出力に対して評価する式。その式の結果は対象変数に保存されます。

#[payload]

Reconnection Strategy (再接続戦略)

  • reconnect (再接続)

  • reconnect-forever (繰り返し再接続)

接続エラーが発生した場合の再試行戦略。

### [](#出力-2)出力 | 型 | Array of Object (オブジェクトの配列) | | --- | --- | ### [](#次の設定の場合-4)次の設定の場合 - config ### [](#スロー-4)スロー - NEO4J:CONNECTIVITY - NEO4J:RETRY\_EXHAUSTED ## [](#updateNodes)Update Nodes `` ### [](#パラメーター-7)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Label (表示ラベル)

String (文字列)

x

パラメーター

Binary (バイナリ)

Set Parameters (パラメーターを設定)

Binary (バイナリ)

#[payload]

Reconnection Strategy (再接続戦略)

  • reconnect (再接続)

  • reconnect-forever (繰り返し再接続)

接続エラーが発生した場合の再試行戦略。

### [](#次の設定の場合-5)次の設定の場合 - config ### [](#スロー-5)スロー - NEO4J:CONNECTIVITY - NEO4J:RETRY\_EXHAUSTED ## [](#型)型 ### [](#Reconnection)Reconnection (再接続)
項目 型 説明 デフォルト値 必須

Fails Deployment (デプロイメントに失敗)

Boolean (ブール)

アプリケーションがデプロイされると、すべてのコネクタで接続テストが実行されます。true に設定されている場合、関連する再接続戦略をすべて実行した後にテストに合格しないと、デプロイメントが失敗します。

Reconnection Strategy (再接続戦略)

  • reconnect (再接続)

  • reconnect-forever (繰り返し再接続)

使用する再接続戦略。

### [](#reconnect)Reconnect (再接続)
項目 型 説明 デフォルト値 必須

Frequency (頻度)

Number (数値)

再接続する頻度 (ミリ秒)。

Count (数)

Number (数値)

再接続の試行回数。

blocking (ブロック)

Boolean (ブール)

false の場合、再接続戦略が個別の非ブロックスレッドで実行されます。

true

### [](#reconnect-forever)Reconnect Forever (繰り返し再接続)
項目 型 説明 デフォルト値 必須

Frequency (頻度)

Number (数値)

再接続する頻度 (ミリ秒)。

blocking (ブロック)

Boolean (ブール)

false の場合、再接続戦略が個別の非ブロックスレッドで実行されます。

true

### [](#ExpirationPolicy)Expiration Policy (有効期限ポリシー)
項目 型 説明 デフォルト値 必須

Max Idle Time (最大アイドル時間)

Number (数値)

有効期限の対象とみなされるまで、動的設定インスタンスがアイドル状態を維持できる最大時間のスカラー時間値。

Time Unit (時間単位)

Enumeration (列挙)。次のいずれかになります。 NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS ** DAYS

maxIdleTime 属性の時間単位。

### [](#repeatable-in-memory-stream)Repeatable In Memory Stream (反復可能なメモリ内ストリーム)
項目 型 説明 デフォルト値 必須

Initial Buffer Size (初期バッファサイズ)

Number (数値)

ストリームをコンシュームし、ランダムアクセスを提供するために割り当てられるメモリ量。ストリームに含まれているデータがこのバッファに適合できる量を超えている場合、bufferSizeIncrement 属性に従ってバッファが拡張され、上限は maxInMemorySize となります。

Buffer Size Increment (バッファサイズ増分)

Number (数値)

バッファサイズが初期サイズを超えた場合に、どれだけ拡張するか。値を 0 以下に設定すると、バッファが拡張されません。つまり、バッファがフルになると、​STREAM_MAXIMUM_SIZE_EXCEEDED​ エラーが発生します。

Max Buffer Size (最大バッファサイズ)

Number (数値)

使用するメモリの最大量。これを超えると、​STREAM_MAXIMUM_SIZE_EXCEEDED​ エラーが発生します。0 以下の値は無制限を意味します。

Buffer Unit (バッファ単位)

Enumeration (列挙)。次のいずれかになります。 BYTE (バイト) KB MB GB

これらのすべての属性の単位

### [](#repeatable-file-store-stream)Repeatable File Store Stream (反復可能なファイルストアストリーム)
項目 型 説明 デフォルト値 必須

Max In Memory Size (最大メモリ内サイズ)

Number (数値)

データをメモリ内に保持するためにストリームで使用する最大メモリを定義します。これを超えると、ディスクへのコンテンツのバッファが開始されます。

Buffer Unit (バッファ単位)

Enumeration (列挙)。次のいずれかになります。 BYTE (バイト) KB MB GB

maxInMemorySize で表される単位

## [](#関連情報)関連情報 - [Neo4j Connector の概要](https://docs.mulesoft.com/jp/neo4j-connector/3.0/) - [MuleSoft ヘルプセンター](https://help.mulesoft.com)