Я использую Symfony 3.4, мне нужно ежедневно импортировать некоторые данные из таблицы в другую. Исходная таблица хранится в БД в SQL Server. Таблица назначения хранится в базе данных MySql.
Каков наилучший способ реализовать это? Я думал о команде с cron, которые выполняют импорт, но я не знаю, следует ли использовать Doctrine Entities или SQL и хранить данные в массиве, а затем скопировать его в таблицу назначения... какое-то предложение? Спасибо
В общем, лучше использовать сущности doctrine, потому что у них есть свои бизнес-правила (например, пользовательские методы с некоторыми логиками)
Кроме того, вы можете частично загружать объекты с помощью EntityManager->createNativeQuery(...)
выбирая только свойства/отношения, которые вам нужны, поэтому процесс гидратации доктрины займет меньше памяти.
Поскольку @goto упоминается в комментарии, пакетный процесс является ключевым при манипулировании большим набором объектов доктрины (без этого требуется столько памяти)
Нет ни одного хорошего решения, зависящего от количества строк, которые вы должны перенести в день. Если вам нужно обрабатывать очень большой набор данных, вы можете использовать собственный SQL-запрос для простого заполнения массива для производительности.
Надеюсь, это помогло :)