spaceandtimelabs / sxt-proof-of-sql

Space and Time | Proof of SQL
Other
2.74k stars 96 forks source link

feat: SQL Inner Join Operation #394

Open Lengxiaoyi opened 4 days ago

Lengxiaoyi commented 4 days ago

Hi,I paid attention to zksql when I was looking through the paper recently and reviewed TPC- H based on the code in the paper, I found that performing a join operation, which was not mentioned in the paper, would lead to memory overflow, and suggested that this project could measure the program's running maximum memory after implementing the sql inner_join operator, and it would be a more convincing proof of the correctness of the program selection. Good luck!

JayWhite2357 commented 4 days ago

Hey @Lengxiaoyi. Joins are currently the next major feature that we are looking to add. @iajoiner is working on them

Lengxiaoyi commented 3 days ago

Thank you very much for your reply, can I think that the current optimization scheme after implementing the join operator lies in the fact that it should be too large for the Cartesian product generated after the join operation, resulting in too large a PROOF SIZE. It seems that using VOLE in the head can reduce the memory usage since only one calculation is needed. Of course proof of sql will have a better implementation, looking forward to the project's continuous update, I can learn a lot of knowledge from proof of sql.Thank you~

Suggestion:

Measure the peak memory usage and proof size after adding the query plan to the join algorithm to generate the corresponding proof.