Archives for: "May 2015"
SQL Server 2016 – the Security & Performance Release / ein Sicherheits- und Performance-Release
May 31st
(DE) |
(EN) |
Die Schlüsselfeatures sind demnach: Always Encrypted Mit diesem Feature ist es endlich möglich, eine Datenverschlüsselung anzubieten, bei der SQL Server selber keinen Zugriff auf die Daten im unverschlüsselten Zustand hat – und auch ein Datenbankadministrator Daten nicht entschlüsseln kann. Der Schlüssel wird hierbei in der Applikation bereitgehalten, wo die Verschlüsselung und Entschlüsselung stattfindet. Das war bisher nur mit eigenen Entwicklungen möglich. |
Its key features are: Always Encrypted With this feature it is finally possible to offer encrypted data where SQL Server itself does not have access to the data in unencrypted form and where the database administrator is incapable of decrypting the data. The key is held within the very application where the encryption and decryption takes place. Up to now encryption/decryption was only possible if users developed solutions on their own. |
Stretch Database Stretched Tables bieten die Möglichkeit, innerhalb einer Tabelle Daten sowohl On-Premise als auch in der Cloud zu halten. Ähnlich wie bei Partitionierung wird hier transparent für die Applikation ein Teil der Daten nach Microsoft Azure ausgelagert, und nur dann geladen, wenn nötig. – Hier sollte man also sicherstellen, mit ungünstigen Abfragen keine Index-Scans in die Cloud zu verursachen. |
Stretch Database Stretched Tables offer the option to store data in a given table both On-Premise and in the Cloud. Similar to partitioning, part of the data will be swapped to Microsoft Azure, transparently to the application, and only accessed when necessary. Here it might be advisable to avoid causing index-scans to the cloud with badly designed queries. |
Um die Daten zu schützen funktionieren Stretched Tables auch im Zusammenspiel mit Always Encrypted. Es bleibt abzuwarten, wie dieses Feature die Hemmungen, Daten in die Cloud zu geben, beeinflusst. Microsoft selber hat jedenfalls sicherlich kein Interesse daran, den Zugang zu seinen Systemen für Geheimdienste zu vereinfachen, und Always Encrypted dürfte ein klares Signal sein. |
To protect the data, Stretched Tables also work together with Always Encrypted. It remains to be seen, how this feature affects the inhibition to give data to the cloud. Microsoft itself surely has no interest to make access to its systems simple for intelligence, and Always Encrypted should be a clear signal. |
Real-time Operational Analytics & In-Memory OLTP Unter diesem Feature verbirgt sich die Verheiratung der beiden „Performance-Killer“ Features Columnstore Indexe – für OLAP-Szenarien – und Memory Optimized Tabellen für In-Memory OLTP. Das heißt damit sind performante analytische Abfragen auf den frischen OLTP Daten in In-Memory möglich. In meinen Augen ist dieses Feature der Killer überhaupt, da Indexe auf den Tabellen direkt synchron sein müssen, und nicht, wie bei manch anderem Anbieter von In-Memory Datenbanken, erst mit Verzögerung die Daten erhalten. Auf dem PASS Summit 2014 war dieses Feature bereits kurz zu sehen, jedoch erst jetzt ist es offiziell und hat einen Namen. |
Real-time Operational Analytics & In-Memory OLTP Under this feature lies the marriage of the two „performance-killer“ features Columnstore Indexes – for OLAP-Scenarios – and Memory Optimized Tables for In-Memory OLTP. This enables for fast analytical queries on the fresh OLTP data in In-Memory. In my eyes this feature is the ultimate killer, since indexes on the tables have to be synchronous and not, like at some other vendors of In-Memory databases, only receive the data after a certain delay. At PASS Summit 2014 this features was already biefly presented, but only now it is official and has a name. |
Das waren die Highlights, jedoch ist die Liste der weiteren neuen Features noch lang, und auch diese haben es in sich. Ich versuche, die wichtigsten einmal aufzulisten: |
Those were the highlights, but the list of further new features is still long and highly potential. I try to list the most important ones: |
Verbesserungen zu Columnstore Indexes
|
Improvements to Columnstore Indexes
|
Verbesserungen für In-Memory OLTP
|
Improvements for In-Memory OLTP
|
Und weitere neue Security-Features: Dynamic Data Masking Damit lässt sich, basierend auf Policies, definieren, dass je nach User bestimmte Daten nur maskiert angezeigt werden. |
And further new Security-Features: Dynamic Data Masking Based on Policies allow to define that depending on the user certain data is only shown maked. |
Row-Level Security Row-Level Security (RLS) ist um genau zu sein ein Feature um die Entwicklung von Zeilenbasierten Zugriffsmechanismen wesentlich zu vereinfachen und aus der Applikation in die Datenbank zu verlagern. In der jetzigen Implementation ist es noch recht einfach, über Side-Channel Attacken dennoch an die Daten heranzukommen. Daher muss man, wie eigentlich immer bei Sicherheits-Design, alle Bestandteile der Applikation im Blick haben. Warum eine wirklich sichere Zeilenbasierte Zugriffskontrolle nicht so trivial ist, kann man unter anderem in diesem Blog-Post von mir nachlesen: |
Row-Level Security Row-Level Security (RLS) is, to be exact, a feature to greatly simplify the development of row-based access-control, and move from the application into the database. In the current implementation it is still quite easy, to get via Side-Channel Attacks to the data. Therefore, as always when designing for security, one has to have an eye on all parts of the application. Why a truly secure row-based access control is far from trivial, one can find out among others in this blog-post of me: |
SQL Server Row- and Cell-Level Security – Disclosure vulnerability
Weitere Features in verschiedenen Bereichen: PolyBase Abfragen von relationalen und Nicht-relationalen Daten in Hadoop-Clustern mit T-SQL über sogenannte External Tables. |
Further features in different areas: PolyBase Querying of relational and non-relational data in Hadoop-Clusters with T-SQL via so-called External Tables. |
Query Store Dieses Feature wurde schon mehrere Male von Conor Cunningham auf verschiedenen Konferenzen angedeutet. Jetzt kommt es wirklich. |
Query Store This feature has been presented several times at different conferences by Conor Cunningham. Now it is finally coming into the product. |
Live Query Statistics Im SQL Server 2016 erwecken Ausführungspläne „zum Leben“. Das lässt sich am besten mit einem Bild/Video veranschaulichen: |
Live Query Statistics In SQL Server 2016 query plans „come to live“. This is illustrated best with a picture/video: |
Temporal Tables Mit Temporal Tables werden Daten automatisch versioniert und stehen später für Abfragen nach Zeitraum der Gültigkeit zur Verfügung. Ähnlich, wie man es für Slowly Changing Dimensions/SCDs (Langsam veränderliche Dimensionen) in Datawarehouses selber oft entwirft. |
Temporal Tables With Temporal Tables data is automatically versioned and available for later querying based on time-span of validity. Similar to how one often designs oneself manually for Slowly Changing Dimensions/SCDs in Datawarehouses. |
Trace Flag 4199, welches seit SQL Server 2005 SP3 CU 6 für alle SQL Server Installationen relevant ist, da es diverse Fixe des Query Prozessors erst aktiviert soll mit dem SQL Server 2016 kaum noch nötig sein. Warten wir auf Details, um das beurteilen zu können. |
Trace Flag 4199, which is relevant for all SQL Server Installations since SQL Server 2005 SP3 CU 6, since it enables certain fixes of the query processor is supposedly mainly unnecessary for SQL Server 2016. Let’s wait for details for a final judgement. |
Multiple Tempdb Datendateien Bei der Installation wird direkt nachgefragt, wie viele TempDB Datendateien angelegt werden sollen. Standardmäßig wird hier die Anzahl der Cores mit einem Maximum von 8 verwendet. Damit werden auch weniger versierte Administratoren auf die Thematik von Latch-Contention in der Tempdb aufmerksam, und eine wichtige Best Practice wird damit standardmäßig angewandt. |
Multiple Tempdb Data Files Already at Setup one has to specify how many TempDB data files will be created. By default the number of cores with a maximum of 8 will be used. BY that that also less experienced administrators will become aware of Latch-Contention in Tempdb, and an important Best Practice is applied by default. |
Hochverfügbarkeit
|
High Availability
|
T-SQL
|
T-SQL
|
|
|
Analysis Services · Paralleles Processing (Aufbereiten) für multiple Table Partitions in Tabular Modellen · Neue DAX Funktionen |
Analysis Services · Parallel Processing for multiple Table Partitions in Tabular Models · New DAX Functions |
Integration Services · AlwaysOn-Unterstützung für die SSIS-DB · Inkrementelles Deployment von Paketen |
Integration Services · AlwaysOn-support for SSIS-DB · Incremental Deployment of packages |
Reporting Services Reporting Services sollen endlich CSS-Stylesheets erhalten – darauf haben wir schon lange lange gewartet. (Damit wird dann auch endlich meine vielfach eingesetzte Technik mit SQL-Tabellen obsolet) Auch sollen die Berichts-Parameter verbessert werden und Hierarchien und Autocomplete erhalten. Weiteres: · High DPI (Dots Per Inch) Skalierung und Geräte für bessere Auflösung von Report-Elementen · Diverse kleine Verbesserungen für Abonnements |
Reporting Services Reporting Services will finally get CSS-Stylesheets – for that we waited a long long time. (With that finally my often used Technique with SQL-Tables will become obsolete) Also the Report parameters will be improved and support Hierarchies and get Autocomplete. Further: · High DPI (Dots Per Inch) Scaling and devices for better reolution of report elements · Various minor improvements for subscriptions |
Master Data Services Im Wesentlichen Performance Steigerung durch Datenkomprimierung und ein neues Super User-Konzept |
Master Data Services In essence: Performance improvements through data compression and a new Super User-concept |
Weiteres: · „Ongoing preview updates“ – dahinter verbirgt sich die Möglichkeit, nach der Installation der CTP2 ohne neuere Installationen einfach per Update neue Funktionen online zu erhalten · Azure SQL Data Warehouse · Mit dem Erwerb von DataZen sollen sich auch für mobile Geräte optimierte Reports anbieten lassen |
Further: · „Ongoing preview updates“ – behind this term lies the possibility, to receive new functionalities online without new installations after the installation of CTP2 · Azure SQL Data Warehouse · With the aquisition of DataZen it will be possible to serve reports which are optimized for mobile devices |
SQL Server 2016 CTP2 Die CTP2 des kommenden SQL Server, die viele der hier vorgestellten Features bereits enthält, steht seit 27. Mai hier zum Download bereit: |
SQL Server 2016 CTP2 The CTP2 of the upcoming SQL Server, which already contains many of the features I introduced here, is available for download since May 27th here: |
www.microsoft.com/en-us/server-cloud/products/sql-server-2016/default.aspx
Weiterführende Links: // Further Readings:
What's New in Analysis Services
What's New in Integration Services
What's New in Reporting Services
What's New in Master Data Services
Columnstore Indexes – part 54 (“Thoughts on upcoming improvements in SQL Server 2016″)
I am personally very excited about this upcoming release and hope you are looking forward to it, too
Andreas
My conference-sessions in 2015: from Extended Events over In-Memory to Security
May 25th
(en) The year started really great with the German SQL Server Konferenz in Darmstadt with 2 sessions on In-Memory OLTP in SQL Server 2014 – one of them being even a full-day PreCon, which I co-presented with Niko Neugebauer, who was talking about Clustered ColumnStore Indexes. |
(de) Das Jahr begann gleich großartig mit der Deutschen SQL Server Konferenz in Darmstadt mit 2 Sessions zu In-Memory OLTP in SQL Server 2014 – eine davon sogar eine ganztägige PreCon, welche ich mit Niko Neugebauer co-präsentierte, der über Clustered ColumnStore Indexe sprach. |
PreCon: “In-Memory Internas: Clustered Columnstore & In-Memory OLTP Deep Dive”
Session: “In-Memory OLTP für Entwickler“ (In-Memory OLTP for Developers)
In March I was happy to have been speaker for the second time at the SQLBits in London - |
Im März war ich glücklich zum zweiten Mal auf den SQLBits in London als Sprecher zu sein – wahrscheinlich DEM Event außerhalb der PASS in Europe wenn nicht weltweit. |
Extended Events – Top Features
In April I joined the SQLDay Poland for the first time, giving a session on Locking & Blocking and a second session on Security, namely SQL Injection: |
Im April war ich das erste Mal auf dem SQLDay Poland , mit einer Session zu Sperren & Blockaden und einer zweiten Sessio zu Sicherheit, genauer SQL Injection: |
From Locks to Dead-locks. – Concurrency in SQL Server
“SQL Attack…ed” – SQL Server under attack via SQL Injection
For June I am happy to be able to announce that I will again present on Extended Events at the SQL Saturday #409 Rheinland/Germany. - Added to that I am honored to give one of the 2 full day and free of cost PreCons: Together with Patrick Heyde, Microsoft (Technet-Blog), I will talk on SQL Server in Azure Environments. Specifically on how to optimally configure such a deployments to performance and cost-efficiency at the same time. (Also see my blog article “SQL Server in Microsoft Azure: How to gain performance by flexibility and save costs at the same time”) Besides giving a free PreCon and regular session, my Company Sarpedon Quality Lab is again officially sponsoring this home-event. This is part of my commitment to the German PASS Community – especially since my own family starts taking more time, this is a bit of what I can do to support the PASS Deutschland e.V.. |
Für den Juni darf ich mich glücklich schätzen, bekanntzugeben, dass ich auf dem SQL Saturday #409 Rheinland wieder zu Extended Events präsentieren werde. – Tatsächlich hatte ich bereits auf dem ersten Deutschen SQL Saturday 2012 zu Extended Eventzs präsentiert Zusätzlich dazu fühle ich mich geehrt, eine der 2 ganztägigen und kostenlosen PreCons zu geben: Zusammen mit Patrick Heyde, Microsoft (Technet-Blog), werde ich über SQL Server in Azure Umgebungen sprechen. Und zwar, wie man solche Deployments optimal konfiguriert um sowohl Performance- als auch Kosteneffizient zugleich zu sein. (Siehe auch meinen Blog-Artikel “SQL Server in Microsoft Azure: Wie man durch Flexibilität Leistung gewinnt und zugleich Kosten spart”) Abgesehen von der kostenblosen PreCon und regulärem Vortrag, ist meine Firma Sarpedon Quality Lab wieder offizieller Sponsor dieses Events. Das ist Teil meines Engagements für die deutsche PASS Community – speziell seit meine eigene Familie mehr Zeit beansprucht, ist das ein wenig dessen, was ich tun kann, den PASS Deutschland e.V. zu unterstützen. |
PreCon: Hybrid IT – Azure Scenarios & Dynamic Infrastructure
Tracing with Extended Events – Top Features
- If you are still using Profiler, or just started with XEvents, be sure to come along to see some of the nifty features ;-)
In September I will be at the SQLSaturday #413 Denmark in Copenhagen, organized among other by Regis Baccaro. I will be giving yet another PreCon on In-Memory OLTP and Clustered ColumnStore and a regular session on SQL Server storage. |
Im September werde ich auf dem SQLSaturday #413 Denmark in Kopenhagen, organisiert neben anderen von Regis Baccaro, sein. HIer gebe ich wieder eine PreCon zu In-Memory OLTP und Clustered ColumnStore und eine reguläre Session zu SQL Server Speicher. |
PreCon: New Index technologies: Clustered ColumnStore and In-Memory OLTP: the good and the bad
A journey into SQL Server Storage - from Memory to Disk
I hope to see YOU :-)
Andreas