Второй вариант гипотетически будет незначительно быстрее, но выбирать стОит из соображений бизнес-логики - где во вне БД будут использоваться ключи таблицы? Делайте как удобнее, не задумываясь о скорости. Либо протестируйте скорость, если считаете, что это будет узким местом в системе.
(Судя по всему, это таблица по смыслу что-то типа "с этим продуктом также покупают...", я бы для такого использовал первый вариант, не заморачиваясь с отдельным ID.)