alibaba / alibaba/GraphScope

Introduce the JOB benchmark in GIE

Open
#4,014 2 comments 0 reactions 3 assignees Claimed by @zhanglei1949 View on GitHub
Dominant language
C++
Stars
3.6k
Forks
468
Avg merge
29m
Merged PRs (30d)
1

Description

**Is your feature request related to a problem? Please describe.**

The Join Order Benchmark (JOB) is a well-known standard for evaluating the performance of query optimizers in relational databases, focusing particularly on the effectiveness of determining optimal join orders. Integration of JOB into the GIE could provide significant insights into the optimizers' ability to handle complex join queries efficiently.

To achieve this, we need to:

1. **Preprocess the IMDB Dataset**:

- [x] Convert the raw IMDB relational dataset into a graph-compatible format consisting of vertex and edge tables, suitable for ingestion by graph databases.

2. **Prepare Meta Information**:

- [x] prepare meta information, includes schema and statistics for compiler.
- [x] provide the dataloading yaml for exp-store.
- [ ] provide the unified dataloading yaml for insight and interactive

3. **Translate JOB Queries**:

- [x] Rewrite the queries from the JOB benchmark into Cypher or Gremlin, as supported by GIE.
- [x] Prepare expected results, and validate the queries

4. **Implement the JOB Benchmark in GIE**:

- [x] Integrate the JOB benchmark into GIE's benchmarking tool
- [x] Ensuring it supports both correctness and performance testing.

5. **Test based on different backends**

- [x] Interactive @zhanglei1949 @BingqingLyu
- [ ] Insight @siyuan0322 @BingqingLyu

6. **Other related issues to be addressed**
https://github.com/alibaba/GraphScope/issues/4114
https://github.com/alibaba/GraphScope/issues/4039

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.