Skip to content

Release v0.16.0

Compare
Choose a tag to compare
@lidongze0629 lidongze0629 released this 12 Aug 07:29
· 1084 commits to main since this release
860b5d9

We are bringing a number of improvements to GraphScope, alongside the GraphScope 0.16.0 release. This release introduces many new features on backend engines and system stability. We enable Jave SDK of Graph Analytics Engine (GAE) on MacOS, and make a series of enhancements on the graph storage Groot. We completely remove a legacy Graph Interactive Engine (GIE), while officially replacing it with the latest version based on an intermediate representation (IR) layer; in addition, we improve GIE via a couple of optimizations, new language features, and bug fixes. The Graph Learning Engine (GLE) now supports real-time sampling on dynamic graphs. Meanwhile, we start to release a nightly version every day, and you can try it with pip3 install graphscope --pre.

We highlight the following improvements included in this release:

1. Enhancements of the graph storage Groot:

  • Support load table from partitioned ODPS table;
  • Speed up some popular gremlin queries;
  • Use the GAIA engine to support queries;
  • A series of deployment enhancements.

2. Enhancements of the GIE GAIA engine:

  • Completely replacing the legacy GIE engine with the latest version based on IR;
  • Optimizing the logic of lazily fetching properties from the graph store, and implementing a new CSR-based storage for experiment purpose;
  • New language features including more grouping functions, more options for group/dedup/orderby keys, etc.

3. Dynamic-Graph-Service (DGS) is introduced in GLE.

  • DGS is an online inference service, it supports real-time sampling on dynamic graphs with streaming graph updates.

4. Support Java SDK of GAE for MacOS.

5. Bug fixes:

  • Fixes potential pointer leak in IR-core FFI functions;
  • Duplicate results while scanning with primary keys;
  • Error while accessing a tag that does not exist in the record.
  • Fixes failure of running clustering algorithm on the property graph.

Docker Image

docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope:0.16.0

