You should write additional dimension records each time that a change occurs to an attribute for a product. Using this approach, you will be able to track sales over time for each variation of the product. Other approaches would not be appropriate. Using the option to overwrite the dimension record would not keep history of the product attributes, and storing additional attribute values would limit the number of times that product attributes could change. You will need to modify the design of any OLAP cubes.
Type2: Writing another dimension record.
Yes, using partitions in the cube design would allow you to use different storage methods and different optimizations for each partition. The partition for the sales group could contain just those aggregations needed for the most queried data, and the partition for the manufacturing operations group could have a greater number of aggregations to support their needs.
Another solution is to create two cubes with different dimensions for the groups. You can use a virtual cube to join them on a common dimension. In many cases, this would be a better solution.
Install SQL Server OLAP Services Service Pack 1. Use OLAP Manager to create a role in the cube for the users that must have access to the sensitive information, and assign the Windows NT accounts or groups for the users to the role in the cube. Write DSO code to create an MDX expression that limits access to the sensitive information at the cell level.
You should use the Usage-Based Optimization wizard to help you reduce the number of aggregations and processing time. You should also use the Usage Analysis wizard to see information about the queries that are being submitted.