Pay back to #sqlfamily community – T-SQL Tuesday #102

Riley Major invited us to this months TSQL2sDay – we should write about „Giving back to the community“ and some shall write about how they plan to start or people like me – who already started giving back – shall write about how we’re actually doing. So let me try to tell you my story about stepping out of the dark and getting into the #sqlfamily …

The lone Geek

My journey started about 6 years ago as I thought to myself that there must be a way to become stronger and get deeper knowledge about SQL server is able to. Also get around some problems with getting such specific training for an affordable effort/budget. I just wanted to know this „magic“ and started to google a little bit and came across some buzzwords which showed me a direction… which leads me to my registration at PASS Germany.

My first visit at the local PASS user group lasted for more than half a year but somewhen I did it 😉 After that, I visited the user group meetings on a regular base and then I heard about a community event called SQL Saturday… That’s where I wanted to be part of to strengthen my knowledge about SQL Server as a participant but never thought about changing to a speaker because I was so impressed with the knowledge, presentation and speaking…

PASS-DE - The Lone Geek

So I just joined several community events as SQL Saturdays, PASSCamp, SQLKonferenz and SQLGrillen from the easy side => as a participant. But somewhen it made „click“ in my head and I thought „Hey, if I’m already on-site why not helping and getting more in touch with those great guys/speakers?“ so I decide to write an email to Oliver Engels (Twitter) and Tillmann Eitelberg (Twitter) if I might volunteer during SQL Saturday Rheinland and “ Hurray they accepted…“

Become a First-Timer

So I started my „career“ as a volunteer on SQL Saturday Rheinland 2016 with filling bags, preparing booths and session rooms … which had made a lot of fun! I got in touch with more very friendly people of the German PASS chapter. #communityrocks

After a few weeks – also joined SQLGrillen – I made a decision for my own to submit a session for next year’s SQL Saturday and try some more opportunities to speak… in October 2016 I participated also as a volunteer at SQL Saturday Munich where I already felt the love of the #sqlfamily! It was so much fun being part of it and getting known by more and more people. So I also spoke to a Microsoft guy (Jan Schenk) who was responsible for my efforts creating the #Azure Meetup in Hamburg which I started in November 2016.

In 2017 was my first step out of the dark 😉 I was picked to speak twice at SQL Saturday Rheinland and once at SQLGrillen – my very first talks at a public event outside of my regional user group. I was very honoured, so much fun and it was a pleasure to be with such great SQL persons from all around the world. After those events, I can’t stop it and raised my goals for 2018 and further events. (Like speaking at an international event or a non-german user group)

Why? What do I get back from the community?

As I had written above there is so much fun and pleasure and more important to learn from all of the so great community people. For some people it might a good marketing effect to be within the community but why not… they sharing their knowledge with you and making it possible that such events can be organised. Ok, there might be one point… if their session is more about their own products or company and not the topic… that’s not fair!

For me the main part is sharing my knowledge and being part of that #sqlfamily… getting known to all the other, helping other to encourage to do their first presentation or organizing a user group. I love what I am doing! And if I’m able to help just one person to find his/her own way or solution… it makes me happy. 

Communitytreffen SQLGrillen 2017 - German and European #sqlfamily

Björn arbeitet in Hamburg als Datenbank-Administrator und Head of Competence für MS SQL und mySQL. Er nimmt regelmäßig an den PASS Regionalgruppen Treffen in Hamburg, den Veranstaltungen der PASS wie SQLSaturday und SQLGrillen teil und er organisiert in Hamburg das Azure Meetup. Er interessiert sich neben den Themen rund um den SQL Server, Powershell und Azure für Science-Fiction, Snowboarden, Backen 😉 und Radfahren.

TSQL Tuesday #96: Community Menschen die meinen Weg beeinflusst haben

TSQL Tuesday #96: Menschen die meinen Weg beeinflusst haben

T-SQL Tuesday ist eine wiederkehrende Blog-Serie, die von Adam Machanic (b | t) gestartet wurde, jeden Monat ist ein Blogger Gastgeber für ein Thema rund um den SQL Server und jeder kann einen Blogbeitrag zu diesem bestimmten Thema schreiben. Diesen Monat ist Ewald Cress‏ (blog | twitter) unser Gastgeber und es geht um die Menschen, die uns in unserem Leben mit den Daten in der Community beeinflusst haben.

Ich habe lange Zeit keinen Bezug zu einer Community gehabt, in meiner Jugend war ich ehrenamtlich beim Deutschen Roten Kreuz und jetzt wieder mit „euch“ unterwegs.

Wer hat mich in den letzten Jahren beeinflusst?

