2010-07-25 2 views
2

Предположим, у нас есть страница на сайте, которая отображает некоторые записи из базы данных.Что лучше: сортировать результаты на уровне базы данных или на уровне приложений

Нам нужно отобразить записи, отсортированные по колонке.

, который обеспечивает лучшую производительность: чтобы восстановить данные, отсортированные из базы данных или применить сортировку по сетке?

благодаря

ответ

12

Это зависит от объема данных, которые вы хотите отобразить. Для нескольких записей, которые могут отображаться на одной странице, и вы уверены, что они останутся довольно постоянными, могут быть отсортированы на стороне пользовательского интерфейса.

Для больших данных, сортировка в базе данных лучше. Если в пользовательском интерфейсе имеется поддержка разбивки на страницы, сортировка на стороне базы данных позволит избежать передачи огромных данных в UI и UI, отбрасывая все строки, кроме связанных с первой страницей.

+2

+1 Для указания того, что анализ проблемного пространства и доступных опций. –

0

Сортировка в базе данных намного быстрее, если необходимые индексы существует.

1

Сортировка - одна из вещей, которые делают базы данных лучше всего. Предполагая, что у вас есть индекс в столбце, вы должны позволить базе данных сделать это. И, если у вас нет индекса, он не настроен правильно.

1

Я думаю, что любая обработка лучше делать в базе данных, так как, наконец, ваше приложение является интерфейсом для вашей базы данных, поэтому просто настройте свою базу данных и создайте соответствующие кластерные и некластеризованные индексы, чтобы ускорить процесс сортировки

0

хорошо, если это сортировка, то это должно быть сделано в базе данных. и если есть индекс для требуемого столбца, тогда нет вторых мыслей. для нескольких записей это может быть хорошо для этого в UI

0

Это зависит от того, что если вы часто сортируете данные по разным столбцам, лучше делать это на уровне приложений, потому что это будет скорее, чем выборка отсортированных данных каждый раз.

Но если это не так, и у вас есть указатель для этого, то делайте это на стороне сервера, так как он будет быстрее, чем сортировать на стороне приложения.

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