blob: 3965f52443bd09e5dd7217336109ec44772a75fb [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.95.0" />
<link rel="canonical" type="text/html" href="/docs/clients/">
<link rel="alternate" type="application/rss&#43;xml" href="/docs/clients/index.xml">
<meta name="robots" content="noindex, nofollow">
<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>API | HugeGraph</title>
<meta name="description" content="">
<meta property="og:title" content="API" />
<meta property="og:description" content="Apache HugeGraph site" />
<meta property="og:type" content="website" />
<meta property="og:url" content="/docs/clients/" /><meta property="og:site_name" content="HugeGraph" />
<meta itemprop="name" content="API">
<meta itemprop="description" content="Apache HugeGraph site"><meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="API"/>
<meta name="twitter:description" content="Apache HugeGraph site"/>
<link rel="preload" href="/scss/main.min.0dc89c707c94a8edbf7722b8ffab87c78b14c4c3e2532e1f45bd6d12c3ccf83b.css" as="style">
<link href="/scss/main.min.0dc89c707c94a8edbf7722b8ffab87c78b14c4c3e2532e1f45bd6d12c3ccf83b.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 = false;
if (!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-section">
<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="/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/clients/">中文</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">
<main class="col-12 col-md-9 col-xl-8 pl-md-5" role="main">
<div class="td-content">
<div class="pageinfo pageinfo-primary d-print-none">
<p>
This is the multi-page printable view of this section.
<a href="#" onclick="print();return false;">Click here to print</a>.
</p><p>
<a href="/docs/clients/">Return to the regular view of this page</a>.
</p>
</div>
<h1 class="title">API</h1>
<ul>
<li>1: <a href="#pg-a809bf70d5493b5046619919800e4de6">HugeGraph RESTful API</a></li>
<ul>
<li>1.1: <a href="#pg-698c3217de07a8cb0dc0e93dbae29ee9">Schema API</a></li>
<li>1.2: <a href="#pg-f7f4b3b6f4b7a965f8c30675df8e56f8">PropertyKey API</a></li>
<li>1.3: <a href="#pg-28cb205879be97a55ddc8cd365c4438e">VertexLabel API</a></li>
<li>1.4: <a href="#pg-41864d99c39fc7040549f6eaf5441daf">EdgeLabel API</a></li>
<li>1.5: <a href="#pg-7099742fb947ad5dfde9e72216c10b8a">IndexLabel API</a></li>
<li>1.6: <a href="#pg-bde129922f801ad9560757fcec64d05c">Rebuild API</a></li>
<li>1.7: <a href="#pg-86bf520fd6b098231f4af6590328e871">Vertex API</a></li>
<li>1.8: <a href="#pg-f40127b155ddd802d50c507ff1cf5530">Edge API</a></li>
<li>1.9: <a href="#pg-f0adc653be0b454ce1952bdaf0afefa6">Traverser API</a></li>
<li>1.10: <a href="#pg-ced5167413a6606a537e40b18f6fec3e">Rank API</a></li>
<li>1.11: <a href="#pg-32aff6fa72d51caa846c2a72e5771c5d">Variable API</a></li>
<li>1.12: <a href="#pg-3d75cf337650cd90a617c3ef7e9dca87">Graphs API</a></li>
<li>1.13: <a href="#pg-d9de752e44e3a8a709d187e4101fd818">Task API</a></li>
<li>1.14: <a href="#pg-e84b0f106294b580ca64918b72cc71d1">Gremlin API</a></li>
<li>1.15: <a href="#pg-a3b125f257052209fcb98300d5c066a7">Authentication API</a></li>
<li>1.16: <a href="#pg-8e126d4f2f7317a1268d7edb65cd4fcc">Other API</a></li>
</ul>
<li>2: <a href="#pg-3457a7585a93814fdbb1a44b68edc0d3">HugeGraph Java Client</a></li>
<li>3: <a href="#pg-1ebf9ecb86d8a6b8536fd581e696ce8c">Gremlin-Console</a></li>
</ul>
<div class="content">
</div>
</div>
<div class="td-content" style="">
<h1 id="pg-a809bf70d5493b5046619919800e4de6">1 - HugeGraph RESTful API</h1>
<p>HugeGraph-Server通过HugeGraph-API基于HTTP协议为Client提供操作图的接口,主要包括元数据和
图数据的增删改查,遍历算法,变量,图操作及其他操作。</p>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-698c3217de07a8cb0dc0e93dbae29ee9">1.1 - Schema API</h1>
<h3 id="11-schema">1.1 Schema</h3>
<p>HugeGraph 提供单一接口获取某个图的全部 Schema 信息,包括:PropertyKey、VertexLabel、EdgeLabel 和 IndexLabel。</p>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema
</code></pre><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;propertykeys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">7</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aggregate_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;write_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OLTP&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.741&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">6</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aggregate_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;write_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OLTP&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.729&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aggregate_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;write_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OLTP&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.691&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aggregate_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;write_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OLTP&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.678&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">5</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aggregate_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;write_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OLTP&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.718&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;DOUBLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aggregate_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;write_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OLTP&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.707&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aggregate_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;write_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OLTP&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.609&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertexlabels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;PRIMARY_KEY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;personByCity&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;personByAgeAndCity&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.783&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;PRIMARY_KEY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;price&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;softwareByPrice&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;price&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.840&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edgelabels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;MULTIPLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;knowsByWeight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:41.840&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;createdByDate&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;createdByWeight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:41.868&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;indexlabels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;personByCity&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:40.886&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;createdByDate&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;EDGE_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:41.878&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">5</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;createdByWeight&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;EDGE_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;RANGE_DOUBLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:42.117&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;personByAgeAndCity&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:41.351&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;softwareByPrice&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;RANGE_INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;price&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:41.587&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">6</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knowsByWeight&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;EDGE_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;RANGE_DOUBLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;CREATED&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;~create_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2021-09-03 15:13:42.376&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-f7f4b3b6f4b7a965f8c30675df8e56f8">1.2 - PropertyKey API</h1>
<h3 id="12-propertykey">1.2 PropertyKey</h3>
<p>Params说明:</p>
<ul>
<li>name:属性类型名称,必填</li>
<li>data_type:属性类型数据类型,包括:bool、byte、int、long、float、double、string、date、uuid、blob,默认string类型</li>
<li>cardinality:属性类型基数,包括:single、list、set,默认single</li>
</ul>
<p>请求体字段说明:</p>
<ul>
<li>id:属性类型id值</li>
<li>properties:属性的属性,对于属性而言,此项为空</li>
<li>user_data:设置属性类型的通用信息,比如可设置age属性的取值范围,最小为0,最大为100;目前此项不做任何校验,只为后期拓展提供预留入口</li>
</ul>
<h4 id="121-创建一个-propertykey">1.2.1 创建一个 PropertyKey</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/schema/propertykeys
</code></pre><h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;property_key&#34;</span> <span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="122-为已存在的-propertykey-添加或移除-userdata">1.2.2 为已存在的 PropertyKey 添加或移除 userdata</h4>
<h5 id="params">Params</h5>
<ul>
<li>action: 表示当前行为是添加还是移除,取值为<code>append</code>(添加)和<code>eliminate</code>(移除)</li>
</ul>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/schema/propertykeys/age?action=append
</code></pre><h5 id="request-body-1">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;property_key&#34;</span> <span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;min&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span> <span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;min&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="123-获取所有的-propertykey">1.2.3 获取所有的 PropertyKey</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema/propertykeys
</code></pre><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;propertykeys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">5</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;DOUBLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">6</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">7</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="124-根据name获取propertykey">1.2.4 根据name获取PropertyKey</h4>
<h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema/propertykeys/age
</code></pre><p>其中,<code>age</code>为要获取的PropertyKey的名字</p>
<h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="125-根据name删除propertykey">1.2.5 根据name删除PropertyKey</h4>
<h5 id="method--url-4">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/schema/propertykeys/age
</code></pre><p>其中,<code>age</code>为要获取的PropertyKey的名字</p>
<h5 id="response-status-4">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body-4">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;property_key&#34;</span> <span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;INT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cardinality&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span> <span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-28cb205879be97a55ddc8cd365c4438e">1.3 - VertexLabel API</h1>
<h3 id="13-vertexlabel">1.3 VertexLabel</h3>
<p>假设已经创建好了1.1.3中列出来的 PropertyKeys</p>
<p>Params说明</p>
<ul>
<li>id:顶点类型id值</li>
<li>name:顶点类型名称,必填</li>
<li>id_strategy: 顶点类型的ID策略,主键ID、自动生成、自定义字符串、自定义数字、自定义UUID,默认主键ID</li>
<li>properties: 顶点类型关联的属性类型</li>
<li>primary_keys: 主键属性,当ID策略为PRIMARY_KEY时必须有值,其他ID策略时必须为空;</li>
<li>enable_label_index: 是否开启类型索引,默认关闭</li>
<li>index_names:顶点类型创建的索引,详情见3.4</li>
<li>nullable_keys:可为空的属性</li>
<li>user_data:设置顶点类型的通用信息,作用同属性类型</li>
</ul>
<h4 id="131-创建一个vertexlabel">1.3.1 创建一个VertexLabel</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/schema/vertexlabels
</code></pre><h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;DEFAULT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;PRIMARY_KEY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person2&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>从 hugegraph-server v0.11.2 版本开始支持顶点的 TTL 功能。顶点的 TTL 是通过 VertexLabel 来设置的。比如希望 person 类型的顶点存活时间为一天,需要在创建 person VertexLabel 的时候将 TTL 字段设置为 86400000,即单位为毫秒。</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;DEFAULT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">86400000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>另外,当顶点中带有&quot;创建时间&quot;的属性且希望以&quot;创建时间&quot;属性作为计算顶点存活时间的起点时,可以设置 VertexLabel 中的 ttl_start_time 字段。比如 person VertexLabel 有 createdTime 属性,且 createdTime 是 Date 类型的参数,希望 person 类型的顶点从创建开始存活一天的时间,那么创建 person VertexLabel 的 Request 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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;DEFAULT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;createdTime&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">86400000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl_start_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;createdTime&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="132-为已存在的vertexlabel添加properties或userdata或者移除userdata目前不支持移除properties">1.3.2 为已存在的VertexLabel添加properties或userdata,或者移除userdata(目前不支持移除properties)</h4>
<h5 id="params">Params</h5>
<ul>
<li>action: 表示当前行为是添加还是移除,取值为<code>append</code>(添加)和<code>eliminate</code>(移除)</li>
</ul>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/schema/vertexlabels/person?action=append
</code></pre><h5 id="request-body-1">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;super&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;animal&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;PRIMARY_KEY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;super&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;animal&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="133-获取所有的vertexlabel">1.3.3 获取所有的VertexLabel</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema/vertexlabels
</code></pre><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertexlabels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;PRIMARY_KEY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;super&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;animal&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;PRIMARY_KEY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;lang&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;price&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">false</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="134-根据name获取vertexlabel">1.3.4 根据name获取VertexLabel</h4>
<h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema/vertexlabels/person
</code></pre><h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;primary_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id_strategy&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;PRIMARY_KEY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;super&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;animal&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="135-根据name删除vertexlabel">1.3.5 根据name删除VertexLabel</h4>
<p>删除 VertexLabel 会导致删除对应的顶点以及相关的索引数据,会产生一个异步任务</p>
<h5 id="method--url-4">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/schema/vertexlabels/person
</code></pre><h5 id="response-status-4">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body-4">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>注:</p>
<blockquote>
<p>可以通过<code>GET http://localhost:8080/graphs/hugegraph/tasks/1</code>(其中&quot;1&quot;是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p>
</blockquote>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-41864d99c39fc7040549f6eaf5441daf">1.4 - EdgeLabel API</h1>
<h3 id="14-edgelabel">1.4 EdgeLabel</h3>
<p>假设已经创建好了1.2.3中的 PropertyKeys 和 1.3.3中的 VertexLabels</p>
<p>Params说明</p>
<ul>
<li>name:顶点类型名称,必填</li>
<li>source_label: 源顶点类型的名称,必填</li>
<li>target_label: 目标顶点类型的名称,必填</li>
<li>frequency:两个点之间是否可以有多条边,可以取值SINGLE和MULTIPLE,非必填,默认值SINGLE</li>
<li>properties: 边类型关联的属性类型,选填</li>
<li>sort_keys: 当允许关联多次时,指定区分键属性列表</li>
<li>nullable_keys:可为空的属性,选填,默认可为空</li>
<li>enable_label_index: 是否开启类型索引,默认关闭</li>
</ul>
<h4 id="141-创建一个edgelabel">1.4.1 创建一个EdgeLabel</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/schema/edgelabels
</code></pre><h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>从 hugegraph-server v0.11.2 版本开始支持边的 TTL 功能。边的 TTL 是通过 EdgeLabel 来设置的。比如希望 knows 类型的边存活时间为一天,需要在创建 knows EdgeLabel 的时候将 TTL 字段设置为 86400000,即单位为毫秒。</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;createdTime&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">86400000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>另外,当边中带有&quot;创建时间&quot;的属性且希望以&quot;创建时间&quot;属性作为计算边存活时间的起点时,可以设置 EdgeLabel 中的 ttl_start_time 字段。比如 knows EdgeLabel 有 createdTime 属性,且 createdTime 是 Date 类型的参数,希望 knows 类型的边从创建开始存活一天的时间,那么创建 knows EdgeLabel 的 Request 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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;createdTime&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">86400000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ttl_start_time&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;createdTime&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="142-为已存在的edgelabel添加properties或userdata或者移除userdata目前不支持移除properties">1.4.2 为已存在的EdgeLabel添加properties或userdata,或者移除userdata(目前不支持移除properties)</h4>
<h5 id="params">Params</h5>
<ul>
<li>action: 表示当前行为是添加还是移除,取值为<code>append</code>(添加)和<code>eliminate</code>(移除)</li>
</ul>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/schema/edgelabels/created?action=append
</code></pre><h5 id="request-body-1">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="143-获取所有的edgelabel">1.4.3 获取所有的EdgeLabel</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema/edgelabels
</code></pre><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edgelabels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">false</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="144-根据name获取edgelabel">1.4.4 根据name获取EdgeLabel</h4>
<h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema/edgelabels/created
</code></pre><h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_names&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;frequency&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SINGLE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nullable_keys&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;weight&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;enable_label_index&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="145-根据name删除edgelabel">1.4.5 根据name删除EdgeLabel</h4>
<p>删除 EdgeLabel 会导致删除对应的边以及相关的索引数据,会产生一个异步任务</p>
<h5 id="method--url-4">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/schema/edgelabels/created
</code></pre><h5 id="response-status-4">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body-4">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>注:</p>
<blockquote>
<p>可以通过<code>GET http://localhost:8080/graphs/hugegraph/tasks/1</code>(其中&quot;1&quot;是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p>
</blockquote>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-7099742fb947ad5dfde9e72216c10b8a">1.5 - IndexLabel API</h1>
<h3 id="15-indexlabel">1.5 IndexLabel</h3>
<p>假设已经创建好了1.1.3中的 PropertyKeys 、1.2.3中的 VertexLabels 以及 1.3.3中的 EdgeLabels</p>
<h4 id="151-创建一个indexlabel">1.5.1 创建一个IndexLabel</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/schema/indexlabels
</code></pre><h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;personByCity&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;personByCity&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="152-获取所有的indexlabel">1.5.2 获取所有的IndexLabel</h4>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema/indexlabels
</code></pre><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;indexlabels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;softwareByPrice&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;price&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;RANGE&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;EDGE_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;createdByDate&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;date&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;personByCity&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;personByAgeAndCity&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="153-根据name获取indexlabel">1.5.3 根据name获取IndexLabel</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/schema/indexlabels/personByCity
</code></pre><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;VERTEX_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;base_value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;personByCity&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;fields&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;city&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;index_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;SECONDARY&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="154-根据name删除indexlabel">1.5.4 根据name删除IndexLabel</h4>
<p>删除 IndexLabel 会导致删除相关的索引数据,会产生一个异步任务</p>
<h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/schema/indexlabels/personByCity
</code></pre><h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>注:</p>
<blockquote>
<p>可以通过<code>GET http://localhost:8080/graphs/hugegraph/tasks/1</code>(其中&quot;1&quot;是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p>
</blockquote>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-bde129922f801ad9560757fcec64d05c">1.6 - Rebuild API</h1>
<h3 id="16-rebuild">1.6 Rebuild</h3>
<h4 id="161-rebuild-indexlabel">1.6.1 Rebuild IndexLabel</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/jobs/rebuild/indexlabels/personByCity
</code></pre><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>Note:</p>
<blockquote>
<p>You can get the asynchronous job status by <code>GET http://localhost:8080/graphs/hugegraph/tasks/${task_id}</code> (the task_id here should be 1). See More <a href="../task">AsyncJob RESTfull API</a></p>
</blockquote>
<h4 id="162-rebulid-all-indexs-of-vertexlabel">1.6.2 Rebulid all Indexs of VertexLabel</h4>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/jobs/rebuild/vertexlabels/person
</code></pre><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>Note:</p>
<blockquote>
<p>You can get the asynchronous job status by <code>GET http://localhost:8080/graphs/hugegraph/tasks/${task_id}</code> (the task_id here should be 2). See More <a href="../task">AsyncJob RESTfull API</a></p>
</blockquote>
<h4 id="163-rebulid-all-indexs-of-edgelabel">1.6.3 Rebulid all Indexs of EdgeLabel</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/jobs/rebuild/edgelabels/created
</code></pre><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>Note:</p>
<blockquote>
<p>You can get the asynchronous job status by <code>GET http://localhost:8080/graphs/hugegraph/tasks/${task_id}</code> (the task_id here should be 3). See More <a href="../task">AsyncJob RESTfull API</a></p>
</blockquote>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-86bf520fd6b098231f4af6590328e871">1.7 - Vertex API</h1>
<h3 id="21-vertex">2.1 Vertex</h3>
<p>顶点类型中的 Id 策略决定了顶点的 Id 类型,其对应关系如下:</p>
<table>
<thead>
<tr>
<th>Id_Strategy</th>
<th>id type</th>
</tr>
</thead>
<tbody>
<tr>
<td>AUTOMATIC</td>
<td>number</td>
</tr>
<tr>
<td>PRIMARY_KEY</td>
<td>string</td>
</tr>
<tr>
<td>CUSTOMIZE_STRING</td>
<td>string</td>
</tr>
<tr>
<td>CUSTOMIZE_NUMBER</td>
<td>number</td>
</tr>
<tr>
<td>CUSTOMIZE_UUID</td>
<td>uuid</td>
</tr>
</tbody>
</table>
<p>顶点的 <code>GET/PUT/DELETE</code> API 中 url 的 id 部分传入的应是带有类型信息的 id 值,这个类型信息用 json 串是否带引号表示,也就是说:</p>
<ul>
<li>当 id 类型为 number 时,url 中的 id 不带引号,形如 xxx/vertices/123456</li>
<li>当 id 类型为 string 时,url 中的 id 带引号,形如 xxx/vertices/&ldquo;123456&rdquo;</li>
</ul>
<hr>
<p>接下来的示例均假设已经创建好了前述的各种 schema 信息</p>
<h4 id="211-创建一个顶点">2.1.1 创建一个顶点</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/graph/vertices
</code></pre><h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="212-创建多个顶点">2.1.2 创建多个顶点</h4>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/graph/vertices/batch
</code></pre><h5 id="request-body-1">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">]</span>
</span></span></code></pre></div><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">]</span>
</span></span></code></pre></div><h4 id="213-更新顶点属性">2.1.3 更新顶点属性</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://127.0.0.1:8080/graphs/hugegraph/graph/vertices/&#34;1:marko&#34;?action=append
</code></pre><h5 id="request-body-2">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">30</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><blockquote>
<p>注意:属性的取值是有三种类别的,分别是single、set和list。如果是single,表示增加或更新属性值;如果是set或list,则表示追加属性值。</p>
</blockquote>
<h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">30</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="214-批量更新顶点属性">2.1.4 批量更新顶点属性</h4>
<h5 id="功能说明">功能说明</h5>
<p>批量更新顶点的属性,并支持多种更新策略,包括</p>
<ul>
<li>SUM: 数值累加</li>
<li>BIGGER: 两个数字/日期取更大的</li>
<li>SMALLER: 两个数字/日期取更小的</li>
<li>UNION: Set属性取并集</li>
<li>INTERSECTION: Set属性取交集</li>
<li>APPEND: List属性追加元素</li>
<li>ELIMINATE: List/Set属性删除元素</li>
<li>OVERRIDE: 覆盖已有属性,如果新属性为null,则仍然使用旧属性</li>
</ul>
<p>假设原顶点及属性为:</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">32</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Beijing&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;hobby&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;reading&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;football&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://127.0.0.1:8080/graphs/hugegraph/graph/vertices/batch
</code></pre><h5 id="request-body-3">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;c++&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">299</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Shanghai&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;hobby&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;swiming&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;update_strategies&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;BIGGER&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;OVERRIDE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;OVERRIDE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;SUM&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;hobby&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;UNION&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;create_if_not_exist&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;c++&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">32</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Shanghai&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;hobby&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;swiming&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;reading&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;football&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>结果分析:</p>
<ul>
<li>lang 属性未指定更新策略,直接用新值覆盖旧值,无论新值是否为null;</li>
<li>price 属性指定 BIGGER 的更新策略,旧属性值为328,新属性值为299,所以仍然保留了旧属性值328;</li>
<li>age 属性指定 OVERRIDE 更新策略,而新属性值中未传入age,相当于age为null,所以仍然保留了原属性值32;</li>
<li>city 属性也指定了 OVERRIDE 更新策略,且新属性值不为null,所以覆盖了旧值;</li>
<li>weight 属性指定了 SUM 更新策略,旧属性值为0.1,新属性值为0.2,最后的值为0.3;</li>
<li>hobby 属性(基数为Set)指定了 UNION 更新策略,所以新值与旧值取了并集;</li>
</ul>
<p>其他的更新策略使用方式可以类推,不再赘述。</p>
<h4 id="215-删除顶点属性">2.1.5 删除顶点属性</h4>
<h5 id="method--url-4">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://127.0.0.1:8080/graphs/hugegraph/graph/vertices/&#34;1:marko&#34;?action=eliminate
</code></pre><h5 id="request-body-4">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><blockquote>
<p>注意:这里会直接删除属性(删除key和所有value),无论其属性的取值是single、set或list。</p>
</blockquote>
<h5 id="response-status-4">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-4">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">30</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="216-获取符合条件的顶点">2.1.6 获取符合条件的顶点</h4>
<h5 id="params">Params</h5>
<ul>
<li>label: 顶点类型</li>
<li>properties: 属性键值对(根据属性查询的前提是预先建立了索引)</li>
<li>limit: 查询最大数目</li>
<li>page: 页号</li>
</ul>
<p>以上参数都是可选的,如果提供page参数,必须提供limit参数,不允许带其他参数。<code>label, properties</code><code>limit</code>可以任意组合。</p>
<p>属性键值对由JSON格式的属性名称和属性值组成,允许多个属性键值对作为查询条件,属性值支持精确匹配和范围匹配,精确匹配时形如<code>properties={&quot;age&quot;:29}</code>,范围匹配时形如<code>properties={&quot;age&quot;:&quot;P.gt(29)&quot;}</code>,范围匹配支持的表达式如下:</p>
<table>
<thead>
<tr>
<th>表达式</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>P.eq(number)</td>
<td>属性值等于number的顶点</td>
</tr>
<tr>
<td>P.neq(number)</td>
<td>属性值不等于number的顶点</td>
</tr>
<tr>
<td>P.lt(number)</td>
<td>属性值小于number的顶点</td>
</tr>
<tr>
<td>P.lte(number)</td>
<td>属性值小于等于number的顶点</td>
</tr>
<tr>
<td>P.gt(number)</td>
<td>属性值大于number的顶点</td>
</tr>
<tr>
<td>P.gte(number)</td>
<td>属性值大于等于number的顶点</td>
</tr>
<tr>
<td>P.between(number1,number2)</td>
<td>属性值大于等于number1且小于number2的顶点</td>
</tr>
<tr>
<td>P.inside(number1,number2)</td>
<td>属性值大于number1且小于number2的顶点</td>
</tr>
<tr>
<td>P.outside(number1,number2)</td>
<td>属性值小于number1且大于number2的顶点</td>
</tr>
<tr>
<td>P.within(value1,value2,value3,&hellip;)</td>
<td>属性值等于任何一个给定value的顶点</td>
</tr>
</tbody>
</table>
<p><strong>查询所有 age 为 20 且 label 为 person 的顶点</strong></p>
<h5 id="method--url-5">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/vertices?label=person&amp;properties={&#34;age&#34;:29}&amp;limit=1
</code></pre><h5 id="response-status-5">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-5">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p><strong>分页查询所有顶点,获取第一页(page不带参数值),限定3条</strong></p>
<h5 id="method--url-6">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/vertices?page&amp;limit=3
</code></pre><h5 id="response-status-6">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-6">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&gt;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&gt;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Hongkong&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">27</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Shanghai&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;peter&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">35</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;page&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;001000100853313a706574657200f07ffffffc00e797c6349be736fffc8699e8a502efe10004&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>返回的body里面是带有下一页的页号信息的,<code>&quot;page&quot;: &quot;001000100853313a706574657200f07ffffffc00e797c6349be736fffc8699e8a502efe10004&quot;</code>
在查询下一页的时候将该值赋给page参数。</p>
<p><strong>分页查询所有顶点,获取下一页(page带上上一页返回的page值),限定3条</strong></p>
<h5 id="method--url-7">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/vertices?page=001000100853313a706574657200f07ffffffc00e797c6349be736fffc8699e8a502efe10004&amp;limit=3
</code></pre><h5 id="response-status-7">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-7">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">32</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&gt;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&gt;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;page&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">null</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>此时<code>&quot;page&quot;: null</code>表示已经没有下一页了 (注: 后端为 Cassandra 时,为了性能考虑,返回页恰好为最后一页时,返回 <code>page</code> 值可能非空,通过该 <code>page</code> 再请求下一页数据时则返回 <code>空数据</code><code>page = null</code>,其他情况类似)</p>
<h4 id="217-根据id获取顶点">2.1.7 根据Id获取顶点</h4>
<h5 id="method--url-8">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/vertices/&#34;1:marko&#34;
</code></pre><h5 id="response-status-8">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-8">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="218-根据id删除顶点">2.1.8 根据Id删除顶点</h4>
<h5 id="params-1">Params</h5>
<ul>
<li>label: 顶点类型,可选参数</li>
</ul>
<p><strong>仅根据Id删除顶点</strong></p>
<h5 id="method--url-9">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/graph/vertices/&#34;1:marko&#34;
</code></pre><h5 id="response-status-9">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><p><strong>根据Label+Id删除顶点</strong></p>
<p>通过指定Label参数和Id来删除顶点时,一般来说其性能比仅根据Id删除会更好。</p>
<h5 id="method--url-10">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/graph/vertices/&#34;1:marko&#34;?label=person
</code></pre><h5 id="response-status-10">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-f40127b155ddd802d50c507ff1cf5530">1.8 - Edge API</h1>
<h3 id="22-edge">2.2 Edge</h3>
<p>顶点 id 格式的修改也影响到了边的 Id 以及源顶点和目标顶点 id 的格式。</p>
<p>EdgeId是由 <code>src-vertex-id + direction + label + sort-values + tgt-vertex-id</code> 拼接而成,
但是这里的顶点id类型不是通过引号区分的,而是根据前缀区分:</p>
<ul>
<li>当 id 类型为 number 时,EdgeId 的顶点 id 前有一个前缀<code>L</code> ,形如 &ldquo;L123456&gt;1&raquo;L987654&rdquo;</li>
<li>当 id 类型为 string 时,EdgeId 的顶点 id 前有一个前缀<code>S</code> ,形如 &ldquo;S1:peter&gt;1&raquo;S2:lop&rdquo;</li>
</ul>
<hr>
<p>接下来的示例均假设已经创建好了前述的各种schema和vertex信息</p>
<h4 id="221-创建一条边">2.2.1 创建一条边</h4>
<p>Params说明</p>
<ul>
<li>label:边类型名称,必填</li>
<li>outV:源顶点id,必填</li>
<li>inV:目标顶点id,必填</li>
<li>outVLabel:源顶点类型。必填</li>
<li>inVLabel:目标顶点类型。必填</li>
<li>properties: 边关联的属性,对象内部结构为:
<ol>
<li>name:属性名称</li>
<li>value:属性值</li>
</ol>
</li>
</ul>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/graph/edges
</code></pre><h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2017-5-18&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.2</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:peter&gt;1&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2017-5-18&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.2</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="222-创建多条边">2.2.2 创建多条边</h4>
<h5 id="params">Params</h5>
<ul>
<li>check_vertex: 是否检查顶点存在(true | false),当设置为 true 而待插入边的源顶点或目标顶点不存在时会报错。</li>
</ul>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/graph/edges/batch
</code></pre><h5 id="request-body-1">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2017-5-18&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.2</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2016-01-10&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.5</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">]</span>
</span></span></code></pre></div><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;S1:peter&gt;1&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;S1:marko&gt;2&gt;&gt;S1:vadas&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">]</span>
</span></span></code></pre></div><h4 id="223-更新边属性">2.2.3 更新边属性</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter&gt;1&gt;&gt;S2:lop?action=append
</code></pre><h5 id="request-body-2">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1.0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><blockquote>
<p>注意:属性的取值是有三种类别的,分别是single、set和list。如果是single,表示增加或更新属性值;如果是set或list,则表示追加属性值。</p>
</blockquote>
<h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:peter&gt;1&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2017-5-18&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="224-批量更新边属性">2.2.4 批量更新边属性</h4>
<h5 id="功能说明">功能说明</h5>
<p>与批量更新顶点属性类似</p>
<p>假设原边及属性为:</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:josh&gt;2&gt;&gt;S2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1512835200000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:marko&gt;1&gt;7JooBil0&gt;S1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1361289600000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://127.0.0.1:8080/graphs/hugegraph/graph/edges/batch
</code></pre><h5 id="request-body-3">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:josh&gt;2&gt;&gt;S2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1522835200000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:marko&gt;1&gt;7JooBil0&gt;S1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1301289600000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;update_strategies&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;SUM&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;BIGGER&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;check_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">false</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;create_if_not_exist&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:josh&gt;2&gt;&gt;S2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1.1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1522835200000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:marko&gt;1&gt;7JooBil0&gt;S1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1.2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1301289600000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="225-删除边属性">2.2.5 删除边属性</h4>
<h5 id="method--url-4">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter&gt;1&gt;&gt;S2:lop?action=eliminate
</code></pre><h5 id="request-body-4">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1.0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><blockquote>
<p>注意:这里会直接删除属性(删除key和所有value),无论其属性的取值是single、set或list。</p>
</blockquote>
<h5 id="response-status-4">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-4">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:peter&gt;1&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20170324&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="226-获取符合条件的边">2.2.6 获取符合条件的边</h4>
<h5 id="params-1">Params</h5>
<ul>
<li>vertex_id: 顶点id</li>
<li>direction: 边的方向(OUT | IN | BOTH)</li>
<li>label: 边的标签</li>
<li>properties: 属性键值对(根据属性查询的前提是预先建立了索引)</li>
<li>offset:偏移,默认为0</li>
<li>limit: 查询数目,默认为100</li>
<li>page: 页号</li>
</ul>
<p>支持的查询有以下几种:</p>
<ul>
<li>提供vertex_id参数时,不可以使用参数page,direction、label、properties可选,offset和limit可以
限制结果范围</li>
<li>不提供vertex_id参数时,label和properties可选
<ul>
<li>如果使用page参数,则:offset参数不可用(不填或者为0),direction不可用,properties最多只能有一个</li>
<li>如果不使用page参数,则:offset和limit可以用来限制结果范围,direction参数忽略</li>
</ul>
</li>
</ul>
<p>属性键值对由JSON格式的属性名称和属性值组成,允许多个属性键值对作为查询条件,属性值支持精确匹配和范围匹配,精确匹配时形如<code>properties={&quot;weight&quot;:0.8}</code>,范围匹配时形如<code>properties={&quot;age&quot;:&quot;P.gt(0.8)&quot;}</code>,范围匹配支持的表达式如下:</p>
<table>
<thead>
<tr>
<th>表达式</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>P.eq(number)</td>
<td>属性值等于number的边</td>
</tr>
<tr>
<td>P.neq(number)</td>
<td>属性值不等于number的边</td>
</tr>
<tr>
<td>P.lt(number)</td>
<td>属性值小于number的边</td>
</tr>
<tr>
<td>P.lte(number)</td>
<td>属性值小于等于number的边</td>
</tr>
<tr>
<td>P.gt(number)</td>
<td>属性值大于number的边</td>
</tr>
<tr>
<td>P.gte(number)</td>
<td>属性值大于等于number的边</td>
</tr>
<tr>
<td>P.between(number1,number2)</td>
<td>属性值大于等于number1且小于number2的边</td>
</tr>
<tr>
<td>P.inside(number1,number2)</td>
<td>属性值大于number1且小于number2的边</td>
</tr>
<tr>
<td>P.outside(number1,number2)</td>
<td>属性值小于number1且大于number2的边</td>
</tr>
<tr>
<td>P.within(value1,value2,value3,&hellip;)</td>
<td>属性值等于任何一个给定value的边</td>
</tr>
</tbody>
</table>
<p><strong>查询与顶点 person:josh(vertex_id=&ldquo;1:josh&rdquo;) 相连且 label 为 created 的边</strong></p>
<h5 id="method--url-5">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://127.0.0.1:8080/graphs/hugegraph/graph/edges?vertex_id=&#34;1:josh&#34;&amp;direction=BOTH&amp;label=created&amp;properties={}
</code></pre><h5 id="response-status-5">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-5">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:josh&gt;1&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20091111&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.4</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:josh&gt;1&gt;&gt;S2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20171210&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p><strong>分页查询所有边,获取第一页(page不带参数值),限定3条</strong></p>
<h5 id="method--url-6">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://127.0.0.1:8080/graphs/hugegraph/graph/edges?page&amp;limit=3
</code></pre><h5 id="response-status-6">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-6">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:peter&gt;2&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20170324&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:josh&gt;2&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20091111&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:josh&gt;2&gt;&gt;S2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20171210&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;page&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;002500100753313a6a6f73681210010004000000020953323a726970706c65f07ffffffcf07ffffffd8460d63f4b398dd2721ed4fdb7716b420004&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>返回的body里面是带有下一页的页号信息的,<code>&quot;page&quot;: &quot;002500100753313a6a6f73681210010004000000020953323a726970706c65f07ffffffcf07ffffffd8460d63f4b398dd2721ed4fdb7716b420004&quot;</code>
在查询下一页的时候将该值赋给page参数。</p>
<p><strong>分页查询所有边,获取下一页(page带上上一页返回的page值),限定3条</strong></p>
<h5 id="method--url-7">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://127.0.0.1:8080/graphs/hugegraph/graph/edges?page=002500100753313a6a6f73681210010004000000020953323a726970706c65f07ffffffcf07ffffffd8460d63f4b398dd2721ed4fdb7716b420004&amp;limit=3
</code></pre><h5 id="response-status-7">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-7">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:marko&gt;1&gt;20130220&gt;S1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20130220&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:marko&gt;1&gt;20160110&gt;S1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.5</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20160110&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:marko&gt;2&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20171210&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;page&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">null</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>此时<code>&quot;page&quot;: null</code>表示已经没有下一页了 (注: 后端为 Cassandra 时,为了性能考虑,返回页恰好为最后一页时,返回 <code>page</code> 值可能非空,通过该 <code>page</code> 再请求下一页数据时则返回 <code>空数据</code><code>page = null</code>,其他情况类似)</p>
<h4 id="227-根据id获取边">2.2.7 根据Id获取边</h4>
<h5 id="method--url-8">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter&gt;1&gt;&gt;S2:lop
</code></pre><h5 id="response-status-8">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-8">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:peter&gt;1&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2017-5-18&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.2</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="228-根据id删除边">2.2.8 根据Id删除边</h4>
<h5 id="params-2">Params</h5>
<ul>
<li>label: 边类型,可选参数</li>
</ul>
<p><strong>仅根据Id删除边</strong></p>
<h5 id="method--url-9">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter&gt;1&gt;&gt;S2:lop
</code></pre><h5 id="response-status-9">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><p><strong>根据Label+Id删除边</strong></p>
<p>通过指定Label参数和Id来删除边时,一般来说其性能比仅根据Id删除会更好。</p>
<h5 id="method--url-10">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter&gt;1&gt;&gt;S2:lop?label=person
</code></pre><h5 id="response-status-10">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-f0adc653be0b454ce1952bdaf0afefa6">1.9 - Traverser API</h1>
<h3 id="31-traverser-api概述">3.1 traverser API概述</h3>
<p>HugeGraphServer为HugeGraph图数据库提供了RESTful API接口。除了顶点和边的CRUD基本操作以外,还提供了一些遍历(traverser)方法,我们称为<code>traverser API</code>。这些遍历方法实现了一些复杂的图算法,方便用户对图进行分析和挖掘。</p>
<p>HugeGraph支持的Traverser API包括:</p>
<ul>
<li>K-out API,根据起始顶点,查找恰好N步可达的邻居,分为基础版和高级版:
<ul>
<li>基础版使用GET方法,根据起始顶点,查找恰好N步可达的邻居</li>
<li>高级版使用POST方法,根据起始顶点,查找恰好N步可达的邻居,与基础版的不同在于:
<ul>
<li>支持只统计邻居数量</li>
<li>支持边属性过滤</li>
<li>支持返回到达邻居的最短路径</li>
</ul>
</li>
</ul>
</li>
<li>K-neighbor API,根据起始顶点,查找N步以内可达的所有邻居,分为基础版和高级版:
<ul>
<li>基础版使用GET方法,根据起始顶点,查找N步以内可达的所有邻居</li>
<li>高级版使用POST方法,根据起始顶点,查找N步以内可达的所有邻居,与基础版的不同在于:
<ul>
<li>支持只统计邻居数量</li>
<li>支持边属性过滤</li>
<li>支持返回到达邻居的最短路径</li>
</ul>
</li>
</ul>
</li>
<li>Same Neighbors, 查询两个顶点的共同邻居</li>
<li>Jaccard Similarity API,计算jaccard相似度,包括两种:
<ul>
<li>一种是使用GET方法,计算两个顶点的邻居的相似度(交并比)</li>
<li>一种是使用POST方法,在全图中查找与起点的jaccard similarity最高的N个点</li>
</ul>
</li>
<li>Shortest Path API,查找两个顶点之间的最短路径</li>
<li>All Shortest Paths,查找两个顶点间的全部最短路径</li>
<li>Weighted Shortest Path,查找起点到目标点的带权最短路径</li>
<li>Single Source Shortest Path,查找一个点到其他各个点的加权最短路径</li>
<li>Multi Node Shortest Path,查找指定顶点集之间两两最短路径</li>
<li>Paths API,查找两个顶点间的全部路径,分为基础版和高级版:
<ul>
<li>基础版使用GET方法,根据起点和终点,查找两个顶点间的全部路径</li>
<li>高级版使用POST方法,根据一组起点和一组终点,查找两个集合间符合条件的全部路径</li>
</ul>
</li>
<li>Customized Paths API,从一批顶点出发,按(一种)模式遍历经过的全部路径</li>
<li>Template Path API,指定起点和终点以及起点和终点间路径信息,查找符合的路径</li>
<li>Crosspoints API,查找两个顶点的交点(共同祖先或者共同子孙)</li>
<li>Customized Crosspoints API,从一批顶点出发,按多种模式遍历,最后一步到达的顶点的交点</li>
<li>Rings API,从起始顶点出发,可到达的环路路径</li>
<li>Rays API,从起始顶点出发,可到达边界的路径(即无环路径)</li>
<li>Fusiform Similarity API,查找一个顶点的梭形相似点</li>
<li>Vertices API
<ul>
<li>按ID批量查询顶点;</li>
<li>获取顶点的分区;</li>
<li>按分区查询顶点;</li>
</ul>
</li>
<li>Edges API
<ul>
<li>按ID批量查询边;</li>
<li>获取边的分区;</li>
<li>按分区查询边;</li>
</ul>
</li>
</ul>
<h3 id="32-traverser-api详解">3.2. traverser API详解</h3>
<p>使用方法中的例子,都是基于TinkerPop官网给出的图:</p>
<p><img src="http://tinkerpop.apache.org/docs/3.4.0/images/tinkerpop-modern.png" alt="tinkerpop示例图"></p>
<p>数据导入程序如下:</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">public</span> <span style="color:#204a87;font-weight:bold">class</span> <span style="color:#000">Loader</span> <span style="color:#ce5c00;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">public</span> <span style="color:#204a87;font-weight:bold">static</span> <span style="color:#204a87;font-weight:bold">void</span> <span style="color:#000">main</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">String</span><span style="color:#ce5c00;font-weight:bold">[]</span> <span style="color:#000">args</span><span style="color:#ce5c00;font-weight:bold">)</span> <span style="color:#ce5c00;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">HugeClient</span> <span style="color:#000">client</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#204a87;font-weight:bold">new</span> <span style="color:#000">HugeClient</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;http://127.0.0.1:8080&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">SchemaManager</span> <span style="color:#000">schema</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">client</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">schema</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asInt</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asDouble</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asInt</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">nullableKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">nullableKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByCity&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">secondary</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAgeAndCity&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">secondary</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;softwareByPrice&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">range</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">multiTimes</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">sortKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">nullableKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">nullableKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;createdByDate&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">onE</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">secondary</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;createdByWeight&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">onE</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">range</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knowsByWeight&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">onE</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">range</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">GraphManager</span> <span style="color:#000">graph</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">client</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">graph</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">marko</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">29</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">vadas</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;vadas&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">27</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Hongkong&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">lop</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">328</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">josh</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">32</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">ripple</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;ripple&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">199</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">peter</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;peter&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">35</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Shanghai&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">vadas</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20160110&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">0</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">5</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20130220&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">1</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">0</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20171210&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">0</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">4</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20091111&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">0</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">4</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">ripple</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20171210&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">1</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">0</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">peter</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20170324&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">0</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">2</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">}</span>
</span></span></code></pre></div><p>顶点ID为:</p>
<pre tabindex="0"><code>&#34;2:ripple&#34;,
&#34;1:vadas&#34;,
&#34;1:peter&#34;,
&#34;1:josh&#34;,
&#34;1:marko&#34;,
&#34;2:lop&#34;
</code></pre><p>边ID为:</p>
<pre tabindex="0"><code>&#34;S1:peter&gt;2&gt;&gt;S2:lop&#34;,
&#34;S1:josh&gt;2&gt;&gt;S2:lop&#34;,
&#34;S1:josh&gt;2&gt;&gt;S2:ripple&#34;,
&#34;S1:marko&gt;1&gt;20130220&gt;S1:josh&#34;,
&#34;S1:marko&gt;1&gt;20160110&gt;S1:vadas&#34;,
&#34;S1:marko&gt;2&gt;&gt;S2:lop&#34;
</code></pre><h4 id="321-k-out-apiget基础版">3.2.1 K-out API(GET,基础版)</h4>
<h5 id="3211-功能介绍">3.2.1.1 功能介绍</h5>
<p>根据起始顶点、方向、边的类型(可选)和深度depth,查找从起始顶点出发恰好depth步可达的顶点</p>
<h6 id="params">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>direction:起始顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>max_depth:步数,必填项</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>nearest:nearest为true时,代表起始顶点到达结果顶点的最短路径长度为depth,不存在更短的路径;nearest为false时,代表起始顶点到结果顶点有一条长度为depth的路径(未必最短且可以有环),选填项,默认为true</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的顶点的最大数目,选填项,默认为10000000</li>
</ul>
<h5 id="3212-使用方法">3.2.1.2 使用方法</h5>
<h6 id="method--url">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/kout?source=&#34;1:marko&#34;&amp;max_depth=2
</code></pre><h6 id="response-status">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:peter&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3213-适用场景">3.2.1.3 适用场景</h5>
<p>查找恰好N步关系可达的顶点。两个例子:</p>
<ul>
<li>家族关系中,查找一个人的所有孙子,person A通过连续的两条“儿子”边到达的顶点集合。</li>
<li>社交关系中发现潜在好友,例如:与目标用户相隔两层朋友关系的用户,可以通过连续两条“朋友”边到达的顶点。</li>
</ul>
<h4 id="322-k-out-apipost高级版">3.2.2 K-out API(POST,高级版)</h4>
<h5 id="3221-功能介绍">3.2.2.1 功能介绍</h5>
<p>根据起始顶点、步骤(包括方向、边类型和过滤属性)和深度depth,查找从起始顶点出发恰好depth步可达的顶点。</p>
<blockquote>
<p>与K-out基础版的不同在于:</p>
<ul>
<li>支持只统计邻居数量</li>
<li>支持边属性过滤</li>
<li>支持返回到达邻居的最短路径</li>
</ul>
</blockquote>
<h6 id="params-1">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>从起始点出发的Step,必填项,结构如下:
<ul>
<li>direction:表示边的方向(OUT,IN,BOTH),默认是BOTH</li>
<li>labels:边的类型列表</li>
<li>properties:通过属性的值过滤边</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
</ul>
</li>
<li>max_depth:步数,必填项</li>
<li>nearest:nearest为true时,代表起始顶点到达结果顶点的最短路径长度为depth,不存在更短的路径;nearest为false时,代表起始顶点到结果顶点有一条长度为depth的路径(未必最短且可以有环),选填项,默认为true</li>
<li>count_only:Boolean值,true表示只统计结果的数目,不返回具体结果;false表示返回具体的结果,默认为false</li>
<li>with_path:true表示返回起始点到每个邻居的最短路径,false表示不返回起始点到每个邻居的最短路径,选填项,默认为false</li>
<li>with_vertex,选填项,默认为false:
<ul>
<li>true表示返回结果包含完整的顶点信息(路径中的全部顶点)
<ul>
<li>with_path为true时,返回所有路径中的顶点的完整信息</li>
<li>with_path为false时,返回所有邻居的完整信息</li>
</ul>
</li>
<li>false时表示只返回顶点id</li>
</ul>
</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的顶点的最大数目,选填项,默认为10000000</li>
</ul>
<h5 id="3222-使用方法">3.2.2.2 使用方法</h5>
<h6 id="method--url-1">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/{graph}/traversers/kout
</code></pre><h6 id="request-body">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;step&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;BOTH&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;P.gt(0.1)&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;skip_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_depth&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;nearest&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;limit&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_path&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-1">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-1">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;size&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;kout&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">32</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">27</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Hongkong&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3223-适用场景">3.2.2.3 适用场景</h5>
<p>参见3.2.1.3</p>
<h4 id="323-k-neighborget基础版">3.2.3 K-neighbor(GET,基础版)</h4>
<h5 id="3231-功能介绍">3.2.3.1 功能介绍</h5>
<p>根据起始顶点、方向、边的类型(可选)和深度depth,查找包括起始顶点在内、depth步之内可达的所有顶点</p>
<blockquote>
<p>相当于:起始顶点、K-out(1)、K-out(2)、&hellip; 、K-out(max_depth)的并集</p>
</blockquote>
<h6 id="params-2">Params</h6>
<ul>
<li>source: 起始顶点id,必填项</li>
<li>direction:起始顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>max_depth:步数,必填项</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>limit:返回的顶点的最大数目,也即遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
</ul>
<h5 id="3232-使用方法">3.2.3.2 使用方法</h5>
<h6 id="method--url-2">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/kneighbor?source=“1:marko”&amp;max_depth=2
</code></pre><h6 id="response-status-2">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-2">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3233-适用场景">3.2.3.3 适用场景</h5>
<p>查找N步以内可达的所有顶点,例如:</p>
<ul>
<li>家族关系中,查找一个人五服以内所有子孙,person A通过连续的5条“亲子”边到达的顶点集合。</li>
<li>社交关系中发现好友圈子,例如目标用户通过1条、2条、3条“朋友”边可到达的用户可以组成目标用户的朋友圈子</li>
</ul>
<h4 id="324-k-neighbor-apipost高级版">3.2.4 K-neighbor API(POST,高级版)</h4>
<h5 id="3241-功能介绍">3.2.4.1 功能介绍</h5>
<p>根据起始顶点、步骤(包括方向、边类型和过滤属性)和深度depth,查找从起始顶点出发depth步内可达的所有顶点。</p>
<blockquote>
<p>与K-neighbor基础版的不同在于:</p>
<ul>
<li>支持只统计邻居数量</li>
<li>支持边属性过滤</li>
<li>支持返回到达邻居的最短路径</li>
</ul>
</blockquote>
<h6 id="params-3">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>从起始点出发的Step,必填项,结构如下:
<ul>
<li>direction:表示边的方向(OUT,IN,BOTH),默认是BOTH</li>
<li>labels:边的类型列表</li>
<li>properties:通过属性的值过滤边</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
</ul>
</li>
<li>max_depth:步数,必填项</li>
<li>count_only:Boolean值,true表示只统计结果的数目,不返回具体结果;false表示返回具体的结果,默认为false</li>
<li>with_path:true表示返回起始点到每个邻居的最短路径,false表示不返回起始点到每个邻居的最短路径,选填项,默认为false</li>
<li>with_vertex,选填项,默认为false:
<ul>
<li>true表示返回结果包含完整的顶点信息(路径中的全部顶点)
<ul>
<li>with_path为true时,返回所有路径中的顶点的完整信息</li>
<li>with_path为false时,返回所有邻居的完整信息</li>
</ul>
</li>
<li>false时表示只返回顶点id</li>
</ul>
</li>
<li>limit:返回的顶点的最大数目,选填项,默认为10000000</li>
</ul>
<h5 id="3242-使用方法">3.2.4.2 使用方法</h5>
<h6 id="method--url-3">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/{graph}/traversers/kneighbor
</code></pre><h6 id="request-body-1">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;step&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;BOTH&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;P.gt(0.1)&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;skip_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_depth&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;limit&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_path&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-3">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-3">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;size&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">6</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;kneighbor&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:peter&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">32</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">27</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Hongkong&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">35</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Shanghai&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3243-适用场景">3.2.4.3 适用场景</h5>
<p>参见3.2.3.3</p>
<h4 id="325-same-neighbors">3.2.5 Same Neighbors</h4>
<h5 id="3251-功能介绍">3.2.5.1 功能介绍</h5>
<p>查询两个点的共同邻居</p>
<h6 id="params-4">Params</h6>
<ul>
<li>vertex:一个顶点id,必填项</li>
<li>other:另一个顶点id,必填项</li>
<li>direction:顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>limit:返回的共同邻居的最大数目,选填项,默认为10000000</li>
</ul>
<h5 id="3252-使用方法">3.2.5.2 使用方法</h5>
<h6 id="method--url-4">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/sameneighbors?vertex=“1:marko”&amp;other=&#34;1:josh&#34;
</code></pre><h6 id="response-status-4">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-4">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;same_neighbors&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3253-适用场景">3.2.5.3 适用场景</h5>
<p>查找两个顶点的共同邻居:</p>
<ul>
<li>社交关系中发现两个用户的共同粉丝或者共同关注用户</li>
</ul>
<h4 id="326-jaccard-similarityget">3.2.6 Jaccard Similarity(GET)</h4>
<h5 id="3261-功能介绍">3.2.6.1 功能介绍</h5>
<p>计算两个顶点的jaccard similarity(两个顶点邻居的交集比上两个顶点邻居的并集)</p>
<h6 id="params-5">Params</h6>
<ul>
<li>vertex:一个顶点id,必填项</li>
<li>other:另一个顶点id,必填项</li>
<li>direction:顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
</ul>
<h5 id="3262-使用方法">3.2.6.2 使用方法</h5>
<h6 id="method--url-5">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/jaccardsimilarity?vertex=&#34;1:marko&#34;&amp;other=&#34;1:josh&#34;
</code></pre><h6 id="response-status-5">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-5">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;jaccard_similarity&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.2</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3263-适用场景">3.2.6.3 适用场景</h5>
<p>用于评估两个点的相似性或者紧密度</p>
<h4 id="327-jaccard-similaritypost">3.2.7 Jaccard Similarity(POST)</h4>
<h5 id="3271-功能介绍">3.2.7.1 功能介绍</h5>
<p>计算与指定顶点的jaccard similarity最大的N个点</p>
<blockquote>
<p>jaccard similarity的计算方式为:两个顶点邻居的交集比上两个顶点邻居的并集</p>
</blockquote>
<h6 id="params-6">Params</h6>
<ul>
<li>vertex:一个顶点id,必填项</li>
<li>从起始点出发的Step,必填项,结构如下:
<ul>
<li>direction:表示边的方向(OUT,IN,BOTH),默认是BOTH</li>
<li>labels:边的类型列表</li>
<li>properties:通过属性的值过滤边</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
</ul>
</li>
<li>top:返回一个起点的jaccard similarity中最大的top个,选填项,默认为100</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
</ul>
<h5 id="3272-使用方法">3.2.7.2 使用方法</h5>
<h6 id="method--url-6">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/{graph}/traversers/jaccardsimilarity
</code></pre><h6 id="request-body-2">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;step&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;BOTH&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;skip_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;top&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">3</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-6">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-6">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.3333333333333333</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.3333333333333333</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.2</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3273-适用场景">3.2.7.3 适用场景</h5>
<p>用于在图中找出与指定顶点相似性最高的顶点</p>
<h4 id="328-shortest-path">3.2.8 Shortest Path</h4>
<h5 id="3281-功能介绍">3.2.8.1 功能介绍</h5>
<p>根据起始顶点、目的顶点、方向、边的类型(可选)和最大深度,查找一条最短路径</p>
<h6 id="params-7">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>target:目的顶点id,必填项</li>
<li>direction:起始顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>max_depth:最大步数,必填项</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
</ul>
<h5 id="3282-使用方法">3.2.8.2 使用方法</h5>
<h6 id="method--url-7">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/shortestpath?source=&#34;1:marko&#34;&amp;target=&#34;2:ripple&#34;&amp;max_depth=3
</code></pre><h6 id="response-status-7">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-7">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;path&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3283-适用场景">3.2.8.3 适用场景</h5>
<p>查找两个顶点间的最短路径,例如:</p>
<ul>
<li>社交关系网中,查找两个用户有关系的最短路径,即最近的朋友关系链</li>
<li>设备关联网络中,查找两个设备最短的关联关系</li>
</ul>
<h4 id="329-all-shortest-paths">3.2.9 All Shortest Paths</h4>
<h5 id="3291-功能介绍">3.2.9.1 功能介绍</h5>
<p>根据起始顶点、目的顶点、方向、边的类型(可选)和最大深度,查找两点间所有的最短路径</p>
<h6 id="params-8">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>target:目的顶点id,必填项</li>
<li>direction:起始顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>max_depth:最大步数,必填项</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
</ul>
<h5 id="3292-使用方法">3.2.9.2 使用方法</h5>
<h6 id="method--url-8">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/allshortestpaths?source=&#34;A&#34;&amp;target=&#34;Z&#34;&amp;max_depth=10
</code></pre><h6 id="response-status-8">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-8">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;A&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;B&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;C&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;Z&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;A&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;M&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;N&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;Z&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="3293-适用场景">3.2.9.3 适用场景</h5>
<p>查找两个顶点间的所有最短路径,例如:</p>
<ul>
<li>社交关系网中,查找两个用户有关系的全部最短路径,即最近的朋友关系链</li>
<li>设备关联网络中,查找两个设备全部的最短关联关系</li>
</ul>
<h4 id="3210-weighted-shortest-path">3.2.10 Weighted Shortest Path</h4>
<h5 id="32101-功能介绍">3.2.10.1 功能介绍</h5>
<p>根据起始顶点、目的顶点、方向、边的类型(可选)和最大深度,查找一条带权最短路径</p>
<h6 id="params-9">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>target:目的顶点id,必填项</li>
<li>direction:起始顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>weight:边的权重属性,必填项,必须是数字类型的属性</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>with_vertex:true表示返回结果包含完整的顶点信息(路径中的全部顶点),false时表示只返回顶点id,选填项,默认为false</li>
</ul>
<h5 id="32102-使用方法">3.2.10.2 使用方法</h5>
<h6 id="method--url-9">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/weightedshortestpath?source=&#34;1:marko&#34;&amp;target=&#34;2:ripple&#34;&amp;weight=&#34;weight&#34;&amp;with_vertex=true
</code></pre><h6 id="response-status-9">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-9">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;path&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2.0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">32</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32103-适用场景">3.2.10.3 适用场景</h5>
<p>查找两个顶点间的带权最短路径,例如:</p>
<ul>
<li>交通线路中查找从A城市到B城市花钱最少的交通方式</li>
</ul>
<h4 id="3211-single-source-shortest-path">3.2.11 Single Source Shortest Path</h4>
<h5 id="32111-功能介绍">3.2.11.1 功能介绍</h5>
<p>从一个顶点出发,查找该点到图中其他顶点的最短路径(可选是否带权重)</p>
<h6 id="params-10">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>direction:起始顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>weight:边的权重属性,选填项,必须是数字类型的属性,如果不填或者虽然填了但是边没有该属性,则权重为1.0</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:查询到的目标顶点个数,也是返回的最短路径的条数,选填项,默认为10</li>
<li>with_vertex:true表示返回结果包含完整的顶点信息(路径中的全部顶点),false时表示只返回顶点id,选填项,默认为false</li>
</ul>
<h5 id="32112-使用方法">3.2.11.2 使用方法</h5>
<h6 id="method--url-10">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/singlesourceshortestpath?source=&#34;1:marko&#34;&amp;with_vertex=true
</code></pre><h6 id="response-status-10">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-10">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2.0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1.0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1.0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2.0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:peter&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1.0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">32</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">27</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Hongkong&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">35</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Shanghai&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32113-适用场景">3.2.11.3 适用场景</h5>
<p>查找从一个点出发到其他顶点的带权最短路径,比如:</p>
<ul>
<li>查找从北京出发到全国其他所有城市的耗时最短的乘车方案</li>
</ul>
<h4 id="3212-multi-node-shortest-path">3.2.12 Multi Node Shortest Path</h4>
<h5 id="32121-功能介绍">3.2.12.1 功能介绍</h5>
<p>查找指定顶点集两两之间的最短路径</p>
<h6 id="params-11">Params</h6>
<ul>
<li>vertices:定义起始顶点,必填项,指定方式包括:
<ul>
<li>ids:通过顶点id列表提供起始顶点</li>
<li>label和properties:如果没有指定ids,则使用label和properties的联合条件查询起始顶点
<ul>
<li>label:顶点的类型</li>
<li>properties:通过属性的值查询起始顶点</li>
</ul>
<blockquote>
<p>注意:properties中的属性值可以是列表,表示只要key对应的value在列表中就可以</p>
</blockquote>
</li>
</ul>
</li>
<li>step:表示从起始顶点到终止顶点走过的路径,必填项,Step的结构如下:
<ul>
<li>direction:表示边的方向(OUT,IN,BOTH),默认是BOTH</li>
<li>labels:边的类型列表</li>
<li>properties:通过属性的值过滤边</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
</ul>
</li>
<li>max_depth:步数,必填项</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>with_vertex:true表示返回结果包含完整的顶点信息(路径中的全部顶点),false时表示只返回顶点id,选填项,默认为false</li>
</ul>
<h5 id="32122-使用方法">3.2.12.2 使用方法</h5>
<h6 id="method--url-11">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/{graph}/traversers/multinodeshortestpath
</code></pre><h6 id="request-body-3">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ids&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;382:josh&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;382:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;382:peter&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;383:ripple&#34;</span><span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;step&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;BOTH&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_depth&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;capacity&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-11">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-11">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;382:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;383:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;382:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Shanghai&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;383:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;382:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;382:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">32</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;382:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">27</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Hongkong&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;383:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32123-适用场景">3.2.12.3 适用场景</h5>
<p>查找多个点之间的最短路径,比如:</p>
<ul>
<li>查找多个公司和法人之间的最短路径</li>
</ul>
<h4 id="3213-paths-get基础版">3.2.13 Paths (GET,基础版)</h4>
<h5 id="32131-功能介绍">3.2.13.1 功能介绍</h5>
<p>根据起始顶点、目的顶点、方向、边的类型(可选)和最大深度等条件查找所有路径</p>
<h6 id="params-12">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>target:目的顶点id,必填项</li>
<li>direction:起始顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_depth:步数,必填项</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的路径的最大数目,选填项,默认为10</li>
</ul>
<h5 id="32132-使用方法">3.2.13.2 使用方法</h5>
<h6 id="method--url-12">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/paths?source=&#34;1:marko&#34;&amp;target=&#34;1:josh&#34;&amp;max_depth=5
</code></pre><h6 id="response-status-12">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-12">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32133-适用场景">3.2.13.3 适用场景</h5>
<p>查找两个顶点间的所有路径,例如:</p>
<ul>
<li>社交网络中,查找两个用户所有可能的关系路径</li>
<li>设备关联网络中,查找两个设备之间所有的关联路径</li>
</ul>
<h4 id="3214-paths-post高级版">3.2.14 Paths (POST,高级版)</h4>
<h5 id="32141-功能介绍">3.2.14.1 功能介绍</h5>
<p>根据起始顶点、目的顶点、步骤(step)和最大深度等条件查找所有路径</p>
<h6 id="params-13">Params</h6>
<ul>
<li>sources:定义起始顶点,必填项,指定方式包括:
<ul>
<li>ids:通过顶点id列表提供起始顶点</li>
<li>label和properties:如果没有指定ids,则使用label和properties的联合条件查询起始顶点
<ul>
<li>label:顶点的类型</li>
<li>properties:通过属性的值查询起始顶点</li>
</ul>
<blockquote>
<p>注意:properties中的属性值可以是列表,表示只要key对应的value在列表中就可以</p>
</blockquote>
</li>
</ul>
</li>
<li>targets:定义终止顶点,必填项,指定方式包括:
<ul>
<li>ids:通过顶点id列表提供终止顶点</li>
<li>label和properties:如果没有指定ids,则使用label和properties的联合条件查询终止顶点
<ul>
<li>label:顶点的类型</li>
<li>properties:通过属性的值查询终止顶点</li>
</ul>
<blockquote>
<p>注意:properties中的属性值可以是列表,表示只要key对应的value在列表中就可以</p>
</blockquote>
</li>
</ul>
</li>
<li>step:表示从起始顶点到终止顶点走过的路径,必填项,Step的结构如下:
<ul>
<li>direction:表示边的方向(OUT,IN,BOTH),默认是BOTH</li>
<li>labels:边的类型列表</li>
<li>properties:通过属性的值过滤边</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
</ul>
</li>
<li>max_depth:步数,必填项</li>
<li>nearest:nearest为true时,代表起始顶点到达结果顶点的最短路径长度为depth,不存在更短的路径;nearest为false时,代表起始顶点到结果顶点有一条长度为depth的路径(未必最短且可以有环),选填项,默认为true</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的路径的最大数目,选填项,默认为10</li>
<li>with_vertex:true表示返回结果包含完整的顶点信息(路径中的全部顶点),false时表示只返回顶点id,选填项,默认为false</li>
</ul>
<h5 id="32142-使用方法">3.2.14.2 使用方法</h5>
<h6 id="method--url-13">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/{graph}/traversers/paths
</code></pre><h6 id="request-body-4">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">&#34;sources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ids&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">&#34;targets&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ids&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">&#34;step&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;BOTH&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;P.gt(0.01)&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">&#34;max_depth&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">&#34;capacity&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">&#34;limit&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">&#34;with_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">false</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-13">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-13">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:peter&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:peter&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32143-适用场景">3.2.14.3 适用场景</h5>
<p>查找两个顶点间的所有路径,例如:</p>
<ul>
<li>社交网络中,查找两个用户所有可能的关系路径</li>
<li>设备关联网络中,查找两个设备之间所有的关联路径</li>
</ul>
<h4 id="3215-customized-paths">3.2.15 Customized Paths</h4>
<h5 id="32151-功能介绍">3.2.15.1 功能介绍</h5>
<p>根据一批起始顶点、边规则(包括方向、边的类型和属性过滤)和最大深度等条件查找符合条件的所有的路径</p>
<h6 id="params-14">Params</h6>
<ul>
<li>sources:定义起始顶点,必填项,指定方式包括:
<ul>
<li>ids:通过顶点id列表提供起始顶点</li>
<li>label和properties:如果没有指定ids,则使用label和properties的联合条件查询起始顶点
<ul>
<li>label:顶点的类型</li>
<li>properties:通过属性的值查询起始顶点</li>
</ul>
<blockquote>
<p>注意:properties中的属性值可以是列表,表示只要key对应的value在列表中就可以</p>
</blockquote>
</li>
</ul>
</li>
<li>steps:表示从起始顶点走过的路径规则,是一组Step的列表。必填项。每个Step的结构如下:
<ul>
<li>direction:表示边的方向(OUT,IN,BOTH),默认是BOTH</li>
<li>labels:边的类型列表</li>
<li>properties:通过属性的值过滤边</li>
<li>weight_by:根据指定的属性计算边的权重,sort_by不为NONE时有效,与default_weight互斥</li>
<li>default_weight:当边没有属性作为权重计算值时,采取的默认权重,sort_by不为NONE时有效,与weight_by互斥</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>sample:当需要对某个step的符合条件的边进行采样时设置,-1表示不采样,默认为采样100</li>
</ul>
</li>
<li>sort_by:根据路径的权重排序,选填项,默认为NONE:
<ul>
<li>NONE表示不排序,默认值</li>
<li>INCR表示按照路径权重的升序排序</li>
<li>DECR表示按照路径权重的降序排序</li>
</ul>
</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的路径的最大数目,选填项,默认为10</li>
<li>with_vertex:true表示返回结果包含完整的顶点信息(路径中的全部顶点),false时表示只返回顶点id,选填项,默认为false</li>
</ul>
<h5 id="32152-使用方法">3.2.15.2 使用方法</h5>
<h6 id="method--url-14">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/{graph}/traversers/customizedpaths
</code></pre><h6 id="request-body-5">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sources&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ids&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;steps&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;OUT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;knows&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight_by&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;OUT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;created&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;default_weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">8</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sample&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sort_by&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;INCR&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;capacity&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;limit&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-14">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-14">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weights&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#0000cf;font-weight:bold">8</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">32</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;java&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32153-适用场景">3.2.15.3 适用场景</h5>
<p>适合查找各种复杂的路径集合,例如:</p>
<ul>
<li>社交网络中,查找看过张艺谋所导演的电影的用户关注的大V的路径(张艺谋&mdash;&gt;电影&mdash;-&gt;用户&mdash;&gt;大V)</li>
<li>风控网络中,查找多个高风险用户的直系亲属的朋友的路径(高风险用户&mdash;&gt;直系亲属&mdash;&gt;朋友)</li>
</ul>
<h4 id="3216-template-paths">3.2.16 Template Paths</h4>
<h5 id="32161-功能介绍">3.2.16.1 功能介绍</h5>
<p>根据一批起始顶点、边规则(包括方向、边的类型和属性过滤)和最大深度等条件查找符合条件的所有的路径</p>
<h6 id="params-15">Params</h6>
<ul>
<li>sources:定义起始顶点,必填项,指定方式包括:
<ul>
<li>ids:通过顶点id列表提供起始顶点</li>
<li>label和properties:如果没有指定ids,则使用label和properties的联合条件查询起始顶点
<ul>
<li>label:顶点的类型</li>
<li>properties:通过属性的值查询起始顶点</li>
</ul>
<blockquote>
<p>注意:properties中的属性值可以是列表,表示只要key对应的value在列表中就可以</p>
</blockquote>
</li>
</ul>
</li>
<li>targets:定义终止顶点,必填项,指定方式包括:
<ul>
<li>ids:通过顶点id列表提供终止顶点</li>
<li>label和properties:如果没有指定ids,则使用label和properties的联合条件查询终止顶点
<ul>
<li>label:顶点的类型</li>
<li>properties:通过属性的值查询终止顶点</li>
</ul>
<blockquote>
<p>注意:properties中的属性值可以是列表,表示只要key对应的value在列表中就可以</p>
</blockquote>
</li>
</ul>
</li>
<li>steps:表示从起始顶点走过的路径规则,是一组Step的列表。必填项。每个Step的结构如下:
<ul>
<li>direction:表示边的方向(OUT,IN,BOTH),默认是BOTH</li>
<li>labels:边的类型列表</li>
<li>properties:通过属性的值过滤边</li>
<li>max_times:当前step可以重复的次数,当为N时,表示从起始顶点可以经过当前step 1-N 次</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
</ul>
</li>
<li>with_ring:Boolean值,true表示包含环路;false表示不包含环路,默认为false</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的路径的最大数目,选填项,默认为10</li>
<li>with_vertex:true表示返回结果包含完整的顶点信息(路径中的全部顶点),false时表示只返回顶点id,选填项,默认为false</li>
</ul>
<h5 id="32162-使用方法">3.2.16.2 使用方法</h5>
<h6 id="method--url-15">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/{graph}/traversers/templatepaths
</code></pre><h6 id="request-body-6">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ids&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;targets&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ids&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;steps&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;IN&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;skip_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OUT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;skip_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;IN&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;skip_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OUT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;skip_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">100000</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;capacity&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;limit&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-15">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-15">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">32</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">27</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Hongkong&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32163-适用场景">3.2.16.3 适用场景</h5>
<p>适合查找各种复杂的模板路径,比如personA -(朋友)-&gt; personB -(同学)-&gt; personC,其中&quot;朋友&quot;和&quot;同学&quot;边可以分别是最多3层和4层的情况</p>
<h4 id="3217-crosspoints">3.2.17 Crosspoints</h4>
<h5 id="32171-功能介绍">3.2.17.1 功能介绍</h5>
<p>根据起始顶点、目的顶点、方向、边的类型(可选)和最大深度等条件查找相交点</p>
<h6 id="params-16">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>target:目的顶点id,必填项</li>
<li>direction:起始顶点到目的顶点的方向, 目的点到起始点是反方向,BOTH时不考虑方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_depth:步数,必填项</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的交点的最大数目,选填项,默认为10</li>
</ul>
<h5 id="32172-使用方法">3.2.17.2 使用方法</h5>
<h6 id="method--url-16">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/crosspoints?source=&#34;2:lop&#34;&amp;target=&#34;2:ripple&#34;&amp;max_depth=5&amp;direction=IN
</code></pre><h6 id="response-status-16">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-16">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;crosspoints&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;crosspoint&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32173-适用场景">3.2.17.3 适用场景</h5>
<p>查找两个顶点的交点及其路径,例如:</p>
<ul>
<li>社交网络中,查找两个用户共同关注的话题或者大V</li>
<li>家族关系中,查找共同的祖先</li>
</ul>
<h4 id="3218-customized-crosspoints">3.2.18 Customized Crosspoints</h4>
<h5 id="32181-功能介绍">3.2.18.1 功能介绍</h5>
<p>根据一批起始顶点、多种边规则(包括方向、边的类型和属性过滤)和最大深度等条件查找符合条件的所有的路径终点的交集</p>
<h6 id="params-17">Params</h6>
<ul>
<li>
<p>sources:定义起始顶点,必填项,指定方式包括:</p>
<ul>
<li>ids:通过顶点id列表提供起始顶点</li>
<li>label和properties:如果没有指定ids,则使用label和properties的联合条件查询起始顶点
<ul>
<li>label:顶点的类型</li>
<li>properties:通过属性的值查询起始顶点</li>
</ul>
<blockquote>
<p>注意:properties中的属性值可以是列表,表示只要key对应的value在列表中就可以</p>
</blockquote>
</li>
</ul>
</li>
<li>
<p>path_patterns:表示从起始顶点走过的路径规则,是一组规则的列表。必填项。每个规则是一个PathPattern</p>
<ul>
<li>每个PathPattern是一组Step列表,每个Step结构如下:
<ul>
<li>direction:表示边的方向(OUT,IN,BOTH),默认是BOTH</li>
<li>labels:边的类型列表</li>
<li>properties:通过属性的值过滤边</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>skip_degree:用于设置查询过程中舍弃超级顶点的最小边数,即当某个顶点的邻接边数目大于 skip_degree 时,完全舍弃该顶点。选填项,如果开启时,需满足 <code>skip_degree &gt;= max_degree</code> 约束,默认为0 (不启用),表示不跳过任何点 (注意: 开启此配置后,遍历时会尝试访问一个顶点的 skip_degree 条边,而不仅仅是 max_degree 条边,这样有额外的遍历开销,对查询性能影响可能有较大影响,请确认理解后再开启)</li>
</ul>
</li>
</ul>
</li>
<li>
<p>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</p>
</li>
<li>
<p>limit:返回的路径的最大数目,选填项,默认为10</p>
</li>
<li>
<p>with_path:true表示返回交点所在的路径,false表示不返回交点所在的路径,选填项,默认为false</p>
</li>
<li>
<p>with_vertex,选填项,默认为false:</p>
<ul>
<li>true表示返回结果包含完整的顶点信息(路径中的全部顶点)
<ul>
<li>with_path为true时,返回所有路径中的顶点的完整信息</li>
<li>with_path为false时,返回所有交点的完整信息</li>
</ul>
</li>
<li>false时表示只返回顶点id</li>
</ul>
</li>
</ul>
<h5 id="32182-使用方法">3.2.18.2 使用方法</h5>
<h6 id="method--url-17">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/{graph}/traversers/customizedcrosspoints
</code></pre><h6 id="request-body-7">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sources&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ids&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;path_patterns&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;steps&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;IN&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;created&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_path&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;capacity&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;limit&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-17">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-17">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;crosspoints&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;paths&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&gt;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&gt;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;java&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">32</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;java&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32183-适用场景">3.2.18.3 适用场景</h5>
<p>查询一组顶点通过多种路径在终点有交集的情况。例如:</p>
<ul>
<li>在商品图谱中,多款手机、学习机、游戏机通过不同的低级别的类目路径,最终都属于一级类目的电子设备</li>
</ul>
<h4 id="3219-rings">3.2.19 Rings</h4>
<h5 id="32191-功能介绍">3.2.19.1 功能介绍</h5>
<p>根据起始顶点、方向、边的类型(可选)和最大深度等条件查找可达的环路</p>
<p>例如:1 -&gt; 25 -&gt; 775 -&gt; 14690 -&gt; 25, 其中环路为 25 -&gt; 775 -&gt; 14690 -&gt; 25</p>
<h6 id="params-18">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>direction:起始顶点发出的边的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_depth:步数,必填项</li>
<li>source_in_ring:环路是否包含起点,选填项,默认为true</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的可达环路的最大数目,选填项,默认为10</li>
</ul>
<h5 id="32192-使用方法">3.2.19.2 使用方法</h5>
<h6 id="method--url-18">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/rings?source=&#34;1:marko&#34;&amp;max_depth=2
</code></pre><h6 id="response-status-18">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-18">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;rings&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32193-适用场景">3.2.19.3 适用场景</h5>
<p>查询起始顶点可达的环路,例如:</p>
<ul>
<li>风控项目中,查询一个用户可达的循环担保的人或者设备</li>
<li>设备关联网络中,发现一个设备周围的循环引用的设备</li>
</ul>
<h4 id="3220-rays">3.2.20 Rays</h4>
<h5 id="32201-功能介绍">3.2.20.1 功能介绍</h5>
<p>根据起始顶点、方向、边的类型(可选)和最大深度等条件查找发散到边界顶点的路径</p>
<p>例如:1 -&gt; 25 -&gt; 775 -&gt; 14690 -&gt; 2289 -&gt; 18379, 其中 18379 为边界顶点,即没有从 18379 发出的边</p>
<h6 id="params-19">Params</h6>
<ul>
<li>source:起始顶点id,必填项</li>
<li>direction:起始顶点发出的边的方向(OUT,IN,BOTH),选填项,默认是BOTH</li>
<li>label:边的类型,选填项,默认代表所有edge label</li>
<li>max_depth:步数,必填项</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</li>
<li>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
<li>limit:返回的非环路的最大数目,选填项,默认为10</li>
</ul>
<h5 id="32202-使用方法">3.2.20.2 使用方法</h5>
<h6 id="method--url-19">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/rays?source=&#34;1:marko&#34;&amp;max_depth=2&amp;direction=OUT
</code></pre><h6 id="response-status-19">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-19">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;rays&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;objects&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;2:lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32203-适用场景">3.2.20.3 适用场景</h5>
<p>查找起始顶点到某种关系的边界顶点的路径,例如:</p>
<ul>
<li>家族关系中,查找一个人到所有还没有孩子的子孙的路径</li>
<li>设备关联网络中,找到某个设备到终端设备的路径</li>
</ul>
<h4 id="3221-fusiform-similarity">3.2.21 Fusiform Similarity</h4>
<h5 id="32211-功能介绍">3.2.21.1 功能介绍</h5>
<p>按照条件查询一批顶点对应的&quot;梭形相似点&quot;。当两个顶点跟很多共同的顶点之间有某种关系的时候,我们认为这两个点为&quot;梭形相似点&quot;。举个例子说明&quot;梭形相似点&quot;:&ldquo;读者A&quot;读了100本书,可以定义读过这100本书中的80本以上的读者,是&quot;读者A&quot;的&quot;梭形相似点&rdquo;</p>
<h6 id="params-20">Params</h6>
<ul>
<li>
<p>sources:定义起始顶点,必填项,指定方式包括:</p>
<ul>
<li>ids:通过顶点id列表提供起始顶点</li>
<li>label和properties:如果没有指定ids,则使用label和properties的联合条件查询起始顶点
<ul>
<li>label:顶点的类型</li>
<li>properties:通过属性的值查询起始顶点</li>
</ul>
<blockquote>
<p>注意:properties中的属性值可以是列表,表示只要key对应的value在列表中就可以</p>
</blockquote>
</li>
</ul>
</li>
<li>
<p>label:边的类型,选填项,默认代表所有edge label</p>
</li>
<li>
<p>direction:起始顶点向外发散的方向(OUT,IN,BOTH),选填项,默认是BOTH</p>
</li>
<li>
<p>min_neighbors:最少邻居数目,邻居数目少于这个阈值时,认为起点不具备&quot;梭形相似点&quot;。比如想要找一个&quot;读者A&quot;读过的书的&quot;梭形相似点&quot;,那么<code>min_neighbors</code>为100时,表示&quot;读者A&quot;至少要读过100本书才可以有&quot;梭形相似点&quot;,必填项</p>
</li>
<li>
<p>alpha:相似度,代表:起点与&quot;梭形相似点&quot;的共同邻居数目占起点的全部邻居数目的比例,必填项</p>
</li>
<li>
<p>min_similars:&ldquo;梭形相似点&quot;的最少个数,只有当起点的&quot;梭形相似点&quot;数目大于或等于该值时,才会返回起点及其&quot;梭形相似点&rdquo;,选填项,默认值为1</p>
</li>
<li>
<p>top:返回一个起点的&quot;梭形相似点&quot;中相似度最高的top个,必填项,0表示全部</p>
</li>
<li>
<p>group_property:与<code>min_groups</code>一起使用,当起点跟其所有的&quot;梭形相似点&quot;某个属性的值有至少<code>min_groups</code>个不同值时,才会返回该起点及其&quot;梭形相似点&quot;。比如为&quot;读者A&quot;推荐&quot;异地&quot;书友时,需要设置<code>group_property</code>为读者的&quot;城市&quot;属性,<code>min_group</code>至少为2,选填项,不填代表不需要根据属性过滤</p>
</li>
<li>
<p>min_groups:与<code>group_property</code>一起使用,只有<code>group_property</code>设置时才有意义</p>
</li>
<li>
<p>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,选填项,默认为10000</p>
</li>
<li>
<p>capacity:遍历过程中最大的访问的顶点数目,选填项,默认为10000000</p>
</li>
<li>
<p>limit:返回的结果数目上限(一个起点及其&quot;梭形相似点&quot;算一个结果),选填项,默认为10</p>
</li>
<li>
<p>with_intermediary:是否返回起点及其&quot;梭形相似点&quot;共同关联的中间点,默认为false</p>
</li>
<li>
<p>with_vertex,选填项,默认为false:</p>
<ul>
<li>true表示返回结果包含完整的顶点信息</li>
<li>false时表示只返回顶点id</li>
</ul>
</li>
</ul>
<h5 id="32212-使用方法">3.2.21.2 使用方法</h5>
<h6 id="method--url-20">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/traversers/fusiformsimilarity
</code></pre><h6 id="request-body-8">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sources&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ids&#34;</span><span style="color:#000;font-weight:bold">:[],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;p1&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;read&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;OUT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;min_neighbors&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">8</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;alpha&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.75</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;min_similars&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;top&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_property&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;min_group&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10000</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;capacity&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">-1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;limit&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">-1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_intermediary&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">false</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_vertex&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-20">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-20">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;similars&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;3:p1&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3:p2&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;score&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.8888888888888888</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;intermediaries&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3:p3&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;score&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.7777777777777778</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;intermediaries&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3:p1&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;p1&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3:p2&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;p2&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Shanghai&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3:p3&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;p3&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32213-适用场景">3.2.21.3 适用场景</h5>
<p>查询一组顶点相似度很高的顶点。例如:</p>
<ul>
<li>跟一个读者有类似书单的读者</li>
<li>跟一个玩家玩类似游戏的玩家</li>
</ul>
<h4 id="3222-vertices">3.2.22 Vertices</h4>
<h5 id="32221-根据顶点的id列表批量查询顶点">3.2.22.1 根据顶点的id列表,批量查询顶点</h5>
<h6 id="params-21">Params</h6>
<ul>
<li>ids:要查询的顶点id列表</li>
</ul>
<h6 id="method--url-21">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/vertices?ids=&#34;1:marko&#34;&amp;ids=&#34;2:lop&#34;
</code></pre><h6 id="response-status-21">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-21">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;java&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32222-获取顶点-shard-信息">3.2.22.2 获取顶点 Shard 信息</h5>
<p>通过指定的分片大小split_size,获取顶点分片信息(可以与 3.2.21.3 中的 Scan 配合使用来获取顶点)。</p>
<h6 id="params-22">Params</h6>
<ul>
<li>split_size:分片大小,必填项</li>
</ul>
<h6 id="method--url-22">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/vertices/shards?split_size=67108864
</code></pre><h6 id="response-status-22">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-22">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;shards&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;0&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2165893&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2165893&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;4331786&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;4331786&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;6497679&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;6497679&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;8663572&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#a40000">......</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32223-根据shard信息批量获取顶点">3.2.22.3 根据Shard信息批量获取顶点</h5>
<p>通过指定的分片信息批量查询顶点(Shard信息的获取参见 3.2.21.2 Shard)。</p>
<h6 id="params-23">Params</h6>
<ul>
<li>start:分片起始位置,必填项</li>
<li>end:分片结束位置,必填项</li>
<li>page:分页位置,选填项,默认为null,不分页;当page为“”时表示分页的第一页,从start指示的位置开始</li>
<li>page_limit:分页获取顶点时,一页中顶点数目的上限,选填项,默认为100000</li>
</ul>
<h6 id="method--url-23">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/vertices/scan?start=0&amp;end=4294967295
</code></pre><h6 id="response-status-23">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-23">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&gt;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">199</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;ripple&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&gt;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;java&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:vadas&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Hongkong&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:vadas&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vadas&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:vadas&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">27</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:peter&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Shanghai&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:peter&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;peter&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:peter&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">35</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;josh&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">32</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;price&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;price&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">328</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;lop&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;lang&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&gt;lang&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;java&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32224-适用场景">3.2.22.4 适用场景</h5>
<ul>
<li>按id列表查询顶点,可用于批量查询顶点,比如在path查询到多条路径之后,可以进一步查询某条路径的所有顶点属性。</li>
<li>获取分片和按分片查询顶点,可以用来遍历全部顶点</li>
</ul>
<h4 id="3223-edges">3.2.23 Edges</h4>
<h5 id="32231-根据边的id列表批量查询边">3.2.23.1 根据边的id列表,批量查询边</h5>
<h6 id="params-24">Params</h6>
<ul>
<li>ids:要查询的边id列表</li>
</ul>
<h6 id="method--url-24">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/edges?ids=&#34;S1:josh&gt;1&gt;&gt;S2:lop&#34;&amp;ids=&#34;S1:josh&gt;1&gt;&gt;S2:ripple&#34;
</code></pre><h6 id="response-status-24">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-24">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:josh&gt;1&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20091111&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.4</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:josh&gt;1&gt;&gt;S2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20171210&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32232-获取边-shard-信息">3.2.23.2 获取边 Shard 信息</h5>
<p>通过指定的分片大小split_size,获取边分片信息(可以与 3.2.22.3 中的 Scan 配合使用来获取边)。</p>
<h6 id="params-25">Params</h6>
<ul>
<li>split_size:分片大小,必填项</li>
</ul>
<h6 id="method--url-25">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/edges/shards?split_size=4294967295
</code></pre><h6 id="response-status-25">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-25">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;shards&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;0&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1073741823&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1073741823&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2147483646&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2147483646&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3221225469&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3221225469&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;4294967292&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;start&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;4294967292&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;end&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;4294967295&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;length&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32233-根据-shard-信息批量获取边">3.2.23.3 根据 Shard 信息批量获取边</h5>
<p>通过指定的分片信息批量查询边(Shard信息的获取参见 3.2.22.2)。</p>
<h6 id="params-26">Params</h6>
<ul>
<li>start:分片起始位置,必填项</li>
<li>end:分片结束位置,必填项</li>
<li>page:分页位置,选填项,默认为null,不分页;当page为“”时表示分页的第一页,从start指示的位置开始</li>
<li>page_limit:分页获取边时,一页中边数目的上限,选填项,默认为100000</li>
</ul>
<h6 id="method--url-26">Method &amp; Url</h6>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/edges/scan?start=0&amp;end=3221225469
</code></pre><h6 id="response-status-26">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-26">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:peter&gt;2&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:peter&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;20170324&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:josh&gt;2&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;20091111&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:josh&gt;2&gt;&gt;S2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:ripple&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;20171210&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:marko&gt;1&gt;20130220&gt;S1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:josh&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;20130220&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:marko&gt;1&gt;20160110&gt;S1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:vadas&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.5</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;20160110&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;S1:marko&gt;2&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;20171210&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="32234-适用场景">3.2.23.4 适用场景</h5>
<ul>
<li>按id列表查询边,可用于批量查询边</li>
<li>获取分片和按分片查询边,可以用来遍历全部边</li>
</ul>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-ced5167413a6606a537e40b18f6fec3e">1.10 - Rank API</h1>
<h3 id="41-rank-api-概述">4.1 rank API 概述</h3>
<p>HugeGraphServer 除了上一节提到的遍历(traverser)方法,还提供了一类专门做推荐的方法,我们称为<code>rank API</code>
可在图中为一个点推荐与其关系密切的其它点。</p>
<h3 id="42-rank-api-详解">4.2 rank API 详解</h3>
<h4 id="421-personal-rank-api">4.2.1 Personal Rank API</h4>
<p>Personal Rank 算法典型场景是用于推荐应用中, 根据某个点现有的出边, 推荐具有相近 / 相同关系的其他点,
比如根据某个人的阅读记录 / 习惯, 向它推荐其他可能感兴趣的书, 或潜在的书友, 举例如下:</p>
<ol>
<li>假设给定 1个 Person 点 是 tom, 它喜欢 <code>a,b,c,d,e</code> 5本书, 我们的想给 tom 推荐一些书友, 以及一些书, 最容易的想法就是看看还有哪些人喜欢过这些书 (共同兴趣)</li>
<li>那么此时, 需要有其它的 Person 点比如 neo, 他喜欢 <code>b,d,f</code> 3本书, 以及 jay, 它喜欢 <code>c,d,e,g</code> 4本书, lee 它喜欢 <code>a,d,e,f</code> 4本书</li>
<li>由于 tom 已经看过的书不需要重复推荐, 所以返回结果里应该期望推荐有共同喜好的其他书友看过, 但 tom 没看过的书, 比如推荐 &ldquo;f&rdquo; 和 &ldquo;g&rdquo; 书, 且优先级 f &gt; g</li>
<li>此时再计算 tom 的个性化 rank 值, 就会返回排序后 TopN 推荐的 书友 + 书 的结果了 (如果只需要推荐的书, 选择 OTHER_LABEL 即可)</li>
</ol>
<h5 id="4210-数据准备">4.2.1.0 数据准备</h5>
<p>上面是一个简单的例子, 这里再提供一个公开的 1MB 测试数据集 <a href="https://grouplens.org/datasets/movielens/">MovieLens</a> 为例,
用户需下载该数据集,然后使用 HugeGraph-Loader 导入到 HugeGraph 中,简单起见,数据中顶点 user
和 movie 的属性都忽略,仅使用 id 字段即可,边 rating 的具体评分值也忽略。loader 使用的元数据
文件和输入源映射文件内容如下:</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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">////////////////////////////////////////////////////////////
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// UserID::Gender::Age::Occupation::Zip-code
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// MovieID::Title::Genres
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// UserID::MovieID::Rating::Timestamp
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">////////////////////////////////////////////////////////////
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Define schema
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;id&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asInt</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;rate&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asInt</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;user&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;id&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;id&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;id&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;id&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;rating&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;user&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;rate&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;vertices&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;user&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;input&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;file&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;path&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;users.dat&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;format&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;delimiter&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;::&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;header&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;UserID&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Gender&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Age&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Occupation&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Zip-code&#34;</span><span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ignored&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;Gender&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Age&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Occupation&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Zip-code&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;mapping&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;UserID&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;id&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;input&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;file&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;path&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;movies.dat&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;format&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;delimiter&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;::&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;header&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;MovieID&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Title&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Genres&#34;</span><span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ignored&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;Title&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Genres&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;mapping&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;MovieID&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;id&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;edges&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;rating&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;UserID&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;MovieID&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;input&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;file&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;path&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ratings.dat&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;format&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;TEXT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;delimiter&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;::&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;header&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;UserID&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;MovieID&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Rating&#34;</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Timestamp&#34;</span><span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ignored&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">&#34;Timestamp&#34;</span><span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;mapping&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;UserID&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;id&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;MovieID&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;id&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;Rating&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;rate&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><blockquote>
<p>注意将映射文件中<code>input.path</code>的值修改为自己本地的路径。</p>
</blockquote>
<h5 id="4211-功能介绍">4.2.1.1 功能介绍</h5>
<p>适用于二分图,给出所有源顶点相关的其他顶点及其相关性组成的列表。</p>
<blockquote>
<p>二分图:也称二部图,是图论里的一种特殊模型,也是一种特殊的网络流。其最大的特点在于,可以将图里的顶点分为两个集合,两个集合之间的点有边相连,但集合内的点之间没有直接关联。</p>
</blockquote>
<p>假设有一个用户和物品的二分图,基于随机游走的 PersonalRank 算法步骤如下:</p>
<ol>
<li>选定一个起点用户 u,其初始权重为 1.0,从 Vu 开始游走(有 alpha 的概率走到邻居点,1 - alpha 的概率停留);</li>
<li>如果决定向外游走, 那么会选取某一个类型的出边, 例如 <code>rating</code> 来查找共同的打分人:
<ol>
<li>那就从当前节点的邻居节点中按照均匀分布随机选择一个,并且按照均匀分布划分权重值;</li>
<li>给源顶点补偿权重 1 - alpha;</li>
<li>重复步骤2;</li>
</ol>
</li>
<li>达到一定步数或达到精度后收敛,得到推荐列表。</li>
</ol>
<h6 id="params">Params</h6>
<p><strong>必填项</strong>:</p>
<ul>
<li>source: 源顶点 id</li>
<li>label: 源点出发的某类边 label,须连接两类不同顶点</li>
</ul>
<p><strong>选填项</strong>:</p>
<ul>
<li>alpha:每轮迭代时从某个点往外走的概率,与 PageRank 算法中的 alpha 类似,取值区间为 (0, 1], 默认值 <code>0.85</code></li>
<li>max_degree: 查询过程中,单个顶点遍历的最大邻接边数目,默认为 <code>10000</code></li>
<li>max_depth: 迭代次数,取值区间为 [2, 50], 默认值 <code>5</code></li>
<li>with_label:筛选结果中保留哪些结果,可选以下三类, 默认为 <code>BOTH_LABEL</code>
<ul>
<li>SAME_LABEL:仅保留与源顶点相同类别的顶点</li>
<li>OTHER_LABEL:仅保留与源顶点不同类别(二分图的另一端)的顶点</li>
<li>BOTH_LABEL:同时保留与源顶点相同和相反类别的顶点</li>
</ul>
</li>
<li>limit: 返回的顶点的最大数目,默认为 <code>100</code></li>
<li>max_diff: 提前收敛的精度差, 默认为 <code>0.0001</code> (<em>后续实现</em>)</li>
<li>sorted:返回的结果是否根据 rank 排序,为 true 时降序排列,反之不排序,默认为 <code>true</code></li>
</ul>
<h5 id="4212-使用方法">4.2.1.2 使用方法</h5>
<h6 id="method--url">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/traversers/personalrank
</code></pre><h6 id="request-body">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:1&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;rating&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;alpha&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.6</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_depth&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">15</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;with_label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;OTHER_LABEL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;sorted&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;limit&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">10</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:2858&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.0005014026017816927</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:1196&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.0004336708357653617</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:1210&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.0004128083140214213</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:593&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.00038117341069881513</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:480&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.00037005373269728036</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:1198&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.000366641614652057</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:2396&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.0003622362410538888</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:2571&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.0003593312457300953</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:589&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.00035922123055598566</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;2:110&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.0003466135844390885</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="4213-适用场景">4.2.1.3 适用场景</h5>
<p>两类不同顶点连接形成的二分图中,给某个点推荐相关性最高的其他顶点,例如:</p>
<ul>
<li>阅读推荐: 找出优先给某人推荐的其他<strong>书籍</strong>, 也可以同时推荐共同喜好最高的<strong>书友</strong> (例: 微信 &ldquo;你的好友也在看 xx 文章&rdquo; 功能)</li>
<li>社交推荐: 找出拥有相同关注话题的其他<strong>博主</strong>, 也可以推荐可能感兴趣的<strong>新闻/消息</strong> (例: Weibo 中的 &ldquo;热点推荐&rdquo; 功能)</li>
<li>商品推荐: 通过某人现在的购物习惯, 找出应优先推给它的<strong>商品列表</strong>, 也可以给它推荐<strong>带货</strong>播主 (例: TaoBao 的 &ldquo;猜你喜欢&rdquo; 功能)</li>
</ul>
<h4 id="422-neighbor-rank-api">4.2.2 Neighbor Rank API</h4>
<h5 id="4220-数据准备">4.2.2.0 数据准备</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">public</span> <span style="color:#204a87;font-weight:bold">class</span> <span style="color:#000">Loader</span> <span style="color:#ce5c00;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">public</span> <span style="color:#204a87;font-weight:bold">static</span> <span style="color:#204a87;font-weight:bold">void</span> <span style="color:#000">main</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">String</span><span style="color:#ce5c00;font-weight:bold">[]</span> <span style="color:#000">args</span><span style="color:#ce5c00;font-weight:bold">)</span> <span style="color:#ce5c00;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">HugeClient</span> <span style="color:#000">client</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#204a87;font-weight:bold">new</span> <span style="color:#000">HugeClient</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;http://127.0.0.1:8080&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">SchemaManager</span> <span style="color:#000">schema</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">client</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">schema</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">useCustomizeStringId</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">useCustomizeStringId</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;follow&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;like&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;directedBy&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">GraphManager</span> <span style="color:#000">graph</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">client</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">graph</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">O</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;O&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;O&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">A</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;A&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;A&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">B</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;B&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;B&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">C</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;C&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;C&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">D</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;D&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;D&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">E</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;E&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;E&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">F</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;F&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;F&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">G</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;G&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;G&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">H</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;H&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;H&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">I</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;I&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;I&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">J</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;movie&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;J&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;J&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">K</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;K&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;K&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">L</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;L&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;L&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">Vertex</span> <span style="color:#000">M</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">id</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;M&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;M&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">O</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;follow&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">A</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">O</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;follow&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">B</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">O</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;follow&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">C</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">D</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;follow&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">O</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">A</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;follow&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">B</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">A</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;like&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">E</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">A</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;like&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">F</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">B</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;like&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">G</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">B</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;like&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">H</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">C</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;like&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">I</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">C</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;like&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">J</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">E</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;directedBy&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">K</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">F</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;directedBy&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">B</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">F</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;directedBy&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">L</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#000">G</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;directedBy&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">M</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="4221-功能介绍">4.2.2.1 功能介绍</h5>
<p>在一般图结构中,找出每一层与给定起点相关性最高的前 N 个顶点及其相关度,用图的语义理解就是:从起点往外走,
走到各层各个顶点的概率。</p>
<h6 id="params-1">Params</h6>
<ul>
<li>source: 源顶点 id,必填项</li>
<li>alpha:每轮迭代时从某个点往外走的概率,与 PageRank 算法中的 alpha 类似,必填项,取值区间为 (0, 1]</li>
<li>steps: 表示从起始顶点走过的路径规则,是一组 Step 的列表,每个 Step 对应结果中的一层,必填项。每个 Step 的结构如下:
<ul>
<li>direction:表示边的方向(OUT, IN, BOTH),默认是 BOTH</li>
<li>labels:边的类型列表,多个边类型取并集</li>
<li>max_degree:查询过程中,单个顶点遍历的最大邻接边数目,默认为 10000 (注: 0.12版之前 step 内仅支持 degree 作为参数名, 0.12开始统一使用 max_degree, 并向下兼容 degree 写法)</li>
<li>top:在结果中每一层只保留权重最高的前 N 个结果,默认为 100,最大值为 1000</li>
</ul>
</li>
<li>capacity: 遍历过程中最大的访问的顶点数目,选填项,默认为10000000</li>
</ul>
<h5 id="4222-使用方法">4.2.2.2 使用方法</h5>
<h6 id="method--url-1">Method &amp; Url</h6>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/traversers/neighborrank
</code></pre><h6 id="request-body-1">Request Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;source&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;O&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;steps&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;OUT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;follow&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;top&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">100</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;OUT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;follow&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;like&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;top&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">100</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;direction&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">&#34;OUT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;labels&#34;</span><span style="color:#000;font-weight:bold">:[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;directedBy&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;max_degree&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;top&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">100</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;alpha&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">0.9</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;capacity&#34;</span><span style="color:#000;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">-1</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h6 id="response-status-1">Response Status</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h6 id="response-body-1">Response Body</h6>
<div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;ranks&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;O&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;B&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.4305</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;A&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.3</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;C&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.3</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;G&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.17550000000000002</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;H&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.17550000000000002</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;I&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.135</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;J&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.135</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;E&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.09000000000000001</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;F&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.09000000000000001</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;M&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.15795</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;K&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.08100000000000002</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;L&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.04050000000000001</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="4223-适用场景">4.2.2.3 适用场景</h5>
<p>为给定的起点在不同的层中找到最应该推荐的顶点。</p>
<ul>
<li>比如:在观众、朋友、电影、导演的四层图结构中,根据某个观众的朋友们喜欢的电影,为这个观众推荐电影;或者根据这些电影是谁拍的,为其推荐导演。</li>
</ul>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-32aff6fa72d51caa846c2a72e5771c5d">1.11 - Variable API</h1>
<h3 id="51-variables">5.1 Variables</h3>
<p>Variables可以用来存储有关整个图的数据,数据按照键值对的方式存取</p>
<h4 id="511-创建或者更新某个键值对">5.1.1 创建或者更新某个键值对</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/variables/name
</code></pre><h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;tom&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;tom&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="512-列出全部键值对">5.1.2 列出全部键值对</h4>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/variables
</code></pre><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;tom&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="513-列出某个键值对">5.1.3 列出某个键值对</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/variables/name
</code></pre><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;tom&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="514-删除某个键值对">5.1.4 删除某个键值对</h4>
<h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/variables/name
</code></pre><h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-3d75cf337650cd90a617c3ef7e9dca87">1.12 - Graphs API</h1>
<h3 id="61-graphs">6.1 Graphs</h3>
<h4 id="611-列出数据库中全部的图">6.1.1 列出数据库中全部的图</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs
</code></pre><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;graphs&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;hugegraph1&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="612-查看某个图的信息">6.1.2 查看某个图的信息</h4>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph
</code></pre><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;backend&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;cassandra&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="613-清空某个图的全部数据包括schemavertexedge和index等该操作需要管理员权限">6.1.3 清空某个图的全部数据,包括schema、vertex、edge和index等,<strong>该操作需要管理员权限</strong></h4>
<h5 id="params">Params</h5>
<p>由于清空图是一个比较危险的操作,为避免用户误调用,我们给API添加了用于确认的参数:</p>
<ul>
<li>confirm_message: 默认为<code>I'm sure to delete all data</code></li>
</ul>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/clear?confirm_message=I%27m+sure+to+delete+all+data
</code></pre><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><h3 id="62-conf">6.2 Conf</h3>
<h4 id="621-查看某个图的配置该操作需要管理员权限">6.2.1 查看某个图的配置,<strong>该操作需要管理员权限</strong></h4>
<h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/conf
</code></pre><h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</h5>
<pre tabindex="0"><code class="language-properties" data-lang="properties"># gremlin entrence to create graph
gremlin.graph=com.baidu.hugegraph.HugeFactory
# cache config
#schema.cache_capacity=1048576
#graph.cache_capacity=10485760
#graph.cache_expire=600
# schema illegal name template
#schema.illegal_name_regex=\s+|~.*
#vertex.default_label=vertex
backend=cassandra
serializer=cassandra
store=hugegraph
...
</code></pre><h3 id="63-mode">6.3 Mode</h3>
<p>合法的图模式包括:NONE,RESTORING,MERGING,LOADING</p>
<ul>
<li>None 模式(默认),元数据和图数据的写入属于正常状态。特别的:
<ul>
<li>元数据(schema)创建时不允许指定 ID</li>
<li>图数据(vertex)在 id strategy 为 Automatic 时,不允许指定 ID</li>
</ul>
</li>
<li>LOADING:批量导入数据时自动启用,特别的:
<ul>
<li>添加顶点/边时,不会检查必填属性是否传入</li>
</ul>
</li>
</ul>
<p>Restore 时存在两种不同的模式: Restoring 和 Merging</p>
<ul>
<li>Restoring 模式,恢复到一个新图中,特别的:
<ul>
<li>元数据(schema)创建时允许指定 ID</li>
<li>图数据(vertex)在 id strategy 为 Automatic 时,允许指定 ID</li>
</ul>
</li>
<li>Merging 模式,合并到一个已存在元数据和图数据的图中,特别的:
<ul>
<li>元数据(schema)创建时不允许指定 ID</li>
<li>图数据(vertex)在 id strategy 为 Automatic 时,允许指定 ID</li>
</ul>
</li>
</ul>
<p>正常情况下,图模式为 None,当需要 Restore 图时,需要根据需要临时修改图模式为 Restoring 模式或者 Merging 模式,并在完成 Restore 时,恢复图模式为 None。</p>
<h4 id="631-查看某个图的模式-该操作需要管理员权限">6.3.1 查看某个图的模式. <strong>该操作需要管理员权限</strong></h4>
<h5 id="method--url-4">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/mode
</code></pre><h5 id="response-status-4">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;mode&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><blockquote>
<p>合法的图模式包括:NONE,RESTORING,MERGING</p>
</blockquote>
<h4 id="632-设置某个图的模式-该操作需要管理员权限">6.3.2 设置某个图的模式. <strong>该操作需要管理员权限</strong></h4>
<h5 id="method--url-5">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/mode
</code></pre><h5 id="request-body">Request Body</h5>
<pre tabindex="0"><code>&#34;RESTORING&#34;
</code></pre><blockquote>
<p>合法的图模式包括:NONE,RESTORING,MERGING</p>
</blockquote>
<h5 id="response-status-5">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-4">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;mode&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;RESTORING&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-d9de752e44e3a8a709d187e4101fd818">1.13 - Task API</h1>
<h3 id="71-task">7.1 Task</h3>
<h4 id="711-list-all-async-tasks-in-graph">7.1.1 List all async tasks in graph</h4>
<h5 id="params">Params</h5>
<ul>
<li>status: the status of asynTasks</li>
<li>limit:the max number of tasks to return</li>
</ul>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/tasks?status=success
</code></pre><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;tasks&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph.traversal().V()&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_progress&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1532943976585</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;success&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1532943976736</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_result&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;0&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_retries&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_callable&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;com.baidu.hugegraph.api.job.GremlinAPI$GremlinJob&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_input&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;{\&#34;gremlin\&#34;:\&#34;hugegraph.traversal().V()\&#34;,\&#34;bindings\&#34;:{},\&#34;language\&#34;:\&#34;gremlin-groovy\&#34;,\&#34;aliases\&#34;:{\&#34;hugegraph\&#34;:\&#34;graph\&#34;}}&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="712-view-the-details-of-an-async-task">7.1.2 View the details of an async task</h4>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/tasks/2
</code></pre><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph.traversal().V()&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_progress&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1532943976585</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;success&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1532943976736</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_result&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;0&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_retries&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_callable&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;com.baidu.hugegraph.api.job.GremlinAPI$GremlinJob&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_input&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;{\&#34;gremlin\&#34;:\&#34;hugegraph.traversal().V()\&#34;,\&#34;bindings\&#34;:{},\&#34;language\&#34;:\&#34;gremlin-groovy\&#34;,\&#34;aliases\&#34;:{\&#34;hugegraph\&#34;:\&#34;graph\&#34;}}&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="713-delete-task-infomation-of-an-async-taskwont-delete-the-task-itself">7.1.3 Delete task infomation of an async task,<strong>won&rsquo;t delete the task itself</strong></h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/tasks/2
</code></pre><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><h4 id="714-取消某个异步任务该异步任务必须具有处理中断的能力">7.1.4 取消某个异步任务,<strong>该异步任务必须具有处理中断的能力</strong></h4>
<p>If you already created an async task via <a href="../gremlin">Gremlin API</a> 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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#4e9a06">&#34;for (int i = 0; i &lt; 10; i++) {&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;hugegraph.addVertex(T.label, &#39;man&#39;);&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;hugegraph.tx().commit();&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;try {&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;sleep(1000);&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;} catch (InterruptedException e) {&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;break;&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">&#34;}&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span>
</span></span><span style="display:flex;"><span><span style="color:#4e9a06">&#34;}&#34;</span>
</span></span></code></pre></div><h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/tasks/2?action=cancel
</code></pre><blockquote>
<p>cancel it in 10s. if more than 10s,the task may already finished,then can&rsquo;t be cancelled.</p>
</blockquote>
<h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">202</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;cancelled&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">true</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>At this point, the number of vertices whose label is man must be less than 10.</p>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-e84b0f106294b580ca64918b72cc71d1">1.14 - Gremlin API</h1>
<h3 id="81-gremlin">8.1 Gremlin</h3>
<h4 id="811-向hugegraphserver发送gremlin语句get同步执行">8.1.1 向HugeGraphServer发送gremlin语句(GET),同步执行</h4>
<h5 id="params">Params</h5>
<ul>
<li>gremlin: 要发送给<code>HugeGraphServer</code>执行的<code>gremlin</code>语句</li>
<li>bindings: 用来绑定参数,key是字符串,value是绑定的值(只能是字符串或者数字),功能类似于MySQL的 Prepared Statement,用于加速语句执行</li>
<li>language: 发送语句的语言类型,默认为<code>gremlin-groovy</code></li>
<li>aliases: 为存在于图空间的已有变量添加别名</li>
</ul>
<p><strong>查询顶点</strong></p>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://127.0.0.1:8080/gremlin?gremlin=hugegraph.traversal().V(&#39;1:marko&#39;)
</code></pre><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;requestId&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;c6ef47a8-b634-4b07-9d38-6b3b69a3a556&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;message&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;code&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">200</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;attributes&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;result&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;meta&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="812-向hugegraphserver发送gremlin语句post同步执行">8.1.2 向HugeGraphServer发送gremlin语句(POST),同步执行</h4>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/gremlin
</code></pre><p><strong>查询顶点</strong></p>
<h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph.traversal().V(&#39;1:marko&#39;)&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;bindings&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;language&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;gremlin-groovy&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aliases&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;requestId&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;c6ef47a8-b634-4b07-9d38-6b3b69a3a556&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;message&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;code&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">200</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;attributes&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;result&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;vertex&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;city&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;city&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;name&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;marko&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;age&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&gt;age&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;value&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">29</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;meta&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>注意:</p>
<blockquote>
<p>这里是直接使用图对象(hugegraph),先获取其遍历器(traversal()),再获取顶点。
不能直接写成<code>graph.traversal().V()</code><code>g.V()</code>,可以通过<code>&quot;aliases&quot;: {&quot;graph&quot;: &quot;hugegraph&quot;, &quot;g&quot;: &quot;__g_hugegraph&quot;}</code>
为图和遍历器添加别名后使用别名操作。其中,<code>hugegraph</code>是原生存在的变量,<code>__g_hugegraph</code><code>HugeGraphServer</code>额外添加的变量,
每个图都会存在一个对应的这样格式(_<em>g</em>${graph})的遍历器对象。</p>
</blockquote>
<blockquote>
<p>响应体的结构与其他 Vertex 或 Edge 的 RESTful API的结构有区别,用户可能需要自行解析。</p>
</blockquote>
<p><strong>查询边</strong></p>
<h5 id="request-body-1">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;g.E(&#39;S1:marko&gt;2&gt;&gt;S2:lop&#39;)&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;bindings&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;language&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;gremlin-groovy&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aliases&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;graph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;g&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;__g_hugegraph&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;requestId&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3f117cd4-eedc-4e08-a106-ee01d7bb8249&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;status&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;message&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;code&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">200</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;attributes&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;result&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;data&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S1:marko&gt;2&gt;&gt;S2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;edge&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outVLabel&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;inV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2:lop&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;outV&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;1:marko&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;weight&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">0.4</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;date&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;20171210&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;meta&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="813-向hugegraphserver发送gremlin语句post异步执行">8.1.3 向HugeGraphServer发送gremlin语句(POST),异步执行</h4>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/jobs/gremlin
</code></pre><p><strong>查询顶点</strong></p>
<h5 id="request-body-2">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;g.V(&#39;1:marko&#39;)&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;bindings&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;language&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;gremlin-groovy&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aliases&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>注意:</p>
<blockquote>
<p>异步执行Gremlin语句暂不支持aliases,可以使用 <code>graph</code> 代表要操作的图,也可以直接使用图的名字, 例如 <code>hugegraph</code>;
另外<code>g</code>代表 traversal,等价于 <code>graph.traversal()</code> 或者 <code>hugegraph.traversal()</code></p>
</blockquote>
<h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">1</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>注:</p>
<blockquote>
<p>可以通过<code>GET http://localhost:8080/graphs/hugegraph/tasks/1</code>(其中&quot;1&quot;是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p>
</blockquote>
<p><strong>查询边</strong></p>
<h5 id="request-body-3">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;g.E(&#39;S1:marko&gt;2&gt;&gt;S2:lop&#39;)&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;bindings&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{},</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;language&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;gremlin-groovy&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;aliases&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-4">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body-4">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;task_id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#0000cf;font-weight:bold">2</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><p>注:</p>
<blockquote>
<p>可以通过<code>GET http://localhost:8080/graphs/hugegraph/tasks/2</code>(其中&quot;2&quot;是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p>
</blockquote>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-a3b125f257052209fcb98300d5c066a7">1.15 - Authentication API</h1>
<h3 id="91-用户认证与权限控制">9.1 用户认证与权限控制</h3>
<blockquote>
<p>开启权限及相关配置请先参考 <a href="/docs/config/config-authentication/">权限配置</a> 文档</p>
</blockquote>
<h5 id="用户认证与权限控制概述">用户认证与权限控制概述:</h5>
<p>HugeGraph支持多用户认证、以及细粒度的权限访问控制,采用基于“用户-用户组-操作-资源”的4层设计,灵活控制用户角色与权限。
资源描述了图数据库中的数据,比如符合某一类条件的顶点,每一个资源包括type、label、properties三个要素,共有18种type、
任意label、任意properties的组合形成的资源,一个资源的内部条件是且关系,多个资源之间的条件是或关系。用户可以属于一个或多个用户组,
每个用户组可以拥有对任意个资源的操作权限,操作类型包括:读、写、删除、执行等种类。 HugeGraph支持动态创建用户、用户组、资源,
支持动态分配或取消权限。初始化数据库时超级管理员用户被创建,后续可通过超级管理员创建各类角色用户,新创建的用户如果被分配足够权限后,可以由其创建或管理更多的用户。</p>
<h5 id="举例说明">举例说明:</h5>
<p>user(name=boss) -belong-&gt; group(name=all) -access(read)-&gt; target(graph=graph1, resource={label: person,
city: Beijing})<br>
描述:用户&rsquo;boss&rsquo;拥有对&rsquo;graph1&rsquo;图中北京人的读权限。</p>
<h5 id="接口说明">接口说明:</h5>
<p>用户认证与权限控制接口包括5类:UserAPI、GroupAPI、TargetAPI、BelongAPI、AccessAPI。</p>
<h3 id="92-用户userapi">9.2 用户(User)API</h3>
<p>用户接口包括:创建用户,删除用户,修改用户,和查询用户相关信息接口。</p>
<h4 id="921-创建用户">9.2.1 创建用户</h4>
<h5 id="params">Params</h5>
<ul>
<li>user_name: 用户名称</li>
<li>user_password: 用户密码</li>
<li>user_phone: 用户手机号</li>
<li>user_email: 用户邮箱</li>
</ul>
<p>其中 user_name 和 user_password 为必填。</p>
<h5 id="request-body">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;boss&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_password&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;******&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_phone&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;182****9088&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_email&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;123@xx.com&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/auth/users
</code></pre><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</h5>
<p>返回报文中,密码为加密后的密文</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_password&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;******&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_email&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;123@xx.com&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-17 14:31:07.833&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;boss&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_phone&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;182****9088&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:boss&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-17 14:31:07.833&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="922-删除用户">9.2.2 删除用户</h4>
<h5 id="params-1">Params</h5>
<ul>
<li>id: 需要删除的用户 Id</li>
</ul>
<h5 id="method--url-1">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/auth/users/-63:test
</code></pre><h5 id="response-status-1">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><h5 id="response-body-1">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">1</span>
</span></span></code></pre></div><h4 id="923-修改用户">9.2.3 修改用户</h4>
<h5 id="params-2">Params</h5>
<ul>
<li>id: 需要修改的用户 Id</li>
</ul>
<h5 id="method--url-2">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/auth/users/-63:test
</code></pre><h5 id="request-body-1">Request Body</h5>
<p>修改user_name、user_password和user_phone</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;test&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_password&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;******&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_phone&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;183****9266&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-2">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-2">Response Body</h5>
<p>返回结果是包含修改过的内容在内的整个用户组对象</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_password&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;******&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 10:29:30.455&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;test&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_phone&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;183****9266&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:test&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 10:27:13.601&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="924-查询用户列表">9.2.4 查询用户列表</h4>
<h5 id="params-3">Params</h5>
<ul>
<li>limit: 返回结果条数的上限</li>
</ul>
<h5 id="method--url-3">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/users
</code></pre><h5 id="response-status-3">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-3">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;users&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_password&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;******&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 11:41:12.254&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;system&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 11:41:12.254&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="925-查询某个用户">9.2.5 查询某个用户</h4>
<h5 id="params-4">Params</h5>
<ul>
<li>id: 需要查询的用户 Id</li>
</ul>
<h5 id="method--url-4">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/users/-63:admin
</code></pre><h5 id="response-status-4">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-4">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;users&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_password&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;******&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 11:41:12.254&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;system&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 11:41:12.254&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="926-查询某个用户的角色">9.2.6 查询某个用户的角色</h4>
<h5 id="method--url-5">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/users/-63:boss/role
</code></pre><h5 id="response-status-5">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-5">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;roles&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;READ&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ALL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;*&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">null</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h3 id="93-用户组groupapi">9.3 用户组(Group)API</h3>
<p>用户组会赋予相应的资源权限,用户会被分配不同的用户组,即可拥有不同的资源权限。<br>
用户组接口包括:创建用户组,删除用户组,修改用户组,和查询用户组相关信息接口。</p>
<h4 id="931-创建用户组">9.3.1 创建用户组</h4>
<h5 id="params-5">Params</h5>
<ul>
<li>group_name: 用户组名称</li>
<li>group_description: 用户组描述</li>
</ul>
<h5 id="request-body-2">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;group can do anything&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="method--url-6">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/auth/groups
</code></pre><h5 id="response-status-6">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body-6">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:46:08.791&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:46:08.791&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;group can do anything&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="932-删除用户组">9.3.2 删除用户组</h4>
<h5 id="params-6">Params</h5>
<ul>
<li>id: 需要删除的用户组 Id</li>
</ul>
<h5 id="method--url-7">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/auth/groups/-69:grant
</code></pre><h5 id="response-status-7">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><h5 id="response-body-7">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">1</span>
</span></span></code></pre></div><h4 id="933-修改用户组">9.3.3 修改用户组</h4>
<h5 id="params-7">Params</h5>
<ul>
<li>id: 需要修改的用户组 Id</li>
</ul>
<h5 id="method--url-8">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/auth/groups/-69:grant
</code></pre><h5 id="request-body-3">Request Body</h5>
<p>修改group_description</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;grant&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;grant&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-8">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-8">Response Body</h5>
<p>返回结果是包含修改过的内容在内的整个用户组对象</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;grant&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 09:50:58.458&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 09:57:58.155&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:grant&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;grant&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="934-查询用户组列表">9.3.4 查询用户组列表</h4>
<h5 id="params-8">Params</h5>
<ul>
<li>limit: 返回结果条数的上限</li>
</ul>
<h5 id="method--url-9">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/groups
</code></pre><h5 id="response-status-9">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-9">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;groups&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:46:08.791&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:46:08.791&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;group can do anything&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="935-查询某个用户组">9.3.5 查询某个用户组</h4>
<h5 id="params-9">Params</h5>
<ul>
<li>id: 需要查询的用户组 Id</li>
</ul>
<h5 id="method--url-10">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/groups/-69:all
</code></pre><h5 id="response-status-10">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-10">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:46:08.791&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:46:08.791&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;group can do anything&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h3 id="94-资源targetapi">9.4 资源(Target)API</h3>
<p>资源描述了图数据库中的数据,比如符合某一类条件的顶点,每一个资源包括type、label、properties三个要素,共有18种type、
任意label、任意properties的组合形成的资源,一个资源的内部条件是且关系,多个资源之间的条件是或关系。<br>
资源接口包括:资源的创建、删除、修改和查询。</p>
<h4 id="941-创建资源">9.4.1 创建资源</h4>
<h5 id="params-10">Params</h5>
<ul>
<li>target_name: 资源名称</li>
<li>target_graph: 资源图</li>
<li>target_url: 资源地址</li>
<li>target_resources: 资源定义(列表)</li>
</ul>
<p>target_resources可以包括多个target_resource,以列表的形式存储。<br>
每个target_resource包含:</p>
<ul>
<li>type:可选值 VERTEX, EDGE等, 可填ALL,则表示可以是顶点或边;</li>
<li>label:可选值,⼀个顶点或边类型的名称,可填*,则表示任意类型;</li>
<li>properties:map类型,可包含多个属性的键值对,必须匹配所有属性值,属性值⽀持填条件范围(age:
P.gte(18)),properties如果为null表示任意属性均可,如果属性名和属性值均为‘*ʼ也表示任意属性均可。</li>
</ul>
<p>如精细资源:&ldquo;target_resources&rdquo;: [{&ldquo;type&rdquo;:&ldquo;VERTEX&rdquo;,&ldquo;label&rdquo;:&ldquo;person&rdquo;,&ldquo;properties&rdquo;:{&ldquo;city&rdquo;:&ldquo;Beijing&rdquo;,&ldquo;age&rdquo;:&ldquo;P.gte(20)&rdquo;}}]**<br>
资源定义含义:类型是&rsquo;person&rsquo;的顶点,且城市属性是&rsquo;Beijing&rsquo;,年龄属性大于等于20。</p>
<h5 id="request-body-4">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_graph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_url&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;127.0.0.1:8080&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_resources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ALL&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="method--url-11">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/auth/targets
</code></pre><h5 id="response-status-11">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body-11">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_url&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;127.0.0.1:8080&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_graph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:32:01.192&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_resources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ALL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;*&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">null</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:32:01.192&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="942-删除资源">9.4.2 删除资源</h4>
<h5 id="params-11">Params</h5>
<ul>
<li>id: 需要删除的资源 Id</li>
</ul>
<h5 id="method--url-12">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/auth/targets/-77:gremlin
</code></pre><h5 id="response-status-12">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><h5 id="response-body-12">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">1</span>
</span></span></code></pre></div><h4 id="943-修改资源">9.4.3 修改资源</h4>
<h5 id="params-12">Params</h5>
<ul>
<li>id: 需要修改的资源 Id</li>
</ul>
<h5 id="method--url-13">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/auth/targets/-77:gremlin
</code></pre><h5 id="request-body-5">Request Body</h5>
<p>修改资源定义中的type</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_graph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_url&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;127.0.0.1:8080&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_resources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-13">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-13">Response Body</h5>
<p>返回结果是包含修改过的内容在内的整个用户组对象</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_url&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;127.0.0.1:8080&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_graph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 09:34:13.848&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_resources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;NONE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;*&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">null</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:gremlin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 09:37:12.780&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="944-查询资源列表">9.4.4 查询资源列表</h4>
<h5 id="params-13">Params</h5>
<ul>
<li>limit: 返回结果条数的上限</li>
</ul>
<h5 id="method--url-14">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/targets
</code></pre><h5 id="response-status-14">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-14">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;targets&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_url&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;127.0.0.1:8080&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_graph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:32:01.192&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_resources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;ALL&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;*&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">null</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:32:01.192&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;grant&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_url&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;127.0.0.1:8080&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_graph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:43:24.841&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_resources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;GRANT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;*&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">null</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:grant&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:43:24.841&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="945-查询某个资源">9.4.5 查询某个资源</h4>
<h5 id="params-14">Params</h5>
<ul>
<li>id: 需要查询的资源 Id</li>
</ul>
<h5 id="method--url-15">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/targets/-77:grant
</code></pre><h5 id="response-status-15">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-15">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_name&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;grant&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_url&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;127.0.0.1:8080&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_graph&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:43:24.841&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_resources&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;type&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;GRANT&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;label&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;*&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;properties&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#204a87;font-weight:bold">null</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:grant&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:43:24.841&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h3 id="95-关联角色belongapi">9.5 关联角色(Belong)API</h3>
<p>关联用户和用户组的关系,一个用户可以关联一个或者多个用户组。用户组拥有相关资源的权限,不同用户组的资源权限可以理解为不同的角色。即给用户关联角色。<br>
关联角色接口包括:用户关联角色的创建、删除、修改和查询。</p>
<h4 id="951-创建用户的关联角色">9.5.1 创建用户的关联角色</h4>
<h5 id="params-15">Params</h5>
<ul>
<li>user: 用户 Id</li>
<li>group: 用户组 Id</li>
<li>belong_description: 描述</li>
</ul>
<h5 id="request-body-6">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:boss&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="method--url-16">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/auth/belongs
</code></pre><h5 id="response-status-16">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body-16">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 16:19:35.422&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 16:19:35.422&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S-63:boss&gt;-82&gt;&gt;S-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:boss&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="952-删除关联角色">9.5.2 删除关联角色</h4>
<h5 id="params-16">Params</h5>
<ul>
<li>id: 需要删除的关联角色 Id</li>
</ul>
<h5 id="method--url-17">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/auth/belongs/S-63:boss&gt;-82&gt;&gt;S-69:grant
</code></pre><h5 id="response-status-17">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><h5 id="response-body-17">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">1</span>
</span></span></code></pre></div><h4 id="953-修改关联角色">9.5.3 修改关联角色</h4>
<p>关联角色只能修改描述,不能修改 user 和 group 属性,如果需要修改关联角色,需要删除原来关联关系,新增关联角色。</p>
<h5 id="params-17">Params</h5>
<ul>
<li>id: 需要修改的关联角色 Id</li>
</ul>
<h5 id="method--url-18">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/auth/belongs/S-63:boss&gt;-82&gt;&gt;S-69:grant
</code></pre><h5 id="request-body-7">Request Body</h5>
<p>修改belong_description</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;update test&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-18">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-18">Response Body</h5>
<p>返回结果是包含修改过的内容在内的整个用户组对象</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;update test&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 10:40:21.720&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 10:42:47.265&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S-63:boss&gt;-82&gt;&gt;S-69:grant&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:boss&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:grant&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="954-查询关联角色列表">9.5.4 查询关联角色列表</h4>
<h5 id="params-18">Params</h5>
<ul>
<li>limit: 返回结果条数的上限</li>
</ul>
<h5 id="method--url-19">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/belongs
</code></pre><h5 id="response-status-19">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-19">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belongs&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 16:19:35.422&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 16:19:35.422&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S-63:boss&gt;-82&gt;&gt;S-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:boss&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="955-查看某个关联角色">9.5.5 查看某个关联角色</h4>
<h5 id="params-19">Params</h5>
<ul>
<li>id: 需要查询的关联角色 Id</li>
</ul>
<h5 id="method--url-20">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/belongs/S-63:boss&gt;-82&gt;&gt;S-69:all
</code></pre><h5 id="response-status-20">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-20">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 16:19:35.422&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;belong_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 16:19:35.422&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S-63:boss&gt;-82&gt;&gt;S-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;user&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-63:boss&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h3 id="96-赋权accessapi">9.6 赋权(Access)API</h3>
<p>给用户组赋予资源的权限,主要包含:读操作(READ)、写操作(WRITE)、删除操作(DELETE)、执行操作(EXECUTE)等。<br>
赋权接口包括:赋权的创建、删除、修改和查询。</p>
<h4 id="961-创建赋权用户组赋予资源的权限">9.6.1 创建赋权(用户组赋予资源的权限)</h4>
<h5 id="params-20">Params</h5>
<ul>
<li>group: 用户组 Id</li>
<li>target: 资源 Id</li>
<li>access_permission: 权限许可</li>
<li>access_description: 赋权描述</li>
</ul>
<p>access_permission:</p>
<ul>
<li>READ:读操作,所有的查询,包括查询Schema、查顶点/边,查询顶点和边的数量VERTEX_AGGR/EDGE_AGGR,也包括读图的状态STATUS、变量VAR、任务TASK等;</li>
<li>WRITE:写操作,所有的创建、更新操作,包括给Schema增加property key,给顶点增加或更新属性等;</li>
<li>DELETE:删除操作,包括删除元数据、删除顶点/边;</li>
<li>EXECUTE:执⾏操作,包括执⾏Gremlin语句、执⾏Task、执⾏metadata函数;</li>
</ul>
<h5 id="request-body-8">Request Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_permission&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;READ&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="method--url-21">Method &amp; Url</h5>
<pre tabindex="0"><code>POST http://localhost:8080/graphs/hugegraph/auth/accesses
</code></pre><h5 id="response-status-21">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">201</span>
</span></span></code></pre></div><h5 id="response-body-21">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_permission&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;READ&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:54:54.008&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S-69:all&gt;-88&gt;11&gt;S-77:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:54:54.008&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:all&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="962-删除赋权">9.6.2 删除赋权</h4>
<h5 id="params-21">Params</h5>
<ul>
<li>id: 需要删除的赋权 Id</li>
</ul>
<h5 id="method--url-22">Method &amp; Url</h5>
<pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/auth/accesses/S-69:all&gt;-88&gt;12&gt;S-77:all
</code></pre><h5 id="response-status-22">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">204</span>
</span></span></code></pre></div><h5 id="response-body-22">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">1</span>
</span></span></code></pre></div><h4 id="963-修改赋权">9.6.3 修改赋权</h4>
<p>赋权只能修改描述,不能修改用户组、资源和权限许可,如果需要修改赋权的关系,可以删除原来的赋权关系,新增赋权。</p>
<h5 id="params-22">Params</h5>
<ul>
<li>id: 需要修改的赋权 Id</li>
</ul>
<h5 id="method--url-23">Method &amp; Url</h5>
<pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/auth/accesses/S-69:all&gt;-88&gt;12&gt;S-77:all
</code></pre><h5 id="request-body-9">Request Body</h5>
<p>修改access_description</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;test&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h5 id="response-status-23">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-23">Response Body</h5>
<p>返回结果是包含修改过的内容在内的整个用户组对象</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_description&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;test&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_permission&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;WRITE&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 10:12:03.074&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S-69:all&gt;-88&gt;12&gt;S-77:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-12 10:16:18.637&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:all&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="964-查询赋权列表">9.6.4 查询赋权列表</h4>
<h5 id="params-23">Params</h5>
<ul>
<li>limit: 返回结果条数的上限</li>
</ul>
<h5 id="method--url-24">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/accesses
</code></pre><h5 id="response-status-24">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-24">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;accesses&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_permission&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;READ&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:54:54.008&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S-69:all&gt;-88&gt;11&gt;S-77:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:54:54.008&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:all&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div><h4 id="965-查询某个赋权">9.6.5 查询某个赋权</h4>
<h5 id="params-24">Params</h5>
<ul>
<li>id: 需要查询的赋权 Id</li>
</ul>
<h5 id="method--url-25">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/accesses/S-69:all&gt;-88&gt;11&gt;S-77:all
</code></pre><h5 id="response-status-25">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body-25">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_permission&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;READ&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_create&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:54:54.008&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;id&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;S-69:all&gt;-88&gt;11&gt;S-77:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_update&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;2020-11-11 15:54:54.008&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;access_creator&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;admin&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;group&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-69:all&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;target&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;-77:all&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-8e126d4f2f7317a1268d7edb65cd4fcc">1.16 - Other API</h1>
<h3 id="101-other">10.1 Other</h3>
<h4 id="1011-查看hugegraph的版本信息">10.1.1 查看HugeGraph的版本信息</h4>
<h5 id="method--url">Method &amp; Url</h5>
<pre tabindex="0"><code>GET http://localhost:8080/versions
</code></pre><h5 id="response-status">Response Status</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">200</span>
</span></span></code></pre></div><h5 id="response-body">Response Body</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-json" data-lang="json"><span style="display:flex;"><span><span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;versions&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">{</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;version&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;v1&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;core&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;0.4.5.1&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;gremlin&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;3.2.5&#34;</span><span style="color:#000;font-weight:bold">,</span>
</span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">&#34;api&#34;</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">&#34;0.13.2.0&#34;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span>
</span></span></code></pre></div>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-3457a7585a93814fdbb1a44b68edc0d3">2 - HugeGraph Java Client</h1>
<p>The code in this document is written in <code>java</code>, but its style is very similar to <code>gremlin(groovy)</code>. The user only needs to replace the variable declaration in the code with <code>def</code> or remove it directly,
You can convert <code>java</code> code into <code>groovy</code>; in addition, each line of statement can be without a semicolon at the end, <code>groovy</code> considers a line to be a statement.
The <code>gremlin(groovy)</code> written by the user in <code>HugeGraph-Studio</code> can refer to the <code>java</code> code in this document, and some examples will be given below.</p>
<h3 id="1-hugegraph-client">1 HugeGraph-Client</h3>
<p>HugeGraph-Client is the general entry for operating graph. Users must first create a HugeGraph-Client object and establish a connection (pseudo connection) with HugeGraph-Server before they can obtain the operation entry objects of schema, graph and gremlin.</p>
<p>Currently, HugeGraph-Client only allows connections to existing graphs on the server, and cannot create custom graphs. Its creation method 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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// HugeGraphServer address: &#34;http://localhost:8080&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Graph Name: &#34;hugegraph&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">HugeClient</span> <span style="color:#000">hugeClient</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">HugeClient</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">builder</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;http://localhost:8080&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;hugegraph&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">configTimeout</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">20</span><span style="color:#ce5c00;font-weight:bold">)</span> <span style="color:#8f5902;font-style:italic">// 20s timeout
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">configUser</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;**&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;**&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span> <span style="color:#8f5902;font-style:italic">// enable auth
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span> <span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">build</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><p>If the above process of creating HugeClient fails, an exception will be thrown, and the user needs to use try-catch. If successful, continue to get schema, graph and gremlin manager.</p>
<p>When operating through <code>gremlin</code> in <code>HugeGraph-Hubble</code>(or <code>HugeGraph-Studio</code>), <code>HugeClient</code> is not required and can be ignored.</p>
<h3 id="2-schema">2 Schema</h3>
<h4 id="21-schemamanager">2.1 SchemaManager</h4>
<p>SchemaManager is used to manage four kinds of schema in HugeGraph, namely PropertyKey (property type), VertexLabel (vertex type), EdgeLabel (edge type) and IndexLabel (index label). A SchemaManager object can be created for schema information definition.</p>
<p>The user can obtain the SchemaManager object using the following methods:</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">SchemaManager</span> <span style="color:#000">schema</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">hugeClient</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">schema</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><p>Create a <code>schema</code> object via <code>gremlin</code> in <code>HugeGraph-Hubble</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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#000">schema</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">schema</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><p>The definition process of the 4 kinds of schema is described below.</p>
<h4 id="22-propertykey">2.2 PropertyKey</h4>
<h5 id="221-interface-and-parameter-introduction">2.2.1 Interface and parameter introduction</h5>
<p>PropertyKey is used to standardize the property constraints of vertices and edges, and properties of properties are not currently supported.</p>
<p>The constraint information that PropertyKey allows to define includes: name, datatype, cardinality, and userdata, which are introduced one by one below.</p>
<ul>
<li>name: The name of the property, used to distinguish different PropertyKeys, PropertyKeys with the same name are not allowed.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>param</th>
<th>must set</th>
</tr>
</thead>
<tbody>
<tr>
<td>propertyKey(String name)</td>
<td>name</td>
<td>y</td>
</tr>
</tbody>
</table>
<ul>
<li>datatype: property value type, you must select an explicit setting from the following table that conforms to the specific business scenario:</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>Java Class</th>
</tr>
</thead>
<tbody>
<tr>
<td>asText()</td>
<td>String</td>
</tr>
<tr>
<td>asInt()</td>
<td>Integer</td>
</tr>
<tr>
<td>asDate()</td>
<td>Date</td>
</tr>
<tr>
<td>asUuid()</td>
<td>UUID</td>
</tr>
<tr>
<td>asBoolean()</td>
<td>Boolean</td>
</tr>
<tr>
<td>asByte()</td>
<td>Byte</td>
</tr>
<tr>
<td>asBlob()</td>
<td>Byte[]</td>
</tr>
<tr>
<td>asDouble()</td>
<td>Double</td>
</tr>
<tr>
<td>asFloat()</td>
<td>Float</td>
</tr>
<tr>
<td>asLong()</td>
<td>Long</td>
</tr>
</tbody>
</table>
<ul>
<li>cardinality: Whether the property value is single-valued or multi-valued, in the case of multi-valued, it is divided into allowing-duplicate values and not-allowing-duplicate values. This item is single by default. If necessary, you can select a setting from the following table:</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>cardinality</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>valueSingle()</td>
<td>single</td>
<td>single value</td>
</tr>
<tr>
<td>valueList()</td>
<td>list</td>
<td>multi-values that allow duplicate value</td>
</tr>
<tr>
<td>valueSet()</td>
<td>set</td>
<td>multi-values that not allow duplicate value</td>
</tr>
</tbody>
</table>
<ul>
<li>userdata: Users can add some constraints or additional information by themselves, and then check whether the incoming properties satisfy the constraints, or extract additional information when necessary:</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>userdata(String key, Object value)</td>
<td>The same key, the latter will cover the former</td>
</tr>
</tbody>
</table>
<h5 id="222-create-propertykey">2.2.2 Create PropertyKey</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">valueSet</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><p>The syntax of creating the above <code>PropertyKey</code> object through <code>gremlin</code> in <code>HugeGraph-Hubble</code> is exactly the same. If the user does not define the <code>schema</code> variable, it should be written 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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">schema</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">valueSet</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><p>In the following examples, the syntax of <code>gremlin</code> and <code>java</code> is exactly the same, so we won&rsquo;t repeat them.</p>
<ul>
<li>ifNotExist(): Add a judgment mechanism for create, if the current PropertyKey already exists, it will not be created, otherwise the property will be created. If no ifNotExist() is added, an exception will be thrown if a properkey with the same name already exists. The same as below, and will not be repeated there.</li>
</ul>
<h5 id="223-delete-propertykey">2.2.3 Delete PropertyKey</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">remove</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><h5 id="224-query-propertykey">2.2.4 Query PropertyKey</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Get PropertyKey
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getPropertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Get attributes of PropertyKey
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getPropertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">cardinality</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getPropertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">dataType</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getPropertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">name</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getPropertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">userdata</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><h4 id="23-vertexlabel">2.3 VertexLabel</h4>
<h5 id="231-interface-and-parameter-introduction">2.3.1 Interface and parameter introduction</h5>
<p>VertexLabel is used to define the vertex type and describe the constraint information of the vertex.</p>
<p>The constraint information that VertexLabel allows to define include: name, idStrategy, properties, primaryKeys and nullableKeys, which are introduced one by one below.</p>
<ul>
<li>name: The name of the VertexLabel, used to distinguish different VertexLabels, VertexLabels with the same name are not allowed.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>param</th>
<th>must set</th>
</tr>
</thead>
<tbody>
<tr>
<td>vertexLabel(String name)</td>
<td>name</td>
<td>y</td>
</tr>
</tbody>
</table>
<ul>
<li>idStrategy: Each VertexLabel can choose its own Id strategy. There are currently three strategies to choose from, namely Automatic (automatically generated), Customize (user input) and PrimaryKey (primary attribute key). Among them, Automatic uses the Snowflake algorithm to generate Id, Customize requires the user to pass in the Id of string or number type, and PrimaryKey allows the user to select several properties of VertexLabel as the basis for differentiation. HugeGraph will be spliced and generated Id according to the value of the primary properties. idStrategy uses Automatic by default, but if the user does not explicitly set idStrategy and calls the primaryKeys(&hellip;) method to set the primary property, then idStrategy will automatically use PrimaryKey.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>idStrategy</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>useAutomaticId</td>
<td>AUTOMATIC</td>
<td>generate id automaticly by Snowflake algorithom</td>
</tr>
<tr>
<td>useCustomizeStringId</td>
<td>CUSTOMIZE_STRING</td>
<td>passed id by user, must be string type</td>
</tr>
<tr>
<td>useCustomizeNumberId</td>
<td>CUSTOMIZE_NUMBER</td>
<td>passed id by user, must be number type</td>
</tr>
<tr>
<td>usePrimaryKeyId</td>
<td>PRIMARY_KEY</td>
<td>choose some important prop as primary key to splice id</td>
</tr>
</tbody>
</table>
<ul>
<li>properties: define the properties of the vertex, the incoming parameter is the name of the PropertyKey.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>properties(String&hellip; properties)</td>
<td>allow to pass multi properties</td>
</tr>
</tbody>
</table>
<ul>
<li>primaryKeys: When the user selects the Id strategy of PrimaryKey, several primary properties need to be selected from the properties of VertexLabel as the basis for differentiation;</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>primaryKeys(String&hellip; keys)</td>
<td>allow to choose multi prop as primaryKeys</td>
</tr>
</tbody>
</table>
<p>Note that the selection of the Id strategy and the setting of primaryKeys have some mutual constraints, which cannot be called at will. The constraints are shown in the following table:</p>
<table>
<thead>
<tr>
<th></th>
<th>useAutomaticId</th>
<th>useCustomizeStringId</th>
<th>useCustomizeNumberId</th>
<th>usePrimaryKeyId</th>
</tr>
</thead>
<tbody>
<tr>
<td>unset primaryKeys</td>
<td>AUTOMATIC</td>
<td>CUSTOMIZE_STRING</td>
<td>CUSTOMIZE_NUMBER</td>
<td>ERROR</td>
</tr>
<tr>
<td>set primaryKeys</td>
<td>ERROR</td>
<td>ERROR</td>
<td>ERROR</td>
<td>PRIMARY_KEY</td>
</tr>
</tbody>
</table>
<ul>
<li>nullableKeys: For properties set by the properties(&hellip;) method, all of them are non-nullable by default, that is, the property must be assigned a value when creating a vertex, which may impose too strict integrity requirements on user data. In order to avoid such strong constraints, the user can set some properties to be nullable through this method, so that the properties can be unassigned when adding vertices.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>nullableKeys(String&hellip; properties)</td>
<td>allow to pass multi props</td>
</tr>
</tbody>
</table>
<p>Note: primaryKeys and nullableKeys cannot intersect, because a property cannot be both primary and nullable.</p>
<ul>
<li>enableLabelIndex: The user can specify whether to create an index for the label. If you don&rsquo;t create it, you can&rsquo;t globally search for the vertices and edges of the specified label. If you create it, you can search globally, like <code>g.V().hasLabel('person'), g.E().has('label', 'person')</code> query, but the performance will be slower when inserting data, and it will take up more storage space. This defaults to true.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>enableLabelIndex(boolean enable)</td>
<td>Whether to create a label index</td>
</tr>
</tbody>
</table>
<ul>
<li>userdata: Users can add some constraints or additional information by themselves, and then check whether the incoming properties meet the constraints, or extract additional information when necessary.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>userdata(String key, Object value)</td>
<td>The same key, the latter will cover the former</td>
</tr>
</tbody>
</table>
<h5 id="232-create-vertexlabel">2.3.2 Create VertexLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Use Automatic Id strategy
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">useAutomaticId</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Use Customize_String Id strategy
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">useCustomizeStringId</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Use Customize_Number Id strategy
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">useCustomizeNumberId</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Use PrimaryKey Id strategy
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">usePrimaryKeyId</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><h5 id="233-update-vertexlabel">2.3.3 Update VertexLabel</h5>
<p>VertexLabel can append constraints, but only properties and nullableKeys, and the appended properties must also be added to the nullableKeys collection.</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">nullableKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">append</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><h5 id="234-delete-vertexlabel">2.3.4 Delete VertexLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">remove</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><h5 id="235-query-vertexlabel">2.3.5 Query VertexLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Get VertexLabel
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getVertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Get attributes of VertexLabel
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getVertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">idStrategy</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getVertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getVertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">name</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getVertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getVertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">nullableKeys</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getVertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">userdata</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><h4 id="24-edgelabel">2.4 EdgeLabel</h4>
<h5 id="241-interface-and-parameter-introduction">2.4.1 Interface and parameter introduction</h5>
<p>EdgeLabel is used to define the edge type and describe the constraint information of the edge.</p>
<p>The constraint information that EdgeLabel allows to define include: name, sourceLabel, targetLabel, frequency, properties, sortKeys and nullableKeys, which are introduced one by one below.</p>
<ul>
<li>name: The name of the EdgeLabel, used to distinguish different EdgeLabels, EdgeLabels with the same name are not allowed.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>param</th>
<th>must set</th>
</tr>
</thead>
<tbody>
<tr>
<td>edgeLabel(String name)</td>
<td>name</td>
<td>y</td>
</tr>
</tbody>
</table>
<ul>
<li>
<p>sourceLabel: The name of the source vertex type of the edge link, only one is allowed;</p>
</li>
<li>
<p>targetLabel: The name of the target vertex type of the edge link, only one is allowed;</p>
</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>param</th>
<th>must set</th>
</tr>
</thead>
<tbody>
<tr>
<td>sourceLabel(String label)</td>
<td>label</td>
<td>y</td>
</tr>
<tr>
<td>targetLabel(String label)</td>
<td>label</td>
<td>y</td>
</tr>
</tbody>
</table>
<ul>
<li>frequency: Indicating the number of times a relationship occurs between two specific vertices, which can be single (single) or multiple (frequency), the default is single.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>frequency</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>singleTime()</td>
<td>single</td>
<td>a relationship can only occur once</td>
</tr>
<tr>
<td>multiTimes()</td>
<td>multiple</td>
<td>a relationship can occur many times</td>
</tr>
</tbody>
</table>
<ul>
<li>properties: Define the properties of the edge.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>properties(String&hellip; properties)</td>
<td>allow to pass multi props</td>
</tr>
</tbody>
</table>
<ul>
<li>sortKeys: When the frequency of EdgeLabel is multiple, some properties are needed to distinguish the multiple relationships, so sortKeys (sorted keys) is introduced;</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>sortKeys(String&hellip; keys)</td>
<td>allow to choose multi prop as sortKeys</td>
</tr>
</tbody>
</table>
<ul>
<li>nullableKeys: Consistent with the concept of nullableKeys in vertices.</li>
</ul>
<p>Note: sortKeys and nullableKeys also cannot intersect.</p>
<ul>
<li>
<p>enableLabelIndex: It is consistent with the concept of enableLabelIndex in the vertex.</p>
</li>
<li>
<p>userdata: Users can add some constraints or additional information by themselves, and then check whether the incoming properties meet the constraints, or extract additional information when necessary.</p>
</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>userdata(String key, Object value)</td>
<td>The same key, the latter will cover the former</td>
</tr>
</tbody>
</table>
<h5 id="242-create-edgelabel">2.4.2 Create EdgeLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">link</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">multiTimes</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">link</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">sortKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><h5 id="243-update-edgelabel">2.4.3 Update EdgeLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">nullableKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">append</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><h5 id="244-delete-edgelabel">2.4.4 Delete EdgeLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">remove</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><h5 id="245-qeury-edgelabel">2.4.5 Qeury EdgeLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Get EdgeLabel
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Get attributes of EdgeLabel
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">frequency</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">sortKeys</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">name</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">nullableKeys</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getEdgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">userdata</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><h4 id="25-indexlabel">2.5 IndexLabel</h4>
<h5 id="251-interface-and-parameter-introduction">2.5.1 Interface and parameter introduction</h5>
<p>IndexLabel is used to define the index type and describe the constraint information of the index, mainly for the convenience of query.</p>
<p>The constraint information that IndexLabel allows to define include: name, baseType, baseValue, indexFeilds, indexType, which are introduced one by one below.</p>
<ul>
<li>name: The name of the IndexLabel, used to distinguish different IndexLabels, IndexLabels with the same name are not allowed.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>param</th>
<th>must set</th>
</tr>
</thead>
<tbody>
<tr>
<td>indexLabel(String name)</td>
<td>name</td>
<td>y</td>
</tr>
</tbody>
</table>
<ul>
<li>
<p>baseType: Indicates whether to index VertexLabel or EdgeLabel, used in conjunction with the baseValue below.</p>
</li>
<li>
<p>baseValue: Specifies the name of the VertexLabel or EdgeLabel to be indexed.</p>
</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>param</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>onV(String baseValue)</td>
<td>baseValue</td>
<td>build index for VertexLabel: &lsquo;baseValue&rsquo;</td>
</tr>
<tr>
<td>onE(String baseValue)</td>
<td>baseValue</td>
<td>build index for EdgeLabel: &lsquo;baseValue&rsquo;</td>
</tr>
</tbody>
</table>
<ul>
<li>indexFields: on which fields to index, it can be a joint index for multiple columns.</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>param</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>by(String&hellip; fields)</td>
<td>files</td>
<td>allow to build index for multi fields for secondary index</td>
</tr>
</tbody>
</table>
<ul>
<li>indexType: There are currently five types of indexes established, namely Secondary, Range, Search, Shard and Unique.
<ul>
<li>Secondary Index supports exact matching secondary index, allow to build joint index, joint index supports index prefix search
<ul>
<li>Single Property Secondary Index, support equality query, for example: the secondary index of the city property of the person vertex, you can use <code>g.V().has(&quot;city&quot;, &quot;Beijing&quot;)</code> to query all the vertices with &ldquo;city attribute value is Beijing&rdquo;</li>
<li>Joint Secondary Index, supports prefix query and equality query, such as: joint index of city and street properties of person vertex, you can use <code>g.V().has(&quot;city&quot;, &quot;Beijing&quot;).has('street', 'Zhongguancun street ')</code> to query all vertices of &ldquo;city property value is Beijing and street property value is Zhongguancun&rdquo;, or <code>g.V().has(&quot;city&quot;, &quot;Beijing&quot;)</code> to query all vertices of &ldquo;city property value is Beijing&rdquo;.</li>
</ul>
<blockquote>
<p>The query of Secondary Index is based on the query condition of &ldquo;yes&rdquo; or &ldquo;equal&rdquo;, and does not support &ldquo;partial matching&rdquo;.</p>
</blockquote>
</li>
<li>Range Index supports for range queries of numeric types
<ul>
<li>Must be a single number or date attribute, for example: the range index of the age property of the person vertex, you can use <code>g.V().has(&quot;age&quot;, P.gt(18))</code> to query the vertices with &ldquo;age property value greater than 18&rdquo; . In addition to <code>P.gt()</code>, also supports <code>P.gte()</code>, <code>P.lte()</code>, <code>P.lt()</code>, <code>P.eq()</code>, <code>P.between() </code>, <code>P.inside()</code> and <code>P.outside()</code> etc.</li>
</ul>
</li>
<li>Search Index supports full-text search
<ul>
<li>It must be a single text property, such as: full-text index of the address property of the person vertex, you can use <code>g.V().has(&quot;address&quot;, Text.contains('building')</code> to query all vertices whose &ldquo;address property contains a &lsquo;building&rsquo;&rdquo;</li>
</ul>
<blockquote>
<p>The query of the Search Index is based on the query condition of &ldquo;is&rdquo; or &ldquo;contains&rdquo;.</p>
</blockquote>
</li>
<li>Shard Index supports prefix matching + numeric range query
<ul>
<li>The shard index of N properties supports range queries with equal prefixes. For example, the shard index of the city and age properties of the person vertex can use <code>g.V().has(&quot;city&quot;, &quot;Beijing&quot;).has (&quot;age&quot;, P.between(18, 30))</code>Query &ldquo;city property is Beijing and all vertices whose age is greater than or equal to 18 and less than 30&rdquo;.</li>
<li>When all N properties are text properties in a Shard Index, it is equivalent to Secondary Index.</li>
<li>When there is only one single number or date property in a Shard Index, it is equivalent to the Range Index.</li>
</ul>
<blockquote>
<p>Shard Index can have any number or date property, but at most one range search condition can be provided when querying, and the prefix properties of the Shard Search conditions must be &ldquo;equals&rdquo;.</p>
</blockquote>
</li>
<li>Unique Index supports properties uniqueness constraints, that is, the value of properties can be limited to not repeat, and joint indexing is allowed, but querying is not supported now
<ul>
<li>The unique index of single or multiple properties cannot be used for query, only the value of the property can be limited, and an error will be reported when there is a duplicate value.</li>
</ul>
</li>
</ul>
</li>
</ul>
<table>
<thead>
<tr>
<th>interface</th>
<th>indexType</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
<td>secondary()</td>
<td>Secondary</td>
<td>support prefix search</td>
</tr>
<tr>
<td>range()</td>
<td>Range</td>
<td>support range(numeric or date type) search</td>
</tr>
<tr>
<td>search()</td>
<td>Search</td>
<td>support full text search</td>
</tr>
<tr>
<td>shard()</td>
<td>Shard</td>
<td>support prefix + range(numeric or date type) search</td>
</tr>
<tr>
<td>unique()</td>
<td>Unique</td>
<td>support unique props value, not support search</td>
</tr>
</tbody>
</table>
<h5 id="252-create-indexlabel">2.5.2 Create IndexLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAge&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">range</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;createdByDate&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onE</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">secondary</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByLived&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onE</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;lived&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">search</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByCityAndAge&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">shard</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personById&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;id&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">unique</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span></code></pre></div><h5 id="253-delete-indexlabel">2.5.3 Delete IndexLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAge&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">remove</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><h5 id="254-query-indexlabel">2.5.4 Query IndexLabel</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Get IndexLabel
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getIndexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAge&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// Get attributes of IndexLabel
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getIndexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAge&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">baseType</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getIndexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAge&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">baseValue</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getIndexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAge&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">indexFields</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getIndexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAge&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">indexType</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">getIndexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAge&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">name</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><h3 id="3-graph">3 Graph</h3>
<h4 id="31-vertex">3.1 Vertex</h4>
<p>Vertices are the most basic elements of a graph, and there can be many vertices in a graph. Here is an example of adding vertices:</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">Vertex</span> <span style="color:#000">marko</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">29</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">Vertex</span> <span style="color:#000">lop</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">328</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span></code></pre></div><ul>
<li>The key to adding vertices is the vertex properties. The number of parameters of the vertex adding function must be an even number and satisfy the order of <code>key1 -&gt; val1, key2 -&gt; val2 ...</code>, and the order between key-value pairs is free .</li>
<li>The parameter must contain a special key-value pair, namely <code>T.label -&gt; &quot;val&quot;</code>, which is used to define the category of the vertex, so that the program can obtain the schema definition of the VertexLabel from the cache or backend, and then do subsequent constraint checks. The label in the example is defined as person.</li>
<li>If the vertex type&rsquo;s Id policy is <code>AUTOMATIC</code>, users are not allowed to pass in id key-value pairs.</li>
<li>If the Id policy of the vertex type is <code>CUSTOMIZE_STRING</code>, the user needs to pass in the value of the id of the String type. The key-value pair is like: <code>&quot;T.id&quot;, &quot;123456&quot;</code>.</li>
<li>If the Id policy of the vertex type is <code>CUSTOMIZE_NUMBER</code>, the user needs to pass in the value of the id of the Number type. The key-value pair is like: <code>&quot;T.id&quot;, 123456</code>.</li>
<li>If the Id policy of the vertex type is <code>PRIMARY_KEY</code>, the parameters must also contain the name and value of the properties corresponding to the <code>primaryKeys</code>, if not set an exception will be thrown. For example, the <code>primaryKeys</code> of <code>person</code> is <code>name</code>, in the example, the value of <code>name</code> is set to <code>marko</code>.</li>
<li>For properties that are not nullableKeys, a value must be assigned.</li>
<li>The remaining parameters are the settings of other properties of the vertex, but they are not required.</li>
<li>After calling the <code>addVertex</code> method, the vertices are inserted into the backend storage system immediately.</li>
</ul>
<h4 id="32-edge">3.2 Edge</h4>
<p>After added vertices, edges are also needed to form a complete graph. Here is an example of adding edges:</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-java" data-lang="java"><span style="display:flex;"><span><span style="color:#000">Edge</span> <span style="color:#000">knows1</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">vadas</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span></code></pre></div><ul>
<li>The function <code>addEdge()</code> of the (source) vertex is to add a edge(relationship) between itself and another vertex. The first parameter of the function is the label of the edge, and the second parameter is the target vertex. The position and order of these two parameters are fixed. The subsequent parameters are the order of <code>key1 -&gt; val1, key2 -&gt; val2 ...</code>, set the properties of the edge, and the key-value pair order is free.</li>
<li>The source and target vertices must conform to the definitions of sourcelabel and targetlabel in EdgeLabel, and cannot be added arbitrarily.</li>
<li>For properties that are not nullableKeys, a value must be assigned.</li>
</ul>
<p><strong>Note: When frequency is multiple, the value of the property type corresponding to sortKeys must be set.</strong></p>
<h3 id="4-examples">4 Examples</h3>
<p>Simple examples can reference <a href="/docs/quickstart/hugegraph-client">HugeGraph-Client</a></p>
</div>
<div class="td-content" style="page-break-before: always">
<h1 id="pg-1ebf9ecb86d8a6b8536fd581e696ce8c">3 - Gremlin-Console</h1>
<p>Gremlin-Console是由Tinkerpop自己开发的一个交互式客户端,用户可以使用该客户端对Graph做各种操作,主要有两种使用模式:</p>
<ul>
<li>单机离线调用模式;</li>
<li>Client/Server请求模式;</li>
</ul>
<h3 id="1-单机离线调用模式">1 单机离线调用模式</h3>
<p>由于lib目录下已经包含了HugeCore的jar包,且HugeGraph已经作为插件注册到Console中,用户可以直接写groovy脚本调用HugeGraph-Core的代码,然后交由Gremlin-Console内的解析引擎执行,就能在不启动Server的情况下操作图。</p>
<p>这种模式便于用户快速上手体验,但是不适合大量数据插入和查询的场景。下面给一个示例:</p>
<p>在script目录下有一个示例脚本:example.groovy</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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">import</span> <span style="color:#000">com.baidu.hugegraph.HugeFactory</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">import</span> <span style="color:#000">com.baidu.hugegraph.dist.RegisterUtil</span>
</span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">import</span> <span style="color:#000">org.apache.tinkerpop.gremlin.structure.T</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">RegisterUtil</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">registerCassandra</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">RegisterUtil</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">registerScyllaDB</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">conf</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#4e9a06">&#34;conf/hugegraph.properties&#34;</span>
</span></span><span style="display:flex;"><span><span style="color:#000">graph</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">HugeFactory</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">open</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">conf</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">schema</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asInt</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asDouble</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asText</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">propertyKey</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">asInt</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">vertexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">primaryKeys</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByName&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">secondary</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByCity&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">secondary</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;personByAgeAndCity&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">secondary</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;softwareByPrice&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onV</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">range</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">edgeLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">sourceLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">targetLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">properties</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;createdByDate&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onE</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">secondary</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;createdByWeight&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onE</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">range</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span><span style="color:#000">schema</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">indexLabel</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knowsByWeight&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">onE</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">by</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">).</span><span style="color:#c4a000">range</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">ifNotExist</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">create</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">marko</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;marko&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">29</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">vadas</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;vadas&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">27</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Hongkong&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">lop</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;lop&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">328</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">josh</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;josh&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">32</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Beijing&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">ripple</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;software&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;ripple&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;lang&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;java&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;price&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">199</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">peter</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addVertex</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#000">T</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">label</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;person&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;name&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;peter&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;age&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">35</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;city&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;Shanghai&#34;</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">vadas</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20160110&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">0.5</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;knows&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20130220&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">1.0</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20171210&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">0.4</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20091111&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">0.4</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">ripple</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20171210&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">1.0</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span><span style="color:#000">peter</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">addEdge</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;created&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;date&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;20170324&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">&#34;weight&#34;</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#0000cf;font-weight:bold">0.2</span><span style="color:#ce5c00;font-weight:bold">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">tx</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">commit</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">g</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">graph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">traversal</span><span style="color:#ce5c00;font-weight:bold">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">System</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">out</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">println</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;&gt;&gt;&gt;&gt; query all vertices: size=&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span> <span style="color:#000">g</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">V</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">toList</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">size</span><span style="color:#ce5c00;font-weight:bold">());</span>
</span></span><span style="display:flex;"><span><span style="color:#000">System</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">out</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">println</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;&gt;&gt;&gt;&gt; query all edges: size=&#34;</span> <span style="color:#ce5c00;font-weight:bold">+</span> <span style="color:#000">g</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">E</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">toList</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">size</span><span style="color:#ce5c00;font-weight:bold">());</span>
</span></span></code></pre></div><p>其实这一段groovy脚本几乎就是Java代码,不同之处仅在于变量的定义可以不写类型声明,以及每一行末尾的分号可以去掉。</p>
<blockquote>
<p>g.V() 是获取所有的顶点,g.E() 是获取所有的边,toList() 是把结果存到一个 List 中,参考<a href="http://tinkerpop.apache.org/docs/current/reference/#terminal-steps">TinkerPop Terminal Steps</a></p>
</blockquote>
<p>下面进入gremlin-console,并传入该脚本令其执行:</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/gremlin-console.sh scripts/example.groovy
</span></span><span style="display:flex;"><span>objc<span style="color:#ce5c00;font-weight:bold">[</span>5038<span style="color:#ce5c00;font-weight:bold">]</span>: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/java <span style="color:#ce5c00;font-weight:bold">(</span>0x10137a4c0<span style="color:#ce5c00;font-weight:bold">)</span> and /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/lib/libinstrument.dylib <span style="color:#ce5c00;font-weight:bold">(</span>0x102bbb4e0<span style="color:#ce5c00;font-weight:bold">)</span>. One of the two will be used. Which one is undefined.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">\,</span>,,/
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">(</span>o o<span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span>-----oOOo-<span style="color:#ce5c00;font-weight:bold">(</span>3<span style="color:#ce5c00;font-weight:bold">)</span>-oOOo-----
</span></span><span style="display:flex;"><span>plugin activated: com.baidu.hugegraph
</span></span><span style="display:flex;"><span>plugin activated: tinkerpop.server
</span></span><span style="display:flex;"><span>plugin activated: tinkerpop.utilities
</span></span><span style="display:flex;"><span>plugin activated: tinkerpop.tinkergraph
</span></span><span style="display:flex;"><span>2018-01-15 14:36:19 <span style="color:#0000cf;font-weight:bold">7516</span> <span style="color:#ce5c00;font-weight:bold">[</span>main<span style="color:#ce5c00;font-weight:bold">]</span> <span style="color:#ce5c00;font-weight:bold">[</span>WARN <span style="color:#ce5c00;font-weight:bold">]</span> com.baidu.hugegraph.config.HugeConfig <span style="color:#ce5c00;font-weight:bold">[]</span> - The config option <span style="color:#4e9a06">&#39;rocksdb.data_path&#39;</span> is redundant, please ensure it has been registered
</span></span><span style="display:flex;"><span>2018-01-15 14:36:19 <span style="color:#0000cf;font-weight:bold">7523</span> <span style="color:#ce5c00;font-weight:bold">[</span>main<span style="color:#ce5c00;font-weight:bold">]</span> <span style="color:#ce5c00;font-weight:bold">[</span>WARN <span style="color:#ce5c00;font-weight:bold">]</span> com.baidu.hugegraph.config.HugeConfig <span style="color:#ce5c00;font-weight:bold">[]</span> - The config option <span style="color:#4e9a06">&#39;rocksdb.wal_path&#39;</span> is redundant, please ensure it has been registered
</span></span><span style="display:flex;"><span>2018-01-15 14:36:19 <span style="color:#0000cf;font-weight:bold">7604</span> <span style="color:#ce5c00;font-weight:bold">[</span>main<span style="color:#ce5c00;font-weight:bold">]</span> <span style="color:#ce5c00;font-weight:bold">[</span>INFO <span style="color:#ce5c00;font-weight:bold">]</span> com.baidu.hugegraph.HugeGraph <span style="color:#ce5c00;font-weight:bold">[]</span> - Opening backend store <span style="color:#4e9a06">&#39;cassandra&#39;</span> <span style="color:#204a87;font-weight:bold">for</span> graph <span style="color:#4e9a06">&#39;hugegraph&#39;</span>
</span></span><span style="display:flex;"><span>&gt;&gt;&gt;&gt; query all vertices: <span style="color:#000">size</span><span style="color:#ce5c00;font-weight:bold">=</span><span style="color:#0000cf;font-weight:bold">6</span>
</span></span><span style="display:flex;"><span>&gt;&gt;&gt;&gt; query all edges: <span style="color:#000">size</span><span style="color:#ce5c00;font-weight:bold">=</span><span style="color:#0000cf;font-weight:bold">6</span>
</span></span></code></pre></div><p>可以看到,插入了6个顶点、6条边,并查询出来了。进入console之后,还可继续输入groovy语句对图做操作:</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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#000">gremlin</span><span style="color:#ce5c00;font-weight:bold">&gt;</span> <span style="color:#000">g</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">V</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">ripple</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">vadas</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">peter</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#000">gremlin</span><span style="color:#ce5c00;font-weight:bold">&gt;</span> <span style="color:#000">g</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">E</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">e</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#f57900">S1:</span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">&gt;&gt;</span><span style="color:#f57900">S2:</span><span style="color:#000">ripple</span><span style="color:#ce5c00;font-weight:bold">][</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#000">created</span><span style="color:#ce5c00;font-weight:bold">-&gt;</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">ripple</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">e</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#f57900">S1:</span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#0000cf;font-weight:bold">20160110</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#f57900">S1:</span><span style="color:#000">vadas</span><span style="color:#ce5c00;font-weight:bold">][</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#000">knows</span><span style="color:#ce5c00;font-weight:bold">-&gt;</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">vadas</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">e</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#f57900">S1:</span><span style="color:#000">peter</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">&gt;&gt;</span><span style="color:#f57900">S2:</span><span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">][</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">peter</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#000">created</span><span style="color:#ce5c00;font-weight:bold">-&gt;</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">e</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#f57900">S1:</span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">&gt;&gt;</span><span style="color:#f57900">S2:</span><span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">][</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#000">created</span><span style="color:#ce5c00;font-weight:bold">-&gt;</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">e</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#f57900">S1:</span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#0000cf;font-weight:bold">20130220</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#f57900">S1:</span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">][</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#000">knows</span><span style="color:#ce5c00;font-weight:bold">-&gt;</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">e</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#f57900">S1:</span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">&gt;</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">&gt;&gt;</span><span style="color:#f57900">S2:</span><span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">][</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#000">created</span><span style="color:#ce5c00;font-weight:bold">-&gt;</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span></code></pre></div><p>更多的Gremlin语句请参考<a href="http://tinkerpop.apache.org/docs/current/reference/">Tinkerpop官网</a></p>
<h3 id="2-clientserver请求模式">2 Client/Server请求模式</h3>
<p>因为Gremlin-Console只能通过WebSocket连接HugeGraph-Server,默认HugeGraph-Server是对外提供HTTP连接的,所以先修改gremlin-server的配置。</p>
<p><em>注意:将连接方式修改为WebSocket后,HugeGraph-Client、HugeGraph-Loader、HugeGraph-Studio等配套工具都不能使用了。</em></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:#8f5902;font-style:italic"># vim conf/gremlin-server.yaml</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:bold">host</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">127.0.0.1</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:bold">port</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">8182</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:bold">scriptEvaluationTimeout</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">30000</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"># If you want to start gremlin-server for gremlin-console(web-socket),</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"># please change `HttpChannelizer` to `WebSocketChannelizer` or comment this line.</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:bold">channelizer</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">org.apache.tinkerpop.gremlin.server.channel.HttpChannelizer</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:bold">graphs</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">hugegraph</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">conf/hugegraph.properties,</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:bold">hugegraph1</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">conf/hugegraph1.properties</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:#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:bold">plugins</span><span style="color:#000;font-weight:bold">:</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">com.baidu.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:bold">scriptEngines</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">gremlin-groovy</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">imports</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">java.lang.Math],</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:bold">staticImports</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">java.lang.Math.PI],</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:bold">scripts</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">scripts/empty-sample.groovy]</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:#f8f8f8;text-decoration:underline">
</span></span></span><span style="display:flex;"><span><span style="color:#f8f8f8;text-decoration:underline"></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:bold">serializers</span><span style="color:#000;font-weight:bold">:</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:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">className</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0,</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:bold">config</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">serializeResultToString</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">false</span><span style="color:#000;font-weight:bold">,</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:bold">ioRegistries</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">com.baidu.hugegraph.io.HugeGraphIoRegistry]</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:#f8f8f8;text-decoration:underline">
</span></span></span><span style="display:flex;"><span><span style="color:#f8f8f8;text-decoration:underline"> </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:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">className</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0,</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:bold">config</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">serializeResultToString</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</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:bold">ioRegistries</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">com.baidu.hugegraph.io.HugeGraphIoRegistry]</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:#f8f8f8;text-decoration:underline">
</span></span></span><span style="display:flex;"><span><span style="color:#f8f8f8;text-decoration:underline"> </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:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">className</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0,</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:bold">config</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">serializeResultToString</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">false</span><span style="color:#000;font-weight:bold">,</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:bold">ioRegistries</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">com.baidu.hugegraph.io.HugeGraphIoRegistry]</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:#f8f8f8;text-decoration:underline">
</span></span></span><span style="display:flex;"><span><span style="color:#f8f8f8;text-decoration:underline"> </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:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">className</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0,</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:bold">config</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">serializeResultToString</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">false</span><span style="color:#000;font-weight:bold">,</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:bold">ioRegistries</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">com.baidu.hugegraph.io.HugeGraphIoRegistry]</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:#f8f8f8;text-decoration:underline">
</span></span></span><span style="display:flex;"><span><span style="color:#f8f8f8;text-decoration:underline"> </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:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">className</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0,</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:bold">config</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">serializeResultToString</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">false</span><span style="color:#000;font-weight:bold">,</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:bold">ioRegistries</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">com.baidu.hugegraph.io.HugeGraphIoRegistry]</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:#f8f8f8;text-decoration:underline">
</span></span></span><span style="display:flex;"><span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">metrics</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">consoleReporter</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span>{<span style="color:#204a87;font-weight:bold">enabled: false, interval</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">180000</span>}<span style="color:#000;font-weight:bold">,</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:bold">csvReporter</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span>{<span style="color:#204a87;font-weight:bold">enabled: true, interval: 180000, fileName</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">/tmp/gremlin-server-metrics.csv},</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:bold">jmxReporter</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span>{<span style="color:#204a87;font-weight:bold">enabled</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">false</span>}<span style="color:#000;font-weight:bold">,</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:bold">slf4jReporter</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span>{<span style="color:#204a87;font-weight:bold">enabled: false, interval</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">180000</span>}<span style="color:#000;font-weight:bold">,</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:bold">gangliaReporter</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span>{<span style="color:#204a87;font-weight:bold">enabled: false, interval: 180000, addressingMode</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">MULTICAST},</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:bold">graphiteReporter</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span>{<span style="color:#204a87;font-weight:bold">enabled: false, interval</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">180000</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:#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:bold">maxInitialLineLength</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">4096</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:bold">maxHeaderSize</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">8192</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:bold">maxChunkSize</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">8192</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:bold">maxContentLength</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">65536</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:bold">maxAccumulationBufferComponents</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">1024</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:bold">resultIterationBatchSize</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">64</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:bold">writeBufferLowWaterMark</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">32768</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:bold">writeBufferHighWaterMark</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">65536</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:bold">ssl</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">enabled</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">false</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:#f8f8f8;text-decoration:underline">
</span></span></span></code></pre></div><p><code>channelizer: org.apache.tinkerpop.gremlin.server.channel.HttpChannelizer</code>修改成<code>channelizer: org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer</code>或直接注释,然后按照步骤启动Server。</p>
<p>然后进入gremlin-console</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/gremlin-console.sh
</span></span><span style="display:flex;"><span>objc<span style="color:#ce5c00;font-weight:bold">[</span>5761<span style="color:#ce5c00;font-weight:bold">]</span>: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/java <span style="color:#ce5c00;font-weight:bold">(</span>0x10ec584c0<span style="color:#ce5c00;font-weight:bold">)</span> and /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/lib/libinstrument.dylib <span style="color:#ce5c00;font-weight:bold">(</span>0x10ecdc4e0<span style="color:#ce5c00;font-weight:bold">)</span>. One of the two will be used. Which one is undefined.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span> <span style="color:#4e9a06">\,</span>,,/
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">(</span>o o<span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span>-----oOOo-<span style="color:#ce5c00;font-weight:bold">(</span>3<span style="color:#ce5c00;font-weight:bold">)</span>-oOOo-----
</span></span><span style="display:flex;"><span>plugin activated: com.baidu.hugegraph
</span></span><span style="display:flex;"><span>plugin activated: tinkerpop.server
</span></span><span style="display:flex;"><span>plugin activated: tinkerpop.utilities
</span></span><span style="display:flex;"><span>plugin activated: tinkerpop.tinkergraph
</span></span></code></pre></div><p>连接server,需在配置文件中指定连接参数,在conf目录下有一个默认的remote.yaml</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:#8f5902;font-style:italic"># cat conf/remote.yaml</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:bold">hosts</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">localhost]</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:bold">port</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#0000cf;font-weight:bold">8182</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:bold">serializer</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">className</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000">org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0,</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:bold">config</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </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:bold">serializeResultToString</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#204a87;font-weight:bold">true</span><span style="color:#000;font-weight:bold">,</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:bold">ioRegistries</span><span style="color:#000;font-weight:bold">:</span><span style="color:#f8f8f8;text-decoration:underline"> </span><span style="color:#000;font-weight:bold">[</span><span style="color:#000">com.baidu.hugegraph.io.HugeGraphIoRegistry]</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:#f8f8f8;text-decoration:underline">
</span></span></span><span style="display:flex;"><span><span style="color:#f8f8f8;text-decoration:underline"></span>}<span style="color:#f8f8f8;text-decoration:underline">
</span></span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#000">gremlin</span><span style="color:#ce5c00;font-weight:bold">&gt;</span> <span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">remote</span> <span style="color:#000">connect</span> <span style="color:#000">tinkerpop</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">server</span> <span style="color:#000">conf</span><span style="color:#4e9a06">/remote.yaml
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">2018-01-15 15:30:31 11528 [main] [INFO ] org.apache.tinkerpop.gremlin.driver.Connection [] - Created new connection for ws://localhost:8182/</span><span style="color:#000">gremlin</span>
</span></span><span style="display:flex;"><span><span style="color:#0000cf;font-weight:bold">2018</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#0000cf;font-weight:bold">01</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#0000cf;font-weight:bold">15</span> <span style="color:#0000cf;font-weight:bold">15</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">30</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">31</span> <span style="color:#0000cf;font-weight:bold">11538</span> <span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#000">main</span><span style="color:#ce5c00;font-weight:bold">]</span> <span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#000">INFO</span> <span style="color:#ce5c00;font-weight:bold">]</span> <span style="color:#000">org</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">apache</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">tinkerpop</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">gremlin</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">driver</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">Connection</span> <span style="color:#ce5c00;font-weight:bold">[]</span> <span style="color:#ce5c00;font-weight:bold">-</span> <span style="color:#000">Created</span> <span style="color:#204a87;font-weight:bold">new</span> <span style="color:#000">connection</span> <span style="color:#204a87;font-weight:bold">for</span> <span style="color:#f57900">ws:</span><span style="color:#8f5902;font-style:italic">//localhost:8182/gremlin
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#0000cf;font-weight:bold">2018</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#0000cf;font-weight:bold">01</span><span style="color:#ce5c00;font-weight:bold">-</span><span style="color:#0000cf;font-weight:bold">15</span> <span style="color:#0000cf;font-weight:bold">15</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">30</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">31</span> <span style="color:#0000cf;font-weight:bold">11538</span> <span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#000">main</span><span style="color:#ce5c00;font-weight:bold">]</span> <span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#000">INFO</span> <span style="color:#ce5c00;font-weight:bold">]</span> <span style="color:#000">org</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">apache</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">tinkerpop</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">gremlin</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">driver</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">ConnectionPool</span> <span style="color:#ce5c00;font-weight:bold">[]</span> <span style="color:#ce5c00;font-weight:bold">-</span> <span style="color:#000">Opening</span> <span style="color:#000">connection</span> <span style="color:#000">pool</span> <span style="color:#000">on</span> <span style="color:#000">Host</span><span style="color:#ce5c00;font-weight:bold">{</span><span style="color:#000">address</span><span style="color:#ce5c00;font-weight:bold">=</span><span style="color:#000">localhost</span><span style="color:#4e9a06">/127.0.0.1:8182, hostUri=ws://localhost:8182/</span><span style="color:#000">gremlin</span><span style="color:#ce5c00;font-weight:bold">}</span> <span style="color:#000">with</span> <span style="color:#000">core</span> <span style="color:#000">size</span> <span style="color:#000">of</span> <span style="color:#0000cf;font-weight:bold">2</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">Configured</span> <span style="color:#000">localhost</span><span style="color:#ce5c00;font-weight:bold">/</span><span style="color:#0000cf;font-weight:bold">127.0</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#0000cf;font-weight:bold">0.1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#0000cf;font-weight:bold">8182</span>
</span></span></code></pre></div><p>连接成功之后,在console的上下文中能使用的变量只有hugegraph和hugegraph1两个图对象(在gremlin-server.yaml中配置),如果想拥有更多的变量,可以在<code>scripts/empty-sample.groovy</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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">import</span> <span style="color:#000">org.apache.tinkerpop.gremlin.server.util.LifeCycleHook</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// an init script that returns a Map allows explicit setting of global bindings.
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#204a87;font-weight:bold">def</span> <span style="color:#000">globals</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#ce5c00;font-weight:bold">[:]</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// defines a sample LifeCycleHook that prints some output to the Gremlin Server console.
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// note that the name of the key in the &#34;global&#34; map is unimportant.
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">globals</span> <span style="color:#ce5c00;font-weight:bold">&lt;&lt;</span> <span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#f57900">hook:</span> <span style="color:#ce5c00;font-weight:bold">[</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">onStartUp</span> <span style="color:#ce5c00;font-weight:bold">:</span> <span style="color:#ce5c00;font-weight:bold">{</span> <span style="color:#000">ctx</span> <span style="color:#ce5c00;font-weight:bold">-&gt;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">ctx</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">logger</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">info</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;Executed once at startup of Gremlin Server.&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">},</span>
</span></span><span style="display:flex;"><span> <span style="color:#f57900">onShutDown:</span> <span style="color:#ce5c00;font-weight:bold">{</span> <span style="color:#000">ctx</span> <span style="color:#ce5c00;font-weight:bold">-&gt;</span>
</span></span><span style="display:flex;"><span> <span style="color:#000">ctx</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">logger</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">info</span><span style="color:#ce5c00;font-weight:bold">(</span><span style="color:#4e9a06">&#34;Executed once at shutdown of Gremlin Server.&#34;</span><span style="color:#ce5c00;font-weight:bold">)</span>
</span></span><span style="display:flex;"><span> <span style="color:#ce5c00;font-weight:bold">}</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">]</span> <span style="color:#204a87;font-weight:bold">as</span> <span style="color:#000">LifeCycleHook</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// define schema manger for hugegraph
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">schema</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">hugegraph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">schema</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic">// define the default TraversalSource to bind queries to - this one will be named &#34;g&#34;.
</span></span></span><span style="display:flex;"><span><span style="color:#8f5902;font-style:italic"></span><span style="color:#000">g</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#000">hugegraph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">traversal</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span></code></pre></div><p>这样在console中便可以直接使用schema和g这两个对象,做元数据的管理和图的查询了。</p>
<p>不定义了也没关系,因为所有的对象都可以通过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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#000">gremlin</span><span style="color:#ce5c00;font-weight:bold">&gt;</span> <span style="color:#ce5c00;font-weight:bold">:&gt;</span> <span style="color:#000">hugegraph</span><span style="color:#ce5c00;font-weight:bold">.</span><span style="color:#c4a000">traversal</span><span style="color:#ce5c00;font-weight:bold">().</span><span style="color:#c4a000">V</span><span style="color:#ce5c00;font-weight:bold">()</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">ripple</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">vadas</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">peter</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">josh</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">1</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">marko</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#000">v</span><span style="color:#ce5c00;font-weight:bold">[</span><span style="color:#0000cf;font-weight:bold">2</span><span style="color:#ce5c00;font-weight:bold">:</span><span style="color:#000">lop</span><span style="color:#ce5c00;font-weight:bold">]</span>
</span></span></code></pre></div><p>在Client/Server模式下,所有跟Server有关的操作都要加上<code>:&gt; </code>,如果不加,表示在console本地操作。</p>
<p>还可以把多条语句放在一个字符串变量中,然后一次性发给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-groovy" data-lang="groovy"><span style="display:flex;"><span><span style="color:#000">gremlin</span><span style="color:#ce5c00;font-weight:bold">&gt;</span> <span style="color:#000">script</span> <span style="color:#ce5c00;font-weight:bold">=</span> <span style="color:#4e9a06">&#34;&#34;&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">graph = hugegraph;
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">marko = graph.addVertex(T.label, &#34;person&#34;, &#34;name&#34;, &#34;marko&#34;, &#34;age&#34;, 29, &#34;city&#34;, &#34;Beijing&#34;);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">vadas = graph.addVertex(T.label, &#34;person&#34;, &#34;name&#34;, &#34;vadas&#34;, &#34;age&#34;, 27, &#34;city&#34;, &#34;Hongkong&#34;);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">lop = graph.addVertex(T.label, &#34;software&#34;, &#34;name&#34;, &#34;lop&#34;, &#34;lang&#34;, &#34;java&#34;, &#34;price&#34;, 328);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">josh = graph.addVertex(T.label, &#34;person&#34;, &#34;name&#34;, &#34;josh&#34;, &#34;age&#34;, 32, &#34;city&#34;, &#34;Beijing&#34;);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">ripple = graph.addVertex(T.label, &#34;software&#34;, &#34;name&#34;, &#34;ripple&#34;, &#34;lang&#34;, &#34;java&#34;, &#34;price&#34;, 199);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">peter = graph.addVertex(T.label, &#34;person&#34;, &#34;name&#34;, &#34;peter&#34;, &#34;age&#34;, 35, &#34;city&#34;, &#34;Shanghai&#34;);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">marko.addEdge(&#34;knows&#34;, vadas, &#34;date&#34;, &#34;20160110&#34;, &#34;weight&#34;, 0.5);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">marko.addEdge(&#34;knows&#34;, josh, &#34;date&#34;, &#34;20130220&#34;, &#34;weight&#34;, 1.0);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">marko.addEdge(&#34;created&#34;, lop, &#34;date&#34;, &#34;20171210&#34;, &#34;weight&#34;, 0.4);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">josh.addEdge(&#34;created&#34;, lop, &#34;date&#34;, &#34;20091111&#34;, &#34;weight&#34;, 0.4);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">josh.addEdge(&#34;created&#34;, ripple, &#34;date&#34;, &#34;20171210&#34;, &#34;weight&#34;, 1.0);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">peter.addEdge(&#34;created&#34;, lop, &#34;date&#34;, &#34;20170324&#34;, &#34;weight&#34;, 0.2);
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">graph.tx().commit();
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">g = graph.traversal();
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">g.V().toList().size();
</span></span></span><span style="display:flex;"><span><span style="color:#4e9a06">&#34;&#34;&#34;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#000">gremlin</span><span style="color:#ce5c00;font-weight:bold">&gt;</span> <span style="color:#ce5c00;font-weight:bold">:&gt;</span> <span style="color:#5c35cc;font-weight:bold">@script</span>
</span></span><span style="display:flex;"><span><span style="color:#ce5c00;font-weight:bold">==&gt;</span><span style="color:#0000cf;font-weight:bold">6</span>
</span></span></code></pre></div><p>更多关于gremlin-console的使用,请参考<a href="http://tinkerpop.apache.org/docs/current/reference/">Tinkerpop官网</a></p>
</div>
</main>
</div>
</div>
<footer class="bg-dark py-3 row d-print-none">
<div class="footer-container">
<div class="row">
<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.2C811.8 873.6 835.1 828.7 858.6 784.7z"/><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>
</ul>
</div>
</div>
<div class="col-6 text-white text-center container-center">
<p>Copyright &copy; 2022 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.1a2e43037d7eeb7eb548659ffab8adc920ddeef68063a09913f04392dd3c1f19.js" integrity="sha256-Gi5DA31&#43;6361SGWf&#43;ritySDd7vaAY6CZE/BDkt08Hxk=" crossorigin="anonymous"></script>
<script src='/js/prism.js'></script>
</body>
</html>