What are the downsides of using varbinary[max]

azure-sql-databasedatabase-design

I want to set up a table to store waveform data from an oscilloscope. The table would have a column of varbinary[max] because the waveform data from the scope is returned as a binary sequence that ranges from 1,400 bytes to 14,000,000 bytes. I would have a half dozen more int and small varchar for parsing information. So each row in the table will represent all information related to this waveform.

I am a complete noob to working with databases. I just set this one up and created my insert queries. I have no idea how using such a large type may affect responsiveness, speed, or anything else.

I can say that I will never want to use this varbinary column to do any filtering or searching. This table is mostly for record storage.

Best Answer

[MAX] columns are to be considered like BLOBs (Binary Large Objects) and are physically stored on another "page". This means that practically, they are like on another table, seamlessly linked to the one with the rest of the data. One of the main limitations is that you can't index the [MAX] column.

I don't see any issue in you doing things as you suggest.