Glorf.it

Glorf IT

Bedenkliches aus dem IT-Alltag

24. Mai 2011 um 19:39

Windows 8 noch in 2012

Nun ist es also offiziell: Steve Ballmer kündigte Windows 8 offiziell für 2012 an. Das bedeutet auch, dass Nutzer von SQL Server 2000 oder SQL Server 2005 langsam auf eine neuere Version umsteigen müssen. Genauso wenig wie SQL Server 2000 auf Windows Vista, Windows 7 bzw. Windows Server 2008 unterstützt ist, wird wohl der SQL Server 2005 auch nicht unter Windows 8 unterstützt werden. Eigentlich schade, denn SQL Server 2000 ist noch bis April 2013 im Extended-Support, SQL Server 2005 noch bis April 2016.

Details zu Windows 8 finden sich im Golem-Artikel "Microsoft: Steve Ballmer kündigt Windows 8 offiziell an". Infos zum Support-Life-Cycle hier.

11. März 2011 um 19:47

Was ist TDS?

Gestern fragte mich ein Kollege was denn TDS sei. Hintergrund war eine Fehlermeldung in der die Abkürzung für Tabular Data Stream (TDS) vor kam. Darauf kann man eigentlich nur eine lange Antwort geben, ich entschied mich aber für die kurze, die aber weitere Fragen aufwirft:

TDS ist ein ursprünglich von Sybase entworfenes und dann von MS erweitertes Datentransport-Protokoll. Damit schickt der SQL Server (quasi als Nutzlast innerhalb der IP-Pakete) seine Daten und Befehle zum SQL-Client und umgekehrt.

Microsoft hat eine ausführlichere Antwort in den Books-Online.

Die Spezifikation gibt es für Hardcore-Netzwerker sowohl von Sybase als auch von Microsoft in deren jeweiligen aktuellen Fassungen.
Für den NetMon gibt es mittlerweile einen Parser, damit man sich TDS "lesbar" anzeigen lassen kann.

17. Februar 2011 um 20:14

Status der sekundären SQL-Dienste abfragen

Mein Kollege Vladimir zeigte mir neulich, wie man den über den SQL-Server den Staus der anderen SQL-Dienste abfragen kann. Danke! Hier ein paar Beispiele:
EXEC xp_servicecontrol N'QueryState', N'MSSQL$My_EXPRESS';
EXEC xp_servicecontrol N'QueryState', N'SQLAgent$SQL2K8R2';
EXEC xp_servicecontrol N'QueryState', N'msftesql$SQL2005SE';
EXEC xp_servicecontrol N'QueryState', N'msdtc';
EXEC xp_servicecontrol N'QueryState', N'SqlBrowser';
EXEC xp_servicecontrol N'QueryState', N'MSOLAP$SQL_32_STD_ENG';
EXEC xp_servicecontrol N'QueryState', N'ReportServer$My_EXPRESS';
EXEC xp_servicecontrol N'QueryState', N'SQLWriter';

Weitere interessante "Actions" sind "Start" und "Stop".

Ist das gut?

Disclaimer:

  • Man muss mit einem SysAdmin angemeldet sein.
  • Das ist undokumentiert und funktioniert möglicherweise mit anderen Versionen nicht mehr.
  • Getestet habe ich nur mit SQL Server 2005.
  • Falls es nicht geht, dann hat möglicherweise der Benutzer in dessen Kontext der SQL-Server läuft, nicht genug Rechte.

Eine "dokumentierte" Alternative würde xp_cmdshell bieten:
EXEC xp_cmdshell 'SC query msdtc';
Der Output ist aber unhandlich. Und die Aktivierung von xp_cmdshell nervt mich.

10. Februar 2011 um 21:49

Neuer Chef für den Microsoft SQL Server

Satya NadellNachdem Bob Muglia seinen Job bei Microsoft als Chef der Server&Tool-Devision aufgeben musste/wollte, war lange Zeit unklar wer ihm nachfolgt. Bob Muglia war zuletzt in der Schlagzeile, weil er sich bzgl. der Silverlight-Strategie verplapperte und verfrüht die interne Strategie ausplauderte:

“Silverlight is our development platform for Windows Phone,” he said. Silverlight also has some “sweet spots” in media and line-of-business applications, he said.

But when it comes to touting Silverlight as Microsoft’s vehicle for delivering a cross-platform runtime, “our strategy has shifted,” Muglia told me.

Silverlight will continue to be a cross-platform solution, working on a variety of operating system/browser platforms, going forward, he said. “But HTML is the only true cross platform solution for everything, including (Apple’s) iOS platform,” Muglia said.

