Source: https://www.vldb.org/pvldb/vol8/p209-yu.pdf