Synapse Pools

Dedicated SQL Pool

Designed for Kimball style star/snowflake schema data warehouses.

Billed for storage and compute. Can be paused.

Contains tables (internal, external, temp), views, procedures - it is a database.

Internal tables are columnstore.

Does not support OPENROWSET, external tables must be explicity created.

Query language is TSQL.


Serverless SQL Pool

Designed for data processing, not data storage.

Billed per-use for compute only. Has cost budgets and limits.

Does not contain internal tables, just external and temporary.

Query language is TSQL.


Links

https://www.red-gate.com/simple-talk/blogs/synapse-serverless-and-dedicated-pool-the-differences-no-one-told-you-about/#:~:text=The%20basic%20differences%20between%20Synapse,we%20choose%20and%20a%20constant




The Rise and Fall of Microsoft Certificates

Microsoft have made certificates in a variety of sizes over the years. They started out bland, got really good, but have been declining in the last fifteen years. 


 My oldest printed certificate. Plain, but (I guess) servicable.












In the early 2000s we got these professional-looking certificates. They had different colour borders for different types of certification. The background was nicely patterened.

I was happy to have all of these framed on my wall.







Then the Age of Pastel happened. 

I think the person who knew how to make certificates left Microsoft and so they just used a Microsoft Publisher wizard.












Some of them had a shiny gold foil star, which is better. Not great, just… better.

Still not going on my wall.







The mid-2010s saw something simpler. Some of these had subtle patterns in the black area at the top however most did not.

Not as nice as the early-2000s ones but at least I'd put them on a wall.



The Microsoft Certified Trainer certificates have always been a bit different. The quality on these has been hit and miss over the years but generally I've been happy to put them on a wall.






Today my boss noticed that some of my certs on the wall have expired and told me to download new ones. I eventually found the page where you can print the new certs, and printed these.


Really, Microsoft?

You couildn't even be bothered using a Publisher template?

These certainly aren't going on a wall. The old certs can stay there with the old dates on them.



Why did Don Jones say that using Write Host kills a puppy?

Don Jones, a highly experienced author, MVP, and PowerShell expert, famously once said that every time you use Write-Host, you kill a puppy. See Jeffrey Snover's blog for more information.

So, why is it considered so bad? Because it messes with the output streams.

Consider a PowerShell script file with the following two lines.

"This is a test message."
"This is a test message written to Write-Host." | Write-Host

When you run this and redirect the output to a text file, the second message is written to the screen and not written to the text file.

This means that if you run the script from inside some other system, for example a SQL Server Agent job, then you won't be able to capture the output, which is bad.

There are a lot of articles on the web discussing the issue in more detail. Here are a couple that I like.
Write-Host – The gremlin of PowerShell, by Jeff Wouters
Puppycide done right - output versus messages


Microsoft products in the Defender family

Microsoft describe Microsoft Defender XDR and Microsoft Defender for Cloud as their XDR products, with Microsoft Sentinel as their SIEM and SOAR product.

They are, however, very lax with these names. Sometimes they will use "Microsoft Defender for Endpoint", sometimes "Microsoft 365 Defender for Endpoint". There are also plenty of learn.microsoft.com pages using one or more of the old names. 


Exchange Server Recipients

There are a number of types of Exchange Server recipients, differentiated by the RecipientType and RecipientTypeDetails properties. The following are the common mailbox-enabled recipients.

 

Microsoft 365 Licenses in PowerShell


Get-MsolAccountSku | 

    Where-Object AccountSkuId -eq "******:ENTERPRISEPREMIUM" |

    Select-Object -ExpandProperty ServiceStatus | 

    Select-Object -ExpandProperty serviceplan | 

    Sort-Object servicename |

    ft servicename


Get-MsolUser -UserPrincipalName "DiegoS@mydomainname" |

    Select-Object -ExpandProperty licenses |

    Select-Object -ExpandProperty servicestatus |

    Select-Object -ExpandProperty serviceplan | 

    Sort-Object servicename |

    ft servicename



Replace "******:ENTERPRISEPREMIUM" with your actual licence name.


Also see
https://gist.github.com/Tiberriver256/62f4167e6728f95bf342a485dbe0a4e9