Eigentlich fing alles mit dem PASSCAMP  2013 an… Ok, vielleicht schon etwas früher, als ich mich Mitte 2012 bei Twitter anmeldete und viel von einer #sqlfamily las.

Hier gilt es auf jeden Fall Brent Ozar zu erwähnen, der mich mit seinem Wissen und Blogbeiträge schon seit Jahren inspiriert und im täglichen DBA-Leben weiter bringt. Auch seine Beiträge zum Thema „Warum sollte ich einen Blog betreiben?“ zählen zu meinen immer wieder genannten Gründen. Leider habe ich ihn noch nicht persönlich treffen können, aber das kommt garantiert noch. Seine lustige Art und Weise komplizierte Dinge einem verständlich zu erklären ist einfach großartig!

Dann in 2013 war es mein Besuch beim PASSCamp und somit mein erster direkter Kontakt mit der deutschen sqlfamily aka SQLPass. Hier kann man nur die üblichen Verdächtigen aufzählen, die eigentlich immer auf solchen Veranstaltungen anwesend sind. => Oliver Engels, Tillmann Eitelberg, Kostja Klein, Niko Neugebauer und Andreas Wolter, um nur einige zu nennen… Ich fand deren Gruppendynamik genial und das ganze Miteinander… jeder kennt jeden, jeder lacht mit jedem und jeder redet mit jedem, keiner wird ausgegrenzt!

Da wollte ich mitmachen, irgendwie dazugehören… aber wie???

Henning L. @hlhr_dev Jun 2 thanks to all the speakers and specially to @sql_williamd for this great event #SQLGrillen

Also begann ich nach dieser Erfahrung mich mehr mit der PASS und deren Aktivitäten zu beschäftigen und fand unter anderem Cathrine Wilhelmsen, deren Community-Aktivitäten mich ebenfalls anspornten und aufzeigten, was ich wie anfangen muss => mehr Teilnahmen an lokalen bzw nationalen Aktivitäten der PASS. Dann kam das SQLGrillen von William Durkin und die Session von Andre Kamann über PoSh meets Ola Hallengren und das Zusammentreffen mit Andre Essing, welche mich dazu motivierte selber über meinen Schatten zu springen und als Sprecher in der PASS aufzutreten. Bei den folgenden zwei SQLSaturdays (Rheinland und München 2016) war ich dann erstmalig als Volunteer unterwegs und konnte so in die nationalen Aktivitäten der PASS Deutschland hinein schnuppern. Wie es der Zufall wollte oder das Netzwerk die Kugeln rollte, war der SQLSaturday in München der nächste Baustein in meiner „Community-Karriere“ und bescherte mir das Azure Meetup Hamburg.

In 2017 kamen dann die ersten öffentlichen Talks dazu, mal Firmenintern, mal in der PASS-RGV Hamburg, beim SQLGrillen 2017 (DANKE William) und gleich doppelt beim SQLSaturday Rheinland 2017 (Dank an Olli, Tillmann und Kostja)… all das in Verbindung mit meinen Blog- und Twitter-Aktivitäten sorgte dann dafür dass Microsoft mich mit dem MVP-Award auszeichnete.

Ich möchte auf diesem Wege also folgenden Menschen der #sqlfamily meinen Dank aussprechen:

Oliver Engels
Tillmann Eitelberg
Kostja Klein
Andre Essing
William Durkin
Andre Kamann

Ein besonderer Dank geht an Gabi Münster für die Unterstützung bei meinem ersten „großen“ öffentlichen Auftritt, im Endeffekt geht/ging es um den „Arschtritt“ um über meinen Schatten zu springen. Natürlich halfen auch viele Gespräche und Twitterkontakte mit zahlreichen anderen Community-Mitgliedern (Chrissy, Claudio, Rob, Dirk, Volker und vor allem immer wieder Conny!), um mich nun als Mitglied (zumindest der deutschen) SQLFamilie zu fühlen! VIELEN DANK! Weitere Ziele sind geplant für 2018 😉

Ein ganz besonderer Dank geht an meinen Team-Lead Thorsten Moeller, der mich immer wieder bei meinen Aktivitäten unterstützt und ein noch viel größerer Dank gilt meiner Frau, die diese Aktivitäten ebenfalls unterstützt und mir immer „den Rücken frei hält“!

Björn arbeitet in Hamburg als Datenbank-Administrator und Head of Competence für MS SQL und mySQL. Er nimmt regelmäßig an den PASS Regionalgruppen Treffen in Hamburg, den Veranstaltungen der PASS wie SQLSaturday und SQLGrillen teil und er organisiert in Hamburg das Azure Meetup. Er interessiert sich neben den Themen rund um den SQL Server, Powershell und Azure für Science-Fiction, Snowboarden, Backen 😉 und Radfahren.

PASSCamp 2017 – spannende Agenda in allen Tracks

Seit dem Wochenende gibt es endlich einen offiziellen Zeitplan (siehe PASS Newsletter) für das diesjährige PASSCamp in Seeheim – veranstaltet von der PASS Deutschland e.V., den ich euch hier nicht vorenthalten möchte. Das diesjährige PASSCamp steht ganz unter dem Motto „Aufgeschlaut du werden wirst!“, denn auf keiner deutschen Veranstaltung ist die Dichte der Microsoft Mitarbeiter, Microsoft MVPs und Matter Experts zum Thema Dataplatform höher als auf dem PASSCamp. Diese Jahr geht es um die „Hype“-Themen wie MSSQL Operation Studio, den neuen PowerBI Report Server oder Azure Machine Learning.

Montag 04.12.2017
Start Stop Time Session DBA DEV BI InformationServices
18:00 20:00 02:00 Kick of session Microsoft Team: Microsoft Data Platform Next Version: The Strategy Session
20:00 Dinner seeheim´s eat & meet

 

Dienstag 05.12.2017
Start Stop Time Session DBA DEV BI InformationServices
08:00 Breakfast
09:00 09:45 00:45 Get-Ready & Opening Session Housekeeping & Organisation Kick Off
09:45 10:00 Splitting into groups
10:00 12:00 02:00 Session 1 WD/AK/RS: A day with Cloud DBAs on Query Store, PowerShell and more CK: Cosmos DB & Azure Functions WS: Power BI Report Server & Premium OE/TE: – Data Quality mit AZ ML Workbench und ADLA
12:00 13:30 Lunch
13:30 14:45 01:15 Session 2 WD/AK/RS: A day with Cloud DBAs on Query Store, PowerShell and more CK: Cosmos DB & Azure Functions WS: Power BI Report Server & Premium OE/TE: – Data Quality mit AZ ML Workbench und ADLA
14:45 15:00 Break
15:00 16:15 01:15 Session 3 WD/AK: PowerShell for DBAs CS: Block Chain 2.0 VH/FG: Power BI Update 2017 SD: Machine Learning mit AZ ML Workbench
16:15 16:30 Pause & Snack im Foyer
16:30 17:30  01:00 Session 4 WD/AK: PowerShell for DBAs CS: Block Chain 2.0 VH/FG: Power BI Update 2017 SD: Machine Learning mit AZ ML Workbench
18:00 18:30 Welcome reception & Late Session Rob’s Beer & Chips & PowerShell Session
20:00 Dinner seeheim´s eat & meet

 

Mittwoch 06.12.2017
Start Stop Time Session DBA DEV BI InformationServices
08:00 Breakfast
09:00 10:15 1:15 Session 5 BP: SQL Azure DB & Managed Instance BK: IoT Development Full Day TM: R for Business Intelligence Freaks OE/TE/WS: SSIS vNext (Scaleout & Everest)
10:15 10:30 Break
10:30 12:00 1:30 Session 6 BP: SQL Azure DB & Managed Instance BK: IoT Development Full Day TM: R for Business Intelligence Freaks OE/TE/WS: SSIS vNext (Scaleout & Everest)
12:00 13:30 Lunch
13:30 14:45 01:15 Session 7 UR: Multi-Server Administration Hands On BK: IoT Development Full Day IF: Power BI „M“ Deep Dive für BI Pros SK: Azure Data Factory Version 2
14:45 15:00 Break
15:00 16:15 01:15 Session 8 UR: Multi-Server Administration Hands On BK: IoT Development Full Day IF: Power BI „M“ Deep Dive für BI Pros SK: Azure Data Factory Version 2
16:15 16:30 Pause & Snack im Foyer
16:30 17:30  1:00 Session 9 WD/AK: PowerShell for DBAs BK: IoT Development Full Day IF: Power BI „M“ Deep Dive für BI Pros OE/TE: Azure Data Catalog & Common Data
Services
18:00 18:30 Late Session PH: Hybride Dataplatform: Erfahrungen, Anekdoten, Wissenswertes
20:00 Dinner seeheim´s eat & meet

 

Donnerstag 07.12.2017
Start Stop Time Session DBA DEV BI InformationServices
08:00 Breakfast
09:00 10:15 1:15 Session 10 FG: SQL Server Linux & Docker TM: Power BI Custom Visual Development MR: Power BI und IoT BW: BIML for ADF & Performance Evaluation
10:15 10:30 Break
10:30 12:00 1:30 Session 11 FG: SQL Server Linux & Docker TM: Power BI Custom Visual Development MR: Power BI und IoT BW: BIML for ADF & Performance Evaluation
12:00 13:30 Lunch
13:30 14:45 01:15 Session 12 NN: Cosmos DB for DBAs VH/FG: Power Embedding GM: Azure Analysis Services CK/MT:Die Cognitiven & Bots Datafreaks
14:45 15:00 Pause & Snack im Foyer
15:00 16:15 01:15 Session 13 NN: Cosmos DB for DBAs VH/FG: Power Embedding GM: Azure Analysis Services CK/MT:Die Cognitiven & Bots Datafreaks
16:15 16:30 Closing Session
16:30 Ende

