/LiveGraph-Binary

LiveGraph: a transactional graph storage system with purely sequential adjacency list scans

Primary LanguageC++Apache License 2.0Apache-2.0

LiveGraph-Binary

Description

LiveGraph: a transactional graph storage system with purely sequential adjacency list scans. Xiaowei Zhu, Guanyu Feng, Marco Serafini, Xiaosong Ma, Jiping Yu, Lei Xie, Ashraf Aboulnaga, and Wenguang Chen. Proc. VLDB Endow. 13, 7 (March 2020), 1020–1034. DOI:https://doi.org/10.14778/3384345.3384351

You can find the binary executables at the Releases page and the source code of LiveGraph at https://github.com/thu-pacman/LiveGraph

Dependency

  • Binaries are built on Ubuntu 18.04
  • AVX-2
  • C++17
  • OpenMP
  • TBB

API

class lg::Graph

Members
public inline Graph(std::string block_path,std::string wal_path,size_t _max_block_size,vertex_t _max_vertex_id)
public inline vertex_t get_max_vertex_id() const
public timestamp_t compact(timestamp_t read_epoch_id)
public Transaction begin_transaction()
public Transaction begin_read_only_transaction()
public Transaction begin_batch_loader()

class lg::Transaction

Members
public inline timestamp_t get_read_epoch_id() const
public vertex_t new_vertex(bool use_recycled_vertex)
public void put_vertex(vertex_t vertex_id,std::string_view data)
public bool del_vertex(vertex_t vertex_id,bool recycle)
public void put_edge(vertex_t src,label_t label,vertex_t dst,std::string_view edge_data,bool force_insert)
public bool del_edge(vertex_t src,label_t label,vertex_t dst)
public std::string_view get_vertex(vertex_t vertex_id)
public std::string_view get_edge(vertex_t src,label_t label,vertex_t dst)
public EdgeIterator get_edges(vertex_t src,label_t label,bool reverse)
public timestamp_t commit(bool wait_visable)
public void abort()

class lg::EdgeIterator

Members
public inline bool valid() const
public inline void next()
public inline vertex_t dst_id() const
public inline std::string_view edge_data() const

class lg::Transaction::RollbackExcept

class lg::Transaction::RollbackExcept : public runtime_error
Members
public inline RollbackExcept(const std::string & what_arg)
public inline RollbackExcept(const char * what_arg)