AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.09.2015, 14:53   #4  
AP-1055D is offline
AP-1055D
Участник
 
351 / 92 (4) ++++
Регистрация: 01.06.2011
Цитата:
Сообщение от mazzy Посмотреть сообщение
А вообще говоря, весь интернет именно на этом и живет - без paiging ни один боль-мень серьезный форум, ни один фейсбук-вконтакт не выживет.
Я думаю, что вы немного неправильно употребляете термин пагинация (paging). Пагинация это механизм, с помощью которого можно "отдавать" данные определёнными порциями. В терминах MVC (Model-View-Controller) это C (Controller). По ссылке, которую вы привели, речь идёт как раз о том, как можно отдавать клиенту небольшое количество записей. Здесь ключевое слово "отдавать", а не получать. То есть чтобы по HTTP-запросу клиенту ушло не все 1000 записей, которые он должен будет потом как-то отображать, а только какую-то порцию, часть этих данных, например 20 записей. При этом, сам запрос не оптимизируется настолько сильно, что он будет обрабатывать меньшее количество записей. Конечно, для простых запросов оптимизатор СУБД сможет построить план с помощью которого будут выбраны те самые 20 записей или несколько больше. Но для более сложных запросов операции TOP или условие по ROW_NUMBER будут выполняться уже в качестве фильтра, то есть отсекать лишние записи. Именно поэтому вы видите большее количество по счётчикам в SQL Server: сервер выбирает множество записей, но клиенту возвращается только часть этих данных.

Facebook, VK и другие используют витрины данных, в которых находятся актуальные данные, например, за последнюю неделю или день. Также они использую горячий кэш и другое.

Кстати, витрины данных очень часто используются в DWH: когда в хранилище есть данные за 20 лет, а, фактически, для оперативного анализа нужны данные только за последнюю неделю. В качестве решения делают витрину данных, куда с помощью ETL/ELT собирают нужные актуальные часто используемые данные. Даже in-memory системы у которых время выполнения "запроса" на порядки меньше чем у ROLAP, также используют витрины. Иначе не хватит никакой памяти :-) Также можно подумать о партицировании таблицы: то есть физически разбивать таблицу на несколько более мелких таблиц. Этот метод очень активно используется в SSAS на более-менее крупных данных.

В AX хорошим примеров витрины данных является InventSum.
За это сообщение автора поблагодарили: mazzy (2), Weez (1).
Теги
paging, подкачка данных

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Microsoft Dynamics AX general performance analysis scripts page 5 Blog bot DAX Blogs 0 01.09.2014 14:11
dynamicsaxtraining: Purchase Blog bot DAX Blogs 0 11.03.2012 05:25
daxmusings: Query and New Related Objects in AX 2012 Blog bot DAX Blogs 0 28.09.2011 10:11
daxdilip: Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.) Blog bot DAX Blogs 7 31.01.2011 12:35
Справка в файлах *.chm на русском у кого есть? ture DAX: Функционал 14 18.02.2004 19:21

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 18:05.