Damon wünscht viel Spaß auf dem PASSCAMP 2017

Speaker-Zuordnung
AK: Andre Kamman (MVP) IF: Imke Feldmann (MVP) PH: Patrick Heyde (MS) WS: Wolfgang Strasser (MVP)
BK: Ben Kettner (MS pTSP) MR: Markus Raatz (MS pTSP) RK: Ralph Kemperdick (MS)
BW: Ben Weissman MT: Marcel Tilly (MS Research) RS: Rob Sewell (MVP)
BP: Björn Peters (MVP) MV: Martin Vach (MS) TE: Tillmann Eitelberg (MVP)
CK: Constantin Klein (MVP) NN: Niko Neugebauer (MVP) TM: Tom Martens
CS: Christoph Seck (MS pTSP) OE: Oliver Engels (MVP & MS pTSP) UR: Uwe Ricken (MVP)
FG: Frank Geisler (MVP & MS pTSP) SD: Sascha Dittmann (MS) VH: Volker Hinz (MS)
GM: Gabi Münster (MVP) SK: Steffan Kirner (MS pTSP) WD: William Durkin (MVP)

Das ist der aktuelle (vorläufige) Schedule des PASSCamp 2017 und kann sich wirklich sehen lassen, sagenhafte 12 MVPs sind vertreten und können euch den „heißen Scheiß“ näher bringen.

Anmelden könnt Ihr Euch wie immer: http://www.sqlpasscamp.de/anmeldung.html

PS: Ich selber habe mich immer geärgert, warum es kurz vor dem PASSCamp noch immer keine vollständiger Speaker-Liste und/oder Themenliste gab… ich habe mal nachgefragt… weil man den „real hot shit“ vom PASS Summit Anfang November abwarten möchte, damit auch alle frischen Themen, Keynotes und Announcements tatsächlich auf dem PASSCamp abgedeckt werden !!!

In einem Blogpost aus 2016 habe ich schon einmal ein Video vom PASSCamp 2015 verlinkt, damit ihr einen ersten Eindruck bekommt was euch dort erwartet.

Björn arbeitet in Hamburg als Datenbank-Administrator und Head of Competence für MS SQL und mySQL. Er nimmt regelmäßig an den PASS Regionalgruppen Treffen in Hamburg, den Veranstaltungen der PASS wie SQLSaturday und SQLGrillen teil und er organisiert in Hamburg das Azure Meetup. Er interessiert sich neben den Themen rund um den SQL Server, Powershell und Azure für Science-Fiction, Snowboarden, Backen 😉 und Radfahren.

Unterwegs zum SQL Saturday Rheinland #605 – mein erstes Mal

Mittlerweile ist der SQL Saturday Rheinland schon einige Zeit her und ich komme erst jetzt zum Schreiben meines Blogbeitrages… es war einfach zu viel in den letzten Tagen bzw Wochen, beruflich war viel los, mehrere Termine zu Azure und andere Artikel waren in der Pipeline (die thematisch besser in meinen Alltag und aktuellen Lernplan passten). Aber aufgeschoben ist nicht aufgehoben, jetzt also mein Beitrag zum SQL Saturday Rheinland, der mittlerweile zum 5 Mal erfolgte, was auch in Zusammenarbeit mit der Hochschule Rhein-Sieg großartig zelebriert wurde. Im letzten Jahr war ich „nur“ als Teilnehmer und Voluntär dabei, dieses Jahr ging ich noch einen Schritt weiter und hatte mehrere Sessions eingereicht und wurde als Sprecher („Azure SQL Server und Azure SQL Database Automation“) ausgewählt. Bei einem Treffen mit Kostja Klein und Tillmann Eitelberg bei Microsoft wurde ich auch noch gefragt, ob ich mir vorstellen könne im 101-Track einen Vortrag zur SQL Server Installation zu halten… also durfte ich auf meinem ersten SQL Saturday als Sprecher gleich zweimal ran! (Vielen Dank dafür!)

SQL Saturday Rheinland - Fachschaft grillt für die Teilnehmer - Foto von Dirk Hondong - Flickr