Commits

  • [9c656fa]: [GAIA Runtime] Use hashbrown for optimization (#1952) (BingqingLyu)
  • [a27dd5c]: Support for version suffixes like '0.15.0a1' in cmake (#1960) (DongZe Li)
  • [e691776]: upgrade protoc-gen-grpc-java version (#1830) (Siyuan Zhang)
  • [9a71bf4]: Fixed high CPU usage of ingestor when having empty buffer (#1946) (simple)
  • [3a2165d]: fix: add ipc sender after former one removed (#1950) (Neng Li)
  • [e486c35]: [GAIA/exp_store] To enable getting neighbors of a certain label by la… (#1945) (Longbin Lai)
  • [7f0f053]: [pegasus] fix bug in (#1954) (#1958) (bmmcq)
  • [009fd8c]: Fixes nightly CI by overwrite VERSION (#1957) (DongZe Li)
  • [f6dcf16]: Change nightly image tag to 'nightly' (#1951) (DongZe Li)
  • [84e8de8]: Support to pre-release GraphScope(image + wheel package) nightly with version like 'major.minor.alpha_patch' (#1949) (DongZe Li)
  • [5d9b629]: Fix typos in the tutorials (#1948) (Ye Cao)
  • [1de7533]: Fix missing dependency of ir-compiler (#1935) (Siyuan Zhang)
  • [a0da2a9]: [GAIA-IR] create ffi object from java side to avoid invoking ffi interface which can lead memory leak problems (#1925) (shirly121)
  • [9284f69]: [GraphProxy] Optimize LazyDetails (#1921) (BingqingLyu)
  • [98ae038]: Fixes the links for tutorials in the documentation. (#1928) (Tao He)
  • [52078d9]: Integrate targets of assembly artifacts in GIE (#1920) (Siyuan Zhang)
  • [5e93f73]: [IR Compiler] fix bugs when path_expand is nested in sub traversal, i.e. select('a').by(out('1..2')) (#1874) (shirly121)
  • [281f264]: Support edges of outer vertices in DynamicFragment (#1799) (ds-ssj)
  • [489a077]: Fixed graph schema drop and init error when edge_kinds's src or dst gone (#1922) (simple)
  • [aedbb31]: Fix compiling error of write-bench (#1918) (Siyuan Zhang)
  • [7009cca]: [IR Compiler] create FfiNameOrId from java side to fix undefined error (#1919) (shirly121)
  • [7e826c6]: Cleanup legacy files. (#1914) (Siyuan Zhang)
  • [8a04f83]: Print the running time of each round of analytical engine (#1913) (DongZe Li)
  • [41fe90e]: Add the etcd {client,peer} port to the configuration list (#1910) (Tao He)
  • [484f927]: Reopen groot gremlin test (#1912) (Siyuan Zhang)
  • [160bb0b]: Resolve issues reported by dependent bot (#1909) (Siyuan Zhang)
  • [1591300]: impl partial_eq for Property and fix gitignore (#1908) (waruto)
  • [eb45c58]: [GIE] Reorganize executor package by incorporating GAIA into GIE (#1883) (BingqingLyu)
  • [2899903]: Data load tools supports partition (#1900) (Siyuan Zhang)
  • [cd08a1a]: Enhance the install_deps.sh script (#1873) (Weibin Zeng)
  • [a33b179]: [GAIA-IR] support more patterns of dedup().by() in ir compiler (#1901) (shirly121)
  • [7087915]: Supporting reading from a config file in htap loader. (#1897) (Tao He)
  • [b0c9931]: Fix a bug when iterating dict (#1894) (Siyuan Zhang)
  • [2ac5213]: [GAIA-IR] support more patterns of aggregate functions, i.e min/max/toList/toSet/avg/countDistinct (#1847) (shirly121)
  • [28508f6]: Fix docs words error (#1893) (Milittle)
  • [13aca2e]: add arm runtime dockerfile (#1880) (Siyuan Zhang)
  • [1e35af2]: Reopen releasing gss in workflow (#1882) (Siyuan Zhang)
  • [b22e45e]: [GAIA-IR] Support PathExpand ranging from 0 (#1863) (BingqingLyu)
  • [e96e6ec]: Fixes the dtor error in the htap_loader. (#1884) (Tao He)
  • [7770814]: Adapt the launch cluster script to latest AWS API (#1876) (Weibin Zeng)
  • [9e1a334]: Add a standalone graph loader to vineyard. (#1869) (Tao He)
  • [e5cdf48]: Avoid mvn install fastffi twice (#1871) (Zhang Lei)
  • [51296d1]: Decrease the make job numbers when building gae. (#1868) (Siyuan Zhang)
  • [ea825d6]: Optimize the clustering algorithm by replacing the complex vertex_array_t with unordered_map (#1861) (Weibin Zeng)
  • [d024cda]: [Bug Fix] fix a bug in duplicated results by index scan (#1865) (BingqingLyu)
  • [fd9b55f]: [GAIA] Make input data as generic data types in JobAssembly interface (#1859) (BingqingLyu)
  • [6616ee0]: [IR Runtime] support mean() in runtime (#1852) (BingqingLyu)
  • [0a8e9c1]: [IR Compiler] support hasNot in ir compiler (#1853) (shirly121)
  • [a30384c]: [GAIA-IR] Filter the data when selecting a non-exist tag (#1843) (BingqingLyu)
  • [2695783]: fix groot and GIE test cases after replacing MaxGraph with gaia (#1823) (shirly121)
  • [959f6ff]: [GAIA-IR] Fix invalid unwrap in ffi functions to prevent broken pointers (#1846) (shirly121)
  • [ffeebcd]: [GIE/TEST] Add back CI Test for subgraph() (#1827) (BingqingLyu)
  • [a756bc1]: [GIE-GAIA] Add Pegasus named apis, and add names for IR Operators (#1834) (BingqingLyu)
  • [5698d98]: Add a TOC to the README. (#1838) (Tao He)
  • [1d92227]: Fixes the long standing empty column name issue in subgraph (#1832) (Tao He)
  • [86ea24b]: Upgrade protoc version and use variable to replace hardcoded value (#1829) (Siyuan Zhang)
  • [2eb2700]: Remove Zookeeper and zetcd related stuffs (#1828) (Siyuan Zhang)
  • [c35f341]: [pegasus] fix defect in the progress control (#1796) (Neng Li)
  • [35b56f2]: Make Pegasus support reading config files with hostname instead of only IP (#1808) (Melo Yang)
  • [2fe38e8]: Update dependency versions. Add rust format check (#1821) (Siyuan Zhang)
  • [7373a7f]: Add GRAPE-jdk support on mac (#1774) (Zhang Lei)
  • [36820c4]: [GAIA-IR] Support sum() in GAIA-Runtime (#1815) (BingqingLyu)
  • [f960946]: [GIE/IR] Fix IR warnings (#1817) (Longbin Lai)
  • [bded1bf]: use the same format file as query_service/ir (#1819) (waruto)
  • [a675598]: Workaround for pip failure to perform editable install with --user (#1813) (Weibin Zeng)
  • [d49476a]: Introduce a new interactive engine (#1782) (Siyuan Zhang)
  • [889e003]: Add degree threshold to katz_centrality, clustering and avg_clustering algorithm (#1507) (Siyuan Zhang)
  • [d1e5076]: [IR Runtime] Make v6d related codes as features (#1795) (BingqingLyu)