Skip to content

sfu-db/learnedcardinalities

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Learned Cardinalities in PyTorch

PyTorch implementation of multi-set convolutional networks (MSCNs) to estimate the result sizes of SQL queries [1, 2].

Requirements

  • PyTorch 1.0
  • Python 3.7

Usage

python3 train.py --help

Example usage:

python3 train.py synthetic

To reproduce the results in [1] use:

python3 train.py --queries 100000 --epochs 100 synthetic

python3 train.py --queries 100000 --epochs 100 scale

python3 train.py --queries 100000 --epochs 100 job-light

References

[1] Kipf et al., Learned Cardinalities: Estimating Correlated Joins with Deep Learning, 2018

[2] Kipf et al., Estimating Cardinalities with Deep Sketches, 2019

Cite

Please cite our paper if you use this code in your own work:

@article{kipf2018learned,
  title={Learned cardinalities: Estimating correlated joins with deep learning},
  author={Kipf, Andreas and Kipf, Thomas and Radke, Bernhard and Leis, Viktor and Boncz, Peter and Kemper, Alfons},
  journal={arXiv preprint arXiv:1809.00677},
  year={2018}
}

About

Code and workloads from the Learned Cardinalities paper (https://arxiv.org/abs/1809.00677)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%