Tag: T-SQL Tuesday

  • T-SQL Tuesday #119–Changing My Mind

    After missing the last T-SQL Tuesday, I’m back for the latest invitation from Alex Yates. In this one, Alex asks us to write about something in IT where you changed your mind. Some belief you held, and then decided to go a different way. It’s a good topic, especially as the world has both dramatically changed and also stayed the same in many ways.

    A Strong Belief

    As a young man, I used to think strongly about lots of technology topics. Many of those have been argued about on the Internet in forums, chat boards, and even at times at events. I had my own thoughts, and often argued my own views.

    As I’ve gotten older, I’ve started to hold those strong opinions a little looser. I still have them, but I also know that sometimes things might not be as clear cut as I imagined. I also have learned that my own knowledge is often incomplete, or my application of a technique might be more narrowly focused than I assumed.

    I change my mind constantly, but I’ll give you a relatively recent one that has started to move my career.

    Containers

    I’ve been learning and talking about containers with people for nearly 10 years. It was in 2010 that I met a company using them extensively, and while enamored by the technology, I wasn’t sure how useful it was for me. This company uses Java, where versioning is an issue. In .NET, it’s less of a problem.

    When Microsoft started to work towards containers in the 2015 timeframe, I had a change to take part in early discussions with program managers. These were casual, but I wasn’t convinced that this would really make a difference in SQL Server. I kept an open mind, but most of their arguments and thoughts felt self serving for Microsoft’s business rather than good technical arguments.

    That changed sometime late last year. The work that’s been done on SQL Sever 2017 and 2019 to allow upgrades/downgrades, the scale out capabilities coming in 2019 (and with Hyperscale) and the possibilities of Kubernetes (or some other orchestration tech), make me rethink containers.

    Containers are the future of SQL Server. I’d bet on it, though it’s going to be 5 or 10 years for most of us to get there. However, I’m spending more time learning and working with them because I think this is where databases will move.

    I wouldn’t have said that two years ago, but my mind has changed.

  • A Memory-Optimized Roundup – T-SQL Tuesday #117

    The summary from my fourth T-SQL Tuesday hosting for #117. This time I was scrambling a bit, but since I’ve worked with a few customers in the last year that use MOT tables, I thought this might be a good topic.

    Either everyone is on vacation or not many people think about them. Or maybe they aren’t interesting. In any case, here’s the roundup.

    Rob Farley has a win with user defined table types that are used in MOT objects. Never knew this was a possibility. Extra points for mentioning source control and DevOps.

    Kevin Chant notes he studied them for his MCSE, but hasn’t really found them useful. Mostly because of older versions and restrictions on the feature. Kevin likens this to filtered indexes, which are a nice feature, but rarely used.

    Jess Pomfret writes about some of the limitations for a feature she hasn’t used. A good summary of what they are, but don’t let her turn you off of the feature. It has its place.

    Ken Fisher has a few notes about why he hasn’t used them. Not enough memory in his systems, older versions, and he doesn’t write the code. Apparently I’ve given him some things to think about and play with, and I’m sure I’ll see more blogs from him soon.

    Johan Ludvig Brattås explains how he improved performance with a MOT table.

  • T-SQL Tuesday #117 Invitation – When Have You Used MOT Tables?

    When Memory-Optimized Tables (MOT) were announced for SQL Server, there was a lot of excitement about the technology. After this was released on SQL Server 2014, feelings waned with a lot of restrictions and limitations for using the technology. I remember a panel at a conference years ago where most of the MVPs and experts recommended against using the technology for most users.

    Today there have been improvements (2017, 2016) in the MOT features, restrictions have been removed, and all editions can use MOT tables. That’s not to say that this is suitable for every table or situation where a DBA or developer suspects performance issues.

    This month I want to ask you about when you’ve made that decision. This can be to use MOT tables or NOT to use MOT tables. This could be a simple thought, a POC, or actual testing of the feature.

    Some ideas for you to write about:

    • Performance analysis of MOT tables that affected a decision
    • Reading the limitations and knowing this would prevent their use
    • A scenario where MOT tables improved performance
    • A successful implementation of MOT tables and what needed to change in your app
    • A failed attempt at trying MOT tables

    There might be other things that are related to MOT technology, but let us know this month what you think of the technology and how it has (or has not) impacted your application.

    The Rules

    Here are the rules as set out for the T-SQL Tuesday blog party.

    1. Your post should be published on Tuesday, Aug 13, 2019 between midnight UTC and 11:59:59 UTC.
    2. Include the T-SQL Tuesday logo in your post.
    3. Link back to this invitation.
    4. Include a comment on the invitation post or a trackback link.
    5. Enjoy the chance to be creative and share some knowledge.
  • T-SQL Tuesday #116–Always Linux

    tsqltuesdayThis month is an interesting invitation from Tracy Boggiano. It’s on Linux, which I like. I hadn’t thought about this in terms of T-SQL Tuesday, but I think it fits and more than that, I think Linux will be the future of the backend data platform from Microsoft. I’ve said it in a few presentations, and I think we’ll get there in 10 years.

    In any case, I wanted to write about how I use Linux and SQL Server.

    Containers for Work

    One of the technologies that I see gaining a foothold in many companies is containerization. More and more developers are using containers, and asking for their databases to work in containers. At Redgate, we’ve been investigating this and are looking to build solutions that will use containers.

    As a result, I’m experimenting with SQL Server in containers on my laptop ad giving some presentations that share the way in which they work. I’ve written a little at SQLServerCentral as well as on this blog.

    In setting up my laptop, I installed Docker and experimented a little with Windows and Linux containers. I’ve standardized on Linux containers, because they’re more mature for production (Windows containers are in preview now), and I think with Kubernetes and the growth of how the SQL Server 2019 Big Data Clusters will work, I expect more Linux for servers in the future.

    I’m also using this as an opportunity to brush up on some bash and Linux skills, connecting to my containers with the –it (interactive) switch, as well as using the Windows Subsystem for Linux.

    It’s slow learning, and it’s interesting trying to juggle things in bash and PowerShell at the same time, but I expect these skills will become more hand in the future.