Sein Nachfolger wird ab Mitte des Jahres Satya Nadell werden (siehe Bild). Er wird damit auch direkt für die SQL-Server-Strategie verantwortlich sein. Ob es dann weiterhin vorkommen wird, dass es Versions-Kuddel-Muddel gibt? Wie bspw. das der SQL Server 2011 nicht auf den noch bis 2015 unterstützen Windows Server 2003 läuft?

7. Februar 2011 um 21:35

Update für das "SQL Server 2008 R2 for Developers Training Kit"

Den "SQL Server 2008 R2 Update for Developers Training Kit (January 2011 Update)" habe ich irgendwie verpasst. Der neue Content kommt mir allerdings auch gar nicht so neu vor. Möglicherweise ist das nur ein Update von SQL Server 2008 auf R2:

New Content: Build Your First Microsoft BI Solution with SQL Server 2008 R2
This update includes a rich new set of content designed for developers who want to learn how to build their first Microsoft Business Intelligence solution with SQL Server 2008 R2. Microsoft BI solutions leverage your existing technology investments in .NET, SQL Server and Office to develop rich integrated reporting and analytics experiences that empower users to gain access to accurate, up-to-date information for better, more relevant decision making. This content is a complete training course that contains eleven units covering all the key aspects of Microsoft BI solution development. You can find it by navigating to the Getting Started – BI Developers page. Here is a summary of what’s included:
31 presentations (PowerPoint slides, videos and transcripts included)
27 demos (installer scripts, videos and transcripts included)
12 hands on labs (installer scripts included)

Für Einsteiger in das Thema dürfte sich das aber dennoch lohnen. Hier ist der Download.

31. Januar 2011 um 22:08

Microsoft SQL Server Compact Edition 4.0 freigegeben

Die Freigabe der Version 4 der Microsoft SQL Server Compact Edition ging irgendwie an mir vorüber. Die Jungs haben es aber auch echt nicht einfach. Derzeit reden ja alle nur von Denali. Dabei hat das "SQL Server Compact Team" sogar einen eigenen und offiziellen Blog.

Spannend finde ich auch die Release-Politik: es gibt eine ganze Reihe von Dingen, die mit der neuen Version nicht mehr gehen und deswegen die alte Version 3.5 weiter verwendet werden soll, z.B. Daten-Synchronisierung mit dem SQL-Server und der Einsatz auf "mobile devices".

Details hier.
Download da.

29. Januar 2011 um 19:17

sys.dm_exec_query_stats verstehen

Über den Newsletter des SQL Server Magazine wurde ich auf den Artikel "Are Your DMVs Lying to You?" aufmerksam. Darin beschreibt Adam Moericke wie die Werte in der Data-Management-View "sys.dm_exec_query_stats" zu verstehen sind. Kurz gesagt, die einzelnen Werte werden zu unterschiedlichen Anlässen erhöht. Details im Artikel… 😉

28. Januar 2011 um 19:16

Books Online für SQL Server "Denali"

Offenbar hatte Microsoft vorgestern einen großzügigen Tag: Zuerst wurde einfach mal eben der Service-Pack 4 für den SQL Server 2005 per Microsoft-Update zur Verfügung gestellt: für die Express-Edition zum automatischen Download, für die Standard-Edition und den Rest zum manuellen Download. Leider sind die Release-Notes recht versteckt. Aber da nichts weiter drin steht was mit dem SP geändert wird, lohnt die Suche eigentlich nicht.

Außerdem gibt es die Hilfe ("Books Online", BOL) für den CTP1 des zukünftigen SQL Server 2011 ("Denali") jetzt nicht nur im Internet, sondern auch als Download. Jetzt würde mich natürlich interessieren, was geändert wurde, aber das manuell zu prüfen, ist mir dann doch zu mühsam…

25. Januar 2011 um 22:23

Microsoft SQL Server Versionen

Eine aktuelle Liste der Versionsnummern des SQL Servers findet sich bei SqlTeam.com. Verkürzt auf die Hauptversionen sieht es so aus:

Jahr Versionsnummer Versionsname Codename
2011 11.00 SQL Server 2011 Denali
2010 10.50 SQL Server 2008 R2 Kilimanjaro
2008 10.00 SQL Server 2008 Katmai
2005 9.00 SQL Server 2005 Yukon
2000 8.00 SQL Server 2000 Shiloh
1999 7.00 SQL Server 7 Sphinx
1996 6.50 SQL Server 6.5 Hydra
1995 6.00 SQL Server 6 SQL95
1993 4.21 SQL Server 4.21 SQLNT
1992 4.20 SQL Server 4.2
1991 1.10 SQL Server 1.1
1989 1.00 SQL Server 1.0

