Category: Editorial

  • Do You Want a Microsoft Solution?

    Microsoft constantly releases new features and products in the data platform space. Many of us have seen the SQL Server product grow in new ways, some of which are very useful to us. As an example the changes from log shipping to clustering to Availability Groups has improved our HA/DR options as well as the capabilities available to us in different situations.

    With that in mind, I saw someone recently that wanted to deploy SQL Server on Kubernetes, which is something that could be a very interesting way of managing your different systems. However, this individual wanted to know when Microsoft would release their own supported solution with a Microsoft operator to manage the instance. There is guidance from Microsoft, but no official operator.

    I saw a recommendation to use DH2i, which has a solution with an operator that can help here. In fact, in the MS docs, there are articles on using DH2i with SQL Server. However, the docs note that DH2i is responsible for supporting their product. The person asking about support didn’t want another vendor and wanted a Microsoft solution.

    Is that something you want? Do you want a Microsoft solution for most (or all) things? Or do you think third parties or bespoke solutions are acceptable? This could be your opinion or a policy/guideline from your employer, but let us know.

    To me, I think third parties are necessary. Microsoft can’t do everything, and they might not provide the support or flexibility that someone else can. Many of us sp_whoisactive, which isn’t an official Microsoft solution. There is a First Responder kit, diagnostic queries, a pressure detector, and plenty of other resources that people have created and shared. There are plenty of tools for SQL Server (and most other products) that various vendors have produced and sell which meet the needs of their customers.

    My view isn’t to choose a Microsoft solution for everything because their solutions aren’t always the best choice for my problem. Even when they work well, they are often incomplete and I need to do some work to get them to fit into my environment. To be fair, most anything often needs a little work (or time) to fit into many environments.

    Let us know today. Do you want official Microsoft solutions for your data platform? Or Oracle ones for Oracle? Who makes you comfortable with PostgreSQL, Aurora, Redshift, Databricks, or other platforms? Or do you only use tools and capabilities inside the platforms?

    Steve Jones

    Listen to the podcast at Libsyn, Spotify, or iTunes.

    Note, podcasts are only available for a limited time online.

  • Separate Reads

    Recently I was watching a presentation on how to scale performance in your SQL Server environment and one of the suggestions was setting up Availability Groups (AGs) and having read-intent connections that would query the secondary and not the primary. It’s not a bad idea, and the SQL Native Client (and other drivers) support this and make it easy to implement.

    The pattern of using multiple connections in an application, one for reads and one for writes, has been suggested often. However, in practice, I’ve rarely seen this work. Apparently having a connection variable, named dbConn, for writes and a second one, named dbConnReadOnly, for reads is too complex for most developers or teams.

    Or maybe the idea of having to pick the right access point is a human problem? I’ve seen no shortage of problems in restaurants when we have specific “in” and “out” doors. Lots of people go through the wrong one and we end up with plates and food on the floor. Even broken noses or fingers at times. Perhaps I shouldn’t pick on software developers too much.

    How many of you use two connections from apps? Meaning, do you think about reads and writes in separate connections. Even if you read and write from the same database, this can be a nice practice that future proofs code. It’s a small change, but it gives you room to grow if you get a read replica for analytics or reporting.

    Of course, you could take it too far with different connections for different “services”, aiming for a microservice-style architecture. We could have dbUser for user stuff and dbOrders for the business side, and other connections for other services. I wouldn’t do that, as I think many of us will get confused, and we’ll often be doing two different type of service things in the same code. If I need something from a customer to write an order, do I have two connections in my method? I could, but I bet lots of developers would try to re-use a single one.

    Plus, if developers get into trouble with two connections, then what will they do with 5 or more? There are lots of ORMs that might even support this, or if they do, not make this easy to code.

    I’ve always liked the idea of separating reads and writes, but maybe the better solution is using one connection whenever we have simple CRUD work and another one for any sort of complex querying or reporting. That would make more sense as I suspect many of us will eventually offload reporting or analytics in some way to another system. A Delta Lakehouse of some sort seems likely if the current trend takes hold in more organizations.

    Let me know today if you used (or have tried) different connections for reads and writes.

    Steve Jones

    Listen to the podcast at Libsyn, Spotify, or iTunes.

    Note, podcasts are only available for a limited time online.

  • Time to Change Your Team

    I assume most of you work with others in a team. Even if you are the data specialist and others work on different technologies, you still have a team. How long has your current team been together in this form? Have you had a stable team that might have grown, but the rest of the individuals and roles/responsibilities stay the same? Or has your team changed makeup, roles, responsibilities, or something else?

    I don’t see a lot of organizations that change their team structures often. There may be people who come and go from a team, but the core structure remains the same. Even when your company might reorganize a bit, often it’s teams that shuffle between managers, but mostly remain the same. There certainly are exceptions, and some large orgs (Microsoft, Amazon, etc.) regularly shuffle lots of people around, but I’m not sure the teams change their makeup or their mandate much.

    I was thinking about this as I read an article on knowing when to restructure your team. I won’t recommend you read it as I think seems to imply restructuring technology teams will make them perform better and start meeting all the commitments that have been made. While I do think that a well-led team can perform better, restructuring your teams isn’t likely to make them more efficient and productive. That being said, I do think the article raises some good questions about how you might evaluate your team.

    There are certainly times when an IT team, whether in development or operations, might start to miss deadlines or may seem to work inefficiently from the outside. We are human, and humans can get complacent, or they might focus on tasks or work that they want to complete, ignoring work they don’t enjoy. The latter might be things the business needs, and restructuring the team isn’t going to fix that. Either the current staff has to be managed more closely to get them to focus on necessary work, or maybe different people should be assigned to those projects or tasks.

    Just remember you work with humans, and they often struggle with change. Change might be necessary, but a little empathy helps us cope with the challenges and learn to work together in our new structure. If we don’t have that, likely nothing gets better and we fall into old habits.

    Steve Jones

    Listen to the podcast at Libsyn, Spotify, or iTunes.

    Note, podcasts are only available for a limited time online.

  • Technology Fears

    Recently I had a friend traveling who is not very tech savvy. This person has traveled before and has a routine, but in this case, they were struggling to get an airline’s mobile app to work. They also struggled with the website, and just before the trip, they were thinking to cancel because they didn’t have a ticket in their hand before driving to the airport.

    This turned out to be a login issue, and between friends and the airline’s customer service, they were able to print out a ticket at home and take it in hand to the airport.

    It was slightly funny to me, but it got me thinking about the fears people have about technology. Many of these fears are really about change, but I would guess most of us have been burned by technology at some point. There’s an app, a process, a system that fails and causes us stress/hassles/annoyances/money/etc.

    Today I’m wondering if there is a technology are you afraid of or that you worry about more than average. Perhaps you have friends that worry about technology and have concerns. Drop a note in the comments, and I bet we’ll have some funny discussions.

    This summer, my wife and I took a ride in a Waymo in San Francisco. It was a neat experience, and I enjoyed it, but when my wife posted a video, we were amazed how many friends of ours were unwilling to consider riding in one. We are Tesla owners, and we’ve been impressed with FSD, but my wife is also unwilling to use the basic Autopilot most of the time because it’s not reliable. Even FSD was something we were careful in using.

    I live in the digital world often. I rarely use paper for anything, other than taking notes. Even then I often take pictures of notes and upload them for reference or for retyping. I pay for most things with digital money. I walk through life where technology manages supply chains, border admissions, airline flights, and almost everything I interact with. Even the vehicles I use at the ranch have lots of technology in them, though I admit I’m glad when something has analog parts I can work with.

    I’m not sure there’s much technology I’m afraid of, though I am wary of some connected devices. Not because of the tech, but because I don’t think the vendors do a good job of security.

    I can’t really think of what technology worries me. Even AI is likely to be less dangerous/useful/amazing/whatever than people think. I think the one part of tech that worries me the most is how it affects society and many people whose jobs are threatened by tech. Though maybe I shouldn’t worry. Those tech-averse people might be the reason we see growth in the travel agent world, which I thought was dead.

    Steve Jones

    Listen to the podcast at Libsyn, Spotify, or iTunes.

    Note, podcasts are only available for a limited time online.