Wie bereits im Vorjahr begann mein SQL Saturday Rheinland bereits am Freitag sehr früh, denn ich wollte am Azure Precon Vortrag von Scott Klein teilnehmen… und natürlich am Speakers-Dinner. Also klingelte der Wecker bereits um 3:30, damit ich rechtzeitig um 4:00 auf der Autobahn sein konnte, nun hieß es etwa 4 Stunden bis nach St. Augustin ohne große Staus zu bewältigen.

Der Precon-Day mit Azure Guru – Scott Klein

Dank guter Planung war ich pünktlich und konnte vor Beginn noch die ersten Gespräche mit anderen bekannten Anwesenden führen, unter dem wachsamen Auge der Kamera von DatamonsterTV fing Scott dann an uns die Neuerungen bzw zahlreicher Highlights der Azure Dataplatform näherzubringen. Vielen Dank für die großartigen Einblicke und Demos, ich habe viel neues mitgenommen und einige Details zu bereits bekannten Themen erfahren. Der Tag ging schneller voran als befürchtet, die Pizza zum Mittag schmeckte lecker, die geek-typischen Snacks in den Pausen ebenfalls. Zahlreiche interessante Gespräche in den Pausen und „lustige“ ungeplante Kennenlernen („du machst auch ein Azure Meetup“ – es waren 4 Azure Meetups anwesend) taten ihr übriges zu einem kurzweiligen Tag.

Nach dem Vortrag war vor dem Vorbereiten, wie auch bereits in meinem ersten Jahr beim SQL Saturday Rheinland hatte ich mich auch dieses Jahr wieder für die Vorbereitungen und das Aufbauen gemeldet… ich kann das nur jedem empfehlen, man lernt alle frühzeitig kennen und es macht riesigen Spaß…

SQL Saturday Rheinland - Taschenpacken - Foto von Dirk Hondong - FlickrSQL Saturday Rheinland - Taschenpacken - Foto von Dirk Hondong - Flickr

Das Speakers-Dinner – ein Ausflug mit der SQLFamily

Am Freitag Abend findet in der Regel immer ein Treffen aller Speaker statt, so dass man mal alle anderen Sprecher kennenlernen kann und meist ist es dann auch wie bei einem Familientreffen. Die meisten kennen sich sehr gut, was daran liegt, dass es einen „harten“ Kern an Sprechern gibt, die sich immer wieder auf Veranstaltungen wie SQLSaturday oder anderen Usergruppen-Treffen sehen, die SQLFamily ist schließlich nicht so groß 😉 Vielen Dank an dieser Stelle an den You-Rock-Sponsor Solisyon, der unter anderem auch zu diesem entspannten und leckeren Abend beigetragen hat.
Ich möchte euch auch nicht vorenthalten wo wir diesen netten Abend verbracht haben und zwar waren wir im Weingut Sülz in Königswinter, sehr idyllisch an einem Weinhang gelegen und sehr gut zu Fuß von der Straßenbahn zu erreichen. Die verschiedenen Flammkuchen und anderen Speisen sowie natürlich der Wein waren super lecker, auf jeden Fall ist diese Lokalität sehr zu empfehlen… auch für Spaziergänger sehr gut zu erreichen, laut Auskunft von Tillmann führt ein schöner Wanderweg direkt durch den Weinanbau.

SQL Saturday Rheinland - Speakerdinner auf dem Weingut Sülz - Foto von Dirk Hondong - Flickr

Der eigentlich SQL Saturday Rheinland

Ich kann nur jedem „Erstling“ empfehlen, besucht die Veranstaltung erst einmal vorher als Teilnehmer => macht euch vertraut mit der Umgebung und den Abläufen, lernt vielleicht sogar schon mal die Organisatoren kennen, mir hat dies entscheident geholfen die Nervosität abzubauen. Also wie bereits geschrieben, war dies mein erster SQL Saturday als Sprecher und dann auch gleich zwei Sessions (Danke nochmals an Tillmann, Oliver und Kostja für das Vertrauen!). Es ging also los mit meinem Vortrag über „Wie installiert man einen SQL Server“ im 101-Track, also eigentlich gedacht für SQL Server Einsteiger und/oder die Studenten, aber auch erfahrenere Teilnehmer konnten noch was mitnehmen – wie mir einige hinterher erzählten. Die Session wird im Laufe des Jahres dann auch im DatamonsterTV zu sehen sein. Meine Slides findet ihr hier im Blog => https://www.sql-aus-hamburg.de/speaker-sessions/.

