Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Linked Server vs External Table vs OpenQuery vs CLR - параллельность union  [new]
vikkiv
Member

Откуда: London
Сообщений: 2400
Появилась необходимость разнести старые данные по разным серверам
(благо лицензий накопилось достаточно) в архив.

-Linked Server
-External Table
-OpenQuery
-CLR

что из списка позволяет слать параллельные запросы
(получать агрегированные данные с более детальных грануляций) на внешние сервера
в модели представления/view через "select...group.. union all select ... group.." ?

Linked Server по предварительным результатам параллельно не хочет,
там только последовательный план (впрочем и форумы тоже самое говорят).

Какой из перечисленных (или есть что упущенное) позволит собрать
какое-то подобие MPP кластера для оптимизации DWH?

Scale-up возможности сервера уже исчерпали, SQL оптимизации тоже
(индексация, типы, партиционирование и т.д.), осталось Scale-Out но без облаков (и смены платформы)..
У компании есть неиспользуемый резерв чуть более старого железа и лицензий,
идея повысить эффективность без особых вложений через уменьшение бесполезного простоя.
( LoadBalancer/FailOver/Replication/AO/HA/DR не нужны )

Планируемый Control Node - SQL Server 2019 Ent (как раз к сдаче проекта выпустят)

Спасибо за идеи / опытные советы.
7 июн 19, 02:29    [21904132]     Ответить | Цитировать Сообщить модератору
 Re: Linked Server vs External Table vs OpenQuery vs CLR - параллельность union  [new]
vikkiv
Member

Откуда: London
Сообщений: 2400
"External Data Source" естественно отпадает
т.к. Elastic Query похоже работает только с Azure SQL Database
т.е. оба варианта с [ ,Type = RDBMS | SHARD_MAP_MANAGER ] пролетают
(может и неверный вывод, но у меня не получилось)
7 июн 19, 04:03    [21904139]     Ответить | Цитировать Сообщить модератору
 Re: Linked Server vs External Table vs OpenQuery vs CLR - параллельность union  [new]
vikkiv
Member

Откуда: London
Сообщений: 2400
т.к. OpenQuery/OpenRowSet это тот-же LinkedServer
(т.е. с параллельностью запросов не получается)
то пока пошел multi-threading CLR на .NET/C# писать
(по идее много внутренних процедур SQL Server написаны на C++, но его не тяну)

Ещё какие варианты могут быть?
7 июн 19, 05:14    [21904146]     Ответить | Цитировать Сообщить модератору
 Re: Linked Server vs External Table vs OpenQuery vs CLR - параллельность union  [new]
msLex
Member

Откуда:
Сообщений: 6430
Дождаться релиза 2019 с big data cluster.
7 июн 19, 08:42    [21904180]     Ответить | Цитировать Сообщить модератору
 Re: Linked Server vs External Table vs OpenQuery vs CLR - параллельность union  [new]
Yuri Abele
Member

Откуда: Латвия> Литва > Тольятти > Wiesbaden > Karlsruhe
Сообщений: 1647
vikkiv
multi-threading CLR на .NET/C# писать

Остарожнее только с Taks.WaitAll и Entity Framework - они не дружат.
Async вызовы да, но не параллельно. Исключение .AsNoTracking()
7 июн 19, 09:12    [21904200]     Ответить | Цитировать Сообщить модератору
 Re: Linked Server vs External Table vs OpenQuery vs CLR - параллельность union  [new]
Yuri Abele
Member

Откуда: Латвия> Литва > Тольятти > Wiesbaden > Karlsruhe
Сообщений: 1647
Yuri Abele
Осторожнее ...
:-)
7 июн 19, 09:13    [21904201]     Ответить | Цитировать Сообщить модератору
 Re: Linked Server vs External Table vs OpenQuery vs CLR - параллельность union  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 2988
vikkiv
т.к. OpenQuery/OpenRowSet это тот-же LinkedServer
(т.е. с параллельностью запросов не получается)
то пока пошел multi-threading CLR на .NET/C# писать
(по идее много внутренних процедур SQL Server написаны на C++, но его не тяну)

Ещё какие варианты могут быть?


Broker
7 июн 19, 10:27    [21904278]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить