付録A 追加情報とリソース
このセクションでは、読者にとって役に立つかもしれない追加情報を手短に取り上げる。他のタイプのアルゴリズム、Neo4jにデータをインポートする別の方法、そして別のプロシージャー・ライブラリを見ていく。また、データセットの発見、プラットフォームの支援、トレーニングのためのリソースもある。
その他のアルゴリズム
グラフデータには多くのアルゴリズムが使用できる。本書では、古典的なグラフ・アルゴリズムの代表的なものや、アプリケーション開発者にとって最も有用なものに焦点を当てた。カラーリングやヒューリスティックなど、いくつかのアルゴリズムは、学術的なケースでより関心が高いか、簡単に導出できるため割愛した。
エッジベースのコミュニティ検出など、他のアルゴリズムも興味深いが、Neo4jやApache Sparkにはまだ実装されていない。 グラフ分析の利用が拡大するにつれて、両プラットフォームで使用されるグラフアルゴリズムのリストが増えることを期待している。
また、グラフと一緒に使われるが、厳密にはグラフ的な性質ではないアルゴリズムのカテゴリーもある。例えば、第8章ではマシンラーニングの文脈で使われるいくつかのアルゴリズムを見てきた。もう一つの注目すべき分野は、レコメンデーションやリンク予測によく適用される類似性アルゴリズムである。類似性アルゴリズムは、ノードの属性のような項目を比較する様々なメソッドを使用することで、どのノードが互いに最も似ているかを見つけ出す。
Neo4j一括データインポートとYelp
Cypherクエリ言語を使ってNeo4jにデータをインポートするには、トランザクショナル・アプローチを使用する。図A-1は、このプロセスのハイレベルな概要を示している。
図A-1. サイファーベースのインポート
このメソッドは、インクリメント・データ・ローディングや1,000万レコードまでのバルク・ローディングには有効であるが、初期化されたバルク・データセットをインポートする場合は、Neo4jインポート・ツールの方が良い選択である。 このツールは、図A-2に示すように、トランザクション・ログをスキップしてストア・ファイルを直接作成する。
図A-2. Neo4jインポートツールを使う
Neo4j インポート・ツールは CSV ファイルを処理し、これらのファイルが特定のヘッダを持つことを期待する。図 A-3に、ツールで処理できる CSV ファイルの例を示す。
図 A-3. Neo4jインポートが処理するCSVファイルの形式
Yelpデータセットのサイズは、Neo4jインポートツールがデータをNeo4jに取り込むための最良の選択であることを意味する。 データはJSON形式なので、まずNeo4jインポートツールが期待する形式に変換する必要がある。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access