Hi Jasmine, are you 100% sure the exact name of the column is visitor_id? Our Data Column Reference does not show that column, and since there are several of these types of columns, I want to make we are talking about the same column.
This documentation explains that there are 6 possible visitor ids. All 6 of these IDs could theoretically be present on a single hit of data, for this reason Adobe has determined an order of preference. The combination of the post_visid_high and post_visid_low is the id that was actually used. More important than these columns, however, is the post_visid_type column which indicates which ID type was used to populate the post_visid values.
"I would expect there to be a single visitor_id against a single mcvisid, however, i am finding cases where there are multiple mcvisids against a single visid."
This scenario is most likely possible if your implementation sends a custom vis_id and on multiple different devices or implementations of the visitor id service where a different IMS org id is used the visitor is receiving differing mcvisids, but the same custom visitor id. In this scenario the best case scenario would be that for all of the hits you see a post_visid_type of '1' meaning the vid(s.visitorID or custom id) was used by analytics to identify the visitor. This would mean that although there were differing mcvisids, the visitor was identified consistently using the custom id.