Я бы предложил клонировать атрибуты товара, которые имеют отношение к заказу. Например, цена за единицу. Большинство атрибутов товара не являются частью заказа.
Какие атрибуты имеют отношение к заказу, зависит от того, как предприятие ведет бизнес.
Если это всего лишь несколько атрибутов, вы можете клонировать их непосредственно в подробную запись заказа (строку) и не создавать другую таблицу для хранения этих данных. Добавленная сложность минимальна.
Это мое предложение для обработки транзакций. Если, с другой стороны, вы создаете хранилище данных для долгосрочного анализа, то сохранение версии в таблице измерений продукта - правильный путь.
Тогда вы бы никогда не обновили измерение продукта. Вместо этого при изменении атрибута продукта вы добавляете новую строку в измерение продукта для хранения новых значений. В новой строке будет тот же ключ продукта, но другой номер версии.