Friday, April 18, 2014

Power Map Updates

Microsoft just announced on the Power BI blog that the April update for Power Map is available for all Office 365 subscribers. This update adds the capability to add sound to any Power Map videos you export out of Power Map. They have also added some Geocoding updates that are detailed on the blog post as well.

The biggest change that is mentioned is that the Power Map Preview that has been available as a separate download for Excel 2013 will no longer expire on May 31, 2014! They plan to put out an updated version of this standalone add-in that will not expire in May. They are still recommending that this add-in not be used in production environment, but this does give you the capability to use Power Map without an Office 365 account in Excel 2013. Not sure what this means feature wise for Power Map Preview, my guess is that they will not keep it up-to-date, for that you will have to get an Office 365 subscription (highly recommended by me, as I have the Home subscription that allows for 5 desktop installs along with 5 tablet and the new iPad versions of Excel, Word and PowerPoint).

Accelerate Your Insights

If you missed the live stream of the SQL Server 2014 launch event in San Francisco earlier this week, it is now available for on-demand viewing on Microsoft's Accelerate Your Insights page. Great overview of the new data platform and BI updates that are all part of this new release of SQL Server and other platform updates. Interesting news that came out of this event was the re-branding of PDW (Parallel Data Warehouse) as APS (Analytics Platform System) as it now is not limited to just hosting a PDW region on the appliance but also a Hadoop region on the same appliance. This should help to sell these appliances even more as you can use the same appliance for both "un-structured" and structured data and be able to do analysis across both regions using the same tools we are used to including Excel.

The biggest feature that is being focused on for SQL Server 2014 is having In-Memory available on the entire platform and the huge performance improvements that brings. In-Memory was first introduced in SQL Server 2012 but was a read-only index, now it can be clustered and fully update-able, which makes it a huge change to how you can access the data in the databases. Looking forward to working with clients to enable these features as it really does push SQL Server to the forefront of enterprise databases.

Note: If you have any issues with the videos not streaming smoothly (as I had) you can just right click on the video window and save the MPEG-4 video files locally.

Thursday, April 10, 2014

SQLSaturday #297

SQLSaturday #297 in Colorado Springs is this coming Saturday! If you haven't registered yet, why not? It's a free event that has the best SQL Server professionals traveling from all over to present and attend this awesome event. If you able to make into Colorado Springs by Saturday, you should be at the event! I will be presenting "Capture Change and Apply it With Change Data Capture & SSIS" at 3:15pm (keep your eyes on the schedule page or use the Guidebook app to track any changes to the schedule). I'm looking forward to seeing everyone this Saturday, make sure you register and support all of the sponsors of this event when you are there.

Below are some more details from Chris Shaw's blog about the food drive that is also being done as part of the event:
What we are asking is that when you come to the event on April 12th that you bring with you food items that you would like to donate the more items that you bring the better your odds are in taking home one of these awesome SWAG items. We will soon be sending everyone who is signed up more details on individuals can participate in our food drive. You don’t have to bring any food items to be registered for the giveaways and there will be opportunities to participate in our Data-Rodeo for additional chances to win. Why a Data-Rodeo you ask? This year’s theme in going to be centered around the old west, our event will be taking place in a historical building that is over 100 years old, in the heart of the oldest part of town.
See y'all on Saturday!

Wednesday, April 2, 2014

SSDT-BI for Visual Studio 2013

Microsoft quietly released SSDT-BI for Visual Studio 2013 as a separate download a couple of days ago: http://www.microsoft.com/en-us/download/details.aspx?id=42313. No blog post or anything yet that goes through all of the features, so my assumption is it just adds the same functions that SSDT-BI for Visual Studio 2012 does for the latest version of Visual Studio (at least until later this year when Visual Studio 2014 is released). I also assume that this adds support for SQL Server 2014 BI, same as the previous updates for SSDT have done now for Visual Studio 2012 and 2013.

Just for review, SSDT-BI is for SSAS, SSIS and SSRS development. For database projects, they have now built that functionality back into all versions of Visual Studio 2013 (available as a separate download for Visual Studio 2012) and can be updated via Visual Studio 2013 directly. For more updates on SSDT, make sure you follow the SQL Server Data Tools Team blog.

Update: At about the same time I posted this Kasper de Jonge posted about SSDT-BI for Visual Studio 2013. Biggest disappointment is that there is NO backwards compatibility with SSIS 2012 or SSIS 2008R2 projects, so if you are only doing SSIS development on previous versions of SQL Server, don't jump on this upgrade just yet. No explanation was given for this incompatibility or if it will be fixed in a future update. Just keeps getting more and more complicated.

Wednesday, March 26, 2014

SSDT SQL Server 2014 Update

Microsoft has announced that a new version of SSDT for Visual Studio 2012 is now available for download and that an update for Visual Studio 2013 will be released through the update tools built into VS 2013. This new version adds support for SQL Server 2014, which will be available next Tuesday (April 1st). Along with support for SQL Server 2014 there are some new features in SSDT, including:

  • Filtering Data when using View Data - filter the rows shown and even hide columns along with applying aliases to columns and sorting the data by columns
  • Azure Integration - Add and connect to Azure databases without needing to setup firewall rules or other complicated network setup
  • Change T-SQL Query Connections - Change the database that the query window is current attached to so that you can execute the same query against another database without having to disconnect and connect

There are few other new features that I have not mentioned, make to check out the SQL Server Data Tools Team blog for more details!

This release is for the data tools portion of SSDT only, SSDT-BI for SSAS, SSIS and SSRS development will be released separately at a later date.

Tuesday, March 25, 2014

Encryption in SQL Server (Part 4)

Finally, the last part in my Encryption in SQL Server series that I started at the end of 2013! If you have not been following along, please see Part 1, Part 2 and Part 3 before reading this post.

Now that you have data in your databases encrypted and hopefully you have automatic backups setup against these databases, you are probably wondering how you can restore these backups while maintaining the encryption. If you are restoring to the same server and you have not made any changes to the Service Master Key (SMK) it will all work seamlessly.

If however you are restoring the backup or attaching a database with encryption to another server that does not have the same SMK you will need to take a couple of extra steps to get the encrypted data visible and encrypt new data working. Keep in mind that the SMK is the key that is generated at the time the SQL Server instance is installed on the server and you have no control over how that key is created. This SMK is used as part of the whole encryption setup on the server, so you may think that all is lost, but Microsoft has put in place some commands that will still allow you to access the encrypted data and encrypt new data into that restored/attached database.

After restoring/attaching the database to the new instance, run the commands below in order.

Restore Service Master Key (SMK), but only if this instance has no other encryption currently setup on it. If you do have encryption already on this instance, just skip this step and move on to restoring the DMK and modifying it to use the SMK (based on backup sample shown in Part 1):
RESTORE SERVICE MASTER KEY
    FROM FILE = 'C:\localhost_SMK.smk'
    DECRYPTION BY PASSWORD = 'ADa329wopkj*&ER.slkqksl';
http://technet.microsoft.com/en-us/library/ms187972(v=sql.105).aspx
 Restore the Database Master Key (DMK):
RESTORE MASTER KEY FROM FILE = 'C:\localhost_AdventureWorks_DMK.dmk'             DECRYPTION BY PASSWORD = 'U982LKJOWlkslpq&^@#lskjnkxOPx.w'                     ENCRYPTION BY PASSWORD = 'Ils20*(LKjqwnslqo372,cklweLKHJn' 
http://technet.microsoft.com/en-us/library/ms186336(v=sql.105).aspx
Next we want to alter the DMK to use the SMK for encryption, otherwise the DMK will have to opened every time we want to do any encryption/decryption:
OPEN MASTER KEY
    DECRYPTION BY PASSWORD = 'Ils20*(LKjqwnslqo372,cklweLKHJn';
ALTER MASTER KEY
    ADD ENCRYPTION BY SERVICE MASTER KEY;
CLOSE MASTER KEY;
http://technet.microsoft.com/en-us/library/ms186937(v=sql.105).aspx
Now we need to create the Asymmetric and Symmetric Keys that we created previously in Part 2, in the same way they were created previously as we could not back up these since they were not created in certificates (if you did decide to create these keys with certificates and you have the back ups, then you can just restore the certificates):
IF NOT EXISTS
 (SELECT * FROM sys.asymmetric_keys WHERE [name] = 'AdventureWorks_AsymKey')
 CREATE ASYMMETRIC KEY AdventureWorks_AsymKey WITH ALGORITHM = RSA_2048;
http://technet.microsoft.com/en-us/library/ms188357(v=sql.105).aspx 
IF NOT EXISTS
    (SELECT * FROM sys.symmetric_keys WHERE [name] = 'AdventureWorks_SymKey')
    CREATE SYMMETRIC KEY AdventureWorks_SymKey
        WITH KEY_SOURCE = 'I82xskoiw820KOW>282kxow',
            ALGORITHM = AES_256,
            IDENTITY_VALUE = 'w,xi292XWE82S92iqoxl*&23'
        ENCRYPTION BY ASYMMETRIC KEY AdventureWorks_AsymKey;
http://technet.microsoft.com/en-us/library/ms174430(v=sql.105).aspx 
It is important that you use the same KEY_SOURCE and IDENTITY_VALUE when re-creating the Symmetric Key as this and the Asymmetric Key were used to do the initial encryption of the back-up and if these values are not the same the decryption of the previous data will not work.
Once all of these steps are complete you will be able to use the same commands we used in Part 3 to verify that the decryption works correctly:
SELECT Phone_encrypt, Phone,
CONVERT(nvarchar(25),DecryptByKeyAutoAsymKey(AsymKey_ID('AdventureWorks_AsymKey'), NULL, Phone_encrypt, 0)) AS 'CustomerPhone_decrypted' FROM Person.Contact;
http://technet.microsoft.com/en-us/library/ms365420(v=sql.105).aspx
OPEN SYMMETRIC KEY AdventureWorks_SymKey DECRYPTION BY ASYMMETRIC KEY AdventureWorks_AsymKey; 
SELECT Phone_encrypt, Phone, CONVERT(nvarchar(25),DecryptByKey(Phone_encrypt))) AS 'CustomerPhone_decrypted' FROM Customer.Contact; 
CLOSE SYMMETRIC KEY AdventureWorks_SymKey; 
http://technet.microsoft.com/en-us/library/ms181860(v=sql.105).aspx
With these steps and the previous posts in this series you should be able to take full advantage of encryption in SQL Server and have full control of that encrypted data on any of your servers/instances. With all of the data breaches that are occurring today it is even more important for you to make sure any sensitive information you have in your database is protected and this is a great way to do it in SQL Server without causing a major impact to you existing systems.

Tuesday, March 18, 2014

SQL Server 2014 RTM Announced

Microsoft officially announced today on the SQL Server Blog that SQL Server 2014 will be released on April 1st! Always find it funny that Microsoft will release products on April Fools Day, but to them I guess it is just the beginning of another month and quarter for them. For those that are just getting upgraded to SQL Server 2012, now you will already be one version down after April 1st.

In past years this release would have been called SQL Server 2012 R2, but thankfully they have decided to drop the R2 (Release 2) naming on SQL Server products (it is still being used on Windows Server and other server products). See the official blog entry for a list of the new features, mostly just enhancements to the features added in SQL Server 2012. The best new feature that I see is the enhancement to In-Memory ColumnStore Indexes making them updatable! There is also the feature of being able to backup right to Azure, which is great for providing instant off-site backups for your databases.

If you want to be notified of the official release, click here and fill out the form.

Tuesday, March 11, 2014

Upcoming SQLSaturdays

Sorry for the lack of posts over the last few weeks, it has been very busy, but I will get the last post in the encryption series up very soon.

Wanted to spread the word about a few SQLSaturdays that are coming up, which I will be at!

SQLSaturday #295 - Las Vegas, NV (4/5/14)

This is the first SQLSaturday in Las Vegas and while I did not get one my sessions selected to present, I will still be in Vegas that weekend thru Wednesday (4/9/14). Was a great excuse to take some time to visit Vegas, which I haven't been back to in around 10 years. Looking forward to seeing how the Vegas crew puts on a first time event and meet up with all of the #SQLFamily in a very fun city! If you are going to be at SQLSaturday #295, I'll see you there!


SQLSaturday #297 - Colorado Springs, CO (4/12/14)

Glad to see the Colorado Springs SQLSaturday back on the schedule again after taking a break for a year. Also very happy to be presenting at the event again this year. I'll be presenting my CDC with SSIS 2012 session "Capture Change and Apply It With Change Data Capture & SSIS" later in the afternoon (schedule is always possible to change, so make sure to check beforehand for exact time and room). The organizers are going to do a food drive at this event as well, to help out the local food banks which have been very stressed after all of the wild fires last year. The group down in the Springs always puts on a great event, so please register to attend this event if you are going to be in the Colorado Springs area on 4/12!


SQLSaturday #285 - Atlanta, GA (5/3/14)

The Atlanta SQLSaturdays are typically the biggest in the country (maybe even the world), so I'm very honored to be speaking at this event for the first time! Looking forward to spending some time in Atlanta, instead of just transferring from one flight to another at the airport. I'll be presenting my review of the new features in SSIS 2012 session "SSIS 2012: More Than Just a Pretty UI" in the afternoon. As mentioned above, make sure to check the schedule on this page to verify when and what room I'll be presenting in. If you are going to be in Atlanta on 5/3, register for this great event with over 50 sessions!

Best thing about all 3 of these events, they are all FREE! These events are held throughout the world and put together by community volunteers that want to share with everyone the SQL Server technology that we all love. Also be sure to talk to the sponsors at each event as it would be impossible to put on these events without their support. For those in the Denver area, we are working on the announcement for our 4th SQLSaturday in the coming weeks!

Friday, February 14, 2014

PASS BI Virtual Chapter Presentation February 2014

On Thursday, February 13th I had the pleasure to present my "Master the Date Dimension Like a Time Lord" presentation for the PASS Business Intelligence Virtual Chapter. Was a great group of attendees that had lots of questions, which hopefully I was able to answer to their satisfaction. Also had a few attendees that mentioned they were also big Doctor Who fans as well, which always makes the presentation fun to do when there are those that get the references to the show.

I have presented this session multiple times before, but I keep changing it as I go based on comments I receive. So, since the content changes, below is the link to download the latest version of the slides and the script to build the Data Dimension table as I demo in the presentation.

Master.zip

If you come up with something that you think is really cool added to this script, please send it to me and I can pass on your updates to others as I present this again in the future.

Thanks again to all of those that attended. If you missed the session there should be a recording of the session available soon, and as soon as I get word that it is posted I will update this post with that link.

3/1/2014 - Recording of the session has been posted on the PASS DW/BI VC YouTube page.

Monday, January 27, 2014

SQLSaturday #271 Albuquerque

Saturday I had the privilege to present a session at SQLSaturday #271 in Albuquerque, NM. This was the 2nd year in a row that I have presented at the SQLSaturday in Albuquerque and I love going back each time because Keith Tate, Meredith Ryan and the whole ABQSQL crew do a great job putting on this event. This year the event was in a different location that was pretty amazing looking and the spaces they made available were great too. My session was at the very beginning of the day at 8am, so I had to make sure I didn't party too much the night before at the Speaker/Volunteer party. Speaking of which, that party was held at a local micro brewery and we even had a room that with a glass wall so that we could see all of the beer vats. Beer was great and I even shared this with my wife and son who traveling with me to this event to make it into a mini-vacation from Thursday - Sunday.

Was awesome to spend a few days in ABQ this time as I drove in for last year's event on Friday and left right as the event finished on Saturday. This time with the family we were able to go up to the Sandia Peak Tramway, visit Old Town Albuquerque and Petroglyph National Monument. All great places to visit and always nice to learn about another area of the country!


Back to the SQLSaturday event itself, things started a bit slow (it is a Saturday morning so this is expected), but quickly there were over 100 attendees going to sessions throughout the day. Since my session was first thing I expected that I would have a lower attendance, and while I only had 10 attendees in the room they all commented to me afterwards that they enjoyed it and learned something new, so that makes it all worthwhile! Here is a link to download the file that all of the content from my "Master the Date Dimension Like a Time Lord" session. For those that were not at SQLSaturday #271 and may have seen this presentation in the past, I have updated it to make the script to generate the date dimension for both SQL 2008 and SQL 2012. I also took sometime to clean up some of the code to be more SQL centric instead of Oracle that it was originally written for. I will continue to tweak this script and the presentation over time, so keep your eyes here for future updates to the scripts!

Thanks again to the Albuquerque SQL group and I look forward to coming back again in the future!