Skip to content

Releases: alibaba/GraphScope

Release v0.9.0

03 Dec 13:21
f4db75e
Compare
Choose a tag to compare

We are glad to announce the availability of GraphScope v0.9.

In this release, we revisit the Dev-infra to improve the productivity. Now, you can enjoy GraphScope with standalone mode both in our PlayGround and Google Colab.

We also aims to continuously make GraphScope more user-friendly, and revised the documents and tutorials based on the latest version.

Besides, we alsh have a preliminary support for Java in Graph Analytics Engine (GAE), and users can succinctly develop graph analytics applications with Java.

For Graph Interactive Engine (GIE), we have done a lot of work to improve the performance of the distributed GAIA engine, which includes but is not limited to 1) simplifying the communication protocol that reduces many useless tags in correlated subtask; 2) making early-stop mechanism more effective due to 1); 3) resolving a lot of bugs due to 1); 4) refining the engine apis. As a distributed cyclic data-parallel engine, GAIA engine is in de-facto generic to handle any data-intensive task. Now users can assess to more GAIA APIs (will be well documented) to play with the engine.

Features

  • Support GLE on MacOS
  • Java SDK in GAE, and examples to write and run algorithms written in Java.
  • Add several popular datasets and ships datasets by adding an extra container in Kubernetes mode.
  • Supplement NetworkX generator, read, write, drawing, convert with more generators and test cases.
  • Add make install support for lgraph.
  • GIE Runtime refactoring based on the new GAIA engine.
  • Reimplement persistent storage engine with zero-copy read.
  • Add common labels following Kubernetes best practice to GraphScope cluster.
  • Add transformation ability for directed/undirected graphs.
  • Unify the logging output file location to /var/log/graphscope or $HOME/.local/log/graphscope

Bug Fixes

  • Fixed a bug that caused a crash if duplicate property names were encountered when extracting subgraphs.
  • Fixed MPI library not found problem on MacOS.
  • Fixed a data-lost bug in realtime write caused by kafka retention policy.
  • Fixed context processing on graphs generated by add_column.
  • Fixed a failure when exposing gremlin service deployed with Helm Charts.
  • Fixed many bugs related to subtasks while querying Gremlin.

Release v0.8.0

08 Nov 03:47
Compare
Choose a tag to compare

We are glad to announce the GraphScope 0.8 release. The GraphScope 0.8 release is a major update on many aspects of the project including deployment, system speed, and APIs. For quickly getting started, this release supports enjoying GraphScope on standalone mode without Kubernetes. To improve the efficiency of operators and applications in the NetworkX module, an immutable graph is applied by default, while it is converted to a dynamic graph only if modification operators for graphs are triggered. In addition, a jupyter notebook is integrated into the helm charts.

We highlight the following improvements included in this release:

  1. Standalone mode support for GraphScope
  • User now can install graphscope by pip install graphscope or install from wheel manually to enjoy GraphScope on local with runtime dependencies
  • User now switch to pip install graphscope_client to install python client of GraphScope
  • MacOS support is added, and compatible with Apple clang 13.0.0
  1. Enhancement on graphscope.nx module
  • Support NetworkX operators over immutable graphs:
  • Support holding immutable graph in nx.Graph and copy-on-write to dynamic graph
  1. Enhancement of deployment, performance and APIs:
  • Integrate a jupyterlab notebook into the helm charts

For more detailed improvements that have been made in this release, please refer to the complete changelog.

