blob: c8fab0d937afa8f339fb94059175e3955da8d239 [file] [log] [blame]
<!doctype html><html lang=en class=no-js><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=generator content="Hugo 0.102.3"><meta name=robots content="index, follow"><link rel="shortcut icon" href=/favicons/favicon.ico><link rel=apple-touch-icon href=/favicons/apple-touch-icon-180x180.png sizes=180x180><link rel=icon type=image/png href=/favicons/favicon-16x16.png sizes=16x16><link rel=icon type=image/png href=/favicons/favicon-32x32.png sizes=32x32><link rel=icon type=image/png href=/favicons/android-36x36.png sizes=36x36><link rel=icon type=image/png href=/favicons/android-48x48.png sizes=48x48><link rel=icon type=image/png href=/favicons/android-72x72.png sizes=72x72><link rel=icon type=image/png href=/favicons/android-96x96.png sizes=96x96><link rel=icon type=image/png href=/favicons/android-144x144.png sizes=144x144><link rel=icon type=image/png href=/favicons/android-192x192.png sizes=192x192><title>HugeGraph-Server Quick Start | HugeGraph</title><meta name=description content="1 HugeGraph-Server Overview
HugeGraph-Server is the core part of the HugeGraph Project, contains submodules such as Core, Backend, API.
The Core …"><meta property="og:title" content="HugeGraph-Server Quick Start"><meta property="og:description" content="1 HugeGraph-Server Overview HugeGraph-Server is the core part of the HugeGraph Project, contains submodules such as Core, Backend, API.
The Core Module is an implementation of the Tinkerpop interface; The Backend module is used to save the graph data to the data store, currently supported backends include: Memory, Cassandra, ScyllaDB, RocksDB; The API Module provides HTTP Server, which converts Client&rsquo;s HTTP request into a call to Core Module.
There will be two spellings HugeGraph-Server and HugeGraphServer in the document, and other modules are similar."><meta property="og:type" content="article"><meta property="og:url" content="/docs/quickstart/hugegraph-server/"><meta property="article:section" content="docs"><meta property="article:modified_time" content="2024-04-02T23:43:17+08:00"><meta property="og:site_name" content="HugeGraph"><meta itemprop=name content="HugeGraph-Server Quick Start"><meta itemprop=description content="1 HugeGraph-Server Overview HugeGraph-Server is the core part of the HugeGraph Project, contains submodules such as Core, Backend, API.
The Core Module is an implementation of the Tinkerpop interface; The Backend module is used to save the graph data to the data store, currently supported backends include: Memory, Cassandra, ScyllaDB, RocksDB; The API Module provides HTTP Server, which converts Client&rsquo;s HTTP request into a call to Core Module.
There will be two spellings HugeGraph-Server and HugeGraphServer in the document, and other modules are similar."><meta itemprop=dateModified content="2024-04-02T23:43:17+08:00"><meta itemprop=wordCount content="2789"><meta itemprop=keywords content><meta name=twitter:card content="summary"><meta name=twitter:title content="HugeGraph-Server Quick Start"><meta name=twitter:description content="1 HugeGraph-Server Overview HugeGraph-Server is the core part of the HugeGraph Project, contains submodules such as Core, Backend, API.
The Core Module is an implementation of the Tinkerpop interface; The Backend module is used to save the graph data to the data store, currently supported backends include: Memory, Cassandra, ScyllaDB, RocksDB; The API Module provides HTTP Server, which converts Client&rsquo;s HTTP request into a call to Core Module.
There will be two spellings HugeGraph-Server and HugeGraphServer in the document, and other modules are similar."><link rel=preload href=/scss/main.min.14ea575cb35d93d46ff8681b2334f40fd46243c100c5c39f5a841b931fae2d40.css as=style><link href=/scss/main.min.14ea575cb35d93d46ff8681b2334f40fd46243c100c5c39f5a841b931fae2d40.css rel=stylesheet integrity><script src=https://code.jquery.com/jquery-3.5.1.min.js integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin=anonymous></script>
<link rel=stylesheet href=/css/prism.css><script type=application/javascript>var doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-00000000-0","auto"),ga("send","pageview"))</script><script async src=https://www.google-analytics.com/analytics.js></script></head><body class=td-page><header><nav class="js-navbar-scroll navbar navbar-expand navbar-dark flex-column flex-md-row td-navbar"><a class=navbar-brand href=/><span class=navbar-logo><svg id="图层_1" data-name="图层 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 16 16"><defs><style>.cls-1{fill:none;stroke:#fff;stroke-miterlimit:10;stroke-width:.5px;opacity:.3}.cls-2{fill:#229efa}.cls-3{fill:#9948f7}.cls-4{fill:#33bc7a}.cls-5{fill:url(#未命名的渐变_3)}.cls-6{fill:url(#未命名的渐变_13)}.cls-7{fill:url(#未命名的渐变_11)}</style><linearGradient id="未命名的渐变_3" x1="6.16" y1="14.63" x2="6.16" y2="6.01" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#2e3192"/><stop offset="0" stop-color="#229efa"/><stop offset=".44" stop-color="#239cf8"/><stop offset=".6" stop-color="#2795f2"/><stop offset=".71" stop-color="#2d8ae8"/><stop offset=".81" stop-color="#3679d9"/><stop offset=".89" stop-color="#4263c6"/><stop offset=".95" stop-color="#5048af"/><stop offset="1" stop-color="#5c319b"/></linearGradient><linearGradient id="未命名的渐变_13" x1="10.75" y1="8.2" x2="4.49" y2="1.94" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#991146"/><stop offset="0" stop-color="#326b4e"/><stop offset=".02" stop-color="#3a685c"/><stop offset=".07" stop-color="#506180"/><stop offset=".13" stop-color="#645aa0"/><stop offset=".19" stop-color="#7554bc"/><stop offset=".26" stop-color="#8250d2"/><stop offset=".35" stop-color="#8d4ce3"/><stop offset=".45" stop-color="#944aee"/><stop offset=".6" stop-color="#9848f5"/><stop offset="1" stop-color="#9948f7"/></linearGradient><linearGradient id="未命名的渐变_11" x1="15.34" y1="6.67" x2="7.88" y2="10.98" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#33bc7a"/><stop offset=".45" stop-color="#32ba7a"/><stop offset=".61" stop-color="#2fb37c"/><stop offset=".73" stop-color="#29a87e"/><stop offset=".82" stop-color="#219782"/><stop offset=".9" stop-color="#168186"/><stop offset=".97" stop-color="#09668b"/><stop offset="1" stop-color="#03598e"/></linearGradient></defs><title>logo</title><rect class="cls-1" x="-143.14" y="-373.46" width="597.8" height="424.44"/><circle class="cls-2" cx="12.02" cy="1.83" r="1.33"/><circle class="cls-3" cx="12.02" cy="14.17" r="1.33"/><circle class="cls-4" cx="1.33" cy="8" r="1.33"/><path class="cls-5" d="M7.91 10h0a2.65 2.65.0 01-.23-3.74A1.75 1.75.0 017.91 6h0A2.66 2.66.0 014.4 6h0a1.81 1.81.0 01.24.24A2.65 2.65.0 014.4 10h0a2.62 2.62.0 00-.89 2 2.65 2.65.0 104.4-2z"/><path class="cls-6" d="M12.19 5.49a2.78 2.78.0 01-.5.11A2.64 2.64.0 018.76 3.5h0a2.65 2.65.0 10-2.6 3.17A2.6 2.6.0 007 6.53H7a2.65 2.65.0 013.44 2 2.94 2.94.0 010-.51 2.65 2.65.0 011.75-2.53z"/><path class="cls-7" d="M13 5.35a2.64 2.64.0 00-2.59 2.12h0a3 3 0 01-.08.32A2.65 2.65.0 017.54 9.58a2.86 2.86.0 00.37.41h0a2.63 2.63.0 01.9 2 2.84 2.84.0 01-.05.51 2.64 2.64.0 013.12-2.06l.32.08h0a2.6 2.6.0 00.84.14 2.65 2.65.0 100-5.3z"/></svg></span><span class=font-weight-bold>HugeGraph</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_navbar><ul class="navbar-nav mt-2 mt-lg-0"><li class="nav-item mr-4 mb-2 mb-lg-0"><a class=nav-link href=/docs/><i class='fas fa-book pr-2'></i><span>Documentation</span></a></li><li class="nav-item mr-4 mb-2 mb-lg-0"><a class=nav-link href=https://github.com/apache/incubator-hugegraph target=_blank><i class='fab fa-github pr-2'></i><span>GitHub</span></a></li><li class="nav-item mr-4 mb-2 mb-lg-0"><a class=nav-link href=/docs/download/download/><i class='fas fa-download pr-2'></i><span>Download</span></a></li><li class="nav-item mr-4 mb-2 mb-lg-0"><a class=nav-link href=/community/><span>Community</span></a></li><li class="nav-item dropdown mr-4 d-none d-lg-block"><a class="nav-link dropdown-toggle" href=# id=navbarDropdown role=button data-toggle=dropdown aria-haspopup=true aria-expanded=false>English</a><div class=dropdown-menu aria-labelledby=navbarDropdownMenuLink><a class=dropdown-item href=/cn/docs/quickstart/hugegraph-server/>中文</a></div></li></ul></div><div class="navbar-nav d-none d-lg-block"></div></nav></header><div class="container-fluid td-outer"><div class=td-main><div class="row flex-xl-nowrap"><aside class="col-12 col-md-3 col-xl-2 td-sidebar d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div id=content-mobile><form class="td-sidebar__search d-flex align-items-center"><button class="btn btn-link td-sidebar__toggle d-md-none p-0 ml-3 fas fa-bars" type=button data-toggle=collapse data-target=#td-section-nav aria-controls=td-docs-nav aria-expanded=false aria-label="Toggle section navigation"></button></form></div><div id=content-desktop></div><nav class="collapse td-sidebar-nav" id=td-section-nav><div class="nav-item dropdown d-block d-lg-none"><a class="nav-link dropdown-toggle" href=# id=navbarDropdown role=button data-toggle=dropdown aria-haspopup=true aria-expanded=false>English</a><div class=dropdown-menu aria-labelledby=navbarDropdownMenuLink><a class=dropdown-item href=/cn/docs/quickstart/hugegraph-server/>中文</a></div></div><ul class="td-sidebar-nav__section pr-md-3 ul-0"><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docs-li><a href=/docs/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section tree-root" id=m-docs><span>Documentation</span></a><ul class=ul-1><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsintroductionreadme-li><a href=/docs/introduction/readme/ title="Introduction with HugeGraph" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsintroductionreadme><span>Introduction</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsdownloaddownload-li><a href=/docs/download/download/ title="Download Apache HugeGraph (Incubating)" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsdownloaddownload><span>Download</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-docsquickstart-li><a href=/docs/quickstart/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsquickstart><span>Quick Start</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsquickstarthugegraph-server-li><a href=/docs/quickstart/hugegraph-server/ title="HugeGraph-Server Quick Start" class="align-left pl-0 active td-sidebar-link td-sidebar-link__page" id=m-docsquickstarthugegraph-server><span class=td-sidebar-nav-active-item>Install/Build HugeGraph-Server</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsquickstarthugegraph-loader-li><a href=/docs/quickstart/hugegraph-loader/ title="HugeGraph-Loader Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsquickstarthugegraph-loader><span>Load data with HugeGraph-Loader</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsquickstarthugegraph-hubble-li><a href=/docs/quickstart/hugegraph-hubble/ title="HugeGraph-Hubble Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsquickstarthugegraph-hubble><span>Visual with HugeGraph-Hubble</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsquickstarthugegraph-client-li><a href=/docs/quickstart/hugegraph-client/ title="HugeGraph-Client Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsquickstarthugegraph-client><span>Develop with HugeGraph-Client</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsquickstarthugegraph-ai-li><a href=/docs/quickstart/hugegraph-ai/ title="HugeGraph-AI Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsquickstarthugegraph-ai><span>Explore with HugeGraph-AI</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsquickstarthugegraph-tools-li><a href=/docs/quickstart/hugegraph-tools/ title="HugeGraph-Tools Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsquickstarthugegraph-tools><span>Manage with HugeGraph-Tools</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsquickstarthugegraph-computer-li><a href=/docs/quickstart/hugegraph-computer/ title="HugeGraph-Computer Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsquickstarthugegraph-computer><span>Analysis with HugeGraph-Computer</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsconfig-li><a href=/docs/config/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsconfig><span>Config</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsconfigconfig-guide-li><a href=/docs/config/config-guide/ title="HugeGraph configuration" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsconfigconfig-guide><span>Config Guide</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsconfigconfig-option-li><a href=/docs/config/config-option/ title="HugeGraph Config Options" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsconfigconfig-option><span>Config Options</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsconfigconfig-authentication-li><a href=/docs/config/config-authentication/ title="Built-in User Authentication and Authorization Configuration and Usage in HugeGraph" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsconfigconfig-authentication><span>Config Authentication</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsconfigconfig-https-li><a href=/docs/config/config-https/ title="Configuring HugeGraphServer to Use HTTPS Protocol" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsconfigconfig-https><span>Config HTTPS</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsconfigconfig-computer-li><a href=/docs/config/config-computer/ title="HugeGraph-Computer Config" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsconfigconfig-computer><span>Config Computer</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsclients-li><a href=/docs/clients/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsclients><span>API</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsclientsrestful-api-li><a href=/docs/clients/restful-api/ title="HugeGraph RESTful API" class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsclientsrestful-api><span>RESTful API</span></a><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apischema-li><a href=/docs/clients/restful-api/schema/ title="Schema API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apischema><span>Schema</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apipropertykey-li><a href=/docs/clients/restful-api/propertykey/ title="PropertyKey API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apipropertykey><span>PropertyKey</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apivertexlabel-li><a href=/docs/clients/restful-api/vertexlabel/ title="VertexLabel API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apivertexlabel><span>VertexLabel</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apiedgelabel-li><a href=/docs/clients/restful-api/edgelabel/ title="EdgeLabel API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apiedgelabel><span>EdgeLabel</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apiindexlabel-li><a href=/docs/clients/restful-api/indexlabel/ title="IndexLabel API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apiindexlabel><span>IndexLabel</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apirebuild-li><a href=/docs/clients/restful-api/rebuild/ title="Rebuild API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apirebuild><span>Rebuild</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apivertex-li><a href=/docs/clients/restful-api/vertex/ title="Vertex API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apivertex><span>Vertex</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apiedge-li><a href=/docs/clients/restful-api/edge/ title="Edge API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apiedge><span>Edge</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apitraverser-li><a href=/docs/clients/restful-api/traverser/ title="Traverser API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apitraverser><span>Traverser</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apirank-li><a href=/docs/clients/restful-api/rank/ title="Rank API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apirank><span>Rank</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apivariable-li><a href=/docs/clients/restful-api/variable/ title="Variable API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apivariable><span>Variable</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apigraphs-li><a href=/docs/clients/restful-api/graphs/ title="Graphs API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apigraphs><span>Graphs</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apitask-li><a href=/docs/clients/restful-api/task/ title="Task API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apitask><span>Task</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apigremlin-li><a href=/docs/clients/restful-api/gremlin/ title="Gremlin API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apigremlin><span>Gremlin</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apicypher-li><a href=/docs/clients/restful-api/cypher/ title="Cypher API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apicypher><span>Cypher</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apiauth-li><a href=/docs/clients/restful-api/auth/ title="Authentication API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apiauth><span>Authentication</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apimetrics-li><a href=/docs/clients/restful-api/metrics/ title="Metrics API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apimetrics><span>Metrics</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsrestful-apiother-li><a href=/docs/clients/restful-api/other/ title="Other API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsrestful-apiother><span>Other</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientshugegraph-client-li><a href=/docs/clients/hugegraph-client/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientshugegraph-client><span>HugeGraph Java Client</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsclientsgremlin-console-li><a href=/docs/clients/gremlin-console/ title=Gremlin-Console class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsclientsgremlin-console><span>Gremlin Console</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsguides-li><a href=/docs/guides/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsguides><span>GUIDES</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsguidesarchitectural-li><a href=/docs/guides/architectural/ title="HugeGraph Architecture Overview" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsguidesarchitectural><span>Architecture Overview</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsguidesdesgin-concept-li><a href=/docs/guides/desgin-concept/ title="HugeGraph Design Concepts" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsguidesdesgin-concept><span>Design Concepts</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsguidescustom-plugin-li><a href=/docs/guides/custom-plugin/ title="HugeGraph Plugin mechanism and plug-in extension process" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsguidescustom-plugin><span>HugeGraph Plugin</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsguidesbackup-restore-li><a href=/docs/guides/backup-restore/ title="Backup and Restore" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsguidesbackup-restore><span>Backup Restore</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsguidesfaq-li><a href=/docs/guides/faq/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsguidesfaq><span>FAQ</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsguidessecurity-li><a href=/docs/guides/security/ title="Security Report" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsguidessecurity><span>Security</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docslanguage-li><a href=/docs/language/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docslanguage><span>QUERY LANGUAGE</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docslanguagehugegraph-gremlin-li><a href=/docs/language/hugegraph-gremlin/ title="HugeGraph Gremlin" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docslanguagehugegraph-gremlin><span>Gremlin Query Language</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docslanguagehugegraph-example-li><a href=/docs/language/hugegraph-example/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docslanguagehugegraph-example><span>HugeGraph Examples</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsperformance-li><a href=/docs/performance/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsperformance><span>PERFORMANCE</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsperformancehugegraph-benchmark-056-li><a href=/docs/performance/hugegraph-benchmark-0.5.6/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsperformancehugegraph-benchmark-056><span>HugeGraph BenchMark Performance</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docsperformanceapi-preformance-li><a href=/docs/performance/api-preformance/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docsperformanceapi-preformance><span>HugeGraph-API Performance</span></a><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsperformanceapi-preformancehugegraph-api-056-rocksdb-li><a href=/docs/performance/api-preformance/hugegraph-api-0.5.6-rocksdb/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsperformanceapi-preformancehugegraph-api-056-rocksdb><span>v0.5.6 Stand-alone(RocksDB)</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsperformanceapi-preformancehugegraph-api-056-cassandra-li><a href=/docs/performance/api-preformance/hugegraph-api-0.5.6-cassandra/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsperformanceapi-preformancehugegraph-api-056-cassandra><span>v0.5.6 Cluster(Cassandra)</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsperformancehugegraph-loader-performance-li><a href=/docs/performance/hugegraph-loader-performance/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsperformancehugegraph-loader-performance><span>HugeGraph-Loader Performance</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docsperformancehugegraph-benchmark-044-li><a href=/docs/performance/hugegraph-benchmark-0.4.4/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docsperformancehugegraph-benchmark-044><span></span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docscontribution-guidelines-li><a href=/docs/contribution-guidelines/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docscontribution-guidelines><span>Contribution Guidelines</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscontribution-guidelinescontribute-li><a href=/docs/contribution-guidelines/contribute/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontribution-guidelinescontribute><span>How to Contribute to HugeGraph</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscontribution-guidelinessubscribe-li><a href=/docs/contribution-guidelines/subscribe/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontribution-guidelinessubscribe><span>Subscribe Mailing Lists</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscontribution-guidelinesvalidate-release-li><a href=/docs/contribution-guidelines/validate-release/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontribution-guidelinesvalidate-release><span>Validate Apache Release</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscontribution-guidelineshugegraph-server-idea-setup-li><a href=/docs/contribution-guidelines/hugegraph-server-idea-setup/ title="Setup Server in IDEA (Dev)" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontribution-guidelineshugegraph-server-idea-setup><span>Setup Server in IDEA</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscontribution-guidelinescommitter-guidelines-li><a href=/docs/contribution-guidelines/committer-guidelines/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscontribution-guidelinescommitter-guidelines><span>Apache HugeGraph Committer Guide</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-docschangelog-li><a href=/docs/changelog/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-docschangelog><span>CHANGELOGS</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docschangeloghugegraph-100-release-notes-li><a href=/docs/changelog/hugegraph-1.0.0-release-notes/ title="HugeGraph 1.0.0 Release Notes" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docschangeloghugegraph-100-release-notes><span>Release-1.0.0</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docschangeloghugegraph-120-release-notes-li><a href=/docs/changelog/hugegraph-1.2.0-release-notes/ title="HugeGraph 1.2.0 Release Notes" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docschangeloghugegraph-120-release-notes><span>Release-1.2.0</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docschangeloghugegraph-130-release-notes-li><a href=/docs/changelog/hugegraph-1.3.0-release-notes/ title="HugeGraph 1.3.0 Release Notes" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docschangeloghugegraph-130-release-notes><span>Release-1.3.0</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docscla-li><a href=/docs/cla/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docscla><span></span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-docssummary-li><a href=/docs/summary/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-docssummary><span></span></a></li></ul></li></ul></nav></div></aside><aside class="d-none d-xl-block col-xl-2 td-sidebar-toc d-print-none"><div class="td-page-meta ml-2 pb-1 pt-2 mb-0"><a href=https://github.com/apache/incubator-hugegraph-doc/tree/master/content/en/docs/quickstart/hugegraph-server.md class=td-page-meta--view target=_blank rel=noopener><i class="fa fa-file-alt fa-fw"></i> View page source</a>
<a href=https://github.com/apache/incubator-hugegraph-doc/edit/master/content/en/docs/quickstart/hugegraph-server.md class=td-page-meta--edit target=_blank rel=noopener><i class="fa fa-edit fa-fw"></i> Edit this page</a>
<a href="https://github.com/apache/incubator-hugegraph-doc/new/master/content/en/docs/quickstart/hugegraph-server.md?filename=change-me.md&value=---%0Atitle%3A+%22Long+Page+Title%22%0AlinkTitle%3A+%22Short+Nav+Title%22%0Aweight%3A+100%0Adescription%3A+%3E-%0A+++++Page+description+for+heading+and+indexes.%0A---%0A%0A%23%23+Heading%0A%0AEdit+this+template+to+create+your+new+page.%0A%0A%2A+Give+it+a+good+name%2C+ending+in+%60.md%60+-+e.g.+%60getting-started.md%60%0A%2A+Edit+the+%22front+matter%22+section+at+the+top+of+the+page+%28weight+controls+how+its+ordered+amongst+other+pages+in+the+same+directory%3B+lowest+number+first%29.%0A%2A+Add+a+good+commit+message+at+the+bottom+of+the+page+%28%3C80+characters%3B+use+the+extended+description+field+for+more+detail%29.%0A%2A+Create+a+new+branch+so+you+can+preview+your+new+file+and+request+a+review+via+Pull+Request.%0A" class=td-page-meta--child target=_blank rel=noopener><i class="fa fa-edit fa-fw"></i> Create child page</a>
<a href="https://github.com/apache/incubator-hugegraph-doc/issues/new?title=HugeGraph-Server%20Quick%20Start" class=td-page-meta--issue target=_blank rel=noopener><i class="fab fa-github fa-fw"></i> Create documentation issue</a>
<a href=https://github.com/apache/incubator-hugegraph/issues/new class=td-page-meta--project-issue target=_blank rel=noopener><i class="fas fa-tasks fa-fw"></i> Create project issue</a>
<a id=print href=/docs/quickstart/_print/><i class="fa fa-print fa-fw"></i> Print entire section</a></div><div class=td-toc><nav id=TableOfContents><ul><li><ul><li><a href=#1-hugegraph-server-overview>1 HugeGraph-Server Overview</a></li><li><a href=#2-dependency-for-buildingrunning>2 Dependency for Building/Running</a></li><li><a href=#3-deploy>3 Deploy</a></li><li><a href=#4-config>4 Config</a></li><li><a href=#5-startup>5 Startup</a></li><li><a href=#6-access-server>6. Access server</a></li><li><a href=#7-stop-server>7 Stop Server</a></li><li><a href=#8-debug-server-with-intellij-idea>8 Debug Server with IntelliJ IDEA</a></li></ul></li></ul></nav></div></aside><main class="col-12 col-md-9 col-xl-8 pl-md-5" role=main><nav aria-label=breadcrumb class=td-breadcrumbs><ol class=breadcrumb><li class=breadcrumb-item><a href=/docs/>Documentation</a></li><li class=breadcrumb-item><a href=/docs/quickstart/>Quick Start</a></li><li class="breadcrumb-item active" aria-current=page><a href=/docs/quickstart/hugegraph-server/>Install/Build HugeGraph-Server</a></li></ol></nav><div class=td-content><h1>HugeGraph-Server Quick Start</h1><header class=article-meta></header><h3 id=1-hugegraph-server-overview>1 HugeGraph-Server Overview</h3><p><code>HugeGraph-Server</code> is the core part of the HugeGraph Project, contains submodules such as Core, Backend, API.</p><p>The Core Module is an implementation of the Tinkerpop interface; The Backend module is used to save the graph data to the data store, currently supported backends include: Memory, Cassandra, ScyllaDB, RocksDB; The API Module provides HTTP Server, which converts Client&rsquo;s HTTP request into a call to Core Module.</p><blockquote><p>There will be two spellings HugeGraph-Server and HugeGraphServer in the document, and other
modules are similar. There is no big difference in the meaning of these two ways,
which can be distinguished as follows: <code>HugeGraph-Server</code> represents the code of server-related
components, <code>HugeGraphServer</code> represents the service process.</p></blockquote><h3 id=2-dependency-for-buildingrunning>2 Dependency for Building/Running</h3><h4 id=21-install-java-11-jdk-11>2.1 Install Java 11 (JDK 11)</h4><p>Consider using Java 11 to run <code>HugeGraph-Server</code> (compatible with Java 8 before 1.5.0),
and configure by yourself.</p><p><strong>Be sure to execute the <code>java -version</code> command to check the jdk version before reading</strong></p><blockquote><p>Note: Using Java8 will lose some security guarantees, we recommend using Java11 in production or</p><p>environments exposed to the public network and enable <a href=/docs/config/config-authentication/>Auth authentication</a>.</p></blockquote><h3 id=3-deploy>3 Deploy</h3><p>There are four ways to deploy HugeGraph-Server components:</p><ul><li>Method 1: Use Docker container (Convenient for Test/Dev)</li><li>Method 2: Download the binary tarball</li><li>Method 3: Source code compilation</li><li>Method 4: One-click deployment</li></ul><h4 id=31-use-docker-container-convenient-for-testdev>3.1 Use Docker container (Convenient for Test/Dev)</h4><p>You can refer to <a href=https://hub.docker.com/r/hugegraph/hugegraph>Docker deployment guide</a>.</p><p>We can use <code>docker run -itd --name=graph -p 8080:8080 hugegraph/hugegraph</code> to quickly start an inner <code>HugeGraph server</code> with <code>RocksDB</code> in background.</p><p>Optional:</p><ol><li>use <code>docker exec -it graph bash</code> to enter the container to do some operations.</li><li>use <code>docker run -itd --name=graph -p 8080:8080 -e PRELOAD="true" hugegraph/hugegraph</code> to start with a <strong>built-in</strong> example graph. We can use <code>RESTful API</code> to verify the result. The detailed step can refer to <a href=#517-create-an-example-graph-when-startup>5.1.7</a></li><li>use <code>-e PASSWORD=123456</code> to enable auth mode and set the passoword for admin. You cna find more details from <a href=/docs/config/config-authentication#Use-docker-to-enble-authentication-mode>Config Authentication</a></li></ol><p>If you use docker desktop, you can set the option like:</p><div style=text-align:center><img src=/docs/images/images-server/31docker-option.jpg alt=image style=width:33%></div><p>Also, if we want to manage the other Hugegraph related instances in one file, we can use <code>docker-compose</code> to deploy, with the command <code>docker-compose up -d</code> (you can config only <code>server</code>). Here is an example <code>docker-compose.yml</code>:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yaml data-lang=yaml><span style=display:flex><span><span style=color:#204a87;font-weight:700>version</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#39;3&#39;</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>services</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>server</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>image</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>hugegraph/hugegraph</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>container_name</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>server</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic># environment:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic># - PRELOAD=true</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic># PRELOAD is a option to preload a build-in sample graph when initializing.</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic># - PASSWORD=123456</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#8f5902;font-style:italic># PASSWORD is an option to enable auth mode with the password you set.</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>ports</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#0000cf;font-weight:700>8080</span><span style=color:#000;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>8080</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span></code></pre></div><blockquote><p>Note:</p><ol><li><p>The docker image of hugegraph is a convenience release to start hugegraph quickly, but not <strong>official distribution</strong> artifacts. You can find more details from <a href=https://infra.apache.org/release-distribution.html#dockerhub>ASF Release Distribution Policy</a>.</p></li><li><p>Recommand to use <code>release tag</code>(like <code>1.3.0</code>) for the stable version. Use <code>latest</code> tag to experience the newest functions in development.</p></li></ol></blockquote><h4 id=32-download-the-binary-tar-tarball>3.2 Download the binary tar tarball</h4><p>You could download the binary tarball from the download page of ASF site like this:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#8f5902;font-style:italic># use the latest version, here is 1.3.0 for example</span>
</span></span><span style=display:flex><span>wget https://downloads.apache.org/incubator/hugegraph/<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>/apache-hugegraph-incubating-<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>.tar.gz
</span></span><span style=display:flex><span>tar zxf *hugegraph*.tar.gz
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># (Optional) verify the integrity with SHA512 (recommended)</span>
</span></span><span style=display:flex><span>shasum -a <span style=color:#0000cf;font-weight:700>512</span> apache-hugegraph-incubating-<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>.tar.gz
</span></span><span style=display:flex><span>curl https://downloads.apache.org/incubator/hugegraph/<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>/apache-hugegraph-incubating-<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>.tar.gz.sha512
</span></span></code></pre></div><h4 id=33-source-code-compilation>3.3 Source code compilation</h4><p>Please ensure that the wget command is installed before compiling the source code</p><p>We could get HugeGraph <strong>source code</strong> by 2 ways: (So as the other HugeGraph repos/modules)</p><ul><li>download the stable/release version from the ASF site</li><li>clone the unstable/latest version by GitBox(ASF) or GitHub</li></ul><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#8f5902;font-style:italic># Way 1. download release package from the ASF site</span>
</span></span><span style=display:flex><span>wget https://downloads.apache.org/incubator/hugegraph/<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>/apache-hugegraph-incubating-src-<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>.tar.gz
</span></span><span style=display:flex><span>tar zxf *hugegraph*.tar.gz
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># (Optional) verify the integrity with SHA512 (recommended)</span>
</span></span><span style=display:flex><span>shasum -a <span style=color:#0000cf;font-weight:700>512</span> apache-hugegraph-incubating-src-<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>.tar.gz
</span></span><span style=display:flex><span>curl https://downloads.apache.org/incubator/hugegraph/<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>/apache-hugegraph-incubating-<span style=color:#ce5c00;font-weight:700>{</span>version<span style=color:#ce5c00;font-weight:700>}</span>-src.tar.gz.sha512
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># Way2 : clone the latest code by git way (e.g GitHub)</span>
</span></span><span style=display:flex><span>git clone https://github.com/apache/hugegraph.git
</span></span></code></pre></div><p>Compile and generate tarball</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#204a87>cd</span> *hugegraph
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># (Optional) use &#34;-P stage&#34; param if you build failed with the latest code(during pre-release period)</span>
</span></span><span style=display:flex><span>mvn package -DskipTests -ntp
</span></span></code></pre></div><p>The execution log is as follows:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>......
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> Reactor Summary <span style=color:#204a87;font-weight:700>for</span> hugegraph 1.3.0:
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph .......................................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 2.405 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-core ..................................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 13.405 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-api ...................................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 25.943 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-cassandra ................................ SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 54.270 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-scylladb ................................. SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 1.032 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-rocksdb .................................. SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 34.752 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-mysql .................................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 1.778 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-palo ..................................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 1.070 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-hbase .................................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 32.124 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-postgresql ............................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 1.823 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-dist ..................................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 17.426 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-example .................................. SUCCESS <span style=color:#ce5c00;font-weight:700>[</span> 1.941 s<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> hugegraph-test ..................................... SUCCESS <span style=color:#ce5c00;font-weight:700>[</span>01:01 min<span style=color:#ce5c00;font-weight:700>]</span>
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> ------------------------------------------------------------------------
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> BUILD SUCCESS
</span></span><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>[</span>INFO<span style=color:#ce5c00;font-weight:700>]</span> ------------------------------------------------------------------------
</span></span><span style=display:flex><span>......
</span></span></code></pre></div><p>After successful execution, <code>*hugegraph-*.tar.gz</code> files will be generated in the hugegraph directory, which is the tarball generated by compilation.</p><h4 id=34-one-click-deployment>3.4 One-click deployment</h4><p><code>HugeGraph-Tools</code> provides a command-line tool for one-click deployment, users can use this tool to quickly download, decompress, configure and start <code>HugeGraphServer</code> and <code>HugeGraph-Hubble</code> with one click.</p><p>Of course, you should download the tarball of <code>HugeGraph-Toolchain</code> first.</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#8f5902;font-style:italic># download toolchain binary package, it includes loader + tool + hubble</span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># please check the latest version (e.g. here is 1.3.0)</span>
</span></span><span style=display:flex><span>wget https://downloads.apache.org/incubator/hugegraph/1.3.0/apache-hugegraph-toolchain-incubating-1.3.0.tar.gz
</span></span><span style=display:flex><span>tar zxf *hugegraph-*.tar.gz
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># enter the tool&#39;s package</span>
</span></span><span style=display:flex><span><span style=color:#204a87>cd</span> *hugegraph*/*tool*
</span></span></code></pre></div><blockquote><p>note: <code>${version}</code> is the version, The latest version can refer to <a href=/docs/download/download>Download Page</a>, or click the link to download directly from the Download page</p></blockquote><p>The general entry script for HugeGraph-Tools is <code>bin/hugegraph</code>, Users can use the <code>help</code> command to view its usage, here only the commands for one-click deployment are introduced.</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>bin/hugegraph deploy -v <span style=color:#ce5c00;font-weight:700>{</span>hugegraph-version<span style=color:#ce5c00;font-weight:700>}</span> -p <span style=color:#ce5c00;font-weight:700>{</span>install-path<span style=color:#ce5c00;font-weight:700>}</span> <span style=color:#ce5c00;font-weight:700>[</span>-u <span style=color:#ce5c00;font-weight:700>{</span>download-path-prefix<span style=color:#ce5c00;font-weight:700>}]</span>
</span></span></code></pre></div><p><code>{hugegraph-version}</code> indicates the version of HugeGraphServer and HugeGraphStudio to be deployed, users can view the <code>conf/version-mapping.yaml</code> file for version information, <code>{install-path}</code> specify the installation directory of HugeGraphServer and HugeGraphStudio, <code>{download-path-prefix}</code> optional, specify the download address of HugeGraphServer and HugeGraphStudio tarball, use default download URL if not provided, for example, to start HugeGraph-Server and HugeGraphStudio version 0.6, write the above command as <code>bin/hugegraph deploy -v 0.6 -p services</code>.</p><h3 id=4-config>4 Config</h3><p>If you need to quickly start HugeGraph just for testing, then you only need to modify a few configuration items (see next section).
for detailed configuration introduction, please refer to <a href=/docs/config/config-guide>configuration document</a> and <a href=/docs/config/config-option>introduction to configuration items</a></p><h3 id=5-startup>5 Startup</h3><h4 id=51-use-a-startup-script-to-startup>5.1 Use a startup script to startup</h4><p>The startup is divided into &ldquo;first startup&rdquo; and &ldquo;non-first startup.&rdquo; This distinction is because the back-end database needs to be initialized before the first startup, and then the service is started.
after the service is stopped artificially, or when the service needs to be started again for other reasons, because the backend database is persistent, you can start the service directly.</p><p>When HugeGraphServer starts, it will connect to the backend storage and try to check the version number of the backend storage. If the backend is not initialized or the backend has been initialized but the version does not match (old version data), HugeGraphServer will fail to start and give an error message.</p><p>If you need to access HugeGraphServer externally, please modify the <code>restserver.url</code> configuration item of <code>rest-server.properties</code>
(default is <code>http://127.0.0.1:8080</code>), change to machine name or IP address.</p><p>Since the configuration (hugegraph.properties) and startup steps required by various backends are slightly different, the following will introduce the configuration and startup of each backend one by one.</p><p>If you want to use HugeGraph authentication mode, you should follow the <a href=https://hugegraph.apache.org/docs/config/config-authentication/>Server Authentication Configuration</a> before you start Server later.</p><h5 id=511-memory>5.1.1 Memory</h5><details><summary>Click to expand/collapse Memory configuration and startup methods</summary><p>Update hugegraph.properties</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>backend=memory
</span></span><span style=display:flex><span>serializer=text
</span></span></code></pre></div><blockquote><p>The data of the Memory backend is stored in memory and cannot be persisted. It does not need to initialize the backend. This is the only backend that does not require initialization.</p></blockquote><p>Start server</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>bin/start-hugegraph.sh
</span></span><span style=display:flex><span>Starting HugeGraphServer...
</span></span><span style=display:flex><span>Connecting to HugeGraphServer <span style=color:#ce5c00;font-weight:700>(</span>http://127.0.0.1:8080/graphs<span style=color:#ce5c00;font-weight:700>)</span>....OK
</span></span></code></pre></div><p>The prompted url is the same as the restserver.url configured in rest-server.properties</p></details><h5 id=512-rocksdb>5.1.2 RocksDB</h5><details><summary>Click to expand/collapse RocksDB configuration and startup methods</summary><blockquote><p>RocksDB is an embedded database that does not require manual installation and deployment. GCC version >= 4.3.0 (GLIBCXX_3.4.10) is required. If not, GCC needs to be upgraded in advance</p></blockquote><p>Update hugegraph.properties</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>backend=rocksdb
</span></span><span style=display:flex><span>serializer=binary
</span></span><span style=display:flex><span>rocksdb.data_path=.
</span></span><span style=display:flex><span>rocksdb.wal_path=.
</span></span></code></pre></div><p>Initialize the database (required on first startup or a new configuration was manually added under &lsquo;conf/graphs/&rsquo;)</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#204a87>cd</span> *hugegraph-<span style=color:#4e9a06>${</span><span style=color:#000>version</span><span style=color:#4e9a06>}</span>
</span></span><span style=display:flex><span>bin/init-store.sh
</span></span></code></pre></div><p>Start server</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>bin/start-hugegraph.sh
</span></span><span style=display:flex><span>Starting HugeGraphServer...
</span></span><span style=display:flex><span>Connecting to HugeGraphServer <span style=color:#ce5c00;font-weight:700>(</span>http://127.0.0.1:8080/graphs<span style=color:#ce5c00;font-weight:700>)</span>....OK
</span></span></code></pre></div></details><h5 id=513-cassandra>5.1.3 Cassandra</h5><details><summary>Click to expand/collapse Cassandra configuration and startup methods</summary><blockquote><p>users need to install Cassandra by themselves, requiring version 3.0 or above, <a href=http://cassandra.apache.org/download/>download link</a></p></blockquote><p>Update hugegraph.properties</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>backend=cassandra
</span></span><span style=display:flex><span>serializer=cassandra
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span># cassandra backend config
</span></span><span style=display:flex><span>cassandra.host=localhost
</span></span><span style=display:flex><span>cassandra.port=9042
</span></span><span style=display:flex><span>cassandra.username=
</span></span><span style=display:flex><span>cassandra.password=
</span></span><span style=display:flex><span>#cassandra.connect_timeout=5
</span></span><span style=display:flex><span>#cassandra.read_timeout=20
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span>#cassandra.keyspace.strategy=SimpleStrategy
</span></span><span style=display:flex><span>#cassandra.keyspace.replication=3
</span></span></code></pre></div><p>Initialize the database (required on first startup or a new configuration was manually added under &lsquo;conf/graphs/&rsquo;)</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#204a87>cd</span> *hugegraph-<span style=color:#4e9a06>${</span><span style=color:#000>version</span><span style=color:#4e9a06>}</span>
</span></span><span style=display:flex><span>bin/init-store.sh
</span></span><span style=display:flex><span>Initing HugeGraph Store...
</span></span><span style=display:flex><span>2017-12-01 11:26:51 <span style=color:#0000cf;font-weight:700>1424</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.HugeGraph <span style=color:#ce5c00;font-weight:700>[]</span> - Opening backend store: <span style=color:#4e9a06>&#39;cassandra&#39;</span>
</span></span><span style=display:flex><span>2017-12-01 11:26:52 <span style=color:#0000cf;font-weight:700>2389</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Failed to connect keyspace: hugegraph, try init keyspace later
</span></span><span style=display:flex><span>2017-12-01 11:26:52 <span style=color:#0000cf;font-weight:700>2472</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Failed to connect keyspace: hugegraph, try init keyspace later
</span></span><span style=display:flex><span>2017-12-01 11:26:52 <span style=color:#0000cf;font-weight:700>2557</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Failed to connect keyspace: hugegraph, try init keyspace later
</span></span><span style=display:flex><span>2017-12-01 11:26:53 <span style=color:#0000cf;font-weight:700>2797</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Store initialized: huge_graph
</span></span><span style=display:flex><span>2017-12-01 11:26:53 <span style=color:#0000cf;font-weight:700>2945</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Store initialized: huge_schema
</span></span><span style=display:flex><span>2017-12-01 11:26:53 <span style=color:#0000cf;font-weight:700>3044</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Store initialized: huge_index
</span></span><span style=display:flex><span>2017-12-01 11:26:53 <span style=color:#0000cf;font-weight:700>3046</span> <span style=color:#ce5c00;font-weight:700>[</span>pool-3-thread-1<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.Transaction <span style=color:#ce5c00;font-weight:700>[]</span> - Clear cache on event <span style=color:#4e9a06>&#39;store.init&#39;</span>
</span></span><span style=display:flex><span>2017-12-01 11:26:59 <span style=color:#0000cf;font-weight:700>9720</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.HugeGraph <span style=color:#ce5c00;font-weight:700>[]</span> - Opening backend store: <span style=color:#4e9a06>&#39;cassandra&#39;</span>
</span></span><span style=display:flex><span>2017-12-01 11:27:00 <span style=color:#0000cf;font-weight:700>9805</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Failed to connect keyspace: hugegraph1, try init keyspace later
</span></span><span style=display:flex><span>2017-12-01 11:27:00 <span style=color:#0000cf;font-weight:700>9886</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Failed to connect keyspace: hugegraph1, try init keyspace later
</span></span><span style=display:flex><span>2017-12-01 11:27:00 <span style=color:#0000cf;font-weight:700>9955</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Failed to connect keyspace: hugegraph1, try init keyspace later
</span></span><span style=display:flex><span>2017-12-01 11:27:00 <span style=color:#0000cf;font-weight:700>10175</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Store initialized: huge_graph
</span></span><span style=display:flex><span>2017-12-01 11:27:00 <span style=color:#0000cf;font-weight:700>10321</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Store initialized: huge_schema
</span></span><span style=display:flex><span>2017-12-01 11:27:00 <span style=color:#0000cf;font-weight:700>10413</span> <span style=color:#ce5c00;font-weight:700>[</span>main<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.store.cassandra.CassandraStore <span style=color:#ce5c00;font-weight:700>[]</span> - Store initialized: huge_index
</span></span><span style=display:flex><span>2017-12-01 11:27:00 <span style=color:#0000cf;font-weight:700>10413</span> <span style=color:#ce5c00;font-weight:700>[</span>pool-3-thread-1<span style=color:#ce5c00;font-weight:700>]</span> <span style=color:#ce5c00;font-weight:700>[</span>INFO <span style=color:#ce5c00;font-weight:700>]</span> org.apache.hugegraph.backend.Transaction <span style=color:#ce5c00;font-weight:700>[]</span> - Clear cache on event <span style=color:#4e9a06>&#39;store.init&#39;</span>
</span></span></code></pre></div><p>Start server</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>bin/start-hugegraph.sh
</span></span><span style=display:flex><span>Starting HugeGraphServer...
</span></span><span style=display:flex><span>Connecting to HugeGraphServer <span style=color:#ce5c00;font-weight:700>(</span>http://127.0.0.1:8080/graphs<span style=color:#ce5c00;font-weight:700>)</span>....OK
</span></span></code></pre></div></details><h5 id=514-scylladb>5.1.4 ScyllaDB</h5><details><summary>Click to expand/collapse ScyllaDB configuration and startup methods</summary><blockquote><p>users need to install ScyllaDB by themselves, version 2.1 or above is recommended, <a href=https://docs.scylladb.com/getting-started/>download link</a></p></blockquote><p>Update hugegraph.properties</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>backend=scylladb
</span></span><span style=display:flex><span>serializer=scylladb
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span># cassandra backend config
</span></span><span style=display:flex><span>cassandra.host=localhost
</span></span><span style=display:flex><span>cassandra.port=9042
</span></span><span style=display:flex><span>cassandra.username=
</span></span><span style=display:flex><span>cassandra.password=
</span></span><span style=display:flex><span>#cassandra.connect_timeout=5
</span></span><span style=display:flex><span>#cassandra.read_timeout=20
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span>#cassandra.keyspace.strategy=SimpleStrategy
</span></span><span style=display:flex><span>#cassandra.keyspace.replication=3
</span></span></code></pre></div><p>Since the scylladb database itself is an &ldquo;optimized version&rdquo; based on cassandra, if the user does not have scylladb installed, they can also use cassandra as the backend storage directly. They only need to change the backend and serializer to scylladb, and the host and post point to the seeds and port of the cassandra cluster. Yes, but it is not recommended to do so, it will not take advantage of scylladb itself.</p><p>Initialize the database (required on first startup or a new configuration was manually added under &lsquo;conf/graphs/&rsquo;)</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#204a87>cd</span> *hugegraph-<span style=color:#4e9a06>${</span><span style=color:#000>version</span><span style=color:#4e9a06>}</span>
</span></span><span style=display:flex><span>bin/init-store.sh
</span></span></code></pre></div><p>Start server</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>bin/start-hugegraph.sh
</span></span><span style=display:flex><span>Starting HugeGraphServer...
</span></span><span style=display:flex><span>Connecting to HugeGraphServer <span style=color:#ce5c00;font-weight:700>(</span>http://127.0.0.1:8080/graphs<span style=color:#ce5c00;font-weight:700>)</span>....OK
</span></span></code></pre></div></details><h5 id=515-hbase>5.1.5 HBase</h5><details><summary>Click to expand/collapse HBase configuration and startup methods</summary><blockquote><p>users need to install HBase by themselves, requiring version 2.0 or above,<a href=https://hbase.apache.org/downloads.html>download link</a></p></blockquote><p>Update hugegraph.properties</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>backend=hbase
</span></span><span style=display:flex><span>serializer=hbase
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span># hbase backend config
</span></span><span style=display:flex><span>hbase.hosts=localhost
</span></span><span style=display:flex><span>hbase.port=2181
</span></span><span style=display:flex><span># Note: recommend to modify the HBase partition number by the actual/env data amount &amp; RS amount before init store
</span></span><span style=display:flex><span># it may influence the loading speed a lot
</span></span><span style=display:flex><span>#hbase.enable_partition=true
</span></span><span style=display:flex><span>#hbase.vertex_partitions=10
</span></span><span style=display:flex><span>#hbase.edge_partitions=30
</span></span></code></pre></div><p>Initialize the database (required on first startup or a new configuration was manually added under &lsquo;conf/graphs/&rsquo;)</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#204a87>cd</span> *hugegraph-<span style=color:#4e9a06>${</span><span style=color:#000>version</span><span style=color:#4e9a06>}</span>
</span></span><span style=display:flex><span>bin/init-store.sh
</span></span></code></pre></div><p>Start server</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>bin/start-hugegraph.sh
</span></span><span style=display:flex><span>Starting HugeGraphServer...
</span></span><span style=display:flex><span>Connecting to HugeGraphServer <span style=color:#ce5c00;font-weight:700>(</span>http://127.0.0.1:8080/graphs<span style=color:#ce5c00;font-weight:700>)</span>....OK
</span></span></code></pre></div><blockquote><p>for more other backend configurations, please refer to<a href=/docs/config/config-option>introduction to configuration options</a></p></blockquote></details><h5 id=516-mysql>5.1.6 MySQL</h5><details><summary>Click to expand/collapse MySQL configuration and startup methods</summary><blockquote><p>Due to MySQL is under GPL license, which is not compatible with Apache License indeed, Users need to install MySQL, <a href=https://dev.mysql.com/downloads/mysql/>Download Link</a></p></blockquote><p>Download MySQL&rsquo;s [driver package] (<a href=https://repo1.maven.org/maven2/mysql/mysql-connector-java/)>https://repo1.maven.org/maven2/mysql/mysql-connector-java/)</a>, such as <code>mysql-connector-java-8.0.30.jar</code>, and put it into HugeGraph- Server&rsquo;s <code>lib</code> directory.</p><p>Modify <code>hugegraph.properties</code>, configure the database URL, username and password, <code>store</code> is the database name, if not, it will be created automatically.</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>backend=mysql
</span></span><span style=display:flex><span>serializer=mysql
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span>store=hugegraph
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span># mysql backend config
</span></span><span style=display:flex><span>jdbc.driver=com.mysql.cj.jdbc.Driver
</span></span><span style=display:flex><span>jdbc.url=jdbc:mysql://127.0.0.1:3306
</span></span><span style=display:flex><span>jdbc.username=
</span></span><span style=display:flex><span>jdbc.password=
</span></span><span style=display:flex><span>jdbc.reconnect_max_times=3
</span></span><span style=display:flex><span>jdbc.reconnect_interval=3
</span></span><span style=display:flex><span>jdbc.ssl_mode=false
</span></span></code></pre></div><p>Initialize the database (required on first startup or a new configuration was manually added under &lsquo;conf/graphs/&rsquo;)</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#204a87>cd</span> *hugegraph-<span style=color:#4e9a06>${</span><span style=color:#000>version</span><span style=color:#4e9a06>}</span>
</span></span><span style=display:flex><span>bin/init-store.sh
</span></span></code></pre></div><p>Start server</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>bin/start-hugegraph.sh
</span></span><span style=display:flex><span>Starting HugeGraphServer...
</span></span><span style=display:flex><span>Connecting to HugeGraphServer <span style=color:#ce5c00;font-weight:700>(</span>http://127.0.0.1:8080/graphs<span style=color:#ce5c00;font-weight:700>)</span>....OK
</span></span></code></pre></div></details><h5 id=517-create-an-example-graph-when-startup>5.1.7 Create an example graph when startup</h5><p>Carry the <code>-p true</code> arguments when starting the script, which indicates <code>preload</code>, to create a sample graph.</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>bin/start-hugegraph.sh -p true
</span></span><span style=display:flex><span>Starting HugeGraphServer in daemon mode...
</span></span><span style=display:flex><span>Connecting to HugeGraphServer (http://127.0.0.1:8080/graphs)......OK
</span></span></code></pre></div><p>And use the RESTful API to request <code>HugeGraphServer</code> and get the following result:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-javascript data-lang=javascript><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>&gt;</span> <span style=color:#000>curl</span> <span style=color:#4e9a06>&#34;http://localhost:8080/graphs/hugegraph/graph/vertices&#34;</span> <span style=color:#ce5c00;font-weight:700>|</span> <span style=color:#000>gunzip</span>
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;vertices&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>[{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;2:lop&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;software&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;lop&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;lang&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;java&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;price&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>328</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;1:josh&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;person&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;josh&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;age&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>32</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;city&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;Beijing&#34;</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;1:marko&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;person&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;marko&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;age&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>29</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;city&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;Beijing&#34;</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;1:peter&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;person&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;peter&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;age&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>35</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;city&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;Shanghai&#34;</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;1:vadas&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;person&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vadas&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;age&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>27</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;city&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;Hongkong&#34;</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;2:ripple&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;software&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;ripple&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;lang&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;java&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;price&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>199</span><span style=color:#000;font-weight:700>}}]}</span>
</span></span></code></pre></div><p>This indicates the successful creation of the sample graph.</p><h4 id=52-use-docker-to-startup>5.2 Use Docker to startup</h4><p>In <a href=#33-use-docker-container>3.3 Use Docker container</a>, we have introduced how to use docker to deploy <code>hugegraph-server</code>. <code>server</code> can also preload an example graph by setting the parameter.</p><h5 id=521-uses-cassandra-as-storage>5.2.1 Uses Cassandra as storage</h5><details><summary>Click to expand/collapse Cassandra configuration and startup methods</summary><p>When using Docker, we can use Cassandra as the backend storage. We highly recommend using docker-compose directly to manage both the server and Cassandra.</p><p>The sample <code>docker-compose.yml</code> can be obtained on <a href=https://github.com/apache/incubator-hugegraph/blob/master/hugegraph-server/hugegraph-dist/docker/example/docker-compose-cassandra.yml>GitHub</a>, and you can start it with <code>docker-compose up -d</code>. (If using Cassandra 4.0 as the backend storage, it takes approximately two minutes to initialize. Please be patient.)</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yaml data-lang=yaml><span style=display:flex><span><span style=color:#204a87;font-weight:700>version</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#34;3&#34;</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>services</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>graph</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>image</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>hugegraph/hugegraph</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>container_name</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>cas-server</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>ports</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#0000cf;font-weight:700>8080</span><span style=color:#000;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>8080</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>environment</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>hugegraph.backend</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>cassandra</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>hugegraph.serializer</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>cassandra</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>hugegraph.cassandra.host</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>cas-cassandra</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>hugegraph.cassandra.port</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#0000cf;font-weight:700>9042</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>networks</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#000>ca-network</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>depends_on</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#000>cassandra</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>healthcheck</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>test</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000;font-weight:700>[</span><span style=color:#4e9a06>&#34;CMD&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#34;bin/gremlin-console.sh&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#34;--&#34;</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;-e&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#34;scripts/remote-connect.groovy&#34;</span><span style=color:#000;font-weight:700>]</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>interval</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>10s</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>timeout</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>30s</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>retries</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#0000cf;font-weight:700>3</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>cassandra</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>image</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>cassandra:4</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>container_name</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>cas-cassandra</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>ports</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#0000cf;font-weight:700>7000</span><span style=color:#000;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>7000</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#0000cf;font-weight:700>9042</span><span style=color:#000;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>9042</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>security_opt</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#000>seccomp:unconfined</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>networks</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#000>ca-network</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>healthcheck</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>test</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000;font-weight:700>[</span><span style=color:#4e9a06>&#34;CMD&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#34;cqlsh&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#34;--execute&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#34;describe keyspaces;&#34;</span><span style=color:#000;font-weight:700>]</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>interval</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>10s</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>timeout</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>30s</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>retries</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#0000cf;font-weight:700>5</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>networks</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>ca-network</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline></span><span style=color:#204a87;font-weight:700>volumes</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>hugegraph-data</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span></code></pre></div><p>In this yaml file, configuration parameters related to Cassandra need to be passed as environment variables in the format of <code>hugegraph.&lt;parameter_name></code>.</p><p>Specifically, in the configuration file <code>hugegraph.properties</code> , there are settings like <code>backend=xxx</code> and <code>cassandra.host=xxx</code>. To configure these settings during the process of passing environment variables, we need to prepend <code>hugegraph.</code> to these configurations, like <code>hugegraph.backend</code> and <code>hugegraph.cassandra.host</code>.</p><p>The rest of the configurations can be referenced under <a href=#4-config>4 config</a></p></details><h5 id=522-create-example-graph-when-starting-server>5.2.2 Create example graph when starting server</h5><p>Set the environment variable <code>PRELOAD=true</code> when starting Docker in order to load data during the execution of the startup script.</p><ol><li><p>Use <code>docker run</code></p><p>Use <code>docker run -itd --name=server -p 8080:8080 -e PRELOAD=true hugegraph/hugegraph:latest</code></p></li><li><p>Use <code>docker-compose</code></p><p>Create <code>docker-compose.yml</code> as following. We should set the environment variable <code>PRELOAD=true</code>. <a href=https://github.com/apache/incubator-hugegraph/blob/master/hugegraph-server/hugegraph-dist/src/assembly/static/scripts/example.groovy><code>example.groovy</code></a> is a predefined script to preload the sample data. If needed, we can mount a new <code>example.groovy</code> to change the preload data.</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-yaml data-lang=yaml><span style=display:flex><span><span style=color:#204a87;font-weight:700>version</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#4e9a06>&#39;3&#39;</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>services</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>server</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>image</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>hugegraph/hugegraph:latest</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>container_name</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#000>server</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>environment</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#000>PRELOAD=true</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span><span style=color:#204a87;font-weight:700>ports</span><span style=color:#000;font-weight:700>:</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span><span style=display:flex><span><span style=color:#f8f8f8;text-decoration:underline> </span>- <span style=color:#0000cf;font-weight:700>8080</span><span style=color:#000;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>8080</span><span style=color:#f8f8f8;text-decoration:underline>
</span></span></span></code></pre></div><p>Use <code>docker-compose up -d</code> to start the container</p></li></ol><p>And use the RESTful API to request <code>HugeGraphServer</code> and get the following result:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-javascript data-lang=javascript><span style=display:flex><span><span style=color:#ce5c00;font-weight:700>&gt;</span> <span style=color:#000>curl</span> <span style=color:#4e9a06>&#34;http://localhost:8080/graphs/hugegraph/graph/vertices&#34;</span> <span style=color:#ce5c00;font-weight:700>|</span> <span style=color:#000>gunzip</span>
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;vertices&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>[{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;2:lop&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;software&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;lop&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;lang&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;java&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;price&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>328</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;1:josh&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;person&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;josh&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;age&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>32</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;city&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;Beijing&#34;</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;1:marko&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;person&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;marko&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;age&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>29</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;city&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;Beijing&#34;</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;1:peter&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;person&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;peter&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;age&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>35</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;city&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;Shanghai&#34;</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;1:vadas&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;person&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vadas&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;age&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>27</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;city&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;Hongkong&#34;</span><span style=color:#000;font-weight:700>}},{</span><span style=color:#4e9a06>&#34;id&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;2:ripple&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;label&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;software&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;type&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;vertex&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;properties&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#000;font-weight:700>{</span><span style=color:#4e9a06>&#34;name&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;ripple&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;lang&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#4e9a06>&#34;java&#34;</span><span style=color:#000;font-weight:700>,</span><span style=color:#4e9a06>&#34;price&#34;</span><span style=color:#ce5c00;font-weight:700>:</span><span style=color:#0000cf;font-weight:700>199</span><span style=color:#000;font-weight:700>}}]}</span>
</span></span></code></pre></div><p>This indicates the successful creation of the sample graph.</p><h3 id=6-access-server>6. Access server</h3><h4 id=61-service-startup-status-check>6.1 Service startup status check</h4><p>Use <code>jps</code> to see a service process</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>jps
</span></span><span style=display:flex><span><span style=color:#0000cf;font-weight:700>6475</span> HugeGraphServer
</span></span></code></pre></div><p><code>curl</code> request <code>RESTfulAPI</code></p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#204a87>echo</span> <span style=color:#4e9a06>`</span>curl -o /dev/null -s -w %<span style=color:#ce5c00;font-weight:700>{</span>http_code<span style=color:#ce5c00;font-weight:700>}</span> <span style=color:#4e9a06>&#34;http://localhost:8080/graphs/hugegraph/graph/vertices&#34;</span><span style=color:#4e9a06>`</span>
</span></span></code></pre></div><p>Return 200, which means the server starts normally.</p><h4 id=62-request-server>6.2 Request Server</h4><p>The RESTful API of HugeGraphServer includes various types of resources, typically including graph, schema, gremlin, traverser and task.</p><ul><li><code>graph</code> contains <code>vertices</code><code>edges</code></li><li><code>schema</code> contains <code>vertexlabels</code><code>propertykeys</code><code>edgelabels</code><code>indexlabels</code></li><li><code>gremlin</code> contains various <code>Gremlin</code> statements, such as <code>g.v()</code>, which can be executed synchronously or asynchronously</li><li><code>traverser</code> contains various advanced queries including shortest paths, intersections, N-step reachable neighbors, etc.</li><li><code>task</code> contains query and delete with asynchronous tasks</li></ul><h5 id=621-get-vertices-and-its-related-properties-in-hugegraph>6.2.1 Get vertices and its related properties in <code>hugegraph</code></h5><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span>curl http://localhost:8080/graphs/hugegraph/graph/vertices
</span></span></code></pre></div><p><em>explanation</em></p><ol><li><p>Since there are many vertices and edges in the graph, for list-type requests, such as getting all vertices, getting all edges, etc., the server will compress the data and return it, so when use curl, you get a bunch of garbled characters, you can redirect to gunzip for decompression. It is recommended to use Chrome browser + Restlet plugin to send HTTP requests for testing.</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>curl &#34;http://localhost:8080/graphs/hugegraph/graph/vertices&#34; | gunzip
</span></span></code></pre></div></li><li><p>The current default configuration of HugeGraphServer can only be accessed locally, and the configuration can be modified so that it can be accessed on other machines.</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>vim conf/rest-server.properties
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span>restserver.url=http://0.0.0.0:8080
</span></span></code></pre></div></li></ol><p>response body:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-fallback data-lang=fallback><span style=display:flex><span>{
</span></span><span style=display:flex><span> &#34;vertices&#34;: [
</span></span><span style=display:flex><span> {
</span></span><span style=display:flex><span> &#34;id&#34;: &#34;2lop&#34;,
</span></span><span style=display:flex><span> &#34;label&#34;: &#34;software&#34;,
</span></span><span style=display:flex><span> &#34;type&#34;: &#34;vertex&#34;,
</span></span><span style=display:flex><span> &#34;properties&#34;: {
</span></span><span style=display:flex><span> &#34;price&#34;: [
</span></span><span style=display:flex><span> {
</span></span><span style=display:flex><span> &#34;id&#34;: &#34;price&#34;,
</span></span><span style=display:flex><span> &#34;value&#34;: 328
</span></span><span style=display:flex><span> }
</span></span><span style=display:flex><span> ],
</span></span><span style=display:flex><span> &#34;name&#34;: [
</span></span><span style=display:flex><span> {
</span></span><span style=display:flex><span> &#34;id&#34;: &#34;name&#34;,
</span></span><span style=display:flex><span> &#34;value&#34;: &#34;lop&#34;
</span></span><span style=display:flex><span> }
</span></span><span style=display:flex><span> ],
</span></span><span style=display:flex><span> &#34;lang&#34;: [
</span></span><span style=display:flex><span> {
</span></span><span style=display:flex><span> &#34;id&#34;: &#34;lang&#34;,
</span></span><span style=display:flex><span> &#34;value&#34;: &#34;java&#34;
</span></span><span style=display:flex><span> }
</span></span><span style=display:flex><span> ]
</span></span><span style=display:flex><span> }
</span></span><span style=display:flex><span> },
</span></span><span style=display:flex><span> {
</span></span><span style=display:flex><span> &#34;id&#34;: &#34;1josh&#34;,
</span></span><span style=display:flex><span> &#34;label&#34;: &#34;person&#34;,
</span></span><span style=display:flex><span> &#34;type&#34;: &#34;vertex&#34;,
</span></span><span style=display:flex><span> &#34;properties&#34;: {
</span></span><span style=display:flex><span> &#34;name&#34;: [
</span></span><span style=display:flex><span> {
</span></span><span style=display:flex><span> &#34;id&#34;: &#34;name&#34;,
</span></span><span style=display:flex><span> &#34;value&#34;: &#34;josh&#34;
</span></span><span style=display:flex><span> }
</span></span><span style=display:flex><span> ],
</span></span><span style=display:flex><span> &#34;age&#34;: [
</span></span><span style=display:flex><span> {
</span></span><span style=display:flex><span> &#34;id&#34;: &#34;age&#34;,
</span></span><span style=display:flex><span> &#34;value&#34;: 32
</span></span><span style=display:flex><span> }
</span></span><span style=display:flex><span> ]
</span></span><span style=display:flex><span> }
</span></span><span style=display:flex><span> },
</span></span><span style=display:flex><span> ...
</span></span><span style=display:flex><span> ]
</span></span><span style=display:flex><span>}
</span></span></code></pre></div><p id=swaggerui-example></p><p>For detailed API, please refer to <a href=/docs/clients/restful-api>RESTful-API</a></p><p>You can also visit <code>localhost:8080/swagger-ui/index.html</code> to check the API.</p><div style=text-align:center><img src=/docs/images/images-server/swagger-ui.png alt=image></div><p>When using Swagger UI to debug the API provided by HugeGraph, if HugeGraph Server turns on authentication mode, you can enter authentication information on the Swagger page.</p><div style=text-align:center><img src=/docs/images/images-server/swagger-ui-where-set-auth-example.png alt=image></div><p>Currently, HugeGraph supports setting authentication information in two forms: Basic and Bearer.</p><div style=text-align:center><img src=/docs/images/images-server/swagger-ui-set-auth-example.png alt=image></div><h3 id=7-stop-server>7 Stop Server</h3><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-bash data-lang=bash><span style=display:flex><span><span style=color:#000>$cd</span> *hugegraph-<span style=color:#4e9a06>${</span><span style=color:#000>version</span><span style=color:#4e9a06>}</span>
</span></span><span style=display:flex><span><span style=color:#000>$bin</span>/stop-hugegraph.sh
</span></span></code></pre></div><h3 id=8-debug-server-with-intellij-idea>8 Debug Server with IntelliJ IDEA</h3><p>Please refer to <a href=/docs/contribution-guidelines/hugegraph-server-idea-setup>Setup Server in IDEA</a></p><style>.feedback--answer{display:inline-block}.feedback--answer-no{margin-left:1em}.feedback--response{display:none;margin-top:1em}.feedback--response__visible{display:block}</style><script>const yesButton=document.querySelector(".feedback--answer-yes"),noButton=document.querySelector(".feedback--answer-no"),yesResponse=document.querySelector(".feedback--response-yes"),noResponse=document.querySelector(".feedback--response-no"),disableButtons=()=>{yesButton.disabled=!0,noButton.disabled=!0},sendFeedback=e=>{if(typeof ga!="function")return;const t={command:"send",hitType:"event",category:"Helpful",action:"click",label:window.location.pathname,value:e};ga(t.command,t.hitType,t.category,t.action,t.label,t.value)};yesButton.addEventListener("click",()=>{yesResponse.classList.add("feedback--response__visible"),disableButtons(),sendFeedback(1)}),noButton.addEventListener("click",()=>{noResponse.classList.add("feedback--response__visible"),disableButtons(),sendFeedback(0)})</script><br><div class="text-muted mt-5 pt-3 border-top">Last modified April 2, 2024: <a href=https://github.com/apache/incubator-hugegraph-doc/commit/8e0091609ef03687ef0f34fe3fb912f343806c01>sec: enhance some desc for users (#344) (8e009160)</a></div></div></main></div></div><footer class="bg-dark py-3 row d-print-none"><div class=footer-container><div class="row bg-dark"><div class=col-1></div><div class="col-4 text-center container-center"><div class=footer-row><a href=https://www.apache.org><div class=footer-apache-logo><svg id="Layer_2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 7127.6 2890" enable-background="new 0 0 7127.6 2890"><path fill="#6d6e71" d="M7104.7 847.8c15.3 15.3 22.9 33.7 22.9 55.2s-7.6 39.9-22.9 55.4c-15.3 15.4-33.8 23.1-55.6 23.1s-40.2-7.6-55.4-22.9c-15.1-15.3-22.7-33.7-22.7-55.2s7.6-39.9 22.9-55.4c15.3-15.4 33.7-23.1 55.4-23.1C7070.9 824.9 7089.4 832.5 7104.7 847.8zM7098.1 951.9c13.3-13.6 20-29.8 20-48.7s-6.6-35-19.8-48.5c-13.2-13.4-29.4-20.1-48.6-20.1-19.2.0-35.4 6.7-48.7 20.2s-19.9 29.7-19.9 48.7 6.6 35.2 19.7 48.6c13.1 13.4 29.3 20.1 48.5 20.1S7084.7 965.4 7098.1 951.9zm-11-63.8c0 14-6.1 22.8-18.4 26.4l22.5 30.5H7073l-20.3-28.3h-18.6V945h-14.7v-84.6h31.8c12.8.0 22 2.2 27.6 6.6C7084.4 871.4 7087.1 878.4 7087.1 888.1zM7068.2 9e2c3-2.4 4.4-6.5 4.4-12s-1.5-9.4-4.5-11.6-8.4-3.2-16-3.2h-18v30.5h17.5C7059.7 903.6 7065.3 902.4 7068.2 9e2z"/><path fill="#6d6e71" d="M1803.6 499.8v155.4h-20V499.8h-56.8v-19.2h133.9v19.2H1803.6z"/><path fill="#6d6e71" d="M2082.2 655.2v-76.9H1977v76.9h-20V480.5h20v78.9h105.2v-78.9h20v174.7h-20z"/><path fill="#6d6e71" d="M2241.4 499.8v57.4h88.1v19.2h-88.1v59.8h101.8v19h-121.8V480.5H2340v19.2H2241.4z"/><path fill="#d22128" d="M1574.5 1852.4l417.3-997.6h80.1l417.3 997.6h-105.4l-129.3-311.9h-448.2l-127.9 311.9H1574.5zM2032.6 970l-205.1 493.2h404.7L2032.6 970z"/><path fill="#d22128" d="M2596.9 1852.4V854.8H3010c171.4.0 295.1 158.8 295.1 313.3.0 163-115.2 316.1-286.6 316.1h-324.6v368.1h-97zm97-455.3h318.9c118 0 193.9-108.2 193.9-229 0-125.1-92.7-226.2-202.3-226.2h-310.5v455.2z"/><path fill="#d22128" d="M3250.5 1852.4l417.3-997.6h80.1l417.3 997.6h-105.4l-129.3-311.9h-448.2l-127.9 311.9H3250.5zM3708.6 970l-205.1 493.2h404.7L3708.6 970z"/><path fill="#d22128" d="M4637.3 849.1c177 0 306.3 89.9 368.1 217.8l-78.7 47.8c-63.2-132.1-186.9-177-295.1-177-238.9.0-369.5 213.6-369.5 414.5.0 220.6 161.6 420.1 373.7 420.1 112.4.0 244.5-56.2 307.7-185.5l81.5 42.1c-64.6 148.9-241.7 231.8-394.8 231.8-274 0-466.5-261.3-466.5-514.2C4163.8 1106.3 4336.6 849.1 4637.3 849.1z"/><path fill="#d22128" d="M5949.1 854.8v997.6h-98.4v-466.5h-591.5v466.5h-96.9V854.8h96.9v444h591.5v-444H5949.1z"/><path fill="#d22128" d="M6844.6 1765.2v87.1h-670.2V854.8H6832v87.1h-560.6v359.7h489v82.9h-489v380.8H6844.6z"/><path fill="#6d6e71" d="M1667.6 2063.6c11.8 3.5 22.2 8.3 31 14.2l-10.3 22.6c-9-6-18.6-10.4-28.9-13.4-10.2-2.9-20-4.4-29.2-4.4-13.6.0-24.5 2.4-32.6 7.3s-12.2 11.8-12.2 20.7c0 7.6 2.3 14 6.8 19s10.2 8.9 17 11.7c6.8 2.8 16.1 6 28 9.6 14.4 4.6 26 8.9 34.7 12.9 8.8 4 16.3 9.9 22.5 17.8 6.2 7.8 9.3 18.2 9.3 31 0 11.7-3.2 21.8-9.5 30.6-6.3 8.7-15.3 15.5-26.8 20.3-11.6 4.8-24.9 7.2-40 7.2s-29.7-2.9-43.9-8.7c-14.2-5.8-26.4-13.6-36.6-23.4l10.7-21.6c9.6 9.4 20.7 16.7 33.3 21.9 12.6 5.2 24.8 7.8 36.8 7.8 15.3.0 27.3-3 36.1-8.9s13.2-13.9 13.2-23.9c0-7.8-2.3-14.3-6.9-19.4-4.6-5.1-10.3-9-17.1-11.9-6.8-2.8-16.1-6-28-9.6-14.2-4.2-25.7-8.3-34.6-12.2-8.9-3.9-16.4-9.7-22.5-17.5-6.1-7.7-9.2-17.9-9.2-30.6.0-10.9 3-20.4 9-28.6s14.6-14.6 25.6-19.1c11.1-4.5 23.8-6.8 38.2-6.8C1643.8 2058.3 1655.7 2060.1 1667.6 2063.6z"/><path fill="#6d6e71" d="M1980.1 2072.8c16.8 9.4 30.2 22.3 40 38.4 9.8 16.2 14.8 33.9 14.8 53.3.0 19.5-4.9 37.4-14.8 53.6-9.8 16.3-23.2 29.1-40 38.6s-35.3 14.3-55.2 14.3c-20.3.0-38.8-4.7-55.7-14.3-16.8-9.5-30.2-22.4-40-38.6-9.8-16.3-14.8-34.1-14.8-53.6s4.9-37.3 14.8-53.5c9.8-16.2 23.2-29 40-38.3 16.8-9.4 35.4-14 55.7-14C1944.8 2058.6 1963.2 2063.3 1980.1 2072.8zM1881.9 2092.7c-13.1 7.4-23.6 17.5-31.4 30.1-7.8 12.6-11.8 26.5-11.8 41.7.0 15.3 3.9 29.3 11.8 42 7.8 12.7 18.3 22.8 31.4 30.2 13.1 7.4 27.4 11.1 42.9 11.1s29.7-3.7 42.7-11.1 23.3-17.4 31.1-30.2c7.7-12.7 11.6-26.7 11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30s-27.2-11.2-42.6-11.2C1909.4 2081.5 1895.1 2085.2 1881.9 2092.7z"/><path fill="#6d6e71" d="M2186.5 2082.4v74h98.4v23.2h-98.4v90.2h-24.1v-210.6h133.8v23.2H2186.5z"/><path fill="#6d6e71" d="M2491.6 2082.4v187.4h-24.1v-187.4h-68.4v-23.2h161.4v23.2H2491.6z"/><path fill="#6d6e71" d="M2871.8 2269.8l-56.8-177.4-57.6 177.4h-24.5l-70.5-210.6h25.9l57.9 182.7 57.1-182.4 24.1-.3 57.7 182.7 57.1-182.7h25l-70.6 210.6H2871.8z"/><path fill="#6d6e71" d="M3087.3 2216.6l-23.5 53.2h-25.6l94.4-210.6h25l94.1 210.6h-26.1l-23.5-53.2H3087.3zM3144.5 2086.6l-46.9 106.8h94.4l-47.5-106.8z"/><path fill="#6d6e71" d="M3461.1 2202.7c-6 .4-10.7.6-14.1.6h-56v66.5h-24v-210.6h80c26.2.0 46.6 6.2 61.2 18.5 14.5 12.3 21.8 29.8 21.8 52.3.0 17.2-4.1 31.7-12.2 43.3-8.1 11.6-19.8 20-35 25l49.2 71.5h-27.3L3461.1 2202.7zM3491.3 2167.6c10.3-8.4 15.5-20.8 15.5-37 0-15.9-5.2-27.9-15.5-36s-25.1-12.2-44.3-12.2h-56v97.8h56C3466.2 2180.2 3481 2176 3491.3 2167.6z"/><path fill="#6d6e71" d="M3688.3 2082.4v69.2h106.2v23.2h-106.2v72.1h122.8v22.9h-146.9v-210.6h142.9v23.2H3688.3z"/><path fill="#6d6e71" d="M4147 2082.4v74h98.4v23.2H4147v90.2h-24.1v-210.6h133.8v23.2H4147z"/><path fill="#6d6e71" d="M4523.3 2072.8c16.8 9.4 30.2 22.3 40 38.4 9.8 16.2 14.8 33.9 14.8 53.3.0 19.5-4.9 37.4-14.8 53.6-9.8 16.3-23.2 29.1-40 38.6s-35.3 14.3-55.2 14.3c-20.3.0-38.8-4.7-55.7-14.3-16.8-9.5-30.2-22.4-40-38.6-9.8-16.3-14.8-34.1-14.8-53.6s4.9-37.3 14.8-53.5c9.8-16.2 23.2-29 40-38.3 16.8-9.4 35.4-14 55.7-14C4488.1 2058.6 4506.5 2063.3 4523.3 2072.8zM4425.2 2092.7c-13.1 7.4-23.6 17.5-31.4 30.1-7.8 12.6-11.8 26.5-11.8 41.7.0 15.3 3.9 29.3 11.8 42 7.8 12.7 18.3 22.8 31.4 30.2 13.1 7.4 27.4 11.1 42.9 11.1s29.7-3.7 42.7-11.1 23.3-17.4 31.1-30.2c7.7-12.7 11.6-26.7 11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30s-27.2-11.2-42.6-11.2C4452.6 2081.5 4438.3 2085.2 4425.2 2092.7z"/><path fill="#6d6e71" d="M4854.7 2247.7c-15.7 15.5-37.3 23.3-64.8 23.3-27.7.0-49.4-7.8-65.1-23.3-15.7-15.5-23.6-37-23.6-64.6v-124h24.1v124c0 20.3 5.8 36.1 17.3 47.5 11.6 11.4 27.3 17.1 47.3 17.1 20.1.0 35.8-5.7 47.1-17 11.4-11.3 17-27.2 17-47.7v-124h24.1v124C4878.2 2210.7 4870.4 2232.2 4854.7 2247.7z"/><path fill="#6d6e71" d="M5169.5 2269.8l-126.3-169.1v169.1h-24.1v-210.6h25l126.3 169.3v-169.3h23.8v210.6H5169.5z"/><path fill="#6d6e71" d="M5478.4 2073.1c16.4 9.3 29.4 21.9 38.9 37.9 9.6 16 14.3 33.9 14.3 53.5s-4.8 37.6-14.3 53.6c-9.5 16.1-22.6 28.7-39.3 37.9-16.6 9.2-35.2 13.8-55.5 13.8h-84.3v-210.6h85.2C5443.7 2059.2 5462 2063.8 5478.4 2073.1zM5362.3 2246.9h61.4c15.5.0 29.6-3.5 42.3-10.6s22.8-16.9 30.2-29.5c7.4-12.5 11.1-26.5 11.1-42s-3.8-29.4-11.3-41.9-17.7-22.3-30.6-29.6c-12.8-7.2-27-10.9-42.6-10.9h-60.5v164.5z"/><path fill="#6d6e71" d="M5668.6 2216.6l-23.5 53.2h-25.6l94.4-210.6h25l94.1 210.6h-26l-23.5-53.2H5668.6zM5725.8 2086.6l-46.9 106.8h94.4l-47.5-106.8z"/><path fill="#6d6e71" d="M5991 2082.4v187.4h-24v-187.4h-68.4v-23.2H6060v23.2h-69z"/><path fill="#6d6e71" d="M6175.9 2269.8v-210.6h24.1v210.6H6175.9z"/><path fill="#6d6e71" d="M6493.7 2072.8c16.8 9.4 30.2 22.3 40 38.4 9.8 16.2 14.8 33.9 14.8 53.3.0 19.5-4.9 37.4-14.8 53.6-9.8 16.3-23.2 29.1-40 38.6s-35.3 14.3-55.2 14.3c-20.3.0-38.8-4.7-55.7-14.3-16.8-9.5-30.2-22.4-40-38.6-9.8-16.3-14.8-34.1-14.8-53.6s4.9-37.3 14.8-53.5c9.8-16.2 23.2-29 40-38.3 16.8-9.4 35.4-14 55.7-14C6458.5 2058.6 6476.9 2063.3 6493.7 2072.8zM6395.6 2092.7c-13.1 7.4-23.6 17.5-31.4 30.1-7.8 12.6-11.8 26.5-11.8 41.7.0 15.3 3.9 29.3 11.8 42 7.8 12.7 18.3 22.8 31.4 30.2 13.1 7.4 27.4 11.1 42.9 11.1s29.7-3.7 42.7-11.1 23.3-17.4 31.1-30.2c7.7-12.7 11.6-26.7 11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30s-27.2-11.2-42.6-11.2C6423 2081.5 6408.8 2085.2 6395.6 2092.7z"/><path fill="#6d6e71" d="M6826.5 2269.8l-126.3-169.1v169.1h-24.1v-210.6h25l126.3 169.3v-169.3h23.8v210.6H6826.5z"/><linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-4516.6152" y1="-2338.7222" x2="-4108.4111" y2="-1861.3982" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset="0" style="stop-color:#F69923"/><stop offset=".3123" style="stop-color:#F79A23"/><stop offset=".8383" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_1_)" d="M1230.1 13.7c-45.3 26.8-120.6 102.5-210.5 212.3l82.6 155.9c58-82.9 116.9-157.5 176.3-221.2 4.6-5.1 7-7.5 7-7.5-2.3 2.5-4.6 5-7 7.5-19.2 21.2-77.5 89.2-165.5 224.4 84.7-4.2 214.9-21.6 321.1-39.7 31.6-177-31-258-31-258S1323.4-41.4 1230.1 13.7z"/><path fill="none" d="M1090.2 903.1c.6-.1 1.2-.2 1.8-.3l-11.9 1.3c-.7.3-1.4.7-2.1 1C1082.1 904.4 1086.2 903.7 1090.2 903.1z"/><path fill="none" d="M1005.9 1182.3c-6.7 1.5-13.7 2.7-20.7 3.7C992.3 1185 999.2 1183.8 1005.9 1182.3z"/><path fill="none" d="M432.9 1808.8c.9-2.3 1.8-4.7 2.6-7 18.2-48 36.2-94.7 54-140.1 20-51 39.8-100.4 59.3-148.3 20.6-50.4 40.9-99.2 60.9-146.3 21-49.4 41.7-97 62-142.8 16.5-37.3 32.8-73.4 48.9-108.3 5.4-11.7 10.7-23.2 16-34.6 10.5-22.7 21-44.8 31.3-66.5 9.5-20 19-39.6 28.3-58.8 3.1-6.4 6.2-12.8 9.3-19.1.5-1 1-2 1.5-3.1l-10.2 1.1-8-15.9c-.8 1.6-1.6 3.1-2.4 4.6-14.5 28.8-28.9 57.9-43.1 87.2-8.2 16.9-16.4 34-24.6 51-22.6 47.4-44.8 95.2-66.6 143.3-22.1 48.6-43.7 97.5-64.9 146.5-20.8 48.1-41.3 96.2-61.2 144.2-20 48-39.5 95.7-58.5 143.2-19.9 49.5-39.2 98.7-58 147.2-4.2 10.9-8.5 21.9-12.7 32.8-15 39.2-29.7 77.8-44 116l12.7 25.1 11.4-1.2c.4-1.1.8-2.3 1.3-3.4C396.7 1905.4 414.9 1856.4 432.9 1808.8z"/><path fill="none" d="M980 1186.8c.1.0.1.0.1-.1C980.1 1186.8 980.1 1186.8 980 1186.8z"/><path fill="#be202e" d="M952.6 1323c-10.6 1.9-21.4 3.8-32.5 5.7-.1.0-.1.1-.2.1 5.6-.8 11.2-1.7 16.6-2.6C942 1325.2 947.3 1324.1 952.6 1323z"/><path opacity=".35" fill="#be202e" d="M952.6 1323c-10.6 1.9-21.4 3.8-32.5 5.7-.1.0-.1.1-.2.1 5.6-.8 11.2-1.7 16.6-2.6C942 1325.2 947.3 1324.1 952.6 1323z"/><path fill="#be202e" d="M980.3 1186.7C980.2 1186.7 980.2 1186.7 980.3 1186.7c-.1.1-.2.1-.2.1 1.8-.2 3.5-.5 5.2-.8 7-1 13.9-2.2 20.7-3.7C997.5 1183.8 989 1185.2 980.3 1186.7z"/><path opacity=".35" fill="#be202e" d="M980.3 1186.7C980.2 1186.7 980.2 1186.7 980.3 1186.7c-.1.1-.2.1-.2.1 1.8-.2 3.5-.5 5.2-.8 7-1 13.9-2.2 20.7-3.7C997.5 1183.8 989 1185.2 980.3 1186.7z"/><linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-7537.7339" y1="-2391.4075" x2="-4625.4141" y2="-2391.4075" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_2_)" d="M858.6 784.7c25.1-46.9 50.5-92.8 76.2-137.4 26.7-46.4 53.7-91.3 80.9-134.7 1.6-2.6 3.2-5.2 4.8-7.7 27-42.7 54.2-83.7 81.6-122.9L1019.5 226c-6.2 7.6-12.5 15.3-18.8 23.2-23.8 29.7-48.6 61.6-73.9 95.5-28.6 38.2-58 78.9-87.8 121.7-27.6 39.5-55.5 80.9-83.5 123.7-23.8 36.5-47.7 74-71.4 112.5-.9 1.4-1.8 2.9-2.6 4.3L789 919.2c22.8-45.6 46.1-90.5 69.6-134.5z"/><linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-7186.1777" y1="-2099.3059" x2="-5450.7183" y2="-2099.3059" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset="0" style="stop-color:#282662"/><stop offset=".0954839" style="stop-color:#662E8D"/><stop offset=".7882" style="stop-color:#9F2064"/><stop offset=".9487" style="stop-color:#CD2032"/></linearGradient><path fill="url(#SVGID_3_)" d="M369 1981c-14.2 39.1-28.5 78.9-42.9 119.6-.2.6-.4 1.2-.6 1.8-2 5.7-4.1 11.5-6.1 17.2-9.7 27.4-18 52.1-37.3 108.2 31.7 14.5 57.1 52.5 81.1 95.6-2.6-44.7-21-86.6-56.2-119.1 156.1 7 290.6-32.4 360.1-146.6 6.2-10.2 11.9-20.9 17-32.2-31.6 40.1-70.8 57.1-144.5 53-.2.1-.3.1-.5.2.2-.1.3-.1.5-.2 108.6-48.6 163.1-95.3 211.2-172.6 11.4-18.3 22.5-38.4 33.8-60.6-94.9 97.5-205 125.3-320.9 104.2l-86.9 9.5C374.4 1966.3 371.7 1973.6 369 1981z"/><linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2418.5454" x2="-4461.8428" y2="-2418.5454" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_4_)" d="M409.6 1786.3c18.8-48.5 38.1-97.7 58-147.2 19-47.4 38.5-95.2 58.5-143.2s40.4-96.1 61.2-144.2c21.2-49 42.9-97.8 64.9-146.5 21.8-48.1 44-95.9 66.6-143.3 8.1-17.1 16.3-34.1 24.6-51 14.2-29.3 28.6-58.4 43.1-87.2.8-1.6 1.6-3.1 2.4-4.6L681.4 706.8c-1.8 2.9-3.5 5.8-5.3 8.6-25.1 40.9-50 82.7-74.4 125.4-24.7 43.1-49 87.1-72.7 131.7-20 37.6-39.6 75.6-58.6 113.9-3.8 7.8-7.6 15.5-11.3 23.2-23.4 48.2-44.6 94.8-63.7 139.5-21.7 50.7-40.7 99.2-57.5 145.1-11 30.2-21 59.4-30.1 87.4-7.5 24-14.7 47.9-21.5 71.8-16 56.3-29.9 112.4-41.2 168.3L353 1935.1c14.3-38.1 28.9-76.8 44-116C401.1 1808.2 405.4 1797.3 409.6 1786.3z"/><linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-7161.7642" y1="-2379.1431" x2="-5631.2524" y2="-2379.1431" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset="0" style="stop-color:#282662"/><stop offset=".0954839" style="stop-color:#662E8D"/><stop offset=".7882" style="stop-color:#9F2064"/><stop offset=".9487" style="stop-color:#CD2032"/></linearGradient><path fill="url(#SVGID_5_)" d="M243.5 1729.4c-13.6 68.2-23.2 136.2-28 203.8-.2 2.4-.4 4.7-.5 7.1-33.7-54-124-106.8-123.8-106.2 64.6 93.7 113.7 186.7 120.9 278-34.6 7.1-82-3.2-136.8-23.3 57.1 52.5 1e2 67 116.7 70.9-52.5 3.3-107.1 39.3-162.1 80.8 80.5-32.8 145.5-45.8 192.1-35.3C148.1 2414.2 74.1 2645 0 2890c22.7-6.7 36.2-21.9 43.9-42.6 13.2-44.4 100.8-335.6 238-718.2 3.9-10.9 7.8-21.8 11.8-32.9 1.1-3 2.2-6.1 3.3-9.2 14.5-40.1 29.5-81.1 45.1-122.9 3.5-9.5 7.1-19 10.7-28.6.1-.2.1-.4.2-.6l-107.9-213.2C244.6 1724.4 244 1726.9 243.5 1729.4z"/><linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2117.1309" x2="-4461.8428" y2="-2117.1309" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_6_)" d="M805.6 937c-3.1 6.3-6.2 12.7-9.3 19.1-9.3 19.2-18.8 38.8-28.3 58.8-10.3 21.7-20.7 43.9-31.3 66.5-5.3 11.4-10.6 22.9-16 34.6-16.1 35-32.4 71.1-48.9 108.3-20.3 45.8-41 93.4-62 142.8-20 47.1-40.3 95.9-60.9 146.3-19.5 47.9-39.3 97.3-59.3 148.3-17.8 45.4-35.9 92.1-54 140.1-.9 2.3-1.8 4.7-2.6 7-18 47.6-36.2 96.6-54.6 146.8-.4 1.1-.8 2.3-1.3 3.4l86.9-9.5c-1.7-.3-3.5-.5-5.2-.9 103.9-13 242.1-90.6 331.4-186.5 41.1-44.2 78.5-96.3 113-157.3 25.7-45.4 49.8-95.8 72.8-151.5 20.1-48.7 39.4-101.4 58-158.6-23.9 12.6-51.2 21.8-81.4 28.2-5.3 1.1-10.7 2.2-16.1 3.1-5.5 1-11 1.8-16.6 2.6.1.0.1-.1.2-.1 96.9-37.3 158-109.2 202.4-197.4-25.5 17.4-66.9 40.1-116.6 51.1-6.7 1.5-13.7 2.7-20.7 3.7-1.7.3-3.5.6-5.2.8.1.0.1.0.1-.1h.1c33.6-14.1 62-29.8 86.6-48.4 5.3-4 10.4-8.1 15.3-12.3 7.5-6.5 14.7-13.3 21.5-20.5 4.4-4.6 8.6-9.3 12.7-14.2 9.6-11.5 18.7-23.9 27.1-37.3 2.6-4.1 5.1-8.3 7.6-12.6 3.2-6.2 6.3-12.3 9.3-18.3 13.5-27.2 24.4-51.5 33-72.8 4.3-10.6 8.1-20.5 11.3-29.7 1.3-3.7 2.5-7.2 3.7-10.6 3.4-10.2 6.2-19.3 8.4-27.3 3.3-12 5.3-21.5 6.4-28.4-3.3 2.6-7.1 5.2-11.3 7.7-29.3 17.5-79.5 33.4-119.9 40.8l79.8-8.8-79.8 8.8c-.6.1-1.2.2-1.8.3-4 .7-8.1 1.3-12.2 2 .7-.3 1.4-.7 2.1-1l-273 29.9C806.6 935 806.1 936 805.6 937z"/><linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="-7554.8232" y1="-2132.0981" x2="-4642.5034" y2="-2132.0981" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_7_)" d="M1112.9 385.1c-24.3 37.3-50.8 79.6-79.4 127.5-1.5 2.5-3 5.1-4.5 7.6-24.6 41.5-50.8 87.1-78.3 137-23.8 43.1-48.5 89.3-74.3 139C854 839.5 830.8 885.4 807 934l273-29.9c79.5-36.6 115.1-69.7 149.6-117.6 9.2-13.2 18.4-27 27.5-41.3 28-43.8 55.6-92 80.1-139.9 23.7-46.3 44.7-92.2 60.7-133.5 10.2-26.3 18.4-50.8 24.1-72.3 5-19 8.9-36.9 11.9-54.1C1327.9 363.5 1197.6 380.9 1112.9 385.1z"/><path fill="#be202e" d="M936.5 1326.1c-5.5 1-11 1.8-16.6 2.6C925.5 1328 931 1327.1 936.5 1326.1z"/><path opacity=".35" fill="#be202e" d="M936.5 1326.1c-5.5 1-11 1.8-16.6 2.6C925.5 1328 931 1327.1 936.5 1326.1z"/><linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2027.484" x2="-4461.8433" y2="-2027.484" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_8_)" d="M936.5 1326.1c-5.5 1-11 1.8-16.6 2.6C925.5 1328 931 1327.1 936.5 1326.1z"/><path fill="#be202e" d="M980 1186.8c1.8-.2 3.5-.5 5.2-.8C983.5 1186.3 981.8 1186.6 980 1186.8z"/><path opacity=".35" fill="#be202e" d="M980 1186.8c1.8-.2 3.5-.5 5.2-.8C983.5 1186.3 981.8 1186.6 980 1186.8z"/><linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2037.7417" x2="-4461.8433" y2="-2037.7417" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_9_)" d="M980 1186.8c1.8-.2 3.5-.5 5.2-.8C983.5 1186.3 981.8 1186.6 980 1186.8z"/><path fill="#be202e" d="M980.2 1186.7z"/><path opacity=".35" fill="#be202e" d="M980.2 1186.7z"/><linearGradient id="SVGID_10_" gradientUnits="userSpaceOnUse" x1="-5738.0635" y1="-2039.799" x2="-5094.3457" y2="-2039.799" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_10_)" d="M980.2 1186.7z"/></svg></div></a><ul class=footer-link><li><a class=white href=http://www.apache.org>Foundation</a></li><li><a class=white href=http://www.apache.org/licenses/>License</a></li><li><a class=white href=https://www.apache.org/security/>Security</a></li><li><a class=white href=http://www.apache.org/events/current-event>Events</a></li><li><a class=white href=http://www.apache.org/foundation/sponsorship.html>Sponsorship</a></li><li><a class=white href=http://www.apache.org/foundation/thanks.html>Thanks</a></li><li><a class=white href=https://privacy.apache.org/policies/privacy-policy-public.html target=_blank>Privacy</a></li></ul></div></div><div class="col-6 text-white text-center container-center"><p>Copyright &copy; 2024 The Apache Software Foundation, Licensed under the <a class=white href=https://www.apache.org/licenses/LICENSE-2.0>Apache License Version 2.0</a></p><p>Apache and the Apache feather logo are trademarks of The Apache Software Foundation.</p></div><div class=col-1></div></div></div></footer></div><script src=https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js integrity=sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN crossorigin=anonymous></script>
<script src=https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/js/bootstrap.min.js integrity="sha512-UR25UO94eTnCVwjbXozyeVd6ZqpaAE9naiEUBK/A+QDbfSTQFhPGj5lOR6d8tsgbBk84Ggb5A3EkjsOgPRPcKA==" crossorigin=anonymous></script>
<script src=/js/tabpane-persist.js></script>
<script src=/js/main.min.aa9f4c5dae6a98b2c46277f4c56f1673a2b000d1756ce4ffae93784cab25e6d5.js integrity="sha256-qp9MXa5qmLLEYnf0xW8Wc6KwANF1bOT/rpN4TKsl5tU=" crossorigin=anonymous></script>
<script src=/js/prism.js></script></body></html>