- For each row in the input, a new lookup is sent to the relational engine to see if changes have happened. In other words, the dimension table is not cached in memory. That is expensive! If you have tens of thousands of dimension source records or more, this can be a limiting feature of the SCD.
- For each row in the source that needs to be updated, a new update statement is sent to the dimension table (and updates are used by the changing output, historical output, and inferred member output). If you have a lot of updates happening every time your dimension package runs, this will cause your package to run slow.
- The Insert Destination is not set to fast - load. This is because deadlocks can occur between the updates and the inserts. When the insert runs, each row is added one at a time, which can be very expensive.
- The SCD works well for historical, changing, and fixed dimension attributes, and changes can be made to the downstream transformations. However, if you open up the SCD wizard again and make a change to any part of the wizard, you will automatically lose your changes.
This blog is home to share my experiences, views, learning and findings on BIG Data, MongoDB, Elasticsearch, Hadoop, D3, SQL Server, SQL Azure, MS BI - SSIS, SSAS, SSRS, MDX, Visual BI methods, Excel Services, Visio Services, PPS, Powerpivot. I am co-author of the SQL Server MVP Deep Dives - Volume 2 and have reviewed several other books. Feel free to involve me in your projects. I would be happy to help. You can contact me @ contactsidmehta@gmail.com
No comments:
Post a Comment