Ao configurar um banco de dados, quero usar o tipo de dados mais eficiente para dados potencialmente razoavelmente longos. Atualmente, meu projeto é armazenar títulos de músicas e pensamentos referentes a essa música. Alguns títulos podem ter 5 caracteres ou mais de 100 caracteres e os pensamentos podem demorar bastante.
É mais eficiente usar um varchar definido como 8000 ou usar um blob? O uso de um blob é o mesmo que um varchar, pois existe um tamanho definido que ele é alocado, independentemente do que ele contém? ou é apenas um ponteiro e realmente não usa muito espaço na mesa? Existe um determinado tamanho definido de um blob em KB ou é expansível?
Eu acho que você deve usar blob apenas se você tiver um tipo de dados complexo serializado, ou seja, se você quiser armazenar em uma única tabela uma classe complexa. Se você deseja armazenar apenas uma String (ou algo equivalente), não use o blob.
fonte