Databases Reference
In-Depth Information
during the synchronization transaction. Then, the target server requests from the source
server a list of physical files that belong to the database. After it receives the file list, the
target server compares the list to its own list—you can think of the target server as
comparing the state of the source database to its own state. At this point, the target server
comes up with the differences of the state of its own database to the state of the database
on the source server and sends the list to the source server. The number of different files
can be smaller than the number of files in the database on the source server. The source
server sends files delta to the target according to the list.
After it receives the new files (the ones that were different), the target server releases the
lock on the source database. At this point, the target server is no longer dependent on the
source server and can finish the operation itself. This last stage is called post-processing,
and it consists of the following:
.
If you specified mapping in the Synchronization Data Definition Language (DDL)
command, the server remaps the locations of the partitions.
.
The database encryption key is regenerated.
.
If you chose to rename the database during the synchronization operation, the
server regenerates new IDs for the objects.
.
The server updates the roles and role members depending on the options specified
in the DDL command.
Object definitions, such as cell calculations, are not visible to the end user. In many cases,
they represent intellectual property that is guarded under database administrator privi-
leges. Therefore, you need to grant database administrator rights for the source server to
the target server's account. The Synchronize command is issued under the target server's
account because the target server queries not only the data, but also the definitions of the
objects.
From a high-level abstraction, you can think of the process as one of pulling data, rather
than pushing data. The target server receives a command to synchronize a database with
the corresponding database on the source server. The target server begins pulling data
from the source server. The advantages of this pull model include the following:
.
The pull mechanism is simple. There is no need for the source server to coordinate
the transaction. The target server requests data, and thereby acquires a read lock on
the source server.
.
From a security standpoint, there is no need for the source server to have any specif-
ic permissions on the target server.
On the other hand, the pull model is not suited for scenarios in which you need to
synchronize a change from the source server to several target servers in a single transac-
tion. In such a situation, the push model works better; the source server is then responsi-
ble for coordinating the transaction.
You can use the Analysis Services Synchronize command through the user interface or
through a DDL command.
Search WWH ::




Custom Search