If you are in position to use random - go for it, it will save time and make your test more independent as you won't have to worry about creating CSV file, performing CSV Data Set configuration, copying the csv files to JMeter slaves in case of remote testing, etc.
However it may be a good idea to save random values into JMeter variables like
${__Random(1,100, userid)}
and saving this userid
into .jtl results file via Sample Variables property by adding the next line to user.properties file (located in JMeter's "bin" folder)
sample_variables=userid
This way you will be able to see which random user id has caused error or re-use this column to replay the test.