Meine zweite Session durfte ich dann im großen Audimax zum Thema „Azure SQL Server und Azure SQL Database und deren Automation mit Powershell“ halten, auch diese Runde mit all ihren Demos lief recht reibungslos und hat mir viel Spaß gemacht, ein wenig mehr Zeit wäre schön gewesen (aber warum rede ich auch soviel…) Nach meinen beiden Sessions konnte ich mir dann in aller Ruhe die anderen Vorträge aussuchen und entspannt geniessen, so war ich zum Beispiel bei Gabi Münster zum Thema „Women in Technology“ oder Andre Kamann zu „SQL Server and Docker. What, How and Why“. Es gab für jeden garantiert ein Thema von dem er etwas mit nach Hause nehmen konnte und wem das nicht reichte konnte sich an den zahlreichen Informationsständen der Sponsoren über deren Produkte oder Dienstleistungen erkundigen.

Nachdem alle Vorträge gehalten waren, ging es zu einem weiteren Highlight des SQL Saturday Rheinland, dem Raffle… jeder Teilnehmer erhielt im Laufe des Tages durch Gespräche mit den Sponsoren die Möglichkeit einen von mehreren Preisen zu gewinnen, so verloste die PASS Deutschland e.V. zum Beispiel eine X-Box oder Solisyon ein Carrerabahn-Set.

SQL Saturday Rheinland #605

Das Abschluss-Grillen mit guten Freunden

Am Abend konnten alle Teilnehmer bleiben und sich durch die Fachschaft der Hochschule Rhein-Sieg begrillen lassen, dazu gab es diverse Getränke zu wirklich moderaten Preisen zu Gunsten der Fachschaft. Es war lecker, unterhaltsam, kurzweilig und sehr lustig mit den zahlreichen Anwesenden, das kann gerne wiederholt werden! Der Abend fand einen gemütlichen und geselligen Ausklang mit einigen Sprechern in der Hotelbar, auch dieses Zusammensitzen trägt sehr zum „Wir“-Gefühl bei, was ich während dieses SQL Saturday Rheinland empfunden habe. Ich hatte eigentlich nie das Gefühl, dass ich der „Neue“ bin sondern schon lange dazu gehöre und kein „Fremdkörper“ bin, die SQLFamily ist sehr offen für neue Gesichter und freut sich immer über engagierte Sprecher.

Vielen Dank auch an Dirk Hondong, der wieder sehr viele großartige Bilder des SQL Saturdays geschossen hat und derer ich mich hier fleißig bedient habe!

Bilder von Dirk findet ihr auf Flickr, in seinen Blog schreibt er über den SQL Server und auf seinem Twitter Account teilt er gerne vorab schon mal ein paar Bilder von Veranstaltungen der SQLFamily.

Björn arbeitet in Hamburg als Datenbank-Administrator und Head of Competence für MS SQL und mySQL. Er nimmt regelmäßig an den PASS Regionalgruppen Treffen in Hamburg, den Veranstaltungen der PASS wie SQLSaturday und SQLGrillen teil und er organisiert in Hamburg das Azure Meetup. Er interessiert sich neben den Themen rund um den SQL Server, Powershell und Azure für Science-Fiction, Snowboarden, Backen 😉 und Radfahren.

Azure Analysis Services – Powershell Automation im Tagesgeschäft

Im Rahmen des SQLGrillen 2017 hatte ich das Vergnügen mit Gabi Münster einen Vortrag über Azure Analysis Services und deren Automation halten zu dürfen. Diese Inhalte möchte ich euch nicht vorenthalten und im Folgenden näher erläutern, wobei es nicht um die Prozessautomatisierung der Datenbereitstellung geht sondern um die Automatisierung des Deployments bzw des eigentlichen Services, also Möglichkeiten wie man die Services dem Tagesgeschäft entsprechend optimal einsetzen kann. Die hierbei zum Einsatz kommenden Powershell Skripte habe ich versucht so einfach wie möglich zu halten um allen ein Verständnis zu ermöglichen.

Ausgangslage für die Powershell Automation

Sicherlich gibt es zahlreiche Möglichkeiten um die unterschiedlichen Funktionen, Services und VMs in Azure zu deployen oder bearbeiten, ob nun Azure Automation grafisch, als Runbook oder mit der Azure Command Line… ich habe mich als Ausgangslage dafür entschieden, dass die meisten im normalen Tagesgeschäft (meist on-prem) einen Server habe, der die Job-Steuerung übernimmt, dieser dient mir in meinen Beispielen als Ausgangspunkt für alle Skripte. Als weitere Voraussetzung nutze ich eine Active Directory (AD) Applikation und einen Service Principal um mich bzw meine Skripte an Azure anzumelden. Hierbei habe ich mich an die Beschreibung von Christos Matskas gehalten, die recht gut erläutert wie man sich einen Azure Automation Login erstellt.

Azure Analysis Services Automation programmieren

