Nebula Graph v2.0.0-alpha Release Note

Jude
2020-11-02

Nebula Graph v2.0.0-alpha Release Note

Nebula Graph

Note: Schema & data are not compatible with 1.0 yet. Still working on the compatibility.

New Features

  • Support String vertex ID
  • New data types
    • NULL , the property for vertices or edges can be set to NULL . NOT NULL constraint is supported to ensure the property values are not NULL.
    • Composite types: list, set and map(Cannot be stored as properties).
    • Temporal types like DATE and DATETIME .
  • New Functions
    • size() returns the number of items in a list
    • time() returns the current Time
    • date() or datetime() Returns the current Date or DateTime
    • id() returns the id of a vertex
    • tags() and labels() return the tags of the vertex
    • collect() , an aggregation function, returns a list containing the values returned by an expression
    • collect_set() , aggregation function, returns a set containing the values returned by an expression
    • properties() returns a map containing all the properties of a vertex or an edge
    • type() returns the edge type of an edge
    • src() returns the src id of an edge
    • dst() returns the dst id of an edge
    • rank() returns the rank of an edge
  • New Operators
    • IN checks if a specified value matches any value in a list.
    • CONTAINS performs a case-sensitive match regardless of location within a string.
    • STARTS WITH performs a case-sensitive match for the beginning of a string.
    • ENDS WITH performs a case-sensitive match for the ending of a string.
  • Explain & Profile. EXPLAIN displays the execution plan of a nGQL statement without executing the statement. PROFILE executes the statement, then outputs the execution plan as well as the execution profile.
  • Subgraph. GET SUBGRAPH statement retrieves information of vertices and edges reachable from the start vertices over the specified edges to the maximum number of hops.
  • Partially supported MATCH statement.
  • A DELETE statement can have an input from the pipeline | .

Features different from 1.0

  • CREATE SPACE supports specifying the type of vertex ID. The type fixed_string ( int64 will be supported in the next release).
  • Simplify `UPDATE/UPSERT statement.
  • UPSERT ... SET the unspecified properties will be set to the default value when inserting a new vertex/edge. If no default value is set, they will be set to NULL . If the NOT NULL constraint is set on the property, an error will return.
  • $- in the pipeline statement is not equal to $-.id anymore.
  • The expression specified in the default value will be computed when the data inserted instead of schema defined.

Upcoming Soon (Work in process)

  • DESCRIBE TAG/EDGE INDEX
  • REBUILD TAG/EDGE INDEX
  • SHOW TAG/EDGE INDEXES
  • SHOW TAG/EDGE INDEX STATUS
  • FETCH PROP ON multiple tags
  • Compatible with 1.0 Integer vertex ID
  • Support more OpenCypher statements
  • Backup & Restore
  • Fulltext search

Console

  • Nebula-console supports local commands now. For example, :set csv outputs the query results to the console and the specified CSV file. For more information, please refer to nebula-console.

Clients

  • Java
  • Python
  • Golang

Clients support connection pooling and load balancing. For more information, please refer to nebula-clients.

Studio

  • Not Compatible with Nebula Graph 2.0 yet (Working in progress).

Document

If you have any problem or feature request, please leave a comment here: https://discuss.nebula-graph.io/t/nebula-graph-v2-0-0-alpha-release-note/754.

Like what we do ? Star us on GitHub. https://github.com/vesoft-inc/nebula