Commits

  • [[7cfe16b]: Don't export /usr/local/opt/llvm/lib to linker search path on MacOS. (#936) (Tao He)
  • [[52ebbaa]: Fix slf4j StaticLoggerBinder loading error (#941) (Zichao Zhang)
  • [[e52b1e1]: Fixes helm charts jupyterlab container: use release version as image tag (#935) (DongZe Li)
  • [[6e5404e]: Add readiness probe to graphscope-store frontend. (#937) (Siyuan Zhang)
  • [[a68c83c]: [networkx] Riase NetworkXError when gs graph is multigraph (#924) (Weibin Zeng)
  • [[c80a2df]: Add maxgraph backup module (#921) (Zichao Zhang)
  • [[476f3aa]: Cancel previous wheel packaging actions in CI as well. (Tao He)
  • [[a5eb44b]: Support using GraphScope on standalone mode (MacOS) (#923) (DongZe Li)
  • [[5d4c84d]: Cancel workflows defined in other yamls. (Tao He)
  • [[688f73a]: Install LLVM and fastFFI in runtime/gsvineyard docker image. (#932) (Tao He)
  • [[c7815b0]: Cancel previous runs in PRs. (Tao He)
  • [[30658fd]: Integrate a Jupyter-lab container in the graphscope helm chart. (#928) (Siyuan Zhang)
  • [[d5821a1]: Add a flattened wrapper on property graph to run apps defined on simple graph (#888) (Weibin Zeng)
  • [[a29a964]: Unload unreachable op after run (#916) (Siyuan Zhang)
  • [[0bc8393]: Remove unused parameters (#912) (Siyuan Zhang)
  • [[959cb73]: Schedule package CI as nightly run (#908) (DongZe Li)
  • [[cf00cf3]: Add unittest for global store ffi and fix an issue in global store ffi that uses a shared global client to access vineyard. (#905) (zhiminch)
  • [[e6bdb10]: Fixes permission denied in nightly CI (#906) (DongZe Li)
  • [[9291e5c]: Fix groot ut (#903) (tianliplus)
  • [[d970e88]: Add backup module of graph store (#901) (Zichao Zhang)
  • [[8004e22]: [networkx] Implement average degree connectivity app (#516) (Xinger)
  • [[9ac6309]: Fixes nightly CI failure and symlink problem (#899) (DongZe Li)
  • [[3b1de8f]: Add progress bar for loading graphs. (#894) (Siyuan Zhang)
  • [[dbe5d0b]: reorg gie submodules (#893) (tianliplus)
  • [[4cdc484]: Change rust-rocksdb dependency for store (#892) (GoldenLeaves)
  • [[e5fbefe]: Separate download tests (#895) (Siyuan Zhang)
  • [[1c60ff1]: Support using GraphScope on standalone mode (Linux) (#860) (DongZe Li)
  • [[308f35e]: Reorg groot (#887) (tianliplus)
  • [[d91f55e]: [networkx] Support reporter API on arrow fragment (#866) (Weibin Zeng)
  • [[2956abc]: [networkx] Implement all simple paths app (#574) (MJY-HUST)
  • [[dd816c3]: Create and use default session when there is no default session found (#880) (DongZe Li)
  • [[26d320b]: Fix unit tests under frontend module (#883) (shirly121)
  • [[5f25d51]: update kind download url (#882) (Weibin Zeng)
  • [[db3b5e2]: Launch etcd in coordinator (#878) (DongZe Li)
  • [[1dac7f4]: [networkx] implement (weighted) betweenness centrality in graphscope. (#666) (mengke)
  • [[1924521]: [Bug Fix] fix bug in starting GAIA service in v2 and vineyard (#870) (BingqingLyu)
  • [[f47e019]: Fix compilation warning. Remove utilities in vineyard store ffi. (#861) (zhiminch)
  • [[7981847]: [bug fix] support id-only vertex in EdgeV Step (#871) (BingqingLyu)
  • [[2cd20e5]: Require vineyard (for serialization test, etc.), but only on x86_64. (#873) (Tao He)
  • [[46e34e4]: Launch vineyard in a nicer way when vineyardd not found. (#872) (Tao He)
  • [[5094671]: address maven warnings by specifying the dependency versions. (#864) (Jingbo Xu)
  • [[5137954]: merge gie and groot schema api (#825) (tianliplus)
  • [[16d41fb]: Revisit the bindings to mars. (#863) (Tao He)
  • [[d6616cd]: Make the add_edges behavior more Pythonic (#855) (Siyuan Zhang)
  • [[bc5c430]: Fix unit test in compiler of interactive engine (#859) (shirly121)
  • [[c972b60]: [networkx] Implement attribute assortativity app and numeric assortativity app (#515) (Xinger)
  • [[ce439b5]: [networkx] Support label on DynamicFragment (#822) (Weibin Zeng)
  • [[13b6b4f]: Support download dataset from origin URL in standalone mode (#828) (DongZe Li)
  • [[4bd128b]: Fix an incorrect error initialization (#827) (Siyuan Zhang)
  • [[bf7204f]: Fix: add data cache clean in gremlin_test.sh (#823) (Weibin Zeng)
  • [[9d79576]: Update local deploy script: upgrade jdk tool-chain and open macOS CI (#758) (Weibin Zeng)
  • [[1c99a98]: [networkx] Check if node is illegal and raise NetworkXError (#817) (Weibin Zeng)
  • [[febd633]: Nightly: don't run on forks. (#818) (Tao He)
  • [[d21de37]: Recover log4rs.yml of graphscope-store and fix the log output location (#814) (Weibin Zeng)
  • [[1858a87]: GaiaX Runtime refactoring (#812) (BingqingLyu)
  • [[ee03c8f]: Unified directory structure after installation (#809) (DongZe Li)
  • [[846dd4f]: Enable math.h functions in UDF algorithms. (#811) (Tao He)
  • [[60ab3af]: Gaia x (#801) (Longbin Lai)
  • [[7dc8086]: Add parameters section to Store docs (#802) (Siyuan Zhang)
  • [[bc048d7]: fix bug in graph store doc (#799) (tianliplus)
  • [[3e2fd7d]: Add methods to unload contexts. (#794) (Siyuan Zhang)
  • [[b5ba16c]: clear duplicated and unused code (#777) (tianliplus)
  • [[4b6b665]: shutil.rmtree cannot remove files (#793) (Siyuan Zhang)
  • [[fce0818]: rename 0.0.1-SNAPSHOT as maxgraph-assembly-0.0.1-SNAPSHOT and update reference (#783) (shirly121)
  • [[c6fd278]: Enable manually trigger nightly ci (#789) (Weibin Zeng)
  • [[106078f]: Increase the resource size of coordinator for running demo of README (#791) (DongZe Li)
  • [[b03e12b]: Build app/graph frames: with "Release" profile by default. (#790) (Tao He)

Release v0.7.0

08 Sep 12:42
Compare
Choose a tag to compare

We are glad to announce the availability of GraphScope v0.7. This release includes major updates for the persistent graph store in GraphScope, providing APIs for real-time graph updates (inserts and deletes of individual vertices and edges). It also focuses on user-friendly improvements, security issues, code quality, and a series of bug fixes.

We highlight the following improvements included in this release:

  1. Apart from bulk loading, this release introduces a set of APIs for real-time graph updates. Currently, these APIs have supported the following functions:

    • Insert/delete one or multiple vertices/edges;
    • Update properties of a specific vertex/edge.

    More details can refer to this.

  2. User-friendly improvement

    • Revise error handling in GraphScope and improve all error messages reported to users;
    • Add a document to describe persistent graph store in GraphScope;
    • The logs in the err channel are always fetched to the client for debugging;
    • The bulk-loading tool of the persistent graph store is released to help load graphs into the store;
    • Revise some descriptions for APIs in documents.
  3. Optimizations and enhancements

    • Using zetcd to replace zookeeper in the graph interactive engine;
    • Update third-party dependencies to address some security issues;
    • More test coverages for GAIA and client.
    • Integrate GIE GraphManager into Coordinator.
    • During sess.gremlin, the pod will not be created dynamically for reducing the response time

Some Breaking API Changes:

  • Remove GIE GraphManager role.
  • Remove zookeeper and replace with zetcd.
  • k8s_gie_graph_manager_image k8s_gie_graph_manager_cpu k8s_gie_graph_manager_mem Deprecated.
  • k8s_zookeeper_image k8s_zookeeper_cpu k8s_zookeeper_mem Deprecated.
  • k8s_gie_gremlin_server_cpu k8s_gie_gremlin_server_mem Deprecated.

For more detailed improvements that have been made in this release, please refer to the complete changelog.

Commits

  • [82c9aab]: Fixes io loop event exeception by closing gremlin python client (#788) (DongZe Li)
  • [b152c3e]: Fix inaccurate internal error code (#787) (Siyuan Zhang)
  • [dc8f214]: Fix restart test of GraphScope-Store(#784) (tianliplus)
  • [42a9e8e]: Fixes the condition of whether vineyard exists. (#782) (Tao He)
  • [352be04]: Install GraphScope into /opt/graphscope and link to the /usr/local (#767) (DongZe Li)
  • [74b13bf]: Vineyard is no longer a hard dependency for the client package. (#780) (Tao He)
  • [684522a]: Revise error messages and handling of GRPC exception. (#751) (Siyuan Zhang)
  • [f4905b2]: add doc for persistent graph store (#765) (tianliplus)
  • [54e32ad]: Config coordinator logger to handle warning level to stderr (#764) (Weibin Zeng)
  • [a0a1165]: Fixes the sphinx and docutil version to make sure lists are rendered. (#766) (Tao He)
  • [8e21257]: Fix pegasus service to run multiple executors (#754) (shirly121)
  • [845ba6d]: Output the graphscope-store log to both console and file (#749) (Weibin Zeng)
  • [96fba3d]: Add a ci to test loading graph from HDFS (#750) (Weibin Zeng)
  • [1e602fc]: Remove the legacy code related to graph manager and make default user 'graphscope' in graphscope-store image (#748) (DongZe Li)
  • [e686143]: Fetch stdout and stderr log of grape engine separately (#744) (Weibin Zeng)
  • [22db6d9]: Enables GAIA to run on the Kubernetes environment (#732) (DongZe Li)
  • [4508158]: Fix edge id encoding for v2 (#743) (shirly121)
  • [9e8e066]: Implement realtime write API in Python side, and add tests in CI. (#721) (Siyuan Zhang)
  • [e013e3b]: Add unified Tinkerpop version variable to reduce duplicate constant in pom (#735) (shirly121)
  • [741ccfe]: Provide a method to print human readable schema for Context. (#734) (Siyuan Zhang)
  • [434b872]: Upgrade tinkerpop & groovy (#714) (shirly121)
  • [f1307ef]: Replace zookeeper with zetcd+etcd (#722) (Weibin Zeng)
  • [61bdc84]: Allow the session to be reconnectable, even not reaching dangling timeout (#733) (Tao He)
  • [0b341e1]: Update README by adding publications. (Jingbo Xu)
  • [fd2d042]: Push docs for tags as well. (#728) (Tao He)
  • [4c82d02]: Remove unused files (#720) (BingqingLyu)
  • [9e9a52d]: Add notes for self-hosted runner (#723) (Siyuan Zhang)
  • [cea8fb1]: Fix gremlin test hang by move gss-test to self-hosted runner (#717) (tianliplus)
  • [ea450f0]: Fix store warning (#718) (tianliplus)
  • [d18a82e]: Improve Cython API doc by adding 'graphscope.declare' 'graphscope.Vertex' in cython_sdk.rst (#719) (DongZe Li)
  • [07ed08e]: Make I/O a lazy DAGNode in the coordinator (#715) (DongZe Li)
  • [358fc7d]: Fixes for CXX_FLAGS detection on Linux with LLVM compiler. (#716) (Tao He)
  • [fe4837b]: Adapt to latest vineyard: the Create() API has changed. (#713) (Tao He)
  • [9405412]: Add GAIA on vineyard test (#708) (shirly121)
  • [e092774]: Implement degree assortativity coefficient app (#492) (Xinger)
  • [3105127]: Missing close method in RPC client. (#704) (DongZe Li)
  • [fe37bee]: remove unused file (#705) (shirly121)
  • [c07654d]: Remove dependency of v2 from gaia-adaptor (#702) (shirly121)
  • [66706e7]: Fix docker-nightly ci with short sha (#703) (Weibin Zeng)
  • [b1c914a]: Fix variable names when starting GIE instance (#700) (Siyuan Zhang)
  • [14eee01]: Update cmake minimum version to 3.1 for gie (#699) (Weibin Zeng)
  • [ce261cb]: An ad-hoc solution to find frontend port from log file (#693) (Weibin Zeng)
  • [6ce1e8a]: Add BiparteGraphSage tutorial to show use of categorical_attrs_desc (#691) (Weibin Zeng)
  • [f8fa4f6]: Fix docker nightly ci: schedule time and gstest clean (#688) (Weibin Zeng)
  • [16c0c72]: Upgrade the graphlearn submodule to fixes a "get attribute" bug in GLE. (#687) (Tao He)
  • [521e195]: Fix failure of launching learning engine by allowing pickle None value (#686) (DongZe Li)
  • [c435591]: remove pom (#680) (tianliplus)
  • [35b2fdf]: Improve calculateQ efficiency in Louvain (#614) (Siyuan Zhang)
  • [79ec800]: Upgrade dependency (#674) (shirly121)
  • [40ad8cf]: fix sending unvalidated data to a web browser (#671) (shirly121)
  • [3ec9bdb]: Add a schedule ci to test docker file in k8s (#634) (Weibin Zeng)
  • [b918368]: upgrade smallvec to 0.6.14 as recommended (#675) (BingqingLyu)
  • [8c28beb]: support java16 && upgrade rust toolchain (#668) (tianliplus)
  • [c90a258]: Fix warnings in pegasus and runtime in interactive engine (#670) (BingqingLyu)
  • [adb04c9]: refine gremlin test (#663) (tianliplus)
  • [bd877ff]: upgrade crossbeam-channel from 0.3.x to 0.4.4 as suggested (#656) (BingqingLyu)
  • [fcca5f2]: update image links (#658) (Siyuan Zhang)

Release v0.6.0

06 Aug 09:17
Compare
Choose a tag to compare

We are glad to announce the release of GraphScope 0.6.0

This major release integrates a new graph interactive engine GAIA, which supports efficient parallel execution and bounded-memory execution for gremlin queries. More technical details of GAIA can refer to our published blog. Note that currently the integration of GAIA with GraphScope is experimental, and is not recommended for production use yet!

In addition, this release improves the experience of local deployment on macOS, Ubuntu, and CentOS, and adds more graph analytics algorithms.

We highlight the following improvements included in this release:

  1. Integrate GAIA, a graph interactive query engine, into GraphScope. Currently, it has supported the following features/functions:

    • Dynamic memory management for arbitrary graph traversal with ensuring bounded use of memory.
    • Automatic and adaptive strategy for optimizing Gremlin traversals, such as hybrid DFS/BFS traversal to balance parallelism and memory usage.
    • Early-stop optimization for Gremlin (limit, nested conditional, etc.) to minimize wasted computation.
    • Improvement of performance and scalability. (A new LDBC Social Network Benchmark will be released around year-end).
    • Support both Vineyard and the new persistent graph store.
  2. Lazy evaluation support for graph interactive engine and graph learning engine.

  3. A script supporting local deployment on macOS, Ubuntu, and CentOS.

  4. Add more graph analytics algorithms as built-in applications.

Commits

  • [032ed99]: Reorganize the scripts for GIE launching (#581) (Weibin Zeng)
  • [eb71eef]: Add glossory to analytics_engine.rst (#657) (Siyuan Zhang)
  • [1d0632a]: Add unit tests for gnn store ffi. (#654) (GoldenLeaves)
  • [1af190b]: Add gremlin test (#644) (tianliplus)
  • [a383bbc]: Upgrade to vineyard v0.2.6. (#655) (Tao He)
  • [e2987fa]: Open CI of Vineyard X [Maxgraph + GAIA] (#633) (Siyuan Zhang)
  • [36d7bc4]: [Bug Fix] Fix bugs in CI of GAIA on Vineyard (#652) (BingqingLyu)
  • [4fe934a]: Fix broken hadoop link (#651) (tianliplus)
  • [59703c8]: fix (#648) (tianliplus)
  • [b2363f2]: Fix bugs of negative vertex id (#640) (BingqingLyu)
  • [007a7a1]: Store ffi for GNN (#638) (tianliplus)
  • [2393760]: Open GraphScope Store GAIA test (#597) (Siyuan Zhang)
  • [1998c81]: Fix data load (#627) (tianliplus)
  • [b114ce2]: [Bug Fix]: add u128 in Primitive in Object (#628) (BingqingLyu)
  • [b264c4c]: [Bug Fix]: fix bug in path().count() (#629) (BingqingLyu)
  • [c4a7720]: bug fix (#615) (tianliplus)
  • [d546038]: [script] Add scripts for starting GAIA on vineyard (#604) (BingqingLyu)
  • [d902f12]: remove pb gen (#601) (tianliplus)
  • [1f62da3]: [script] Start GAIA executor on Vineyard (#600) (BingqingLyu)
  • [b3b3a87]: [networkx] Implement is_simple_path app in GraphScope (#471) (MJY-HUST)
  • [576d8b8]: [Bug Fix] GAIA executor with vineyard (#598) (BingqingLyu)
  • [e47915f]: add additional pegasus config for benchmark (#587) (shirly121)
  • [90ac841]: [GAIA & Store Adapter] Support parallel scan in GAIA, and adapt to v2 and vineyard respectively (#592) (BingqingLyu)
  • [fefffbd]: [GAIA] Start GAIA executor with vineyard store (#595) (BingqingLyu)
  • [99aca1c]: Update deploy_local.sh: add CentOS support and more robust (#562) (Weibin Zeng)
  • [19f7d0b]: add vineyard adaptor (#590) (shirly121)
  • [d1e935e]: Add config matrix for testing with/without GAIA in CI (#572) (Siyuan Zhang)
  • [8b06008]: divide store (#579) (tianliplus)
  • [3de9a7a]: Add gaia compiler adaptor into V2 to fix dependency issue (#576) (shirly121)
  • [ec4caff]: Fix session.close for local test (#573) (DongZe Li)
  • [e84765f]: Fix local CI by catching exception in sess.close (#571) (DongZe Li)
  • [0a7cd8f]: [store_adapter] Adapt Partitioner for vineyard on Read Path (#560) (BingqingLyu)
  • [6ff99b5]: Lazy mode support for GIE/GLE engine (#513) (DongZe Li)
  • [076268d]: Create CODE_OF_CONDUCT.md (#567) (Jingbo Xu)
  • [66bdc55]: Realtime write server impl (#557) (tianliplus)
  • [a8c5d12]: Use the same etcd prefix when launching vineyard from multiple engines. (#559) (Tao He)
  • [685965e]: Install the inplace vineyard-io as well. (#558) (Tao He)
  • [9fdb14f]: Simplify local ci with matrix.os (#556) (Weibin Zeng)
  • [ff23d9a]: Add CI test for GAIA compiler (#552) (shirly121)
  • [76cbcee]: Revise deploy_local.sh and update local ci with deploy_local.sh (#555) (Weibin Zeng)
  • [626a105]: Fix edge result (#549) (shirly121)
  • [26436e9]: [WIP] Realtime write api (#553) (tianliplus)
  • [d2ab259]: Fix macOS ci: change to llvm 8 (#554) (Weibin Zeng)
  • [1f7588a]: Fix gss test bugs (#548) (shirly121)
  • [85432f6]: Unify rpc api (#547) (shirly121)
  • [338da43]: add realtime_write proto (#546) (tianliplus)
  • [ca65eda]: implement GraphStoreService api for maxgraph && add snapshot (#537) (shirly121)
  • [e28c441]: checkin store v2 interface (#543) (tianliplus)
  • [e280e59]: Revise the prepare_env.sh, more standard and user-friendly (#534) (Weibin Zeng)
  • [1f30e04]: Add a local deploy and test ci on MacOS (#512) (Weibin Zeng)
  • [af99e5b]: use gremlin api in 3.4.2 to be compatible with maxgraph (#540) (shirly121)
  • [101ab6f]: Unified Query Params for compatible with different storages (#527) (BingqingLyu)
  • [68c4cfb]: Initialize job compiler in adapter for starting engine service (#530) (BingqingLyu)
  • [3571ca4]: Separate the pytest in ci to avoid OOM (#529) (Weibin Zeng)
  • [55adea9]: [GAIA] Add storage adapter for graphscope store (#521) (BingqingLyu)
  • [ae6b8c5]: [NetworkX] add node_boundary and edge boundary app (#468) (Weibin Zeng)
  • [33a4328]: [store_adapter] refine some codes in store adapter (#519) (BingqingLyu)
  • [6fba7ca]: Doc: sections in alphabetic order. (#520) (Tao He)
  • [7660da5]: Add extra params for compatible with different storages (#508) (BingqingLyu)
  • [73e05ba]: fix reverse edge in realtime write (#510) (tianliplus)
  • [7e21a25]: Fixes the copy_class hack for argmap in networkx. (#511) (Tao He)
  • [f1da6ae]: Use a higher version git (#506) (Siyuan Zhang)
  • [d297b6b]: Set decorator>=5.0.5 since it's old version(4.4.2) may not compatible with NetworkX latest release (#507) (Weibin Zeng)
  • [8cc4f26]: Add examples for output context (#505) (Siyuan Zhang)
  • [bb9d192]: Typo: we actually use BUILD_PROGRESS rather than DOCKER_BUILD_PROGRESS. (Tao He)
  • [af373da]: fix gremlin-test for mg (#489) (tianliplus)
  • [df2cc02]: Script support local deployment in MacOS (#464) (Weibin Zeng)
  • [266ccca]: Set grpc max message length options in coordinator server side (#478) (DongZe Li)
  • [16c7766]: fix store bug (#477) (tianliplus)
  • [e35c717]: Fix string oid graph transformation bug (#467) (Weibin Zeng)
  • [c3203ac]: fix gaia server lifecycle (#474) (tianliplus)
  • [5508e6b]: Upgrade vineyard to v0.2.5 (#466) (Tao He)
  • [e0395fb]: Polymorphic ContextDAGNode to guide selector for user (#461) (DongZe Li)
  • [ba47539]: Gaia server async start (#463) (tianliplus)
  • [42575b1]: Fix bug in directed graph transformation between graphscope and nx (#454) (Weibin Zeng)
  • [7bb5a8d]: Add instructions for mount volume in mac (#457) (Siyuan Zhang)
  • [809842a]: integrate gaia to persistent store (#440) (tianliplus)
  • [6eecccd]: add mininum properties in graph/vertex step for new graph store api (#455) (shirly121)
  • [d4eac09]: Add pagerank in NetworkX version (#435) (Weibin Zeng)
  • [e76c81d]: Support with keyword in session (#451) (Siyuan Zhang)
  • [9e99de7]: add support of property name to id in logic plan (#446) (shirly121)
  • [3d42337]: [gremlin_core] remove get_partition_num() in Partitioner and refine s… (#449) (BingqingLyu)
  • [ab02736]: Fix building config for graphscope-jupyter extensions (#450) (Moyee)
  • [aa7f81d]: add interface (#448) (tianliplus)
  • [fd536d4]: add SimpleServerDetector (#438) (tianliplus)
  • [0ad8b42]: Refine gen source (#427) (BingqingLyu)
  • [675d6ad]: [graphscope] add mapping of partition id to server id in GraphPartitionManager (#431) (BingqingLyu)
  • [85ecfe9]: return address for jna (#433) (tianliplus)
  • [efb0728]: Add unload graph/app test cases for lazy mode execution (#428) (DongZe Li)
  • [f3a4850]: Set locale to utf8 (#425) (Siyuan Zhang)
  • [9009984]: Local CI: use latest vineyard (v0.2.4). (#423) (Tao He)
  • [8690da0]: refactor jna (#419) (tianliplus)
  • [6a24fa3]: Support prop_id in GAIA runtime (#421) (BingqingLyu)
  • [959c38f]: fix gremlin test case (#416) (tianliplus)
  • [a92ebe9]: refine bulk load (#413) (tianliplus)
  • [40b744f]: Add k-hop for example and benchmark (#407) (bmmcq)
  • [5686805]: Use app-version as default tag instead of latest in graphscope-store charts (#406) (Siyuan Zhang)

Release v0.5.0

11 Jun 07:26
8a08729
Compare
Choose a tag to compare

Today, we’re announcing the availability of GraphScope 0.5.0.

This release including a persistent graph store to enable a “service mode” for real-time graph computation, and lazy evaluation of GraphScope programs, an execution strategy that delays the execution of a GraphScope program until needed for efficiency. Also, we provide a Q&A page for beginners.

GraphScope-Store: A persistent store for mutable graphs

  • A bulk-load tool to import a property graph from files to the GraphScope-Store instance
  • Helm support to launch GraphScope as service with store
  • Support for multiple session connections to a store
  • Interactive queries on graphs in the store with Gremlin

Enhanced NetworkX compatibility

  • Adaption on the engine to support multi-queries on duplications of the whole graph
  • Based on aforementioned adaption, support all-pairs shortest paths length and closeness centrality algorithms

Commits

  • [29b8701b]: [networkx] Adapt the networkx import to eager/lazy session mode (#377) (Weibin Zeng)
  • [131fea73]: Check version compatibility during session connecting (#403) (DongZe Li)
  • [5f1b5b0c]: Refine graphscope-store charts (#402) (Siyuan Zhang)
  • [3fa11314]: Add doc for data loader (#397) (tianliplus)
  • [e4d0ebda]: Add Lazy mode support to GraphScope (#340) (DongZe Li)
  • [65a0f4ed]: Ensure graphscope.proto preponderate over outside proto directory. (#401) (Tao He)
  • [5e9a7075]: Test release step (#394) (Siyuan Zhang)
  • [6adec620]: Suggest users to upgrade their pip. (#396) (Tao He)
  • [9ae7b540]: Ignore store service test in k8s test. (#389) (Siyuan Zhang)
  • [8001f562]: Fix for type number changes. (#388) (Siyuan Zhang)
  • [b8a28814]: Persistent storage add DDL supports && python API (#370) (tianliplus)
  • [1988e78a]: Add google analytical links to docs. (Tao He)
  • [28bffc64]: Hotfix for misspelled property name (#384) (Siyuan Zhang)
  • [e10ff69e]: Use codecov v1.0.5. (Tao He)
  • [471ec74f]: Add all pair shortest path length app and implement Dynamic context for complicated result (#363) (Weibin Zeng)
  • [8100c3be]: fix: Correctly Visualization in Jupyterlab Dark theme (#375) (Moyee)
  • [bf8662d0]: Separate test_ctx_builtin.py to avoid oom_ (#371) (Weibin Zeng)
  • [336ec947]: [GAIA] add encode for single event (#369) (yyy)
  • [6a98c7e5]: Add closeness_centrality app and test case of duplicated mode modification (#336) (Weibin Zeng)
  • [909e98fb]: Update README.md (Jingbo Xu)
  • [0b7e3147]: Upgrade vineyard to v0.2.2. (#366) (Tao He)
  • [0525b0ee]: Support "preemptive" params in GraphScope charts (#364) (DongZe Li)
  • [28d4b3bc]: Add persistent storage (#361) (tianliplus)
  • [0226e00c]: Update badges on README.md (#359) (Jingbo Xu)
  • [3e55fce6]: Support duplicated mode in DynamicFragment (#325) (Weibin Zeng)
  • [ec485715]: [GAIA] Redo scope tag implement, to reduce runtime overhead; (#358) (bmmcq)
  • [dcc60a18]: Add FAQ doc (#346) (DongZe Li)
  • [c7ca8155]: [GAIA] Bug-fix: fix the nested tasks running in iteration; (#356) (bmmcq)
  • [5574f1ff]: Fix predicate (#354) (BingqingLyu)
  • [acfd4b14]: update early stop test to two workers (#350) (yyy)
  • [1536f8bb]: [GAIA] fix early stop bug in multi-cancel scenario (#349) (yyy)
  • [80d197de]: Move boost download link from bintray to jforg. (Tao He)
  • [18f3f0b2]: [GAIA] update benchmark for typical queries and inconsistencies fix (#339) (yyy)
  • [0069bb92]: [BUG-Fix] Fix premature abnormal end of flatmap in subtask; (#341) (bmmcq)
  • [b424da70]: add edge global id (#334) (shirly121)
  • [1e6427e2]: It looks that some github runners has already installed clang-format, we just replace the original one. (Tao He)
  • [87a3cbb7]: Try to rm file generated by rust-protobuf (#335) (DongZe Li)
  • [cf5c743d]: Reduce the minimum resources requirement (#332) (DongZe Li)
  • [23af8d3e]: Reduce redundant copies of session parameters (#330) (DongZe Li)
  • [a276d920]: Fix the tutorial links of document (#331) (Weibin Zeng)
  • [b4854089]: update graphscope jupyter module name to @graphscope/graphscope-jupyter (lidongze0629)
  • [eaee904e]: add gremlin test framework && fix age property type issue (#315) (shirly121)

GraphScope v0.4.1

16 May 08:48
Compare
Choose a tag to compare

We highlight the following fixes and improvements included in this releases:

  • Fix compile error under gcc4.9
  • Fix the bug of early stop optimization of GAIA
  • Correctly behavior of Graph.clear()
  • Fix install graphscope-jupyter extensions and correct the visualization behavior
  • Generalize the session interface to make it extensible
  • Publish graphscope-jupyter npm package for jupyterlab extension
jupyter labextension install @graphscope/graphscope-jupyter

Commits

  • [391a96cd]: Defaults to source when protocol not support vineyard io stream (#311) (DongZe Li)
  • [40a82296]: Correct the visualization behavior (#310) (DongZe Li)
  • [436c1514]: Drop unnecessary rustfmt.toml (#309) (yyy)
  • [c7fc41f8]: Fix install graphscope-jupyter extensions (#307) (DongZe Li)
  • [7a11d47c]: Install hadoop into the base image for HDFS accessing. (#306) (Tao He)
  • [129c3013]: [GAIA] fix the bug of early stop optimization (#304) (yyy)
  • [a6d06290]: Test GAIA in CI. (#305) (Tao He)
  • [59cbe697]: update networkx zh-cn tutorial and fix Graph.clear() bug (#296) (Weibin Zeng)
  • [d25509f4]: Generalize the session interface to make it extensible (#277) (DongZe Li)
  • [72d83f94]: add zh-cn version of networkx tutorial (#285) (Weibin Zeng)
  • [f9db7d24]: fix compile error under gcc4.9 (#276) (Siyuan Zhang)

Release v0.4.0

30 Apr 15:31
Compare
Choose a tag to compare

Today, we’re announcing the availability of GraphScope v0.4.0. This release focuses on the compatibility improvement with NetworkX, with the aim of allowing users to develop graph applications on large-scale graphs in a distributed environment just like doing this on a single machine. In addition, this release improves the experience of standalone deployment.

We highlight the following improvements included in this release:

  • Improved compatibility with NetworkX
  • Support Graph/DiGraph types in NetworkX
  • Support NetworkX APIs of operations and manipulations over the above two types of graphs
  • A new tutorial in PlayGround to introduce graph processing with NetworkX APIs.

Commits

  • [76c0d8f]: [networkx] Remove experimental flag of the networkx module (#273) (Weibin Zeng)
  • [72e79dd]: [networkx] improve the document of networkx style api (#263) (Weibin Zeng)
  • [f1c87e3]: [networkx] refact clear api and implment number_of_selfloops api (#266) (Weibin Zeng)
  • [ed97d6c]: [GAIA] New release of GAIA (#272) (yyy)
  • [f11a596]: Generalize the Kubernetes deployment interface to make it extensible (#269) (DongZe Li)
  • [f7908c1]: Enhancement of build.sh (#271) (Siyuan Zhang)
  • [62b3bbf]: [networkx] add tutorial of NetworkX-style api use (#262) (Weibin Zeng)
  • [bcaa815]: Use IOFactory to create adaptors (#268) (Siyuan Zhang)
  • [67a18a7]: [networkx] implement deepcopy subgraph/edge_subgraph in engine, not return a view (#258) (Weibin Zeng)
  • [31922c1]: [networkx] implement graph views in engine side (#256) (Weibin Zeng)
  • [b08ea46]: Correct author info in coordinator pypi package (#260) (Siyuan Zhang)
  • [8ca1aca]: [GAIA] dead lock bug fix of GAIA (#257) (yyy)
  • [e25f983]: [networkx] allowing tuple/bool/double node type (#249) (Weibin Zeng)
  • [9354a24]: [networkx] implement clear_edges, deepcopy of to_directed and to_undirected api (#255) (Weibin Zeng)
  • [1a6b040]: Support launch multiple session/instance in standalone mode (#247) (DongZe Li)
  • [eecec85]: Support graphs that only have vertices or empty. (#245) (Siyuan Zhang)
  • [2b4e891]: update pegasus readme (#250) (yyy)
  • [f1f21f0]: update GAIA: 1. optimize minimal carried properties; 2. add more tests and benchmarks; 3. formatted display of results. (#248) (yyy)
  • [41d1b78]: Support combine multiple add vertice and edges operation. (#241) (Siyuan Zhang)
  • [d858a36]: Add makefile target to simplify process of compilation (#240) (DongZe Li)
  • [0183a32]: update readme (#239) (Siyuan Zhang)
  • [a12ed52]: Don't link "mpi_cxx" on Mac, since brew doesn't install that. (#238) (Tao He)
  • [6c8514b]: Fix several bugs of project/add column listed by #215 (#234) (Siyuan Zhang)
  • [90095c5]: Add template for frontend (#233) (Siyuan Zhang)
  • [be9e82f]: update tutorials and helm readme (#232) (DongZe Li)
  • [11b5fab]: Fix default session for processing vineyard operation. (#230) (Siyuan Zhang)
  • [c7c27c7]: enrich unittest of project and add_column (#215) (Weibin Zeng)
  • [93d92ea]: CI: fixes computing tag when pushing docs to gh-pages branch. (Tao He)

GraphScope v0.3.0

03 Apr 06:21
Compare
Choose a tag to compare

Following GraphScope v0.2.1 pre-release, we highlight the following improvements included in this release:

  • Integration with mars
  • Graph Visualization: a graphscope-jupyter extension for jupyterlab is experimentally available.
  • Better getting started experience for end-users: Support to deploy GraphScope with standalone of Ubuntu 20
  • Improve graph manipulation APIs with a general project operator
  • Support Louvain algorithm in built-in app.

Released Images

sudo docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope:0.3.0
sudo docker pull registry.cn-hongkong.aliyuncs.com/graphscope/maxgraph_standalone_manager:0.3.0

Commits

  • [9bd97a4]: Fixes mars version to 35b44ed56e031c252e50373b88b85bd9f454332e. (#228) (Tao He)
  • [03a7b03]: New version of GAIA for research: 1. minimum carried information for gremlin traversal; 2. add benchmark and tests; 3. engine service optimization and refactor; 4. support distributed execution. (#229) (yyy)
  • [560309e]: add scripts to install dependencies and build GraphScope (#222) (Weibin Zeng)
  • [1c8739e]: Hotfix for #224. (#227) (Siyuan Zhang)
  • [219ca56]: Use None to select all property, and empty list to deselect all. (#224) (Siyuan Zhang)
  • [af4f6e6]: Standalone support for GraphScope with ubuntu-20 (#214) (DongZe Li)
  • [464b0a4]: Link against mpi_cxx as well. (#223) (Tao He)
  • [405e91c]: Rename to graphscope-jupyter. (#217) (Tao He)
  • [ea17259]: Add a general project operator. (#211) (Siyuan Zhang)
  • [4037c18]: [fix] Test_with_mars not found data_dir (#213) (Weibin Zeng)
  • [b384563]: Support launching mars along with GraphScope engines. (#210) (Tao He)
  • [11df85b]: Hide versions and show languages by default. (#212) (Tao He)
  • [4853cc3]: Add helm test (#209) (DongZe Li)
  • [b47f1e6]: Add a parameter to helm to use prelaunched vineyar DaemonSet. (#204) (Tao He)
  • [d64742c]: Docs requires doxygen. (#203) (Tao He)
  • [fd2481c]: Multi-version docs. (#201) (Tao He)
  • [c357855]: Redesign the way to initialize a graph and revert remove (#199) (Siyuan Zhang)
  • [4f5db65]: Implement louvain algorithm (#183) (Weibin Zeng)
  • [509b915]: support dangling handle for each session connection (#198) (DongZe Li)
  • [b8cb7c4]: Distributed ETCD with 3 pods. (#197) (DongZe Li)
  • [d180191]: Rewrite graph loading API. (#193) (Siyuan Zhang)
  • [7a8f3f6]: Some fixes for running with helm deployed (#194) (DongZe Li)
  • [b76b193]: Add preemptive param in session to give pod a good chance of being sc… (#192) (DongZe Li)

GraphScope v0.2.1

15 Mar 10:54
f807eef
Compare
Choose a tag to compare
GraphScope v0.2.1 Pre-release
Pre-release

We highlight the following improvements included in this releases:

  • Graph Visualization: Add a module of jupyter notebook extension to visualize the graph data.
  • Better getting started experience for end-users: Optimate loading process of graph and improve the response time of each step in python
  • Better Kubernetes integration: Support deploy with HELM and generalize k8s_volumes to support mount PVC.
  • Improve graph manipulation APIs and support loading from vineyard stream by using names.
  • Support add vertices and edges to existing graph
  • Provide a script to launch k8s cluster on amazon/aliyun cloud.

Some Breaking API Changes:

  • Deprecate the support for minikube (k8s_minikube_vm_driver)

Commits

  • [f807eef]: Stop propgagating signal to coordinator subprocess when launching locally (#190) (DongZe Li)
  • [6f98f82]: Refine Graph.project_to_simple method. (#186) (Siyuan Zhang)
  • [d4bd566]: Fixes the typo in docs for pagerank. (#188) (Tao He)
  • [6c0efef]: Helm integration of GraphScope (#184) (DongZe Li)
  • [a232871]: Add vertices and edges to existing graph. (#179) (Siyuan Zhang)
  • [6a0e5a3]: Fix bug about can not join current thread during graph unloading (#177) (DongZe Li)
  • [e5b5e09]: fix the requirements check in launch_cluster script (#176) (Weibin Zeng)
  • [d709119]: Fix issue of union result parser in the new compiler of GIE (#175) (shirly121)
  • [be74042]: Provisioning k8s cluster on amazon/aliyun with script (#168) (Weibin Zeng)
  • [b3cf8f6]: Optimize time of sess.gremlin and sess.close (#170) (DongZe Li)
  • [5980176]: Opensource code for GAIA (#173) (yyy)
  • [705a7e6]: Init gaia directory (#171) (yyy)
  • [10f36b1]: The log_level could be in lower case, transform it to upper first. (#169) (Tao He)
  • [5b5061d]: Print useful information for commonly used objects. (#167) (Siyuan Zhang)
  • [70bb6e5]: Support loading from vineyard stream/dataframe using names. (#166) (Tao He)
  • [d0251fa]: Pre-compile a set of graphs / apps in docker-build stage. (#163) (Siyuan Zhang)
  • [f643d9f]: Capture KeyboardInterrupt during the session launching and cleanup re… (#162) (DongZe Li)
  • [ef3df2c]: Put config to handle in get_handle (#159) (Weibin Zeng)
  • [954f8a6]: Upgrade graph-learn submodule. (#158) (Tao He)
  • [b7ed6d8]: Generalize k8s_volumes and support mount pvc (#156) (DongZe Li)
  • [055480b]: Expose graph interactive engine parameters to client. (#155) (Siyuan Zhang)
  • [0c56ff0]: Optimize source chain operator (#152) (Siyuan Zhang)
  • [16a93ea]: fix: update graphscope package version & readme file (#148) (Moyee)
  • [567e3dc]: Unload graph when session close (#146) (DongZe Li)
  • [3081a8a]: Visualization with ipygraphin jupyterlab extension (#127) (DongZe Li)
  • [f97e26b]: Deprecated 'k8s_minikube_vm_driver' parameter in session. (#129) (DongZe Li)

GraphScope v0.2.0

02 Feb 10:20
Compare
Choose a tag to compare

The GraphScope team is pleased to announce the 0.2.0 release after two-months development.
The 0.2.0 release is focused on better getting started experience for end-users and we have
make a lot of improvements in since the last minor release.

We highlights the following improvements included in this releases:

  1. Better Kubernetes integration: supported LoadBalancer service type and a volumes parameter for graphscope.session() to mount users data into worker pods.
  2. Enhancement for interactive query: added a InteractiveQuery.traversal_source() method for better gremlin experience.
  3. Better I/O and serialization support: started to support various I/O and graph serialization/deserialization.

We thanks everyone in the graphscope team as well as the community for make graphscope better. We highlight the following commits that involved in this release:

Commits

  • [f0abbbf5]: add tutorials. (#117) (Jingbo Xu)
  • [33b7e975]: fix compile app with string oid graph, add a simple test (#120) (Siyuan Zhang)
  • [3bc97d93]: Add module string. (#121) (Siyuan Zhang)
  • [2693c128]: Fixes the global property graph stream for subgraph. (#118) (Tao He)
  • [30022c9d]: unify the local k8s cluster setup tool with kind (#116) (Weibin Zeng)
  • [512a5b8a]: Requires vineyard-io, and drop the copy hack. (#115) (Tao He)
  • [c63c25fd]: serialize and deserialize (#103) (Siyuan Zhang)
  • [adb15111, 995f2237]: Update README.md (Wenyuan Yu)
  • [b421e880]: Fix passing zookeeper memory to etcd (#111) (DongZe Li)
  • [6865c1b5]: Check os compatibility and dependencies version in prepare_env.sh (#99) (Weibin Zeng)
  • [e2854d10]: Change session status to disconnected when grpc failed to coordinator (#105) (DongZe Li)
  • [d16ff635]: enable create session from an endpoint (#101) (Weibin Zeng)
  • [3c298899]: Make GraphScope support ResourceQuota limit in namespace (#102) (DongZe Li)
  • [2250fc47]: Parameterized k8s volume mount in session config (#100) (DongZe Li)
  • [1d2a5417]: Fix loading from streams when there's worker that receives no chunks (#98) (Tao He)
  • [5699613f]: Fix bug: delete permissions after deleting all resources. (#97) (DongZe Li)
  • [2695b653]: Try to read namespace from kube config when missing k8s_namesapce param (#95) (DongZe Li)
  • [aeca19db]: Add I/O support for aws s3. (#91) (Siyuan Zhang)
  • [f67e7e20]: Update README-zh.md (#87) (Jingbo Xu)
  • [cc16d6a9]: remove useless dependency (#84) (shirly121)
  • [99d6e46c]: Update badges for docs. (#85) (Jingbo Xu)
  • [ac4c1e2b]: Upgrade vineyard to v0.1.5. (#73) (Tao He)
  • [9e9d37e7]: add app kshell (#66) (Yongmin Hu)
  • [78404adc]: Update badge in docs. (#79) (Jingbo Xu)
  • [924af133]: Update graphlearn submodule for fixing the closing client issue (#77) (Weibin Zeng)
  • [53636b23]: Add Chinese docs for GraphScope (#67) (Jingbo Xu)
  • [dcd081de]: Fix cross-reference links in GIE docs (#74) (yyy)
  • [0915a56f]: [BUGFIX] Expose the correct external IP of GIE. (#69) (DongZe Li)
  • [26d256f4]: Initial version of the Chinese docs for GIE (#68) (yyy)
  • [97f41adf]: Render zh_CN docs under docs/zh/ directory, and add the language selector. (#61) (Tao He)
  • [5c9a2224]: Fixed the version at the time of releasing the pip package. (#49) (DongZe Li)
  • [39e39850]: Extend gremlin pod expose to load-balancer (#45) (shirly121)
  • [12de77c0]: Move session params show_log and log_level as a global configuration. (#42) (DongZe Li)
  • [595d1c7e]: combine prepare_env scripts into one (#38) (Weibin Zeng)
  • [46ab90a9]: Enforce vineyard version to find. (#39) (Tao He)
  • [e21d946b]: Support bytecode-based requests for interactive engine (#36) (Siyuan Zhang)
  • [b46a0683]: Add: provide configurable parameters for connecting to remote k8s.(#37) (#40) (howie.hu)
  • [dd2a58ac]: Fixes license info in pypi package (setup.py). (#34) (Tao He)
  • [7725f766]: Fix release image step: checkout code first before building and pushing image (#31) (Siyuan Zhang)
  • [8fd52b4e]: Migrate CI to GitHub runners. (#21) (Siyuan Zhang)
  • [d28c6631]: Wait etcd ready before launching vineyard container. (#23) (Tao He)
  • [69f401ed]: Add load balance service type (#24) (DongZe Li)
  • [edc0b0ed]: check docker is running or not in prepare_env.sh/prepare_env_wsl.sh (#17) (Weibin Zeng)