Webinar: The end of support for SQL Server 2008

Coeo is a partner with Redgate Software. Tomorrow they are hosting a webinar on what your position will be if you are still running SQL Server 2008 or R2 now. Extended support ends next year and now is the time to start your preparations.

Register now and tune in tomorrow, or whenever you have time.

Posted in Blog | Tagged , | Leave a comment

Better Keyboard Extensions in Azure Data Studio

I used to use ALT+X to execute queries in SSMS. I spent years with this shortcut, but as I started to present more, CTRL+E felt more natural. I’ve now grown used to that, so when I typed CTRL+E in Azure Data Studio (ADS), I was less than pleased.

2018-10-19 17_06_57-● SQLQuery1 - Azure Data Studio

Even trying to get help here didn’t help.

2018-10-19 17_07_18-● SQLQuery1 - Azure Data Studio

I actually had a conversation with Kevin Cunnane when this was SOS and he pointed me to the keymap extension.  You can get this by clicking the extensions icon on the left side of ADS:

2018-10-19 17_12_50-● SQLQuery1 - Azure Data Studio

Once you do this, search for keymap, and you’ll see Kevin’s extension.

2018-10-19 17_13_03-● SQLQuery1 - Azure Data Studio

You can see details for the extension on the right.

2018-10-19 17_18_34-Extension_ SSMS Keymap - Azure Data Studio

When you click “Install”, you’ll go to Kevin’s repo on Github. Click the link to download the VSIS extension. This gets saved in your Downloads folder (or wherever you have downloads going).

Go back to ADS and use the File menu to find the VSIS installer.

2018-10-19 17_18_28-Extension_ SSMS Keymap - Azure Data Studio

Browse and double click the VSIX file you downloaded. You’ll see a message in the lower right of ADS.

2018-10-19 17_19_48-Extension_ SSMS Keymap - Azure Data Studio

Click Yes, or no, but if you click No, this won’t install. In a few seconds, if you clicked Yes, you’ll see this:

2018-10-19 17_19_57-Extension_ SSMS Keymap - Azure Data Studio

Click Reload, and ADS will close and reopen. Your query window should still be there, and CTRL+E will pop the connection dialog, since the connection closed. Once you connect, the query will run with CTRL+E

2018-10-19 17_20_10-● SQLQuery1 - Azure Data Studio

The full list of key mappings is available on the repo or in the package.json file.

Posted in Blog | Tagged , , | Leave a comment

Quitting Over Training

I saw a tweet awhile back from Alex Yates that said this: “If your employer won’t provide training because they are afraid you’ll become more employable and get a job somewhere else… it’s time to quit. Immediately.”

That’s a strong statement, but one that I tend to lean towards rather than away from. I’ll disagree slightly because I don’t think that I should recommend anyone leave their job right now. You are all adults, and you should be able to decide when it’s time to leave, or what your particular circumstances dictate. Many of us have bills to pay, and we may not have a partner that works. Sometimes we have to just deal with a poor situation for some period of time.

I will agree with Alex that if your employer doesn’t believe in you, then that’s a problem. I’ll argue that if you don’t believe in yourself and make strides to improve your skills as well, that’s a problem as well. I’ve usually tried to invest in myself, through both time and money, and I expect my employer to do the same. Often showing some of my own initiative helps convince them that they should match, or exceed, my own investment. After all, they should get lots of the immediate benefits from any learning.

I’ve worked for companies that didn’t like to fund any training. In those cases, I usually make plans to move on to another employer. I’ve had companies that limited training to something that I might get every 2-3 years. That’s not the worst situation, but you will have to decide how important this is for you. I try to work with companies, understanding that spending $5k in training for every employee + time out of the office may not be feasible. At the same time, spending $0 doesn’t seem reasonable. At least, it’s not reasonable if there isn’t a lot of internal training and opportunity to experiment and learn new skills.

I say this often when I speak, but I’ll repeat it here. Your career is in your hands. An employer ought to assist you, and many do, but it’s up to you to request training, apply yourself to learn more, invest in yourself, and ultimately take advantage of opportunity. Build a plan, define measurables, and be ready to prove that you can apply some of the training in the months after you complete it.

A week at a class or conference isn’t a vacation, and if you treat it as such, I can understand why a company might be reluctant to make an effort to train you again. Time is a valuable commodity for all of us, and we shouldn’t be wasting it when we’re trying to grow our career. Focus, learn something, and share with others. You might be surprised as the benefits that come from this, including additional investment in you by your current employer.

Steve Jones

The Voice of the DBA Podcast

Listen to the MP3 Audio ( 3.4MB) podcast or subscribe to the feed at iTunes and Libsyn.

Posted in Editorial | Tagged | 2 Comments

Time for SQL in the City Summit–Chicago

This week is the last live SQL in the City Summit this year. It’s this Thursday at the Microsoft office in Chicago, and if you’re nearby, you can still register with “stevejones” as the code.

We’ve presented this program in New York and London this month, and we’ll be showcasing some similar talks in Chicago, with a few speaker switches. Bob Ward and Brian Randell are back, with the additions of Bob Pusateri, Bob Walker, and Esteban Garcia.

It’s a great program, with lots of good SQL Server, DevOps, and Redgate information coming out. If you can join us, we’d love to have you come.

If not, we’ll be back in December with another SQL in the City Streamed edition.

Posted in Blog | Tagged , , | Leave a comment

Big Data Analytics

How large is your analytics system? Do you have more than one machine for analytics? Do you have a cluster of machines that run Hadoop in a YARN cluster to analyze your data? Are there hundreds, or even thousands, of nodes that are being used regularly? Some of you might have what you consider to be a large system, but I bet it isn’t as large as Microsoft’s cluster.

They think they have the biggest YARN cluster, with over 50,000 nodes in a single cluster. This is used to process multiple exabytes of data from their various properties and systems. I certainly haven’t heard of a system this large, and I really wonder what this costs to run. After all, I’d think a 50,000 node cluster has to be a significant cost, though perhaps in the grand scheme of Microsoft’s $100 billion in revenue and $38 billion in expenses, even 100,000 machines can’t really impact their numbers.

The cluster has essentially been running a private version of Azure Data Lake for years that their internal developers and analysts use to access a common pool of data. In fact, because of their scale needs and the desire to limit the copying of data between clusters, they have contributed back to the Apache Yarn project a number of fixes to help ensure the software can scale to tens of thousands of nodes. There is some discussion of how they’ve allowed YARN to grow to larger scales, and it’s an interesting solution that essentially allows some overbooking of resources, knowing there are always some spare cycles available for processing data. It’s a great test site for Azure Data Lake, and something that more of us might use in the future.

I doubt may of us would need to work on data sets that large, and I know I certainly wouldn’t want to be responsible for that much of a data lake, I do think these are interesting problem domains that someone should look at. Certainly there are always large organizations and governments that have ever growing pools of data that will likely end up in a data lake of some sort. And who knows, perhaps, the definition of large will continue to grow to the point where 1,000 nodes in a cluster is considered “small”, and it’s what many of our businesses might implement in the future.

Steve Jones

The Voice of the DBA Podcast

Listen to the MP3 Audio ( 3.0MB) podcast or subscribe to the feed at iTunes and Libsyn.

Posted in Editorial | Tagged , , | Leave a comment

Installing Azure Data Studio

Azure Data Studio is the newest tool from Microsoft for working on the data platform. Last year we saw the preview release of this, called SQL Operations Studio. No one liked the name, and as the tools team at Microsoft worked to update the tool, they changed the name this year. At Ignite the rename and release was announced, and this is now a 1.x tool, available on Widows, OSX, and Linux.

If you search for Azure Data Studio, you should end up at this link:

2018-10-19 16_24_03-What is Azure Data Studio_ _ Microsoft Docs

The download link has a series of installed. You can choose installers for all the platforms, in a series of formats. I picked the Windows installer.

2018-10-19 16_24_13-Download and install Azure Data Studio _ Microsoft Docs

When you start the installer, you get a standard setup wizard. Here’s what you see, but these are all really next, next, next dialogs.

2018-10-19 16_27_17-Setup - Azure Data Studio

2018-10-19 16_27_25-Setup - Azure Data Studio

2018-10-19 16_27_38-Setup - Azure Data Studio

2018-10-19 16_27_48-Setup - Azure Data Studio

2018-10-19 16_28_00-Setup - Azure Data Studio

2018-10-19 16_28_10-Setup - Azure Data Studio

2018-10-19 16_29_00-Setup - Azure Data Studio

Running the Program

When you start Azure Data Studio, it opens with a large pane and a connection dialog. Before I can do anything, I need to connect.

2018-10-19 16_40_57-Azure Data Studio

I need to provide details, as expected, but I can optionally group my connections into a name. This is similar to the Registered Servers grouping I can do in SSMS. Here I’ve filled out some details, and given my connection a nickname for quick connections in the future.

2018-10-19 16_42_22-Azure Data StudioOnce I click Connect, I get a dashboard when ADS makes a connection. At a glance, I can see a few things. This is the “Manage” widget that Microsoft provides. You can make your own if you like.

2018-10-19 16_43_30-2017Sandbox_sandbox - Azure Data Studio

There are some mappings for keyboards, and CTRL+N (of File | New Query) gets me a query window. Some basic intellisense is here.

2018-10-19 16_55_26-● SQLQuery1 - Azure Data Studio

It’s no SQL Prompt, which I miss when I use this tool.

2018-10-19 16_55_34-● SQLQuery1 - Azure Data Studio

CTRL+E doesn’t work, so I need to click the arrow to run the query. That’s OK, but it’s not ideal. Fortunately, there’s an extension to help here.

The results are slightly odd for me, since I’ve used SSMS for so long, but they work fine.

2018-10-19 17_02_15-● SQLQuery1 - Azure Data Studio

There is a column of icons on the left, the top of which is my list of server connections. If I click this, I see the list on the left side.

2018-10-19 16_58_21-● SQLQuery1 - Azure Data Studio

There’s lots more to do here, and you should experiment with this if you want a lightweight query tool. I’ll do a bit more work here, and see what I think, but I’m not sold on this for now as any sort of replacement for SSMS. I don’t know if MS will go that way, but for now, this still feels fairly bare bones.

Posted in Blog | Tagged , | 4 Comments

Horrible Bosses

Horrible Bosses is a movie that makes me laugh. I’ve seen it a few times, and I’d likely watch it again if I stumbled on it during a flight or while flipping channels. I’ve had some bad bosses, even one I’d consider a horrible boss. I’ve worked in poor conditions for IT, though considering what some people go through, it wasn’t that bad. I”ve been stressed, overworked, and abused by employers. Again, relatively. These are really #firstworldproblems, and not so much problems as annoyances. I’ve really had an easy life compared to many people, though it hasn’t always been stress-free.

The one thing that I’ve tried to do throughout my career is be a professional. Do the job I’m paid to do, and accept the good and bad. If I don’t enjoy it, or don’t agree with the demands, then I can leave and find another job. I’ve had to do that a few times, often because of the people that make the job a bad one. Fortunately I have a great boss now, which makes my work much more enjoyable.

I’ve also tried to build software that I feel comfortable with from a moral standpoint. I’ve never been asked to work on anything illegal, and I hope I never am. I’d also hope that I would refuse to do so. I think it’s hard to put yourself in a tough situation, as you can never know all the variables. Imagine that you’re in debt, you need your salary to pay for medical care for your family and it’s a recession. You might feel trapped in a position, worried about not only losing your job, but also your livelihood and potentially putting someone’s life at risk. Making moral stands in tough situations is hard, and I hope I never have to do so.

My best advice for my kids, and for others out there, is that you want to actively manage your career. I’ve told my son the best time to find the job you want is when you have a job, not when you are out of work and need a job. If you’ve got a horrible boss, start making steps to find a better one. It can take time, potentially months or years, so make a plan and start down the path of finding a dream job that you look forward to every day.

Steve Jones

The Voice of the DBA Podcast

Listen to the MP3 Audio ( 3.1MB) podcast or subscribe to the feed at iTunes and Libsyn.

Posted in Editorial | Tagged | Leave a comment

Republish: Selling Automation to Ops

On a plane, back to the UK, so republishing Selling Automation to Ops

Posted in Editorial | Tagged | Leave a comment

A $3 Billion Donation

Earlier this week, Microsoft agreed to grant royalty free licenses for 60,000 of its patents for Open Invention Network (OIN) members as it joins the group. The patents include a number that affect Android, Linux, OpenStack, and more. As recently as a few years ago, Microsoft was making over $3 billion from this set of patents, including a billion dollars from Samsung.

To be fair, licensing revenue has been declining, so this isn’t likely a $3b gift, but it’s still substantial and more important, it’s a positive step forward.

Actually, it’s a surprising move, and one that seems to have stunned many journalists and open source advocates. There are numerous stories that seem to describe the move with disbelief, which is a position I would have held until recently. If I had seen this post from Erich Anderson, Microsoft’s Deputy General Counsel, I would have parsed the language, looking for the careful crafting of phrases that indicated some future duplicitous action.

Instead, as I’ve worked with more and more people from Microsoft and talked with them about upcoming changes, I’ve found that Microsoft is truly changing. They’re becoming more open, and trying to prove their services and software are worth using, not trying to lock customers into an environment they can’t easily leave.

Nowhere is this more evident than Azure, where there are quite a few Linux VMs. In fact, I thought I heard that there were more Linux than Windows VMs earlier this year, but I can’t find confirmation. In any case, Microsoft supports free and open source software (FOSS), including MySQL as a Service. Incidentally, that powers tsqltuesday.com. I moved the site there earlier this year, using Microsoft’s MySQL services.

Microsoft is a for profit company, and I expect that they want you to use their software in addition to services. That’s no surprise, but they are becoming less cutthroat and much more welcoming. Scott Guthrie, who leads the cloud and enterprise group, noted that “It’s not just code, it’s community.”

That’s been my philosophy here are SQLServerCentral. We’re a community, and the vision from Brian, Andy, and I was to share and help others as much as we could. We continued that with SQL Saturday, and we continue that today in our own ways. Andy and I try to support individuals in various ways. Brian has really put his money forward in this area with the Pragmatic Works Foundation.

We’re a community. All of us. We compete, we argue, we laugh, we cry, but we’re a community and we can all try to grow our business, improve our skills, and advance our industry as a community. I’m proud to be a member of the SQL Community and the #sqlfamily.

Steve Jones

Posted in Editorial | Tagged , | Leave a comment

Modeling and Design Are More Important in DevOps

I’ve run across a few customers that are adopting DevOps processes for the database. This makes sense as I deal with Redgate Customers, many of whom are doing this. As they adopt a Compliant Database DevOps process, it seems often that there is a push for database developers to react to feature requests quickly, at the same rate that the application developers do, and push out new code regularly to support changes. This new code often includes schema changes to support new features and functions, which often means table changes because the data elements need to be stored somewhere. This, of course, means the data model changes.

In many cases, trying to release a new feature today or tomorrow, or even next week, means making quick decisions. As an example, if we capture lots of cost and price information in an application and are enhancing this to add currency values, we’ll be adding fields to any table that stores financial data. How we do this could vary. It’s easy to add a currency lookup field to all tables, and that might be what many application developers want to do. If they’re using an ORM, they might just add this as a property to their object definition, which generate a series of ALTER TABLE statements to add the related fields. Certainly, a database developer could just generate those same scripts.

Whether this is the best choice, or if some more normalized structures are needed, is unclear. That’s dependent on the problem domain, and if date stamps are needed to capture currency differentials at times, or even if we need additional FKs to ensure there is referential integrity, many junior developers and DBAs might not think about the implications to the data model. As time passes, this could mean additional technical debt to deal with, limiting future enhancements. This could also mean fundamental flaws in how financial data is calculated, potentially opening impacting revenue if the data model doesn’t support accurate calculations.

Moving to DevOps doesn’t necessarily mean moving fast. It can, but it’s really about making focused, small changes at the rate that matters for your business. It also means that your data model and design of data store structures becomes more important than ever. While we can make decisions quickly, this takes experience and understanding of the business impacts, as well as the potential downfalls from different types of structures. DevOps asks us to give feedback about potential problems up and down the software development pipeline, which should include a data architect of data modeler. Someone with experience here can help to consider future implications and even provide some flexible designs that can adapt in situations where we have incomplete knowledge.

Since we build our software on the data, we need to ensure we are properly capture the data in a way doesn’t create too much technical debt. There are many, many stories of organizations that struggle to grow their applications over time, often because of very poor data models. Many of these issues could have been avoided by consulting with senior developers, DBAs, and data architects/modelers for an hour before making a fundamental change. Even if this means keeping a consultant on retainer. The investment in reviewing and understanding the data model can pay off tremendously in the future, especially as the cost of data processing is often one of the larger costs of running an application. Whether this is an RDBMS like SQL Server or an alternative structure like CosmosDB. A little investment in modeling early can prevent the need to over-provision resources later.

Steve Jones

The Voice of the DBA Podcast

Listen to the MP3 Audio ( 4.2MB) podcast or subscribe to the feed at iTunes and Libsyn.

Posted in Editorial | Tagged , | Leave a comment