Suffix BWT vs cyclic shift BWT, and fast computation

13 points by fanf


bitshift

Thank you @purplesyringa for writing this! I had never heard there were two different BWTs before.

these properties give it a place in data compression and genome alignment.

Are there any good rules of thumb for when one should use a Burrows-Wheeler Transform? In which cases does it perform better than other tools?

For data compression, I got the sense that BWT was pretty good but kind of a dead end, whereas the LZ- family of algorithms (.xz, .zstd) kept improving until they won out over BWT (.bz2). But my impression could be mistaken.

(As for genome alignment, I know very little, but my rough understanding is that it's a string search problem? What properties do the strings need to have for BWT to be a better choice than other string search algorithms?)