JanusGraphデータベースのインストールのメモ-JanusGraph 0.3.0を例に

5503 ワード

最近のプロジェクトでは、図データを使用する必要があるため、JanusGraphを使用することを選択しました.この記事では、JanusGraphをインストールし、統合するCassandra+Elasticsearchをインストールする手順を説明します.
原文住所:https://www.cnblogs.com/xiaff/p/Install_JanusGraph.html

本文の概要

  • JanusGraph概要
  • JanusGraphのインストール
  • Dockerインストール
  • Cassandra取付
  • Elasticsearch取付
  • JanusGraph
  • をインストール
  • 小結
  • JanusGraphの概要


    公式サイトによると、JanusGraphは拡張可能な図データベースであり、マルチマシンクラスタに分散された数千億個の頂点とエッジを含むストレージとクエリーの図を最適化しています.JanusGraphはトランザクション・データベースであり、数千人の同時ユーザが複雑なグラフをリアルタイムで実行することをサポートします.
    JanusGraphは、複数のストレージバックエンドをサポートします.
  • Apache Cassandra®
  • Apache HBase®
  • Google Cloud Bigtable
  • Oracle BerkeleyDB

  • 地理検索、範囲検索、全文検索もサポートされています.これらの機能は、次の検索エンジンを使用しています.
  • ElasticSearch™
  • Apache Solr™
  • Apache Lucene®

  • JanusGraphオリジナルサポートApache TinkerPop™ 図スタック:
  • Gremlin図クエリー言語
  • Gremlin図サーバ
  • Gremlinアプリケーション
  • JanusGraphのインストール


    今回のJanusGraphのインストールはUbuntu 18.04 LTS環境に基づいており、主にDockerを利用してストレージバックエンドCassandraと検索エンジンElasticSearchをインストールしています.

    0.Dockerインストール


    ネットワークの問題を考慮して、Dockerのインストールは主に清華鏡像ステーションの紹介を参考にした:Docker Community Edition鏡像使用ヘルプ.
  • インストール依存
  • sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
    
  • 信頼DockerのGPG公開鍵:
  • curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
  • ソフトウェアウェアハウスの追加:
  • sudo add-apt-repository \
       "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
       $(lsb_release -cs) \
       stable"
    
  • 最終取付Docker-CE
  • sudo apt-get update
    sudo apt-get install docker-ce
    
  • 現在のユーザーをdockerユーザーグループに追加します.sudoでdockerを実行する必要はありません(オプション)
  • .
    sudo groupadd docker
    sudo usermod -aG docker $USER
    
  • 追加の手順:国内のDockerミラー加速を追加/etc/docker/daemon.jsonファイルで次のように編集します:
  • {
      "registry-mirrors": [
          "https://registry.docker-cn.com"
      ]
    }
    

    1.Cassandraインストール


    Cassandraのインストールは公式のDockerライブラリを参考にしており、今回のインストールバージョンは3.11.3です.
    docker run --name cassandra-3.11.3 -p 7000:7000 -p 7001:7001 -p 7199:7199 -p 9042:9042 -p 9160:9160 -d cassandra:3.11.3
    

    2.Elasticsearch取付


    Elasticsearchのインストールは公式のDockerライブラリを参考にしており、今回のインストールバージョンは5.5.2です.
    docker run --name es-5.5.2 -p 9200:9200 -p 9300:9300 -d elasticsearch:5.5.2
    

    中国語分詞プラグインのインストール(オプション)
    インストールについてはIK Analysis for ElasticsearchのGitHubを参照してください.
    まずはElasticsearchのDocker環境に入り、
    docker exec -it es-5.5.2 bash
    

    次に、次のインストールコマンドを実行します.
    ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.5.2/elasticsearch-analysis-ik-5.5.2.zip
    

    インストールが成功したら、現在のElasticsearchのDocker環境を終了し、exitを実行する必要があります.その後、Elasticsearchを再起動します.
    docker restart es-5.5.2
    

    3.JanusGraphのインストール


    JanusGraphのダウンロードアドレスは、Github Releasesページにあります.具体的なインストールと配置は公式サイトのドキュメントの紹介を参考にして、今回はjanusgraph-0.3.0-hadoop2.zipをダウンロードすることを選択しました.
    wget https://github.com/JanusGraph/janusgraph/releases/download/v0.3.0/janusgraph-0.3.0-hadoop2.zip
    

    ダウンロードが完了したらunzipで解凍し、janusgraph~ディレクトリに入ります.
    JanusGraphがサービスで動作し、WebSocket通信を使用する必要があります.まず`conf/gremlin-server/gremlin-serverを表示する必要があります.yaml'というプロファイルは、サービスが開始されると指定されます.ファイルの最初の行は次のとおりです.
    host: 0.0.0.0
    port: 8182
    scriptEvaluationTimeout: 30000
    channelizer: org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer
    graphs: {
      graph: conf/gremlin-server/janusgraph-cql-es-server.properties
    }
    
  • hostおよびportは、サービス傍受のアドレスおよびポートを指定する.
  • scriptEvaluationTimeoutは、単一のクエリが最も長い時間を指し、デフォルトは30sです.
  • channelizerは、WebSocketChannelizerまたはHttpChannelizerを使用するかを設定する.
  • graphs.graphは、JanusGraphの特定のプロファイルconf/gremlin-server/janusgraph-cql-es-server.propertiesを指す.

  • 次はjanusgraph-cql-es-server.propertiesの主な構成内容です.
    #     
    storage.backend=cql
    storage.hostname=127.0.0.1
    storage.cql.keyspace=janusgraph
    
    #     
    cache.db-cache = true
    cache.db-cache-clean-wait = 20
    cache.db-cache-time = 180000
    cache.db-cache-size = 0.25
    
    #       
    index.search.backend=elasticsearch
    index.search.hostname=127.0.0.1
    index.search.elasticsearch.client-only=true
    

    構成が完了すると、Gremlin Serverを起動できます!
    bin/gremlin-server.sh ./conf/gremlin-server/gremlin-server.yaml
    

    正常に起動すると、リスニング8182ポートに表示されます.
    INFO  org.apache.tinkerpop.gremlin.server.GremlinServer  - Channel started at port 8182.
    

    小結


    これで、JanusGraphのインストール構成が完成しました!より詳細な構成が必要な場合は、公式サイトのドキュメントを参照することをお勧めします.このメモは流水勘定の形式でJanusGraphをインストールする過程を記録しています.私たちも初めて図データベースライブラリとJanusGraphに接触したので、多くの不足や間違いがある可能性があります.ご指摘を歓迎します.さらに、JanusGraphでSchemaを定義したり、インデックスを構築したり、クエリーに関連するプロセスと踏んだピットを説明します.