In terms of a space, a biginttakes up 8 bytes, and a 15-character string takes up to 19 bytes (4 bytes and up to 15 bytes for data), depending on its value. Also, generally speaking, equality checks should be slightly faster for numerical operations. Other than that, it depends a lot on what you are going to do with this data. If you intend to use numerical / mathematical operations or a query according to ranges, you should use bigint.
source
share