Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Временные таблицы in memory? / 16 сообщений из 16, страница 1 из 1
21.06.2018, 16:00
    #39663691
seperblunt
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
Добрый день!

Есть несколько таблиц in memory.

К ним необходимо часто и быстро выполнять десятки запросов. Особенность запросов такова, что они одинаковые в части WHERE, но выбирают разные поля и по разному агрегируют разные ресурсы.

Чтобы все работало быстрее хотелось бы сделать предварительно один запрос к данным (с ограничениями WHERE), а затем уже к результату этого "выборного" запроса делать эти десятки "агрегирующих" запросов.

Обращаю внимание, что все происходит "in memory".

Подскажите пжл, как лучше реализовать?
...
Рейтинг: 0 / 0
21.06.2018, 16:30
    #39663713
aleks222
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
1. Забей на эти "инмемори". Смысла в них чуть менее, чем нисколько.
2. Но если тяга неизбывна, что что мешает сделать еще одну "инмемори" и сунуть в нее "предварительно один запрос к данным (с ограничениями WHERE)", а затем уже к этой "инмемори" делать эти десятки "агрегирующих" запросов"?
...
Рейтинг: 0 / 0
21.06.2018, 16:47
    #39663723
шК0ДЕР
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
seperbluntЧтобы все работало быстрее хотелось бы сделать предварительно один запрос к данным (с ограничениями WHERE)aleks222что что мешает сделать еще одну "инмемори" и сунуть в нее "предварительно один запрос к данным (с ограничениями WHERE)",Проще создать представление, ведь
seperbluntК ним необходимо часто и быстро выполнять десятки запросов
...
Рейтинг: 0 / 0
21.06.2018, 16:50
    #39663725
шК0ДЕР
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
Либо CTE
...
Рейтинг: 0 / 0
21.06.2018, 16:52
    #39663729
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
шК0ДЕРЛибо CTE
и как это поможет
...
Рейтинг: 0 / 0
21.06.2018, 16:53
    #39663730
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
шК0ДЕР,

авторПроще создать представление, ведь

индексированре представление не сделать, обычное до лампочки
...
Рейтинг: 0 / 0
21.06.2018, 16:55
    #39663732
шК0ДЕР
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
TaPaKи как это поможетОдин запрос заместseperbluntдесятки запросов
...
Рейтинг: 0 / 0
21.06.2018, 16:59
    #39663733
Посетитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
шК0ДЕР,

1. как вы будете делать десятки запросов к CTE
2. как вы при этом обеспечите "предварительно один запрос к данным"
...
Рейтинг: 0 / 0
21.06.2018, 17:01
    #39663734
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
шК0ДЕРTaPaKи как это поможетОдин запрос заместseperbluntдесятки запросов
ох... советчики...
...
Рейтинг: 0 / 0
21.06.2018, 17:52
    #39663761
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
seperblunt,

вам бы кубы изучить. Как раз задача.
...
Рейтинг: 0 / 0
21.06.2018, 22:27
    #39663822
Критик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
Может и поможет, но крайне мало.
Раз вы используете in-memory в хд, то данных у вас мало.
А значит, после первого же обращения все ваши данные и так лежат в кэше.
...
Рейтинг: 0 / 0
21.06.2018, 22:28
    #39663823
Критик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
Предолагаю, что у вас хд )
...
Рейтинг: 0 / 0
22.06.2018, 02:47
    #39663870
Idol_111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
seperblunt,

если хочется еще быстрее (и похоже данных у вас не десятки Гиг), то вытаскивать надо данные на сторону программы и там играться с кэшем.
...
Рейтинг: 0 / 0
22.06.2018, 08:50
    #39663917
seperblunt
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
КритикПредолагаю, что у вас хд )

у меня что-то вроде BI приложения к нашей 1С (похоже по функционалу на QlikView).

Поэтому (потому что 1С) вытащить отборочные данные в программу и крутить там - оч. медленно. Таблицы до 1 млн записей и если в выборке будет 300к 1С даже на индексируемых ТаблицахЗначений (некое 1С-образование в оперативке) тормозит неприемлемо.


Критик Раз вы используете in-memory в хд, то данных у вас мало.
А значит, после первого же обращения все ваши данные и так лежат в кэше.

Есть ли какая то возможность насильно помещать результаты в кэш (для надеги)?


[шК0ДЕРПроще создать представление
Я правильно понимаю что это будет физически записываться на диск? Если да то хотелось бы избежать обращения к диску, во-первых - а вдруг будет использоваться и на оч. больших выборках (оперативки много - отдельный сервак), а во-вторых - in-memory так in-memory...
...
Рейтинг: 0 / 0
22.06.2018, 08:57
    #39663922
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
seperblunt,

ваш вариант озвучен aleks222 под номером 2.
...
Рейтинг: 0 / 0
22.06.2018, 09:03
    #39663924
seperblunt
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Временные таблицы in memory?
TaPaKseperblunt,

ваш вариант озвучен aleks222 под номером 2.

Да, пожалуй так. Спасибо всем.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Временные таблицы in memory? / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]