2013-09-04 5 views
1

Мы начинаем разработку новой версии нашего довольно большого IS. Мы начинаем на зеленом лугу и в настоящее время выбираем технологии. PHP и MySQL были необходимы. Мы выбрали Laravel как базовую структуру, и у меня есть к этому вопрос.Laravels Eloquent ORM или Query Builder для большой базы данных

Должны ли мы в основном использовать Eloquent ORM или Query Builder?

Потому что наша база данных довольно большая в настоящее время 700 МБ и растет примерно на 80 МБ в месяц. Текущая версия IS имеет ряд неоптимализованных запросов, которые занимают более 30 секунд. В основном его некоторые данные экспортируются. И мы должны сделать это намного быстрее.

Я хочу использовать только один из этих подходов для всего приложения, и я очень беспокоюсь о производительности.

Какой из них быстрее с большими соединениями данных. например: 10 столов, одна из них 2 мил линий и ~ 150 МБ

ответ

3

Ответ на это полностью «это зависит». Этот вопрос может быть слишком широким.

Что генерирует SQL, зависит от вашего прецедента и сложности ваших отношений данных/схем.

В любом случае вы можете использовать кеширование, чтобы повысить скорость (если ваши разрешения на получение данных/бизнеса).

Кроме того, по большому счету вы можете использовать оба варианта. Возможно, начните с Eloquent и переключитесь, когда вам нужно (другими словами, преждевременно не оптимизируйте).

Исследуйте «repositorypattern», чтобы узнать, как вы можете сделать это удобным образом.

Смежные вопросы