Author: way0utwest

  • A Case for Document Storage

    One of the challenges for both database developers and administrators is doing more, often with less. Many companies continue to grow their database estate, both in width with more platforms, and in depth with more instances of the platforms they have.  Some companies will look to shrink their staff, especially when adopting a cloud platform, while others may add more databases, but not increase staffing to match the additional load.

    In either case, what many have found over the years is that the cost of labor is high. Both for developers that write code against databases, and administrators that manage those platforms. While licensing can seem to be a large number, compared to the cost of labor, it isn’t usually a significant number.

    Often it seems administrators would prefer more of the same database platform. Developers often seem to ask for new types of database platforms, often some type of NoSQL data store. I ran across an article that makes a case for adding in document storage data stores to your environment, instead of just choosing am RDBMS. Labor is one of the big reasons for doing this. The other one is that for a given workload, the hardware cost is lower.

    The article opens talking about the object/relational mapping problems. There is some truth to the time and effort to map an object in an application to a table (or set of tables) in an RDBMS. There is some knowledge required to do this, but I also think it’s an important skill for many developers. The same type of object mapping to a serialized JSON document is shown as being easier, and it is.

    However, if you add or change your object, the application code to handle the document from the data store gets complex. Over time, you will have lots of “new” fields that don’t exist in older documents. How do you handle those? It’s not hard, but labor is required to write this code. And this code has to be maintained over time.

    The other argument is that less hardware is needed, made by noting all the data you may need can be co-located with your object. This is what we would call denormalization in an RDBMS and leads to data duplication? Whether that is a problem or not depends on the amount of duplication. Certainly the structure of an application that often works to send or retrieve singleton rows is easier in a document database.

    However, non trivial queries, which the author postulates are hard to write for developers, are likely hard to run for a document database. The load of querying across lots of rows, or updating them, is much higher in a document database. Depending on how often you update data, this can be an issue, and require more hardware.

    Which is better? The classic “it depends” applies here. Database modeling is important in both cases. As I’ve worked with people that move to NoSQL databases, I find they struggle to model in that world as much as many of us struggle to model in the RDBMS world. I also find that a NoSQL database often is going to require some sort of data warehouse or other structure that is built for reporting across documents.

    I’m not against the various types of NoSQL databases, but I also don’t think they are a panacea of any sort that magically makes building and operating an application easier.

    Steve Jones

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

  • AI Concerns

    I hosted a webinar a few weeks ago about Artificial Intelligence and how it might affect data professionals. It was an interesting discussion with Kellyn Pot’Vin-Gorman and Brian Randell, with all of us having slightly different perspectives. Overall, we all agree AI is amazing and can be a useful tool for data professionals.

    This week I’ve been in Redmond at the MVP Summit, and AI has been a topic among many MVPs. Lots of jokes have been told, no shortage of which dealt with getting rid of staff. Not that these MVPs want to see less staff, but they know that executives and managers might see all the AI hype about how GitHub CoPilot writes code and think they need less developers.

    I don’t know if that is really how executives will view the world, especially as most IT departments have more work than resources to complete their list of tasks. I can see AI helping get more done, which might mean less hiring (or slower hiring) in the future.

    There was an article this week talking about ways to protect your job in the age of AI hype. It was interesting in that the suggestions all revolve around bringing more value to your job. The suggestions about working in specialized areas, complex areas, being a better employee with documentation, these are all things that I’ve done in my career. It’s what I also see from many MVPs.

    Maybe the most interesting item was to think about incorporating AI into your work now. It’s not necessarily an expert on your work, but it is a tool. As the models absorb more information and become better trained, they can be a level to help you get more work done. They can assist you in tedious work, which is something many of us can benefit from.

    I am looking forward to getting access to CoPilot and keeping an AI tool up on my desktop, learning how it might help me, and maybe more importantly, where it won’t help me.

    I can’t stop this trend, but I can better understand it and learn how it might fit with my daily work. Knowing that helps me better understand how I might have an informed and rational discussion with management about the advantages or disadvantages of this new technology.

    Steve Jones

  • A Tale of Two Drives

    One of the things I haven’t thought about much with my Tesla is range anxiety, even in winter. However, I recently had two almost identical trips with vastly different temperatures. This post looks at what I learned.

    This is part of a series that covers my experience with a Tesla Model Y.

    The First Drive

    In early April I took a day off to go skiing. I used to do this often based on weather, picking sunny and cool days. However, in 2023 I’m more schedule driven. I had to do this particular day because I had the free time.

    I woke up and it was about 12F outside. The forecast for Keystone for the day was a low of 1F and a high of 41F. A wild day, so I set out from home. I’d charged the car to 90% the night before, which was a failure on my part. The car had been set to 90, and I had meant to change this to 98, but forgot.

    I drove up, stopping a few times for coffee, food, and the restroom. I arrived at the resort parking lot with 35% charge left. It was 7F, and I was a little worried about skiing, but I assumed it would warm up. This also meant I’d used 55% of my charge getting up to the mountain.

    It was a nice day, and I enjoyed skiing, leaving around noon. At this point it had warmed up to 34F. I actually showed 36% on the battery driving home. When I mapped going home, the car recommended a charging stop in Idaho Springs for about 5 minutes. Since I planned on lunch from Beau Jos, that was fine.

    I parked, walked to the gas station to get a soda and then picked up my pizza. I charged for about 12 minutes, getting 27kW added. More than I needed. I arrived home with 37% left. With all the stops, I ended up going 221.4 miles on 91% charge.

    Possibly I could have made it on a single charge.

    A Spring Ski Day

    A few weeks later, I went again. This time it was around 50F when I left home. I arrived at the resort, where it was about 25F, but warming quickly.

    This time I’d charged to 96% the night before. I got to the parking lot with 49% left. Around 47% used. When I left for home, same lunch stop but not charging, I felt comfortable. I pulled into the garage with 22% left on an 80F day near my house. This trip was 217.7 miles.

    Summary

    There is a huge difference between a 30-40F day skiing and a 10-20F one. The car definitely loses some range in the cold. It’s worth paying a little attention here, but I probably could have avoided Super Charging, or at least done less, if I had charged more at home before the first trip.

    In terms of comparison, the drives up were roughly the same, same stops. I used 55% in extreme cold and 47% in cool weather. 8% difference here.

    The drives back had a few different stops as I ran different errands, but 36% returning from the mountains in the cold. In warmer temps, it was 38%. One thing to note is that the return trip in the cooler weather was more like the going up in warmer weather. Coming home the second time the AC ran a bit.

    I got this car because it had the range that I thought would let me day ski without an inconvenient charging time on the way home. I don’t know other EVs would do that, but with the Tesla Superchargers in Idaho Springs, Silverthorne, and Park Meadows on my journey, I had some leeway to stop quickly. Even in cold weather, and skiing in 15F weather is rare for me, I likely could have made this without stopping.

    However, life is life. Sometimes things don’t go your way. The charging stop wasn’t inconvenient at all since I needed a restroom and lunch. I actually got the notification from the car it was charged enough while walking to get my lunch.

    EVs are interesting, and they have a different paradigm. I have ceased thinking about range almost all the time, but I do plan differently than I do with ICE cars.

  • A Third Break

    One of the most amazing benefits of working at Redgate Software is the ability to take a sabbatical every five years. One of our staff wrote about this recently, and I found myself reflecting back on mine, as well as thinking forward.

    The article notes that many people either learn or travel during theirs. That was somewhat of my experience, where I spent my first one learning skills and volunteering at home. My one-year look back is still interesting to revisit today. Unfortunately, my flagpole base failed in strong winds (sad face) and broke the pole. It’s still on my list to rebuild a new one. I still look back on my volunteer time with fondness and try to get back to Habitat every year.

    My second was avoiding travel, since I’d traveled a lot the year before. I ended up with the last sabbatical before the pandemic, coming back to work as our office closed. I stayed home, worked on learning and projects, though I did take a trip to Las Vegas to celebrate my wife’s birthday.

    Six weeks away from work seems like a lot. Before Redgate, I’d have thought that this was a huge burden on the employer and fellow employees. However, we’ve had multiple people on sabbatical and we cope. We pick up the slack, and things continue to run. As with maternity (and paternity) leave, it’s not as big a burden as this American used to think.

    It is very refreshing, and each time I’ve felt rejuvenated. I’ve been ready to get back to work, talking with Redgate customers and speaking at events. To me, this is a great way to encourage retention among loyal employees, as well as a way that can create more diversity of thought among your employees. Where they travel, the things they learn, even the change of pace in their mind often bring them back to work with new perspectives and ideas.

    I just crossed my fifteenth year at Redgate, so I’m due for my third sabbatical. I haven’t thought about it, and I am not likely to take it this year. This does take some planning, both in my personal life and at work, so I have found I usually need 5-6 months to decide on something and get plans in place.

    What will I do this time? I’m not sure. What would you suggest? I am thinking to travel this time for part of the trip. My wife and I had an amazing travel time in 2022, and there are so many amazing places in the world that I’d like to visit. I am also tempted to try and fit in some learning as well, perhaps a week spent in some sort of educational endeavor.

    No matter what I decide, I am grateful for the opportunity and look forward to another break that helps my work-life balance, balanced.

    Steve Jones

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