Die mir bekannten Codenamen habe ich einfach mal ergänzt. Wobei die 11er Version ja noch gar nicht erschienen ist. Der Name und das Freigabejahr sind daher nur geraten…

Die im oben verlinkten Dokument genannte lange Versionsnummer setzt sich aus diesen Bestandteilen zusammen:

  • MM – Major version
  • nn – Minor version
  • bbbb – Build number
  • rr – Build revision number

Das wird im Absatz "Version Components and Numbering" des Dokumentes "Considerations for Side-by-Side Instances of SQL Server 2008 R2 and SQL Server 2008" beschrieben.

Besten Dank an meinen Kollegen Vladimir für die Hinweise auf die Links.

Update: Weitere Codenamen fand ich bei Wikipedia.

Weiterführende Artikel: In dem Zusammenhang möchte ich auch noch mal auf die Geschichte des SQL Servers aus Sicht von Microsoft und die Frage warum das System von Sybase heute Adaptive Server Enterprise heißt, hinweisen.

4. Januar 2011 um 20:53

Migration zu SQL Server 2008 R2

Mit etwas Verspätung schaute ich heute die "aktuelle" Ausgabe des "TechNet Magazine" durch. Bei dem Artikel SQL Server: Planen Ihrer Migration zu SQL Server 2008 R2. Dabei gibt es einige Dinge, die mir etwas seltsam auffielen: Manche Wörter sind etwas holprig übersetzt. Nicht nur der Titel, sondern bspw auch "Migrierungsmechanik", "Aktualisierungspfad" oder "Migrierung" kommen mir schräg vor.

Darüber hinaus frage ich mich, ob ein Artikel zum Umstieg auf "SQL Server 2008 R2" ohne eine einzige Erwähnung der aktuell als CTP erhältlichen Nachfolgeversion wirklich passend ist. Die Ursache dürfte die Zeitverschiebung sein: Wer weiß wann der Artikel im us-amerikanischen Original erschien. Naja, immerhin gibt er ein paar Hinweise für Leute, die noch nie eine Migration durchgeführt haben…

8. Dezember 2010 um 18:06

In-Memory-Datenbanken als OLAP-Killer?

Heute sah ich, dass Microsoft bereits im November einen Artikel über das neue Feature im SQL Server 2011 verfasste, dass OLAP-Systemen ablösen könnte: der Columnstore Index.

Die Details stehen im Artikel "Columnstore Indexes for Fast Data Warehouse Query Processing in SQL Server 11.0" von Eric N. Hanson. Darin beschreibt Microsoft warum eine spaltenorientierte Speicherung so schnell sein soll. Die Vorteile sind auf den ersten Blick wirklich bestechend. Die Idee ist einfach: auf eine normale Tabelle wird ein sogenannter "Columnstore Index" angelegt. Das bewirkt, dass der kimplette Inhalt in den Speicher geladen wird und dort spaltenweise vorgehalten wird.

Im Ergebnis ist die Tabelle "in memory", kondensiert gespeichert und daher sagenhaft schnell für lesende Zugriffe. Die Schattenseite ist, dass diese Tabelle danach nur noch lesend ist. Aber weil das eine der typischen Eigenschaften eines Data-Warehouse ist, sollte das kein Problem sein.

Was ist der große Vorteil der spaltenorientierten Speicherung gegenüber OLAP?

  • Immerhin spart am sich das Bestücken des OLAP-Cubes.
  • Man muss sich nicht in eine neue Technologie einarbeiten.
  • Es muss kein separater OLAP-Server installiert und verwaltet werden.
  • Angeblich soll die Performance sogar besser sein, wenn es mal ausgereift ist.

Aus meiner Sicht hat das großes Potential. Es ist schon irgendwie Pech für Microsoft, dass mit SAP eine kleine deutsche Firma hier die Nase vorn hatte…

PS: Das Feature ist noch nicht im frisch veröffentlichten CTP1 des SQL Servers 2011 drin. Es bleibt abzuwarten in welchen Editionen das verfügbar wird. Mit sinkenden Speicherpreisen wird das nämlich auch für kleine Systeme interessant.

27. November 2010 um 12:29

SQL Server 2011 (Denali): Beispieldatenbanken

Bei Codeplex gibt es nun angepasste Versionen der AdventureWorks-Beispieldatenbanken für SQL Server 2011 ("Denali"): "AdventureWorks2008R2" und "AdventureWorksDW2008R2"
Der Name lässt vermuten, dass sich gegenüber den R2-Versionen nichts geändert hat. Die kann man übrigens auch einfach an den SQL-Server-2011 hängen.