2010-07-16 1 views
2

Я прочитал много сайтов, руководств и т. Д .; Также обратите внимание, что я не могу проверить, что я спрашиваю, так как у меня нет двух компьютеров.Sql server table partitioning - могу ли я распространять таблицы по серверам?

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

есть упоминание о разделах, находящихся на разных жестких дисках, но никогда не упоминается о разделах, находящихся на разных компьютерах.

Возможно ли это?

Так, например, данные с идентификатором < 50000 будут храниться на одном компьютере, а остальная часть будет храниться на другом компьютере?

ответ

3

Разделенные функции, введенные в SQL Server 2005 не поддерживают эту AFAIK

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

пример на сервере 1

create view MyView 
as 
Select * from Database.dbo.Table1 
union all 
Select * from Server2.Database.dbo.Table1 

на сервере 2

create view MyView 
as 
Select * from Database.dbo.Table1 
union all 
Select * from Server1.Database.dbo.Table1 

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

Также смотрите по этой ссылке: http://blogs.msdn.com/b/sqlcat/archive/2007/06/20/distributed-partitioned-views-federated-databases-lessons-learned.aspx

1

Распространение через компьютеры не является встроенной функцией стандартного SQL Server. Partitioning на самом деле не снижает нагрузку или делает что-то особенно лучше для параллелизма, чем индексы. Он предлагает более легкое управление обменом разделами или выходом. Для упрощения управления хранилищами разделы могут храниться в разных группах файлов.

Теперь продукт устройства SQL Server Parallel Data Warehouse (от приобретения DATAllegro).

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