What would be the best approach to adding calculated measures? Database level or Data Source View level or Calculation at the cube level? What are the pros and cons for adding at each of these levels?
Best Practice for Calculations
Enterprise environment - synchronization questions
Hi!
I´m planning on setting up an enterprise BI enivornment using SQL 2012. An idea is to have a dedicated processing server running Analysis Services and x number of servers sharing the query load.
The cubes are partitioned and the processing job only processes measure group partitions with changed data + the dimenssions. The processing on our current environment takes only around 5 minutes. The total cube size is around 50 GB.
Is there any of you running an environment of this kind that can answer the questions below?
Does it work good to use synchronization for updating the query servers after the processing job is finished at the processing server? I have done some testing on a test enironment running sql 2008 at not so good hardware. It seems like the synchronization
is taking pretty long time. When making a incremental syncronization after one processing is done it seems like it is copying around 3 GB out of the total cube size of 50 GB (mostly .map files for dimenssion + fact.data files for changed facts). This
takes around 26 min on my test environment. Not sure if this is because of bad environment or if this synchronization phase is that slow? It seems a bit sad to use this long time on synchronization when the processing only takes 5 minutes.
Should I synchronize to one query server at a time?
Should I drain the server I´m currently syncronizing to? Is there a big performance dip on the query server you are synchronizing to when the synchronization is running? and is it likely that the synchronization fails if there is query load on the target server?
Currently we only have nightly processing but in the future we might want to have some kind of near realtime implementation with several processings a day. Then it wouldn´t be good if the synch takes 26 minutes. Is there better server setup for this kind of
scenarios?
If separating Data Warehouse SQL server, AS processing server and AS query servers, is it a good practise to initialize the processing and synch jobb from the Agent (SSIS) job at the DW SQL server? For example step 1 does the ETL phase (refreshes the Data Warehouse). Step 2 starts a processing job at the processing server and step3 synchronize the cubes from the processing server to the query servers.
Best regards
Steve
SSAS Cube Calculations Sum does not calculate correctly
I am working with SQL Server 2012 SSAS.
I build my Cube everything is working very good.
I want to make a new “Calculations”
Create Member CurrentCube.Measures.[X]
AS
Sum(
{
[Market].[Market]. CurrentMember
[Region].[Region]. CurrentMember,
[Month].[Month]. CurrentMember
},
[Measures].[Value]);
It is not calculating right ?
Month Country Region Market SKU Value X
January Egypt Alexandria Croissant MoltoWC 261570.00 728390.00
January Egypt Alexandria Croissant MoltoSC 201500.00 728390.00
January Egypt Alexandria Croissant BrunchTC 2550.00 728390.00
January Egypt Alexandria Croissant BrunchTP 262770.00 728390.00
Total 728390.00
The idea is that I want to
Sum(Value) Where (Market = Market and Region = Region and Month = Month)
Thanks,
Ramzy N.Ebeid
connecting to analysis services
Hi Experts,
I am working as sql server dba. i want some help regarding ssas.
i have two servers. server01 have 2008 analysis services. i need to connect servero01 cubes from server02.
i have done some thing for this. i have installed sql server 2008 native client,msxml6.0 and ms sql server 2008 oledb provider 10.0 in server02.
and i follow this doc http://technet.microsoft.com/en-us/library/gg492140%28v=sql.105%29.aspx .
copy msmdpump.dll and msmdpump.ini and resources folders from server01 to server02 and i add application pool and create virtual directory for olap in IIS.
i want to conncet SSAS from server02 to server01. when i am using excel2010 to connect i got this error unable to conncet database server. my server name should like http://server01/msmdpump.dll
please help to issue
/Raghavendra
I am having this error when i start SSMS 2008 how can i fix it
Microsoft.SqlServer.Management.RegisteredServers.RegisteredServerException: Unable to read the list of previously registered servers on this system. Re-register your servers in the 'Registered Servers' window. ---> Microsoft.SqlServer.Management.Sdk.Sfc.SfcSerializationException: Deserialization operation on /RegisteredServersStore/ServerGroup/AnalysisServicesServerGroup has failed. ---> System.IO.FileNotFoundException: Could not find file 'C:\Users\Admin\AppData\Local\Temp\nvadibe9.dll'.
File name: 'C:\Users\Admin\AppData\Local\Temp\nvadibe9.dll'
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch(CompilerParameters options, String[] fileNames)
at Microsoft.CSharp.CSharpCodeGenerator.FromSourceBatch(CompilerParameters options, String[] sources)
at Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromSourceBatch(CompilerParameters options, String[] sources)
at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromSource(CompilerParameters options, String[] sources)
at System.Xml.Serialization.Compiler.Compile(Assembly parent, String ns, XmlSerializerCompilerParameters xmlParameters, Evidence evidence)
at System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, XmlSerializerCompilerParameters parameters, Assembly assembly, Hashtable assemblies)
at System.Xml.Serialization.TempAssembly..ctor(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, String location, Evidence evidence)
at System.Xml.Serialization.XmlSerializer.GenerateTempAssembly(XmlMapping xmlMapping, Type type, String defaultNamespace)
at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
at System.Xml.Serialization.XmlSerializer..ctor(Type type)
at Microsoft.SqlServer.Management.Sdk.Sfc.SfcUtility.GetXmlValue(String xmlContent, Type valueType)
at Microsoft.SqlServer.Management.Sdk.Sfc.SfcSerializer.GetPropertyValueFromXmlString(String xmlString, Type propType, IXmlSerializationAdapter serializationAdapter)
at Microsoft.SqlServer.Management.Sdk.Sfc.SfcSerializer.CreateInstanceFromSerializedData(Type instanceType, String instanceUri, List`1 serializedData)
at Microsoft.SqlServer.Management.Sdk.Sfc.SfcSerializer.Deserialize(XmlReader reader, String instanceUri, Object& instance, SfcObjectState state)
at Microsoft.SqlServer.Management.Sdk.Sfc.SfcSerializer.Deserialize(XmlReader xmlReader, SfcObjectState state)
--- End of inner exception stack trace ---
at Microsoft.SqlServer.Management.Sdk.Sfc.SfcSerializer.Deserialize(XmlReader xmlReader, SfcObjectState state)
at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServersStore.InitChildObjects(String file)
--- End of inner exception stack trace ---
at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServersStore.InitChildObjects(String file)
at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServersStore.InitializeLocalRegisteredServersStore()
at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServersStore.get_LocalFileStore()
at Microsoft.SqlServer.Management.UI.ConnectionDlg.ConnectionDialog.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
AppIDPackage
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/AppIDPackage.DLL
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
Microsoft.SqlServer.SqlTools.VSIntegration
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/Microsoft.SqlServer.SqlTools.VSIntegration.DLL
----------------------------------------
Microsoft.VisualStudio.Shell.Interop
Assembly Version: 7.1.40304.0
Win32 Version: 7.10.6071
CodeBase: file:///C:/windows/assembly/GAC/Microsoft.VisualStudio.Shell.Interop/7.1.40304.0__b03f5f7f11d50a3a/Microsoft.VisualStudio.Shell.Interop.dll
----------------------------------------
Microsoft.VisualStudio.OLE.Interop
Assembly Version: 7.1.40304.0
Win32 Version: 7.10.6070
CodeBase: file:///C:/windows/assembly/GAC/Microsoft.VisualStudio.OLE.Interop/7.1.40304.0__b03f5f7f11d50a3a/Microsoft.VisualStudio.OLE.Interop.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
SqlWorkbench.Interfaces
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/SqlWorkbench.Interfaces.DLL
----------------------------------------
Microsoft.SqlServer.SqlTDiagM
Assembly Version: 10.0.0.0
Win32 Version: 10.50.1600.1 ((KJ_RTM).100402-1540 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.SqlServer.SqlTDiagM/10.0.0.0__89845dcd8080cc91/Microsoft.SqlServer.SqlTDiagM.dll
----------------------------------------
Microsoft.SqlServer.Instapi
Assembly Version: 10.0.0.0
Win32 Version: 10.0.1600.22 ((SQL_PreRelease).080709-1414 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.SqlServer.Instapi/10.0.0.0__89845dcd8080cc91/Microsoft.SqlServer.Instapi.dll
----------------------------------------
Microsoft.VisualStudio.Shell
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1826 (QFE.050727-1800)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.VisualStudio.Shell/2.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualStudio.Shell.dll
----------------------------------------
Microsoft.VisualStudio.Shell.Interop.8.0
Assembly Version: 8.0.0.0
Win32 Version: 8.0.50727.1826 (QFE.050727-1800)
CodeBase: file:///C:/windows/assembly/GAC/Microsoft.VisualStudio.Shell.Interop.8.0/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualStudio.Shell.Interop.8.0.dll
----------------------------------------
Microsoft.SqlServer.Management.SDK.SqlStudio
Assembly Version: 10.0.0.0
Win32 Version: 10.0.1600.22 ((SQL_PreRelease).080709-1414 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/Microsoft.SqlServer.Management.SDK.SqlStudio.DLL
----------------------------------------
Microsoft.SqlServer.Management.Sdk.Sfc
Assembly Version: 10.0.0.0
Win32 Version: 10.50.2500.0 ((KJ_PCU_Main).110617-0026 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.SqlServer.Management.Sdk.Sfc/10.0.0.0__89845dcd8080cc91/Microsoft.SqlServer.Management.Sdk.Sfc.dll
----------------------------------------
Microsoft.SqlServer.Management.Reports
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/Microsoft.SqlServer.Management.Reports.DLL
----------------------------------------
ObjectExplorer
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/ObjectExplorer.DLL
----------------------------------------
SqlMgmt
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/SqlMgmt.DLL
----------------------------------------
Microsoft.VisualStudio
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1826 built by: QFE
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.VisualStudio/2.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualStudio.dll
----------------------------------------
System.Drawing.Design
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/System.Drawing.Design/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.Design.dll
----------------------------------------
Microsoft.VisualStudio.Designer.Interfaces
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///C:/windows/assembly/GAC/Microsoft.VisualStudio.Designer.Interfaces/1.0.5000.0__b03f5f7f11d50a3a/Microsoft.VisualStudio.Designer.Interfaces.dll
----------------------------------------
ConnectionDlg
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/ConnectionDlg.DLL
----------------------------------------
Microsoft.SqlServer.Management.Controls
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/Microsoft.SqlServer.Management.Controls.DLL
----------------------------------------
Microsoft.SqlServer.Management.UserSettings
Assembly Version: 10.0.0.0
Win32 Version: 10.0.1600.22 ((SQL_PreRelease).080709-1414 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/Microsoft.SqlServer.Management.UserSettings.DLL
----------------------------------------
Accessibility
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
Microsoft.SqlServer.RegSvrEnum
Assembly Version: 10.0.0.0
Win32 Version: 10.50.1600.1 ((KJ_RTM).100402-1540 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.SqlServer.RegSvrEnum/10.0.0.0__89845dcd8080cc91/Microsoft.SqlServer.RegSvrEnum.dll
----------------------------------------
Microsoft.SqlServer.Management.SqlStudio.Explorer
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110921-2358 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/Microsoft.SqlServer.Management.SqlStudio.Explorer.DLL
----------------------------------------
System.Design
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/System.Design/2.0.0.0__b03f5f7f11d50a3a/System.Design.dll
----------------------------------------
System.Data
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
Microsoft.SqlServer.Management.SqlStudio.Migration
Assembly Version: 10.0.0.0
Win32 Version: 10.0.1600.22 ((SQL_PreRelease).080709-1414 )
CodeBase: file:///C:/Program%20Files%20(x86)/Microsoft%20SQL%20Server/100/Tools/Binn/VSShell/Common7/IDE/Microsoft.SqlServer.Management.SqlStudio.Migration.DLL
----------------------------------------
Microsoft.SqlServer.Smo
Assembly Version: 10.0.0.0
Win32 Version: 10.50.2500.0 ((KJ_PCU_Main).110617-0026 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.SqlServer.Smo/10.0.0.0__89845dcd8080cc91/Microsoft.SqlServer.Smo.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.NetEnterpriseServers.ExceptionMessageBox
Assembly Version: 10.0.0.0
Win32 Version: 10.0.5500.0 ((Katmai_PCU_Main).110922-0336 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.NetEnterpriseServers.ExceptionMessageBox/10.0.0.0__89845dcd8080cc91/Microsoft.NetEnterpriseServers.ExceptionMessageBox.dll
----------------------------------------
Microsoft.SqlServer.ConnectionInfo
Assembly Version: 10.0.0.0
Win32 Version: 10.50.2500.0 ((KJ_PCU_Main).110617-0026 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.SqlServer.ConnectionInfo/10.0.0.0__89845dcd8080cc91/Microsoft.SqlServer.ConnectionInfo.dll
----------------------------------------
Microsoft.SqlServer.Management.RegisteredServers
Assembly Version: 10.0.0.0
Win32 Version: 10.50.1600.1 ((KJ_RTM).100402-1540 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.SqlServer.Management.RegisteredServers/10.0.0.0__89845dcd8080cc91/Microsoft.SqlServer.Management.RegisteredServers.dll
----------------------------------------
Microsoft.SqlServer.SqlClrProvider
Assembly Version: 10.0.0.0
Win32 Version: 10.50.1600.1 ((KJ_RTM).100402-1540 )
CodeBase: file:///C:/windows/assembly/GAC_MSIL/Microsoft.SqlServer.SqlClrProvider/10.0.0.0__89845dcd8080cc91/Microsoft.SqlServer.SqlClrProvider.dll
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Excel report alters the Tabular Model cube for all users
Hi,
I run a tabular model SSAS cube that is processed once a day. That works just fine.
The problem I noted occured after creating an excel report. What I, for example, do is create a pivot table using one measure and a couple of dimension attributes. On one of the dimensions (Supplier) I filter on a specific item. I then remove the filter but the totals are still showing the sum for the specific supplier. And the measure is a basic sum so it is clearly wrong.
A refresh does nothing and even running the MDX created by Excel in SSMS yields the strange result. On the test server the same query yields correct results. A processing of the cube resets the problem and the figures are ok again. However I'm able to recreate the same problem again, even using other suppliers.
The problem affects all users. A collegue can start a new excel using a new connection and still be affected by the filter for the specific supplier. I.e. my excel report has affected the data in the cube.
For me this is very strange and I would be very happy if anyone could shed some light on the problem.
Thanks,
Martin
Date filter is behaving very strange on MS excel when picking specific days
hi , we've created a OLAP CUBE and business starts to navigate it.
One user has complained a weird issue when using excel 2010 to connect to cube.
Basically, he picked revenue as the measure and retailers and Date hierarchy which contains Year, Month and Day.
Nothing fancy and result is fine. Then ,he told me that he only wants to see data for only 4 days in November , 2012.
On the column Label, I've picked year and november, which is perfectly fine.
next, when I chose only 4 days ,25,26,27,28, something weird happened.
It directly jumped to 2013 January,28... it is really weird... Am I missing any steps?
thanks
Hui
--Currently using Reporting Service 2000; Visual Studio .NET 2003; Visual Source Safe SSIS 2008 SSAS 2008, SVN --
Tabular calculated member
i hope some one can help me with that problem.
Tabular mode and 2 Tables: fact_salesinfo, dim_version
The Tables look like that:
Fact_salesinfo:
SalesId,versionid,Net Sales, cost
1,1,100,90
2,2,110,80
dim_version:
versionid,versionname
1,Actual
2,Budget
In Multidim mode it was possible to add a calculated member to Version which said:
[dim_version].[versionname].[Actual] - [dim_version].[versionname].[Budget]
Now i was able to calculate Actual - Budget for every column in my Fact Table.
My Question is:
Is there a possibility to do the same thing, since i have a lot more Columns in both tables and wouldnt like to create every single combination in the version table for every column in the fact table.
Thanks a lot.
Help to calculate Prev member and Current member for time
Apologies for confusing title, I'm trying to calculate growth over period (yearly, monthly, weekly), and looking for way to calculate something like below but not depending on time hierarchy (pls note that [Measures].[Cost]) semi additive, not summable over the time):
[Prev Period Monthly InventoryCost Measure]=([DateTime].Month.PrevMember ,[Measures].[Cost])
[Current Period Monthly InventoryCost Measure]=([DateTime].Month.CurrentMember ,[Measures].[Cost])
As you see my current formula has Month, but I want this to be period/hierarchy-agnostic (cuz I have several DateTime Hierarchies), how can I do this?
THANK YOU!
MSOALP openquery slower on local than on another server
Hi,
We are using SQL server 2008R2 64bit.
I have an MDX query which executes within 7 seconds (Profiler 'Query End' - duration = 7288) by using the SSMS MDXquery window. The resultset contains +70000 rows, and is finished into the result window within less than 20 seconds.
I want to transform these results into a SQL stored procedure. So I use a linked server to connect the OLAP server (@srvproduct=N'OLAP', @provider=N'MSOLAP', @datasrc=N'localhost'), and execute the MDX by making use of this linked server:
SET @SQL='SELECT * FROM OPENQUERY(OLAP_srv, '''+REPLACE(@MDX,'''','''''')+''')'
EXEC sp_executeSQL @SQL
However when I execute the MDX from the 'local' OLTP engine, the profiler (SSAS side) shows again 7 seconds for the 'Query End', but the result only returns after nearly 2 minutes. Also the profiler shows: 'Audit Logout' - Duration = 117577 ms.
I have tried this from another OLTP server and on that server it returns within 1 minute.
When I look with the profiler (SQL side), it are the 'OLEDB DataRead' events which are slower.
OPENQUERY and OPENROWSET have the same results.
Any idea what’s the reason? Why is it slower on the local SQL server, from local OLAP to local OLTP?
Thanks.
Eric.
The usage of EXISTING keywork in MDX query
There's a demo from "MDX Step by Step 2008", it introduce the usage of 'EXISTING' to provide the context for set in calculated member.
WITH MEMBER [Measures].[Number of Products] AS COUNT( [Product].[Product].[Product].Members ) SELECT { ([Measures].[Reseller Sales Amount]), ([Measures].[Number of Products]) } ON COLUMNS, {[Product].[Category].Members} ON ROWS FROM [Step-by-Step] GO WITH MEMBER [Measures].[Number of Products] AS COUNT( EXISTING [Product].[Product].[Product].Members ) SELECT { ([Measures].[Reseller Sales Amount]), ([Measures].[Number of Products]) } ON COLUMNS, {[Product].[Category].Members} ON ROWS FROM [Step-by-Step]
Two outputs - the second output is correct.
Now I try another demo to get the last date with data, but I found there's no any difference when using 'EXISTING' or not.
WITH MEMBER [Measures].[Last Date] AS MAX({[Date].[Date].[Date].MEMBERS}, IIF( ([Measures].[Internet Order Count]) = 0, NULL, [Date].[Date].CurrentMember.MemberValue ) ) SELECT {[Measures].[Internet Order Count],[Measures].[Last Date]} ON 0, {[Promotion].[Promotion].MEMBERS} ON 1 FROM [Adventure Works] GO WITH MEMBER [Measures].[Last Date] AS MAX(EXISTING{[Date].[Date].[Date].MEMBERS}, IIF( ([Measures].[Internet Order Count]) = 0, NULL, [Date].[Date].CurrentMember.MemberValue ) ) SELECT {[Measures].[Internet Order Count],[Measures].[Last Date]} ON 0, {[Promotion].[Promotion].MEMBERS} ON 1 FROM [Adventure Works]
The outputs are same.
My expected result for last date in first query which don't have 'EXISTING' should be always 7/31/2008, because there's no context for Date member, so it always return the MAX date with data.
MAX({[Date].[Date].[Date].MEMBERS}, IIF( ([Measures].[Internet Order Count]) = 0, NULL, [Date].[Date].CurrentMember.MemberValue ) )Anyone could help to explain why I got the same output when using EXISTING or not?
Thanks!
Please vote if it's helpful and mark it as an answer!
executing mdx from sql server without linked server
Hi,
I want to execute a mdx query on sql server query window without using a linked server.
Can somebody guide me how can I do this .
Thanks in Advance.
An error occurred when loading the Cube ; Analysis services 2012
Hi All
We are facing issue on our SQL Analysis services 2012 (11.0.3381.0) on windows 2008 R2.
All cubes are not getting loaded on server. When we restart services some times 2/8 cubes some times 4/8 cubes and some times all cubes get loaded. We are not sure what could be reason for such in consistency. Below are the logs
/****************************************************************************/
Failed to load server plug-in extension defined in assembly System. The following error(s) have been raised during the plug-in initialization. Loading of the System assembly failed with the following error: Microsoft::AnalysisServices::AdomdServer::AdomdException;Could not load file or assembly 'msmdspdm, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. Strong name validation failed. (Exception from HRESULT: 0x8013141A)
Strong name validation failed. (Exception from HRESULT: 0x8013141A). Enumeration of types or functions through reflection in managed code failed with the following error: Microsoft::AnalysisServices::AdomdServer::AdomdException.
OLE DB or ODBC error: Query timeout expired; HYT00.
/****************************************************************************/
LOGS :
/*****************************************************************************/
(12/6/2013 7:45:12 AM) Message: Service started. Microsoft SQL Server Analysis Services 64 Bit Enterprise (x64) SP1 11.0.3381.0. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x41210000)
(12/6/2013 7:46:37 AM) Message: An error occurred when loading the Claim Industry Summary Metrics Current. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210013)
(12/6/2013 7:46:37 AM) Message: An error occurred when loading the AW Cube. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210013)
(12/6/2013 7:46:41 AM) Message: An error occurred when loading the AW Cube. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210013)
(12/6/2013 7:46:41 AM) Message: An error occurred when loading the AW Cube. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210013)
(12/6/2013 7:46:42 AM) Message: An error occurred when loading the AW Cube. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210013)
(12/6/2013 7:46:44 AM) Message: An error occurred when loading the AW Cube. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210013)
(12/6/2013 7:46:45 AM) Message: An error occurred when loading the AW Cube. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210013)
(12/6/2013 7:46:55 AM) Message: Service stopped. (Source:
\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x41210001)
(12/6/2013 7:47:04 AM) Message: The Query thread pool now has 1 minimum threads, 40 maximum threads, and a concurrency of 20. Its thread pool affinity mask is 0x00000000000fffff. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x4121000A)
(12/6/2013 7:47:04 AM) Message: The ParsingShort thread pool now has 4 minimum threads, 4 maximum threads, and a concurrency of 20. Its thread pool affinity mask is 0x00000000000fffff. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x4121000A)
(12/6/2013 7:47:04 AM) Message: The ParsingLong thread pool now has 4 minimum threads, 4 maximum threads, and a concurrency of 20. Its thread pool affinity mask is 0x00000000000fffff. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x4121000A)
(12/6/2013 7:47:04 AM) Message: The Processing thread pool now has 1 minimum threads, 64 maximum threads, and a concurrency of 20. Its thread pool affinity mask is 0x00000000000fffff. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x4121000A)
(12/6/2013 7:47:04 AM) Message: The IOProcessing thread subpool with affinity 0x000000000000001f now has 1 minimum threads, 50 maximum threads, and a concurrency of 10. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x4121000B)
(12/6/2013 7:47:04 AM) Message: The IOProcessing thread subpool with affinity 0x00000000000003e0 now has 1 minimum threads, 50 maximum threads, and a concurrency of 10. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x4121000B)
(12/6/2013 7:47:04 AM) Message: The IOProcessing thread subpool with affinity 0x0000000000007c00 now has 1 minimum threads, 50 maximum threads, and a concurrency of 10. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x4121000B)
(12/6/2013 7:47:04 AM) Message: The IOProcessing thread subpool with affinity 0x00000000000f8000 now has 1 minimum threads, 50 maximum threads, and a concurrency of 10. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x4121000B)
(12/6/2013 7:47:11 AM) Message: The flight recorder was started. (Source:
\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x41210005)
(12/6/2013 7:47:11 AM) Message: Service started. Microsoft SQL Server Analysis Services 64 Bit Enterprise (x64) SP1 11.0.3381.0. (Source:\\?\L:\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 1, Category: 289, Event ID: 0x41210000)
/********************************************************************************/
Thanks
Saurabh Sinha
Data, log, tmp files on different discs?
Hi!
When installing sql server there is a best practise to separate data and log files on differnent discs.
Is there such a recommendation for Analysis service data, log, temp ?
Best Regards
Steve
Processing performance problem
Hi!
I´m trying to optimize a SSAS processing job.
My SSAS cubes are partioned and I´m trying to only process the affected partitions.
I use ProcessFull.
This works pretty good, takes a few minutes, but if I need to process historical data the processing seems to take a very long time.
It also seems like the performance is worse when I need to process a bigger number of partitions in parallell.
I have tried to pin-point the problem using some performance-counters and so on but I think I need some hints.
For example:
If I process several small fact-tables + one month of data (70.000.000) from a pretty "big" fact-table (400.000.000 rows) it takes around 22 minutes.
If I partition the same big fact-table into daily ssas-partitions and than tries to process the some one month of data (around 30 paritions, still a total of 70.000.000 rows) in parallell + the small fact tables
it takes around 3 hours to complete the processing.
The CPU utilization seems ok for the first minutes but after a couple of minutes the CPU utilization becomes very low (maybe 3 %) and stays there until the end of the processing when it goes up for some minute before processing completes. Maybe 95 % of the
time when running long processing the cpu is < 5 %.
In the begining the Proc aggregations->Rows read/sec counter is a couple of 100.000 but after some time this counter drops to just around 2.000. If looking under Disk in the Resource Monitor it looks like there is a lot of reading (~ 8 GB/min) going
on against the Data Warehouse (.mdf file) for almost the entire processing time.
Any hint on where to start looking? Because of the very low cpu utilization it seems like there should be some potential of increasing the processing speed.
Environment:
Sql server 2008
SSAS cubes and Data warehouse on the same server (discs).
Non-default-configuration done on the server :
Process\Maxthreads=160 (10*number of logical cores).
LowMemoryLimit=65
TotalMemoryLimit=80
Flight Recorder disabled
Query\Maxthreads=32 (2*number of logical cores)
Data Source on SSAS-database->Maximum Number Of Connections: 100.
How to use union to apply OR logic in MDX.
This query can set OR logic and to get the results.
SELECT { [Measures].[Reseller Order Quantity], [Measures].[Reseller Order Count] } ON 0, NON EMPTY {[Product].[Subcategory].MEMBERS} ON 1 FROM [Adventure Works] WHERE ( { ([Product].[Color].&[Black],[Product].[Size Range].[All Products]), ([Product].[Color].[All Products], [Product].[Size Range].&[XL]) } )
How to use UNION to get this result, I tried some queries but it seems the result is always different.
SELECT { [Measures].[Reseller Order Quantity], [Measures].[Reseller Order Count] } ON 0, UNION( NONEMPTY( [Product].[Subcategory].MEMBERS, ( [Product].[Color].&[Black], [Product].[Size Range].[All Products] ) ), NONEMPTY( [Product].[Subcategory].MEMBERS, ( [Product].[Color].[All Products], [Product].[Size Range].&[XL] ) ) ) ON 1 FROM [Adventure Works]
Please vote if it's helpful and mark it as an answer!
Connecting to DB2 using IBM OLE DB Provider
Hi All,
We are trying to build a cube where the underlying tables are from DB2. We have used IBM and Microsoft OLE DB providers, though we are able to connect and build the DSV and cube. But while processing the cube we are facing errors. The errors for both the providers are listed below.
IBM OLE DB Provider for DB2:
OLE DB error: OLE DB or ODBC error: [DB2] SQL0107N. The name "SchemaName_TableName" is too long. The maximum length is "18". SQLSTATE=42622
we are also facing the same errors using Microsoft OLE DB Provider.
Please consider this as an urgent requirement.
Many thanks in advance.
MDX Using iif function to supress 1.#INF error not working
Hi All
I am trying to do a calculation using 2 calculated members, one of the values can = 0 which when dividing creates the1.#INF, i have attempted to use an iif function to work around it but it doesnt seem to be working. can anyone say why its not working or what i can do to fix it?
the code and result set are bleow
with member Measures.Total as sum ( PERIODSTODATE( [Date 1].[Hierarchy].[Year Month Desc] , [Date 1].[Hierarchy].currentmember ) * [Date 1].[Workdays Past In Month].DefaultMember * [Date 1].[Workdays Left In Month].DefaultMember, [Measures].[New Start]) member measures.DaysPast as [Date 1].[Workdays Past In Month].member_Caption MEMBER [Measures].[NullValue] AS Null member measures.TestAvgStart as iif( [measures].[DaysPast] = 0 ,[Measures].[NullValue] , (Measures.Total/measures.DaysPast)), FORMAT_STRING = "#,#0" -------------------------------------------------------------------------------- select {[Measures].[New Start],Measures.Total,measures.DaysPast,measures.TestAvgStart } on 0 , ( [Date 1].[Hierarchy].[Full Date] ,[Date 1].[Workdays Past In Month].children ,[Date 1].[Workdays Left In Month].children ) on 1 from sales where [Date 1].[Previous Month].[1]
Date | Days Past | Days left | New Start | Total | DaysPast | TestAvgStart |
01/06/2013 | 0 | 20 | 69 | 69 | 0 | 1.#INF |
02/06/2013 | 0 | 20 | 4 | 73 | 0 | 1.#INF |
03/06/2013 | 1 | 19 | 124 | 197 | 1 | 197 |
04/06/2013 | 2 | 18 | 141 | 338 | 2 | 169 |
05/06/2013 | 3 | 17 | 124 | 462 | 3 | 154 |
06/06/2013 | 4 | 16 | 158 | 620 | 4 | 155 |
MDX script execution in sql management studio generates “operation has been cancelled” message.
When I execute this mdx query:
SELECTNONEMPTY { [Measures].[All Survey Count] }ONCOLUMNS,
NON EMPTY { ([Dim Survey].[Survey Name].[Survey Name].ALLMEMBERS * [Dim Question].[Question].[Question].ALLMEMBERS * [Dim Answer].[Answer].ALLMEMBERS ) } DIMENSIONPROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ONROWSFROM (SELECT ( { [Time].[Month Number Of Year].&[2013]&[11] } )ONCOLUMNS
FROM (SELECT ( { [Dim Room].[Hospital Name].&[ HOSPITAL NAME] } )ONCOLUMNS
FROM [SurveyPatientSpecific]))
WHERE ( [Dim Room].[Hospital Name].&[HOSPITAL NAME], [Time].[Month Number Of Year].&[2013]&[11] )
, process is running for few minutes and then returns this message:
Executing the query ...
Server: The operation has been cancelled because there is not enough memory available for the application. If using a 32-bit version of the product, consider upgrading to the 64-bit version or increasing the amount of memory available on the machine.
Execution complete
SQL Server is 2012 (64-bit), and result set is not big at all???
Thanks,
gb
SSAS /MDX question
Hello all
I have several dimensions in a cube (Comany Dim,Sales Group Dim,Product Dim, Chart of Account) and a measure Journals
I need to report line by Line on certain member in Companies ,sales group and Product
i.e
Company Ceu should return Sales Group 1-10 , and product 1-20
Company Ceu should return Sales Group 10-19 and product 25
Company CCE should return Sales Group 1-5 and product 1-10
Any help on how to achieve this will be extremely helpful