@freshface: I'm not entirely sure, but here are some ideas:
padding it easier to write queries like: "%0000000004%" whereas the same thing without padding would require some thing like: "4" OR "4-%" OR "%-4-%" OR "%-4" to prevent any id with 4 in it to match under certain circumstances.
padding makes it simpler and faster to select out the specific ids: rank.substr(0, 10) instead of rank.substr(0, rank.find('-') or len(rank)).
@freshface: I'm not entirely sure, but here are some ideas: