Some links about the good old (and dead?) SSAS Multidimensional Cube

Why doesn’t SSAS cache the entire cube?
Also, if you cube is much larger than the memory available to SSAS, then you would expect to see continual IO, and it is likely to be quite well optimised. However, when you have a 64 bit server with a cube that is larger than 3GB but is comfortably less than the server memory, you might be surprised to see the volume of continual IO.

http://richardlees.blogspot.com/2011/12/why-doesnt-ssas-cache-entire-cube.html

Best Practices for Performance Tuning in SSAS Cubes, you are in right place. Define cascading attribute relationships, for example, day > Month > Quarter > year  and define user hierarchies of related attributes (called natural hierarchies) within each dimension as Appropriate for your data

Best Practices for Performance Tuning in SSAS Cubes, you are in right place. Define cascading attribute relationships, for example, day > Month > Quarter > year  and define user hierarchies of related attributes (called natural hierarchies) within each dimension as Appropriate for your data

Remove redundant relationships between attributes to assist the query execution engine in generating the appropriate query plan. Attributes need to have either a direct or an indirect relationship to key attributes, not both.


https://mindmajix.com/msbi/best-practices-for-performance-tuning-in-ssas-cube

https://kejserbi.wordpress.com/

https://hub.packtpub.com/query-performance-tuning-microsoft-analysis-services-part-1/

https://github.com/RichieBzzzt/SSASActivityMonitor

https://github.com/ssasdiag/SSASDiag

https://christianb7.wordpress.com/2012/11/11/analysis-services-2012-configuration-settings/

https://www.mssqltips.com/sqlservertip/2568/ssas-best-practices-and-performance-optimization-part-4-of-4/

Microsoft ADO.NET driver for SQL Server

Microsoft ADO.NET driver for SQL Server aka the Microsoft.Data.SqlClient GitHub repository.

Microsoft.Data.SqlClient is a data provider for Microsoft SQL Server and Azure SQL Database. Now in General Availability, it is a union of the two System.Data.SqlClient components which live independently in .NET Framework and .NET Core. Going forward, support for new SQL Server features will be implemented in Microsoft.Data.SqlClient

https://github.com/dotnet/SqlClient

https://dpaoliello.wordpress.com/

Diagnose and resolve spinlock contention on SQL Server

This article provides in-depth information on how to identify and resolve issues related to spinlock contention in SQL Server applications on high-concurrency systems.
In the past, commodity Windows Server computers have utilized only one or two microprocessor/CPU chips, and CPUs have been designed with only a single processor or „core“. Increases in computer processing capacity have been achieved through the use of faster CPUs, made possible largely through advancements in transistor density. Following „Moore’s Law“, transistor density or the number of transistors that can be placed on an integrated circuit have consistently doubled every two years since the development of the first general purpose single chip CPU in 1971. In recent years, the traditional approach of increasing computer processing capacity with faster CPUs has been augmented by building computers with multiple CPUs. As of this writing, the Intel Nehalem CPU architecture accommodates up to eight cores per CPU, which when used in an eight socket system can then be doubled to 128 logical processors through the use of hyper-threading technology. As the number of logical processors on x86 compatible computers increases, concurrency-related issues increase as logical processors compete for resources. This guide describes how to identify and resolve particular resource contention issues observed when running SQL Server applications on high concurrency systems with some workloads.
In this section, we will analyze the lessons learned by the SQLCAT team from diagnosing and resolving spinlock contention issues. Spinlock contention is one type of concurrency issue observed in real customer workloads on high scale systems.

https://docs.microsoft.com/en-us/sql/relational-databases/diagnose-resolve-spinlock-contention?view=sql-server-ver15

Diagnose and resolve latch contention on SQL Server

This guide describes how to identify and resolve latch contention issues observed when running SQL Server applications on high concurrency systems with certain workloads.
As the number of CPU cores on servers continues to increase, the associated increase in concurrency can introduce contention points on data structures that must be accessed in a serial fashion within the database engine. This is especially true for high throughput/high concurrency transaction processing (OLTP) workloads. There are a number of tools, techniques, and ways to approach these challenges as well as practices that can be followed in designing applications which may help to avoid them altogether. This article will discuss a particular type of contention on data structures that use spinlocks to serialize access to these data structures.

https://docs.microsoft.com/en-us/sql/relational-databases/diagnose-resolve-latch-contention?view=sql-server-ver15

POLARIS: The Distributed SQL Engine in Azure Synapse

In this paper, we describe the Polaris distributed SQL query engine
in Azure Synapse. It is the result of a multi-year project to rearchitect the query processing framework in the SQL DW parallel
data warehouse service, and addresses two main goals: (i) converge
data warehousing and big data workloads, and (ii) separate compute
and state for cloud-native execution.

https://www.vldb.org/pvldb/vol13/p3204-saborit.pdf