Diesen Login verwende ich nun entweder als Klartext oder als „INCLUDE“ innerhalb meiner Skripte, um das Skript bei jeder Ausführung an Azure anzumelden.

$azureAccountName = "1234567-1234-1234-1234-012345678912" 
$azurePassword = ConvertTo-SecureString "Passwort@2017" -AsPlainText -Force 
$psCred = New-Object System.Management.Automation.PSCredential($azureAccountName, $azurePassword) 
Add-AzureRmAccount -Credential $psCred -ServicePrincipal -TenantId "1234567-1234-1234-1234-012345678912"

Was kann man nun automatisieren?

Mit Powershell kann man natürlich auch das Prozessieren der Datenbanken/Cubes automatisieren, aber darum soll es hier nicht gehen, sondern mehr darum was man als DBA oder DevOps „regelmäßig“ machen kann/muss. Zum Beispiel benötigt man im Laufe des Tages nicht unbedingt die gleiche Leistung wie in der Nacht während der Verarbeitung. On-premise bleibt einem nichts anderes übrig als eine Hardware zu kaufen, die alle möglichen Lastzustände abdecken kann, in Azure ist das ein wenig anders, hier kann man entsprechend skalieren. Was unter Berücksichtgung eines gewissen Kostendrucks zu einem positiven Eindruck im Management führen kann, wenn man diesem erklären kann, dass die Kosten für eben diesen Azure Analysis Service durch Automatisierung variabl gestaltet werden kann. Aber fangen wir einmal vorne an…

Entsprechend der vorhandenen Umgebung oder der Konzeptionierung der Datenaufbereitung kann man sich zwischen horizontaler und vertikaler Skalierung entscheiden, bei der vertikalen Skalierung benötigen wir nur einen Azure Analysis Service, den wir nach Bedarf „größer“ oder „kleiner“ machen können. Bei horizontaler Skalierung könnte man sich zum Beispiel zu bestimmten Zeitpunkten weitere Azure Analysis Services hinzu deployen. Oder wenn man eine Testumgebung nur in bestimmten Zyklen braucht, dann kann man diese eben genauso automatisiert erstellen.

Deployment von Azure Analysis Services

Um den Azure Analysis Service neu oder weitere zu deployen benötigen wir den Powershell Befehl „New-AzureRmAnalysisServicesServer„, mit Anmeldung und weiterer Parametrisierung ergibt sich folgender Ablauf bzw folgendes Script:

  • Anmeldung an Azure
  • Variablen deklarieren (SubscriptionID, ResourceGroupName, AAS-Name, etc)
  • Prüfen ob die Ressource-Gruppe existiert, ggfs erstellen.
  • Prüfen ob der anzulegende Azure Analysis Service bereits existiert, ggfs erstellen
    • Angabe von ResourceGroupName, AAS-Name, Performance-Klasse und der EMail des Administrators
$myResourceGroupName = 'SQLGrillen2017'
$mySubscriptionID = '1234567-1234-1234-1234-012345678912'
$myLocation = 'West Europe'
$myAAServerName = 'asbeer01'

Set-AzureRmContext -SubscriptionId $mySubscriptionID

Get-AzureRmResourceGroup -Name $myResourceGroupName -ev notPresent -ea 0
if ($notPresent) {
    New-AzureRmResourceGroup -Name $myResourceGroupName -Location $myLocation
} else {
    write-host "ResourceGroup already exists"
}

Get-AzureRmAnalysisServicesServer -ResourceGroupName $myResourceGroupName -Name $myAAServerName -ev notPresent -ea 0
if ($notPresent) {
    New-AzureRmAnalysisServicesServer -ResourceGroupName $myResourceGroupName -Name $myAAServerName -Location $myLocation -Sku "S0" -Administrator "your-admin-mailadress@test-url.de"
} else {
    write-host "AAS Server already exists"
}

Die Ausführung dauert nicht wirklich lange, aber ein wenig Geduld muss schon aufbringen. (2-3 Minuten)

Geduld

Wieviel Leistung wann in Azure Analysis Services

