Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Epic] Explain Request Functionality #35

Open
6 of 8 tasks
jsimnz opened this issue Nov 11, 2021 · 3 comments
Open
6 of 8 tasks

[Epic] Explain Request Functionality #35

jsimnz opened this issue Nov 11, 2021 · 3 comments
Assignees
Labels
area/query Related to the query component discussion Discussion, Request for Comments (RFC) epic Includes sub-issues feature New feature or request

Comments

@jsimnz
Copy link
Member

jsimnz commented Nov 11, 2021

Simple Explain SUB-TASKS (initial implementation will be verbose = true).

Debug Explain SUB-TASKS

Prediction Explain SUB-TASKS

Execution Explain SUB-TASKS

Bugs:

CHECKLIST:

  • Update schema to parse in @explain directive from the query and mutation location only.
  • Iterate over all directive and find the matching explain.
  • Introduce the option to set verbose false for explain request.
  • Make sure to test MultiNode properly.

DESCOPED:

DESCRIPTION

Implement an Explain API + Endpoint for returning the structure of a plan graph as generated by the planner package.

Request:

query @explain {
 user {
   _key
   age
   name
 }
}

Response:

{
 "data": [
   {
     "explain": {
       "selectTopNode": {
         "selectNode": {
           "filter": null,
           "scanNode": {
             "collectionID": "1",
             "collectionName": "user",
             "filter": null
           }
         }
       }
     }
   }
 ]
}

There should be additional data options. Such as ANALYZE (from SQL) which would actually execute the Request, and provide insights into perf analysis on a per node basis and EXECUTE to provide insights to what was actually executed.

There should be an additional option to change the verbosity level of explain to omit attributes like filter when they are null.

Output is only going to be in JSON.

@jsimnz jsimnz added this to the DefraDB v0.3 milestone Nov 11, 2021
@jsimnz jsimnz added area/query Related to the query component discussion Discussion, Request for Comments (RFC) feature New feature or request labels Nov 23, 2021
@jsimnz
Copy link
Member Author

jsimnz commented Nov 30, 2021

// Copyright 2020 Source Inc.

@shahzadlone
Copy link
Member

@jsimnz
Copy link
Member Author

jsimnz commented Mar 31, 2022

@jsimnz jsimnz modified the milestones: DefraDB v0.3, DefraDB v0.4 Jul 26, 2022
@fredcarle fredcarle modified the milestones: DefraDB v0.4, DefraDB v0.5 Dec 20, 2022
@fredcarle fredcarle added the epic Includes sub-issues label Jan 10, 2023
@fredcarle fredcarle modified the milestones: DefraDB v0.6, DefraDB v0.7 Jun 19, 2023
@shahzadlone shahzadlone removed this from the DefraDB v0.7 milestone Sep 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/query Related to the query component discussion Discussion, Request for Comments (RFC) epic Includes sub-issues feature New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants