Database Reference
In-Depth Information
Doing this has the advantage of reducing the amount of processing and maintenance
needed: instead of having many identical dimensions and measure groups to
maintain and keep synchronized, all of which need processing separately, you can
have a single object which only needs to be changed and processed once. At least
that's the theory—in practice, linked objects are not as widely used as they could be
because there are a number of limitations in their use:
• Linked objects represent a static snapshot of the metadata of the source
object, and any changes to the source object are not passed through to the
linked object. So, for example, if you create a linked dimension and then add
an attribute to the source dimension, you then have to delete and recreate the
linked dimension—there's no option to refresh a linked object.
• You can also import the calculations defined in the MDX Script of the source
cube using the wizard. However, you can only import the entire script and
this may include references to objects present in the source cube that aren't
in the target cube, and which may need to be deleted to prevent errors.
The calculations that remain will also need to be updated manually when
those in the source cube are changed, and if there are a lot, this can add an
unwelcome maintenance overhead.
A linked measure group can only be used with dimensions from the same
database as the source measure group. This isn't a problem when you're
sharing measure groups between cubes in the same database, but could be a
problem if you wanted to share measure groups across databases.
As you would expect, when you query a linked measure group, your query
is redirected to the source measure group. If the source measure group
is on a different server, this may introduce some latency and hurt query
performance. Analysis Services does try to mitigate this by doing some
caching on the linked measure group's database, though. By default, it
will cache data on a per-query basis, but if you change the RefreshPolicy
property from ByQuery to ByInterval , you can specify a time limit for data
to be held in cache.
Linked objects can be useful when cube development is split between multiple
development teams, or when you need to create multiple cubes containing
some shared data, but in general, we are against using them widely because
of these limitations.
 
Search WWH ::




Custom Search