| <!doctype html> |
| <html lang="cn" 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="/cn/docs/clients/restful-api/"> |
| <link rel="alternate" type="application/rss+xml" href="/cn/docs/clients/restful-api/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>HugeGraph RESTful API | HugeGraph</title> |
| <meta name="description" content="HugeGraph-Server通过HugeGraph-API基于HTTP协议为Client提供操作图的接口,主要包括元数据和 |
| 图数据的增删改查,遍历算法,变量,图操作及其他操作。 |
| "> |
| <meta property="og:title" content="HugeGraph RESTful API" /> |
| <meta property="og:description" content="Apache HugeGraph 官网" /> |
| <meta property="og:type" content="website" /> |
| <meta property="og:url" content="/cn/docs/clients/restful-api/" /><meta property="og:site_name" content="HugeGraph" /> |
| |
| <meta itemprop="name" content="HugeGraph RESTful API"> |
| <meta itemprop="description" content="Apache HugeGraph 官网"><meta name="twitter:card" content="summary"/> |
| <meta name="twitter:title" content="HugeGraph RESTful API"/> |
| <meta name="twitter:description" content="Apache HugeGraph 官网"/> |
| |
| |
| |
| |
| <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="/cn/"> |
| <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="/cn/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="/cn/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"> |
| 中文 |
| </a> |
| <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink"> |
| |
| <a class="dropdown-item" href="/docs/clients/restful-api/">English</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="/cn/docs/clients/restful-api/">Return to the regular view of this page</a>. |
| </p> |
| </div> |
| |
| |
| |
| <h1 class="title">HugeGraph RESTful API</h1> |
| |
| |
| |
| |
| |
| <ul> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <li>1: <a href="#pg-698c3217de07a8cb0dc0e93dbae29ee9">Schema API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>2: <a href="#pg-f7f4b3b6f4b7a965f8c30675df8e56f8">PropertyKey API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>3: <a href="#pg-28cb205879be97a55ddc8cd365c4438e">VertexLabel API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>4: <a href="#pg-41864d99c39fc7040549f6eaf5441daf">EdgeLabel API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>5: <a href="#pg-7099742fb947ad5dfde9e72216c10b8a">IndexLabel API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>6: <a href="#pg-bde129922f801ad9560757fcec64d05c">Rebuild API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>7: <a href="#pg-86bf520fd6b098231f4af6590328e871">Vertex API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>8: <a href="#pg-f40127b155ddd802d50c507ff1cf5530">Edge API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>9: <a href="#pg-f0adc653be0b454ce1952bdaf0afefa6">Traverser API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>10: <a href="#pg-ced5167413a6606a537e40b18f6fec3e">Rank API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>11: <a href="#pg-32aff6fa72d51caa846c2a72e5771c5d">Variable API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>12: <a href="#pg-3d75cf337650cd90a617c3ef7e9dca87">Graphs API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>13: <a href="#pg-d9de752e44e3a8a709d187e4101fd818">Task API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>14: <a href="#pg-e84b0f106294b580ca64918b72cc71d1">Gremlin API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>15: <a href="#pg-a3b125f257052209fcb98300d5c066a7">Authentication API</a></li> |
| |
| |
| |
| |
| |
| |
| |
| <li>16: <a href="#pg-8e126d4f2f7317a1268d7edb65cd4fcc">Other API</a></li> |
| |
| |
| |
| |
| |
| </ul> |
| |
| |
| <div class="content"> |
| <p>HugeGraph-Server通过HugeGraph-API基于HTTP协议为Client提供操作图的接口,主要包括元数据和 |
| 图数据的增删改查,遍历算法,变量,图操作及其他操作。</p> |
| |
| </div> |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="td-content" style="page-break-before: always"> |
| |
| <h1 id="pg-698c3217de07a8cb0dc0e93dbae29ee9">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 & 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">"propertykeys"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aggregate_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"write_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OLTP"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.741"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"date"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aggregate_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"write_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OLTP"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.729"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aggregate_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"write_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OLTP"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.691"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aggregate_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"write_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OLTP"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.678"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aggregate_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"write_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OLTP"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.718"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"weight"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"DOUBLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aggregate_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"write_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OLTP"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.707"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aggregate_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"write_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OLTP"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.609"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"vertexlabels"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"PRIMARY_KEY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"age"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_labels"</span><span style="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">"personByCity"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"personByAgeAndCity"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ttl"</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">"enable_label_index"</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">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.783"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"PRIMARY_KEY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"price"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_labels"</span><span style="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">"softwareByPrice"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"price"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ttl"</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">"enable_label_index"</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">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.840"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"edgelabels"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"MULTIPLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"sort_keys"</span><span style="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">"date"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_labels"</span><span style="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">"knowsByWeight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"date"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ttl"</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">"enable_label_index"</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">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:41.840"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"sort_keys"</span><span style="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">"nullable_keys"</span><span style="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">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_labels"</span><span style="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">"createdByDate"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"createdByWeight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"date"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ttl"</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">"enable_label_index"</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">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:41.868"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"indexlabels"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"personByCity"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:40.886"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"createdByDate"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"EDGE_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"date"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:41.878"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"createdByWeight"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"EDGE_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"RANGE_DOUBLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:42.117"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"personByAgeAndCity"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:41.351"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"softwareByPrice"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"RANGE_INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"price"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:41.587"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knowsByWeight"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"EDGE_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"RANGE_DOUBLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"CREATED"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"~create_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2021-09-03 15:13:42.376"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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">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 & 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">"property_key"</span> <span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_id"</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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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 & 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">"property_key"</span> <span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"min"</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">"max"</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">"task_id"</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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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">"min"</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">"max"</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 & 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">"propertykeys"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"weight"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"DOUBLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"date"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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 & 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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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 & 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">"property_key"</span> <span style="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">"id"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"data_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"INT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"cardinality"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"user_data"</span><span style="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">"task_id"</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">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 & 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"DEFAULT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"enable_label_index"</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">"id"</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">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"PRIMARY_KEY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person2"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"enable_label_index"</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">"user_data"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"DEFAULT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"ttl"</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">"enable_label_index"</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>另外,当顶点中带有"创建时间"的属性且希望以"创建时间"属性作为计算顶点存活时间的起点时,可以设置 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"DEFAULT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"createdTime"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"ttl"</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">"ttl_start_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"createdTime"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"enable_label_index"</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 & 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"city"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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">"super"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"animal"</span> |
| </span></span><span style="display:flex;"><span> <span 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">"id"</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">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"PRIMARY_KEY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"enable_label_index"</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">"user_data"</span><span style="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">"super"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"animal"</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"vertexlabels"</span><span style="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">"id"</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">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"PRIMARY_KEY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"enable_label_index"</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">"user_data"</span><span style="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">"super"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"animal"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"PRIMARY_KEY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"lang"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"price"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"enable_label_index"</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">"user_data"</span><span style="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 & 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">"id"</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">"primary_keys"</span><span style="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">"name"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id_strategy"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"PRIMARY_KEY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"enable_label_index"</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">"user_data"</span><span style="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">"super"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"animal"</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"task_id"</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>(其中"1"是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p> |
| </blockquote> |
| |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="td-content" style="page-break-before: always"> |
| |
| <h1 id="pg-41864d99c39fc7040549f6eaf5441daf">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 & 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"sort_keys"</span><span style="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">"nullable_keys"</span><span style="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">"enable_label_index"</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">"id"</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">"sort_keys"</span><span style="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">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"date"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"enable_label_index"</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">"user_data"</span><span style="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">"id"</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">"sort_keys"</span><span style="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">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"createdTime"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"enable_label_index"</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">"ttl"</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">"user_data"</span><span style="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>另外,当边中带有"创建时间"的属性且希望以"创建时间"属性作为计算边存活时间的起点时,可以设置 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">"id"</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">"sort_keys"</span><span style="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">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"createdTime"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"enable_label_index"</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">"ttl"</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">"ttl_start_time"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"createdTime"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_data"</span><span style="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 & 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span 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">"id"</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">"sort_keys"</span><span style="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">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"enable_label_index"</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">"user_data"</span><span style="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 & 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">"edgelabels"</span><span style="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">"id"</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">"sort_keys"</span><span style="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">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"enable_label_index"</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">"user_data"</span><span style="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">"id"</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">"sort_keys"</span><span style="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">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"enable_label_index"</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">"user_data"</span><span style="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 & 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">"id"</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">"sort_keys"</span><span style="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">"source_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_names"</span><span style="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">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"frequency"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SINGLE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"nullable_keys"</span><span style="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">"city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"weight"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"enable_label_index"</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">"user_data"</span><span style="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 & 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">"task_id"</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>(其中"1"是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p> |
| </blockquote> |
| |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="td-content" style="page-break-before: always"> |
| |
| <h1 id="pg-7099742fb947ad5dfde9e72216c10b8a">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 & 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"personByCity"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span 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">"index_label"</span><span style="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">"id"</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">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"personByCity"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_id"</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 & 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">"indexlabels"</span><span style="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">"id"</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">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"softwareByPrice"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"price"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"RANGE"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"EDGE_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"createdByDate"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"date"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"personByCity"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</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">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"personByAgeAndCity"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"id"</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">"base_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"VERTEX_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"base_value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"personByCity"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"fields"</span><span style="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">"city"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"index_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"SECONDARY"</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 & 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">"task_id"</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>(其中"1"是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p> |
| </blockquote> |
| |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="td-content" style="page-break-before: always"> |
| |
| <h1 id="pg-bde129922f801ad9560757fcec64d05c">6 - Rebuild API</h1> |
| |
| <h3 id="16-rebuild">1.6 Rebuild</h3> |
| <h4 id="161-重建indexlabel">1.6.1 重建IndexLabel</h4> |
| <h5 id="method--url">Method & 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">"task_id"</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>(其中"1"是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p> |
| </blockquote> |
| <h4 id="162-vertexlabel对应的全部索引重建">1.6.2 VertexLabel对应的全部索引重建</h4> |
| <h5 id="method--url-1">Method & 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">"task_id"</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>(其中"2"是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p> |
| </blockquote> |
| <h4 id="163-edgelabel对应的全部索引重建">1.6.3 EdgeLabel对应的全部索引重建</h4> |
| <h5 id="method--url-2">Method & 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">"task_id"</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>注:</p> |
| <blockquote> |
| <p>可以通过<code>GET http://localhost:8080/graphs/hugegraph/tasks/3</code>(其中"3"是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p> |
| </blockquote> |
| |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="td-content" style="page-break-before: always"> |
| |
| <h1 id="pg-86bf520fd6b098231f4af6590328e871">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/“123456”</li> |
| </ul> |
| <hr> |
| <p>接下来的示例均假设已经创建好了前述的各种 schema 信息</p> |
| <h4 id="211-创建一个顶点">2.1.1 创建一个顶点</h4> |
| <h5 id="method--url">Method & 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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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 & 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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</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 & Url</h5> |
| <pre tabindex="0"><code>PUT http://127.0.0.1:8080/graphs/hugegraph/graph/vertices/"1:marko"?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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span 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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"vertices"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Beijing"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"hobby"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"reading"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"football"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"vertices"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"c++"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Shanghai"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"hobby"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"swiming"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"update_strategies"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"BIGGER"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"OVERRIDE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"OVERRIDE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"SUM"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"hobby"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"UNION"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"create_if_not_exist"</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">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"c++"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Shanghai"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"hobby"</span><span style="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">"swiming"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"reading"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"football"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & Url</h5> |
| <pre tabindex="0"><code>PUT http://127.0.0.1:8080/graphs/hugegraph/graph/vertices/"1:marko"?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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span 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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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={"age":29}</code>,范围匹配时形如<code>properties={"age":"P.gt(29)"}</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,…)</td> |
| <td>属性值等于任何一个给定value的顶点</td> |
| </tr> |
| </tbody> |
| </table> |
| <p><strong>查询所有 age 为 20 且 label 为 person 的顶点</strong></p> |
| <h5 id="method--url-5">Method & Url</h5> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/vertices?label=person&properties={"age":29}&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">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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 & Url</h5> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/vertices?page&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">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"price"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple>price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple>lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Hongkong"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Shanghai"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"peter"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"page"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"001000100853313a706574657200f07ffffffc00e797c6349be736fffc8699e8a502efe10004"</span> |
| </span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span> |
| </span></span></code></pre></div><p>返回的body里面是带有下一页的页号信息的,<code>"page": "001000100853313a706574657200f07ffffffc00e797c6349be736fffc8699e8a502efe10004"</code>, |
| 在查询下一页的时候将该值赋给page参数。</p> |
| <p><strong>分页查询所有顶点,获取下一页(page带上上一页返回的page值),限定3条</strong></p> |
| <h5 id="method--url-7">Method & Url</h5> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/vertices?page=001000100853313a706574657200f07ffffffc00e797c6349be736fffc8699e8a502efe10004&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">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"price"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop>price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop>lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"page"</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>"page": 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 & Url</h5> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/vertices/"1:marko" |
| </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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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 & Url</h5> |
| <pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/graph/vertices/"1:marko" |
| </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 & Url</h5> |
| <pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/graph/vertices/"1:marko"?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">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> ,形如 “L123456>1»L987654”</li> |
| <li>当 id 类型为 string 时,EdgeId 的顶点 id 前有一个前缀<code>S</code> ,形如 “S1:peter>1»S2:lop”</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 & 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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2017-5-18"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:peter>1>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2017-5-18"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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 & 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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2017-5-18"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2016-01-10"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"S1:peter>1>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"S1:marko>2>>S1:vadas"</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 & Url</h5> |
| <pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter>1>>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">"properties"</span><span style="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">"weight"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:peter>1>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2017-5-18"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"edges"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:josh>2>>S2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:marko>1>7JooBil0>S1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</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 & 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">"edges"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:josh>2>>S2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:marko>1>7JooBil0>S1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</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">"update_strategies"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"SUM"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"date"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"BIGGER"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"check_vertex"</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">"create_if_not_exist"</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">"edges"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:josh>2>>S2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:marko>1>7JooBil0>S1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</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 & Url</h5> |
| <pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter>1>>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">"properties"</span><span style="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">"weight"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:peter>1>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20170324"</span> |
| </span></span><span style="display:flex;"><span> <span 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={"weight":0.8}</code>,范围匹配时形如<code>properties={"age":"P.gt(0.8)"}</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,…)</td> |
| <td>属性值等于任何一个给定value的边</td> |
| </tr> |
| </tbody> |
| </table> |
| <p><strong>查询与顶点 person:josh(vertex_id=“1:josh”) 相连且 label 为 created 的边</strong></p> |
| <h5 id="method--url-5">Method & Url</h5> |
| <pre tabindex="0"><code>GET http://127.0.0.1:8080/graphs/hugegraph/graph/edges?vertex_id="1:josh"&direction=BOTH&label=created&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">"edges"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:josh>1>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20091111"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:josh>1>>S2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20171210"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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 & Url</h5> |
| <pre tabindex="0"><code>GET http://127.0.0.1:8080/graphs/hugegraph/graph/edges?page&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">"edges"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:peter>2>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20170324"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:josh>2>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20091111"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:josh>2>>S2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20171210"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"page"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"002500100753313a6a6f73681210010004000000020953323a726970706c65f07ffffffcf07ffffffd8460d63f4b398dd2721ed4fdb7716b420004"</span> |
| </span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span> |
| </span></span></code></pre></div><p>返回的body里面是带有下一页的页号信息的,<code>"page": "002500100753313a6a6f73681210010004000000020953323a726970706c65f07ffffffcf07ffffffd8460d63f4b398dd2721ed4fdb7716b420004"</code>, |
| 在查询下一页的时候将该值赋给page参数。</p> |
| <p><strong>分页查询所有边,获取下一页(page带上上一页返回的page值),限定3条</strong></p> |
| <h5 id="method--url-7">Method & Url</h5> |
| <pre tabindex="0"><code>GET http://127.0.0.1:8080/graphs/hugegraph/graph/edges?page=002500100753313a6a6f73681210010004000000020953323a726970706c65f07ffffffcf07ffffffd8460d63f4b398dd2721ed4fdb7716b420004&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">"edges"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:marko>1>20130220>S1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20130220"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:marko>1>20160110>S1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20160110"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:marko>2>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20171210"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"page"</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>"page": 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 & Url</h5> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter>1>>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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:peter>1>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2017-5-18"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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 & Url</h5> |
| <pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter>1>>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 & Url</h5> |
| <pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter>1>>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">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">"http://127.0.0.1:8080"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"hugegraph"</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">"name"</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">"age"</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">"city"</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">"weight"</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">"lang"</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">"date"</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">"price"</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">"person"</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">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"age"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"city"</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">"name"</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">"age"</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">"software"</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">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"lang"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"price"</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">"name"</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">"price"</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">"personByCity"</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">"person"</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">"city"</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">"personByAgeAndCity"</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">"person"</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">"age"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"city"</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">"softwareByPrice"</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">"software"</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">"price"</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">"knows"</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">"person"</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">"person"</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">"date"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"weight"</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">"date"</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">"weight"</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">"created"</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">"person"</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">"software"</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">"date"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"weight"</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">"weight"</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">"createdByDate"</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">"created"</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">"date"</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">"createdByWeight"</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">"created"</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">"weight"</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">"knowsByWeight"</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">"knows"</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">"weight"</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">"person"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"marko"</span><span style="color:#ce5c00;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</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">"city"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"Beijing"</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">"person"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"vadas"</span><span style="color:#ce5c00;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</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">"city"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"Hongkong"</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">"software"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"lop"</span><span style="color:#ce5c00;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"lang"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"java"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"price"</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">"person"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"josh"</span><span style="color:#ce5c00;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</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">"city"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"Beijing"</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">"software"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"ripple"</span><span style="color:#ce5c00;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"lang"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"java"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"price"</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">"person"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"peter"</span><span style="color:#ce5c00;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"age"</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">"city"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"Shanghai"</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">"knows"</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">"date"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"20160110"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"weight"</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">"knows"</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">"date"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"20130220"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"weight"</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">"created"</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">"date"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"20171210"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"weight"</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">"created"</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">"date"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"20091111"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"weight"</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">"created"</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">"date"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"20171210"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"weight"</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">"created"</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">"date"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"20170324"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"weight"</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>"2:ripple", |
| "1:vadas", |
| "1:peter", |
| "1:josh", |
| "1:marko", |
| "2:lop" |
| </code></pre><p>边ID为:</p> |
| <pre tabindex="0"><code>"S1:peter>2>>S2:lop", |
| "S1:josh>2>>S2:lop", |
| "S1:josh>2>>S2:ripple", |
| "S1:marko>1>20130220>S1:josh", |
| "S1:marko>1>20160110>S1:vadas", |
| "S1:marko>2>>S2:lop" |
| </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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/kout?source="1:marko"&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">"vertices"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:peter"</span> |
| </span></span><span style="display:flex;"><span> <span 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 >= 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 & 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">"source"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"step"</span><span style="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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"BOTH"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"P.gt(0.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:#204a87;font-weight:bold">"max_degree"</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">"skip_degree"</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">"max_depth"</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">"nearest"</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">"limit"</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">"with_vertex"</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">"with_path"</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">"size"</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">"kout"</span><span style="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">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"paths"</span><span style="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">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Hongkong"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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)、… 、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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/kneighbor?source=“1:marko”&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">"vertices"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span 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 >= 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 & 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">"source"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"step"</span><span style="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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"BOTH"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"P.gt(0.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:#204a87;font-weight:bold">"max_degree"</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">"skip_degree"</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">"max_depth"</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">"limit"</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">"with_vertex"</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">"with_path"</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">"size"</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">"kneighbor"</span><span style="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">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"paths"</span><span style="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">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"1:marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:peter"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Hongkong"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Shanghai"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/sameneighbors?vertex=“1:marko”&other="1:josh" |
| </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">"same_neighbors"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/jaccardsimilarity?vertex="1:marko"&other="1:josh" |
| </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">"jaccard_similarity"</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 >= 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 & 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">"vertex"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"step"</span><span style="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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"BOTH"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="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">"max_degree"</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">"skip_degree"</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">"top"</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">"2:ripple"</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">"1:peter"</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">"1:josh"</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 >= 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/shortestpath?source="1:marko"&target="2:ripple"&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">"path"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span 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 >= 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/allshortestpaths?source="A"&target="Z"&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">"paths"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"A"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"B"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"C"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"Z"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"A"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"M"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"N"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"Z"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 >= 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/weightedshortestpath?source="1:marko"&target="2:ripple"&weight="weight"&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">"path"</span><span style="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">"weight"</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">"vertices"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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 >= 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/singlesourceshortestpath?source="1:marko"&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">"paths"</span><span style="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">"2:ripple"</span><span style="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">"weight"</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">"vertices"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"1:josh"</span><span style="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">"weight"</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">"vertices"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"1:vadas"</span><span style="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">"weight"</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">"vertices"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"1:peter"</span><span style="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">"weight"</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">"vertices"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:peter"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"2:lop"</span><span style="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">"weight"</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">"vertices"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Hongkong"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Shanghai"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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 >= 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 & 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">"vertices"</span><span style="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">"ids"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"382:josh"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"382:vadas"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"382:peter"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"383:ripple"</span><span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"step"</span><span style="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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"BOTH"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"max_depth"</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">"capacity"</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">"with_vertex"</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">"paths"</span><span style="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">"objects"</span><span style="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">"382:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"382:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"382:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"383:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"382:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Shanghai"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"383:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"382:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"382:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"382:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Hongkong"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"383:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/paths?source="1:marko"&target="1:josh"&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">"paths"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 >= 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 & 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">"sources"</span><span style="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">"ids"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">"targets"</span><span style="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">"ids"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">"step"</span><span style="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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"BOTH"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"P.gt(0.01)"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span><span style="color:#204a87;font-weight:bold">"max_depth"</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">"capacity"</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">"limit"</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">"with_vertex"</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">"paths"</span><span style="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">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:peter"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="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">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:peter"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"sources"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ids"</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">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"steps"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"direction"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"OUT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"knows"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight_by"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"weight"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"max_degree"</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">"direction"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"OUT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"created"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"default_weight"</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">"max_degree"</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">"sample"</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">"sort_by"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"INCR"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"with_vertex"</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">"capacity"</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">"limit"</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">"paths"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weights"</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">"vertices"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"java"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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的路径(张艺谋—>电影—->用户—>大V)</li> |
| <li>风控网络中,查找多个高风险用户的直系亲属的朋友的路径(高风险用户—>直系亲属—>朋友)</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 >= 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 & 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">"sources"</span><span style="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">"ids"</span><span style="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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"targets"</span><span style="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">"ids"</span><span style="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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"steps"</span><span style="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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"IN"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"max_degree"</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">"skip_degree"</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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OUT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"max_degree"</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">"skip_degree"</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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"IN"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"max_degree"</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">"skip_degree"</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">"direction"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OUT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"max_degree"</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">"skip_degree"</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">"capacity"</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">"limit"</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">"with_vertex"</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">"paths"</span><span style="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">"objects"</span><span style="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">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</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">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Hongkong"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"java"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</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 -(朋友)-> personB -(同学)-> personC,其中"朋友"和"同学"边可以分别是最多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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/crosspoints?source="2:lop"&target="2:ripple"&max_depth=5&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">"crosspoints"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"crosspoint"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 >= 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 & 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">"sources"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ids"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"path_patterns"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"steps"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"direction"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"IN"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"created"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"max_degree"</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">"with_path"</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">"with_vertex"</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">"capacity"</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">"limit"</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">"crosspoints"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"paths"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"vertices"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple>price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple>lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"java"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"java"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 -> 25 -> 775 -> 14690 -> 25, 其中环路为 25 -> 775 -> 14690 -> 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/rings?source="1:marko"&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">"rings"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 -> 25 -> 775 -> 14690 -> 2289 -> 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/{graph}/traversers/rays?source="1:marko"&max_depth=2&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">"rays"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"objects"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"2:lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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>按照条件查询一批顶点对应的"梭形相似点"。当两个顶点跟很多共同的顶点之间有某种关系的时候,我们认为这两个点为"梭形相似点"。举个例子说明"梭形相似点":“读者A"读了100本书,可以定义读过这100本书中的80本以上的读者,是"读者A"的"梭形相似点”</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:最少邻居数目,邻居数目少于这个阈值时,认为起点不具备"梭形相似点"。比如想要找一个"读者A"读过的书的"梭形相似点",那么<code>min_neighbors</code>为100时,表示"读者A"至少要读过100本书才可以有"梭形相似点",必填项</p> |
| </li> |
| <li> |
| <p>alpha:相似度,代表:起点与"梭形相似点"的共同邻居数目占起点的全部邻居数目的比例,必填项</p> |
| </li> |
| <li> |
| <p>min_similars:“梭形相似点"的最少个数,只有当起点的"梭形相似点"数目大于或等于该值时,才会返回起点及其"梭形相似点”,选填项,默认值为1</p> |
| </li> |
| <li> |
| <p>top:返回一个起点的"梭形相似点"中相似度最高的top个,必填项,0表示全部</p> |
| </li> |
| <li> |
| <p>group_property:与<code>min_groups</code>一起使用,当起点跟其所有的"梭形相似点"某个属性的值有至少<code>min_groups</code>个不同值时,才会返回该起点及其"梭形相似点"。比如为"读者A"推荐"异地"书友时,需要设置<code>group_property</code>为读者的"城市"属性,<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:返回的结果数目上限(一个起点及其"梭形相似点"算一个结果),选填项,默认为10</p> |
| </li> |
| <li> |
| <p>with_intermediary:是否返回起点及其"梭形相似点"共同关联的中间点,默认为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 & 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">"sources"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ids"</span><span style="color:#000;font-weight:bold">:[],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"p1"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"read"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"direction"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"OUT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"min_neighbors"</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">"alpha"</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">"min_similars"</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">"top"</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">"group_property"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"min_group"</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">"max_degree"</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">"capacity"</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">"limit"</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">"with_intermediary"</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">"with_vertex"</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">"similars"</span><span style="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">"3:p1"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3:p2"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"score"</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">"intermediaries"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3:p3"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"score"</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">"intermediaries"</span><span style="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">"vertices"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3:p1"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"p1"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3:p2"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"p2"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Shanghai"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3:p3"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"p3"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/vertices?ids="1:marko"&ids="2:lop" |
| </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">"vertices"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"java"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"shards"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"0"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2165893"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2165893"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"4331786"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"4331786"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"6497679"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"6497679"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"8663572"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/vertices/scan?start=0&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">"vertices"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple>price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"ripple"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple>lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"java"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:vadas>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Hongkong"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:vadas>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vadas"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:vadas>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:peter>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Shanghai"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:peter>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"peter"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:peter>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"josh"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"city"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"price"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>price"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"name"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"lop"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"lang"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop>lang"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"java"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/edges?ids="S1:josh>1>>S2:lop"&ids="S1:josh>1>>S2:ripple" |
| </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">"edges"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:josh>1>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20091111"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:josh>1>>S2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20171210"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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 & 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">"shards"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"0"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1073741823"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1073741823"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2147483646"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2147483646"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3221225469"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3221225469"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"4294967292"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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">"start"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"4294967292"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"end"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"4294967295"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"length"</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 & Url</h6> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/traversers/edges/scan?start=0&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">"edges"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:peter>2>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:peter"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"20170324"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:josh>2>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"20091111"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:josh>2>>S2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:ripple"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"20171210"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:marko>1>20130220>S1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:josh"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"20130220"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:marko>1>20160110>S1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"knows"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:vadas"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"20160110"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"S1:marko>2>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="color:#000;font-weight:bold">:{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"20171210"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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">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 没看过的书, 比如推荐 “f” 和 “g” 书, 且优先级 f > 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">"id"</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">"rate"</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">"user"</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">"id"</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">"id"</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">"movie"</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">"id"</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">"id"</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">"rating"</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">"user"</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">"movie"</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">"rate"</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">"vertices"</span><span style="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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"user"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"input"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"file"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"path"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"users.dat"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"format"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"delimiter"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"::"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"header"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"UserID"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Gender"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Age"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Occupation"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Zip-code"</span><span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ignored"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"Gender"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Age"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Occupation"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Zip-code"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"mapping"</span><span style="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">"UserID"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"id"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"movie"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"input"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"file"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"path"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"movies.dat"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"format"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"delimiter"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"::"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"header"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"MovieID"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Title"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Genres"</span><span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ignored"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"Title"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Genres"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"mapping"</span><span style="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">"MovieID"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"id"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"edges"</span><span style="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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"rating"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"source"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"UserID"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"MovieID"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"input"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"file"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"path"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ratings.dat"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"format"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"TEXT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"delimiter"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"::"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"header"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"UserID"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"MovieID"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Rating"</span><span style="color:#000;font-weight:bold">,</span> <span style="color:#4e9a06">"Timestamp"</span><span style="color:#000;font-weight:bold">]</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"ignored"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#000;font-weight:bold">[</span><span style="color:#4e9a06">"Timestamp"</span><span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"mapping"</span><span style="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">"UserID"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"id"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"MovieID"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"id"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"Rating"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"rate"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"source"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"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">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"rating"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"alpha"</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">"max_depth"</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">"with_label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"OTHER_LABEL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"sorted"</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">"limit"</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">"2:2858"</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">"2:1196"</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">"2:1210"</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">"2:593"</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">"2:480"</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">"2:1198"</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">"2:2396"</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">"2:2571"</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">"2:589"</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">"2:110"</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> (例: 微信 “你的好友也在看 xx 文章” 功能)</li> |
| <li>社交推荐: 找出拥有相同关注话题的其他<strong>博主</strong>, 也可以推荐可能感兴趣的<strong>新闻/消息</strong> (例: Weibo 中的 “热点推荐” 功能)</li> |
| <li>商品推荐: 通过某人现在的购物习惯, 找出应优先推给它的<strong>商品列表</strong>, 也可以给它推荐<strong>带货</strong>播主 (例: TaoBao 的 “猜你喜欢” 功能)</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">"http://127.0.0.1:8080"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"hugegraph"</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">"name"</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">"person"</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">"name"</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">"movie"</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">"name"</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">"follow"</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">"person"</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">"person"</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">"like"</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">"person"</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">"movie"</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">"directedBy"</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">"movie"</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">"person"</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">"person"</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">"O"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"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">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">"person"</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">"A"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"A"</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">"person"</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">"B"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"B"</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">"person"</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">"C"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"C"</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">"person"</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">"D"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"D"</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">"movie"</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">"E"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"E"</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">"movie"</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">"F"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"F"</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">"movie"</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">"G"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"G"</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">"movie"</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">"H"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"H"</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">"movie"</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">"I"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"I"</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">"movie"</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">"J"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"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">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">"person"</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">"K"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"K"</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">"person"</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">"L"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"L"</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">"person"</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">"M"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"name"</span><span style="color:#ce5c00;font-weight:bold">,</span> <span style="color:#4e9a06">"M"</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">"follow"</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">"follow"</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">"follow"</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">"follow"</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">"follow"</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">"like"</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">"like"</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">"like"</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">"like"</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">"like"</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">"like"</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">"directedBy"</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">"directedBy"</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">"directedBy"</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">"directedBy"</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 & 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">"source"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"O"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"steps"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"direction"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"OUT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"follow"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"max_degree"</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">"top"</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">"direction"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"OUT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"follow"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"like"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"max_degree"</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">"top"</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">"direction"</span><span style="color:#000;font-weight:bold">:</span><span style="color:#4e9a06">"OUT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"labels"</span><span style="color:#000;font-weight:bold">:[</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"directedBy"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"max_degree"</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">"top"</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">"alpha"</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">"capacity"</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">"ranks"</span><span style="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">"O"</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">"B"</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">"A"</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">"C"</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">"G"</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">"H"</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">"I"</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">"J"</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">"E"</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">"F"</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">"M"</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">"K"</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">"L"</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">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 & 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">"data"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"tom"</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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"tom"</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 & 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"tom"</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 & 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"tom"</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 & 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">12 - Graphs API</h1> |
| |
| <h3 id="61-graphs">6.1 Graphs</h3> |
| <h4 id="611-列出数据库中全部的图">6.1.1 列出数据库中全部的图</h4> |
| <h5 id="method--url">Method & 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">"graphs"</span><span style="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">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"hugegraph1"</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"backend"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"cassandra"</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 & 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 & 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 & 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">"mode"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</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 & 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>"RESTORING" |
| </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">"mode"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"RESTORING"</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">13 - Task API</h1> |
| |
| <h3 id="71-task">7.1 Task</h3> |
| <h4 id="711-列出某个图中全部的异步任务">7.1.1 列出某个图中全部的异步任务</h4> |
| <h5 id="params">Params</h5> |
| <ul> |
| <li>status: 异步任务的状态</li> |
| <li>limit:返回异步任务数目上限</li> |
| </ul> |
| <h5 id="method--url">Method & 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">"tasks"</span><span style="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">"task_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph.traversal().V()"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_progress"</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">"task_create"</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">"task_status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"success"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_update"</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">"task_result"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"0"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_retries"</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">"id"</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">"task_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"gremlin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_callable"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"com.baidu.hugegraph.api.job.GremlinAPI$GremlinJob"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_input"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"{\"gremlin\":\"hugegraph.traversal().V()\",\"bindings\":{},\"language\":\"gremlin-groovy\",\"aliases\":{\"hugegraph\":\"graph\"}}"</span> |
| </span></span><span style="display:flex;"><span> <span 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-查看某个异步任务的信息">7.1.2 查看某个异步任务的信息</h4> |
| <h5 id="method--url-1">Method & 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">"task_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph.traversal().V()"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_progress"</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">"task_create"</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">"task_status"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"success"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_update"</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">"task_result"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"0"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_retries"</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">"id"</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">"task_type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"gremlin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_callable"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"com.baidu.hugegraph.api.job.GremlinAPI$GremlinJob"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"task_input"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"{\"gremlin\":\"hugegraph.traversal().V()\",\"bindings\":{},\"language\":\"gremlin-groovy\",\"aliases\":{\"hugegraph\":\"graph\"}}"</span> |
| </span></span><span style="display:flex;"><span><span style="color:#000;font-weight:bold">}</span> |
| </span></span></code></pre></div><h4 id="713-删除某个异步任务信息不删除异步任务本身">7.1.3 删除某个异步任务信息,<strong>不删除异步任务本身</strong></h4> |
| <h5 id="method--url-2">Method & 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>假设已经通过<a href="../gremlin">Gremlin API</a>创建了一个异步任务如下:</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">"for (int i = 0; i < 10; i++) {"</span> <span style="color:#ce5c00;font-weight:bold">+</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"hugegraph.addVertex(T.label, 'man');"</span> <span style="color:#ce5c00;font-weight:bold">+</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"hugegraph.tx().commit();"</span> <span style="color:#ce5c00;font-weight:bold">+</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"try {"</span> <span style="color:#ce5c00;font-weight:bold">+</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"sleep(1000);"</span> <span style="color:#ce5c00;font-weight:bold">+</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"} catch (InterruptedException e) {"</span> <span style="color:#ce5c00;font-weight:bold">+</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"break;"</span> <span style="color:#ce5c00;font-weight:bold">+</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#4e9a06">"}"</span> <span style="color:#ce5c00;font-weight:bold">+</span> |
| </span></span><span style="display:flex;"><span><span style="color:#4e9a06">"}"</span> |
| </span></span></code></pre></div><h5 id="method--url-3">Method & Url</h5> |
| <pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/tasks/2?action=cancel |
| </code></pre><blockquote> |
| <p>请保证在10秒内发送该请求,如果超过10秒发送,任务可能已经执行完成,无法取消。</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">"cancelled"</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>此时查询 label 为 man 的顶点数目,一定是小于 10 的。</p> |
| |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="td-content" style="page-break-before: always"> |
| |
| <h1 id="pg-e84b0f106294b580ca64918b72cc71d1">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 & Url</h5> |
| <pre tabindex="0"><code>GET http://127.0.0.1:8080/gremlin?gremlin=hugegraph.traversal().V('1:marko') |
| </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">"requestId"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"c6ef47a8-b634-4b07-9d38-6b3b69a3a556"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="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">"message"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">""</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"code"</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">"attributes"</span><span style="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">"result"</span><span style="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">"data"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"meta"</span><span style="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 & 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">"gremlin"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph.traversal().V('1:marko')"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"bindings"</span><span style="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">"language"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"gremlin-groovy"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aliases"</span><span style="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">"requestId"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"c6ef47a8-b634-4b07-9d38-6b3b69a3a556"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="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">"message"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">""</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"code"</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">"attributes"</span><span style="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">"result"</span><span style="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">"data"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"vertex"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"city"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>city"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"Beijing"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"name"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>name"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"marko"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"age"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko>age"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"value"</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">"meta"</span><span style="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>"aliases": {"graph": "hugegraph", "g": "__g_hugegraph"}</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">"gremlin"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"g.E('S1:marko>2>>S2:lop')"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"bindings"</span><span style="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">"language"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"gremlin-groovy"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aliases"</span><span style="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">"graph"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"g"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"__g_hugegraph"</span> |
| </span></span><span style="display:flex;"><span> <span 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">"requestId"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3f117cd4-eedc-4e08-a106-ee01d7bb8249"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"status"</span><span style="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">"message"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">""</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"code"</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">"attributes"</span><span style="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">"result"</span><span style="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">"data"</span><span style="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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S1:marko>2>>S2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"created"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"edge"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"software"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outVLabel"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"person"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"inV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2:lop"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"outV"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"1:marko"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</span><span style="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">"weight"</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">"date"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"20171210"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}],</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"meta"</span><span style="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 & 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">"gremlin"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"g.V('1:marko')"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"bindings"</span><span style="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">"language"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"gremlin-groovy"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aliases"</span><span style="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">"task_id"</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>(其中"1"是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">"gremlin"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"g.E('S1:marko>2>>S2:lop')"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"bindings"</span><span style="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">"language"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"gremlin-groovy"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"aliases"</span><span style="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">"task_id"</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>(其中"2"是task_id)来查询异步任务的执行状态,更多<a href="../task">异步任务RESTful API</a></p> |
| </blockquote> |
| |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="td-content" style="page-break-before: always"> |
| |
| <h1 id="pg-a3b125f257052209fcb98300d5c066a7">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-> group(name=all) -access(read)-> target(graph=graph1, resource={label: person, |
| city: Beijing})<br> |
| 描述:用户’boss’拥有对’graph1’图中北京人的读权限。</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">"user_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"boss"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_password"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"******"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_phone"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"182****9088"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_email"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"123@xx.com"</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 & 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">"user_password"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"******"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_email"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"123@xx.com"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-17 14:31:07.833"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"boss"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_phone"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"182****9088"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:boss"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-17 14:31:07.833"</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 & 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 & 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">"user_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"test"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_password"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"******"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_phone"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"183****9266"</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">"user_password"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"******"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 10:29:30.455"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"test"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_phone"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"183****9266"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:test"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 10:27:13.601"</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 & 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">"users"</span><span style="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">"user_password"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"******"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 11:41:12.254"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"system"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 11:41:12.254"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"users"</span><span style="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">"user_password"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"******"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 11:41:12.254"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"system"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 11:41:12.254"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"roles"</span><span style="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">"hugegraph"</span><span style="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">"READ"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ALL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"*"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</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">"group_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"group can do anything"</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 & 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">"group_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:46:08.791"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:46:08.791"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"group can do anything"</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 & 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 & 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">"group_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"grant"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"grant"</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">"group_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"grant"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 09:50:58.458"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 09:57:58.155"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:grant"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"grant"</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 & 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">"groups"</span><span style="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">"group_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:46:08.791"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:46:08.791"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"group can do anything"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"group_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:46:08.791"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:46:08.791"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"group can do anything"</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>如精细资源:“target_resources”: [{“type”:“VERTEX”,“label”:“person”,“properties”:{“city”:“Beijing”,“age”:“P.gte(20)”}}]**<br> |
| 资源定义含义:类型是’person’的顶点,且城市属性是’Beijing’,年龄属性大于等于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">"target_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_graph"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_url"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"127.0.0.1:8080"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_resources"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ALL"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"target_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_url"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"127.0.0.1:8080"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_graph"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:32:01.192"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_resources"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ALL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"*"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:32:01.192"</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 & 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 & 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">"target_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"gremlin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_graph"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_url"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"127.0.0.1:8080"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_resources"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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">"target_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"gremlin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_url"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"127.0.0.1:8080"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_graph"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 09:34:13.848"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_resources"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"NONE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"*"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:gremlin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 09:37:12.780"</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 & 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">"targets"</span><span style="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">"target_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_url"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"127.0.0.1:8080"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_graph"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:32:01.192"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_resources"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"ALL"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"*"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:32:01.192"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">},</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">{</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"grant"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_url"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"127.0.0.1:8080"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_graph"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:43:24.841"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_resources"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"GRANT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"*"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:grant"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:43:24.841"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & 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">"target_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_name"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"grant"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_url"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"127.0.0.1:8080"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_graph"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"hugegraph"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:43:24.841"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_resources"</span><span style="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">"type"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"GRANT"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"label"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"*"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"properties"</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">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:grant"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:43:24.841"</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">"user"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:boss"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</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 & 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">"belong_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 16:19:35.422"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 16:19:35.422"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S-63:boss>-82>>S-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:boss"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</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 & Url</h5> |
| <pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/auth/belongs/S-63:boss>-82>>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 & Url</h5> |
| <pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/auth/belongs/S-63:boss>-82>>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">"belong_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"update test"</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">"belong_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"update test"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 10:40:21.720"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 10:42:47.265"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S-63:boss>-82>>S-69:grant"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:boss"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:grant"</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 & 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">"belongs"</span><span style="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">"belong_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 16:19:35.422"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 16:19:35.422"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S-63:boss>-82>>S-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:boss"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & Url</h5> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/belongs/S-63:boss>-82>>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">"belong_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 16:19:35.422"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"belong_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 16:19:35.422"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S-63:boss>-82>>S-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"user"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-63:boss"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</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">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_permission"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"READ"</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 & 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">"access_permission"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"READ"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:54:54.008"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S-69:all>-88>11>S-77:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:54:54.008"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:all"</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 & Url</h5> |
| <pre tabindex="0"><code>DELETE http://localhost:8080/graphs/hugegraph/auth/accesses/S-69:all>-88>12>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 & Url</h5> |
| <pre tabindex="0"><code>PUT http://localhost:8080/graphs/hugegraph/auth/accesses/S-69:all>-88>12>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">"access_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"test"</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">"access_description"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"test"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_permission"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"WRITE"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 10:12:03.074"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S-69:all>-88>12>S-77:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-12 10:16:18.637"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:all"</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 & 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">"accesses"</span><span style="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">"access_permission"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"READ"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:54:54.008"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S-69:all>-88>11>S-77:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:54:54.008"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:all"</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#000;font-weight:bold">}</span> |
| </span></span><span style="display:flex;"><span> <span 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 & Url</h5> |
| <pre tabindex="0"><code>GET http://localhost:8080/graphs/hugegraph/auth/accesses/S-69:all>-88>11>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">"access_permission"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"READ"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_create"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:54:54.008"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"id"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"S-69:all>-88>11>S-77:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_update"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"2020-11-11 15:54:54.008"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"access_creator"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"admin"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"group"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-69:all"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"target"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"-77:all"</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">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 & 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">"versions"</span><span style="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">"version"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"v1"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"core"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"0.4.5.1"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"gremlin"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"3.2.5"</span><span style="color:#000;font-weight:bold">,</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#204a87;font-weight:bold">"api"</span><span style="color:#000;font-weight:bold">:</span> <span style="color:#4e9a06">"0.13.2.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> |
| </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 © 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+6361SGWf+ritySDd7vaAY6CZE/BDkt08Hxk=" crossorigin="anonymous"></script> |
| |
| |
| |
| <script src='/js/prism.js'></script> |
| |
| |
| |
| </body> |
| </html> |