Nun gibt es im Tagesverlauf oder Verlauf eines Monats unterschiedliche Last-Situationen, in der Nacht während der Verarbeitung wird mehr Leistung benötigt, als tagsüber wenn die Mitarbeiter nur ihre Reports ziehen oder Analysen machen. Weitere Möglichkeit sind der Monatsende, das Quartalsende oder der Jahresabschluss, hier wird wesentlich mehr Performance gebraucht als an anderen Tagen, wobei man on-Premise diese Kapazität von Anfang an bedenken muss und die Maschine entsprechend im voraus darauf auslegen, damit alle erdenklichen Last-Verhalten abgedeckt werden. Als Azure Analysis Services ist dies nun wesentlich einfacher, denn Azure bietet die Möglichkeit auf relativ einfache Art und Weise die Leistung des Service an die auftretende Last anzupassen. Auch hierzu benötigt man nur den Powershell Befehl „Set-AzureRmAnalysisServicesServer„, mit Anmeldung und weiterer Parametrisierung ergibt sich auch hier folgendes Script:

  • Anmeldung an Azure
  • Variablen deklarieren (SubscriptionID, ResourceGroupName, AAS-Name, etc)
  • Prüfen ob die Ressource-Gruppe existiert, ggfs erstellen.
  • Prüfen ob der anzulegende Azure Analysis Service existiert, um diese hoch oder runter zu skalieren
    • Angabe von ResourceGroupName, AAS-Name, neuer Performance-Klasse
$myResourceGroupName = 'SQLGrillen2017'
$mySubscriptionID = '1234567-1234-1234-1234-012345678912'
$myLocation = 'West Europe'
$myAAServerName = 'asbeer01'

Set-AzureRmContext -SubscriptionId $mySubscriptionID

# Upscale Azure Analysis Services
Get-AzureRmAnalysisServicesServer -ResourceGroupName $myResourceGroupName -Name $myAAServerName -ev notPresent -ea 0
if ($notPresent) {
    write-host "AAS Server does not exists"
} else {
    Set-AzureRmAnalysisServicesServer -Name $myAAServerName -ResourceGroupName $myResourceGroupName -SKU "S4"
}

# Downscale Azure Analysis Services
Get-AzureRmAnalysisServicesServer -ResourceGroupName $myResourceGroupName -Name $myAAServerName -ev notPresent -ea 0
if ($notPresent) {
    write-host "AAS Server does not exists"
} else {
    Set-AzureRmAnalysisServicesServer -Name $myAAServerName -ResourceGroupName $myResourceGroupName -SKU "S2"
}

Über das Skalieren des Azure Analysis Services kann man nun auch die Kosten reduzieren, da in der Nutzungsärmeren Zeit die benötigte Leistungsklasse verwendet wird und nur wenn die Verarbeitung läuft auf ein performanteres PerformanceModel skaliert. Dieses Skalieren funktioniert online, so dass man nicht einmal mit einer Unterbrechung des Services rechnen muss.

Resize Azure Analysis Services Demo

Kann man das auch abschalten?

In manchen Umgebungen und Lösungen ergibt sich unter Umständen auch die Notwendigkeit oder Möglichkeit den Azure Analysis Services komplett „abzuschalten“, entweder man hat horizontal skaliert und benötigt unter Tage kein Service oder die Solution gibt es her, dass nach der Verarbeitung kein Azure Analysis Service mehr benötigt wird. Hierzu bietet die Azure Powershell Automation ebenfalls ein Cmdlet (Suspend/Resume), mit dem man den Service pausieren bzw wieder starten kann. Da man dieses Skript nur einsetzt, wenn ein AAS bereits vorhanden ist, verzichte ich hier auf das Überprüfen der Ressourcen-Gruppe und prüfe nur, ob der Analysis Service mit dem gegebenen Namen tatsächlich vorhanden ist.

$myResourceGroupName = 'SQLGrillen2017'
$mySubscriptionID = '1234567-1234-1234-1234-012345678912'
$myLocation = 'West Europe'
$myAAServerName = 'asbeer01'

Set-AzureRmContext -SubscriptionId $mySubscriptionID

# Pause AAS
Get-AzureRmAnalysisServicesServer -ResourceGroupName $myResourceGroupName -Name $myAAServerName -ev notPresent -ea 0
if ($notPresent) {
    write-host "AAS Server does not exists"
} else {
    Suspend-AzureRmAnalysisServicesServer -Name $myAAServerName -ResourceGroupName $myResourceGroupName
}

# Resume AAS
Get-AzureRmAnalysisServicesServer -ResourceGroupName $myResourceGroupName -Name $myAAServerName -ev notPresent -ea 0
if ($notPresent) {
    write-host "AAS Server does not exists"
} else {
    Resume-AzureRmAnalysisServicesServer -Name $myAAServerName -ResourceGroupName $myResourceGroupName
}

Björn arbeitet in Hamburg als Datenbank-Administrator und Head of Competence für MS SQL und mySQL. Er nimmt regelmäßig an den PASS Regionalgruppen Treffen in Hamburg, den Veranstaltungen der PASS wie SQLSaturday und SQLGrillen teil und er organisiert in Hamburg das Azure Meetup. Er interessiert sich neben den Themen rund um den SQL Server, Powershell und Azure für Science-Fiction, Snowboarden, Backen 😉 und Radfahren.