/ / "Приєднатися до 2 таблиць" на різних серверах, через змінні пам'яті - c #, sql, sql-server, database

"Приєднуйтесь до 2 таблиць" на різних серверах через змінні пам'яті - c #, sql, sql-server, database

Чи потрібно об'єднати два таблиці на різних серверах з пов'язаним сервером, як згадано вище тут? Група адміністраторів баз даних керує цими об'єктами сервера, і вони не хочуть створювати надмірну кількість пов'язаних серверів.

Чи добре "приєднатися" до двох таблиць на різних серверах, спочатку прочитавши їх у пам'яті як змінну, і потенційно запустивши інший запит на іншому сервері з змінною з першого?

Використання C # для доступу до сервера SQL SERVER_A, а потім отримувати всі записи з таблиці TABLE_A, ми зберігаємо його до змінної колекції, скажімо VARIABLE_A.
Потім ми можемо підключитися до SQL-сервера SERVER_B, запустіть запит на вибір TABLE_B з цією змінною VARIABLE_A і спробуйте отримати результат приєднання TABLE_A і TABLE_B.

Чи дозволить це рішення досягти бажаних результатів (тобто функції, а не додаткових пов'язаних серверів)?

Відповіді:

2 для відповіді № 1

Приєднання в пам'яті (з програми) є страшний ідея. Це вимагатиме (в кращому випадку) читання у всій таблиці, або (у гіршому випадку) виконання читання з другого сервера для кожного рядка, що повертається з першого.

Обидва ці способи збільшують накладні витрати на пам'ять, складність програми та використання мережі.

The пов'язаний сервер Варіант був би моїм first choice.

А. далеко віддалені second choice було б використовувати реплікацію і реплікувати базу даних другого сервера на перший сервер.