Category: Editorial

  • Where Does NoSQL work well?

    It seems not too long ago that NoSQL was the hottest thing on the market. MongoDB was leading the charge, with tremendous growth as a company and many developers looking to adopt their platform. I remember years ago going to visit a number of customers in New York City, where Mongo had just grown their offices. Every company was considering migrating their RDBMS to MongoDB, trying to calculate the cost and return.

    Now, I certainly hear about companies adopting database that are in the NoSQL family, but not always (or even often) to replace a RDBMS. Instead, it’s for a new application or alongside an existing RDBMS. While there are applications that are well suited for a non-RDBMS data store, there are plenty that perform worse on those platforms. This might be because the platform doesn’t handle their workload, or because the developers aren’t writing good code, but I know I’m not worried that RDBMS usage is going away, or even down.

    I ran across an article earlier this year that wonders if NoSQL is a good choice for your application. The article covers a bit of the types of these stores and how they work. It’s a basic look, but it makes sense and it addresses the benefits of NoSQL, like scaling. It also notes there are issues, which is something to think about. Not that I see a lot of developers thinking about the issues. Often they think the can code around them.

    The piece notes that for some problems, these databases work great. However, for a side project or a simple site, a relational store is likely better. NoSQL classes of databases are suited to scale well, but with quite a few tradeoffs.

    Are there places you’d use NoSQL? I’m curious. If your organization has adopted these stores, or rejected them, it would be good to share some information.

    Steve Jones

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

  • Deceptive Visualizations

    I’m sure there are plenty of examples, but I’ve seen deceptive data visualizations far too often in mass media. I don’t often watch the news, but at times I’ve been at the gym, saw a graph on a television and been a little surprised. The issue is similar to what’s discussed in this SAS article on deceptive graphs.

    In this case, the problem is likely what the author describes. An axis was moved, which what I often see in the news. Rather than starting at 0, often the image might start at 20 or 30 on a scale of 1 to 100. As a result, the differences between two bars, lines, or whatever is on the graph is distorted.

    This might be unintentional, as more and more graphing tools try to “size to fit” in a space, and can alter graphs, but in many cases, I think the author of the report is deliberately emphasizing something to evoke a reaction in an audience.

    I suspect this also happens inside companies. Someone might change scales or axis starting points to emphasize or de-emphasize some part of the data. I could see sysadmins wanting to de-emphasize downtime, but they might want to emphasize a cost savings to get management to make the decision they would prefer.

    The article linked above makes a good point. If you do this, your credibility is undermined if someone notices. Maybe the media doesn’t care, but I know that trying to deceive the person that signs your checks, or has some impact on your future employment, is a bad idea. These days, it is hard to find good help, but that doesn’t seem to stop a lot of companies from getting rid of bad help a times.

    Present data the way you’d want to see if your positions were reversed. Or if you wanted a decision to be the opposite of that you are hoping for in this instance. You might get a short term win, but in the long term, I would argue your credibility and reputation are worth more than a short term win.

    Steve Jones

  • Evaluating a DBA (or AI)

    Interviewing is difficult for many organizations. Often they don’t have a consistent process, and very often the people that do initial screening don’t know much about what a DBA does. Many of the somewhat trivial questions I see on Internet lists (what’s a clustered index?) are suited for someone getting started in the business, not for hiring an experienced DBA.

    Sure, an experienced person ought to be able to answer those questions, but the real world often requires more nuanced questions that relate to the situations we find ourselves in. I found a list from Joey D’antoni recently, which has lots of open ended questions, designed to allow someone to talk about what they know and think, giving the interviewer the chance to gauge their level of expertise.

    I especially like the questions around tuning and configuration. Tell me what you’ve done in the past and why. That way someone can tell you a story about their experience and then relate this to practice solutions. There is no good way to talk about these situations if you haven’t lived them. You might read someone’s blog, but a few follow-up questions on details will show whether you really understand the solutions or not.

    Of course, you need a good interviewer that knows something about these topics to understand whether the answers make sense or not. An HR person or manager isn’t likely going to be able to judge how a candidate performs. While a developer or sysadmin might be able to gauge whether the person has spent time with SQL Server, if you need a really experienced person, you need someone equally experienced to interview them. That can be a challenge for some companies.

    Hiring is difficult, but with more junior or intermediate positions, it might not matter as much. Evaluate whether the person has some knowledge and fits with your team. Can they work with others, which isn’t the same as just agreeing with them. Maybe more importantly, can they learn. Do they learn from your questioning, or have they shown they are learning.

    For more senior people, references and networking matter a lot. If others recommend them (or don’t), that says a lot. It’s good to initially decide if this person is a good fit, and then engage someone like Joey or Glenn Berry (or Tim Mitchell in the BI space) that might provide a better evaluation of your short listed candidates.

    Steve Jones

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

  • Tracking, Privacy, and Lots of Data

    Half of all advertising dollars are wasted. We just don’t know which half.

    That’s a common view from people purchasing advertising, and it’s why I expect that this saying is what has led to complaints from Google, Facebook, and other large firms that track people across different sites and apps. They have built frameworks that make it easy to add metrics to other software and derive advertising revenue for a vendor. As a result, many people building mobile apps use some framework from a large vendor.

    Apple has been fighting back a bit. I don’t know Apple is terribly altruistic here, but I do think their changes to implement some privacy controls for users are good. The article linked here talks about some of their recent changes in iOS and the complaints from vendors. There are also some notes about the way this impacts everyone.

    There is an Apple white paper about why Apple is changing, and its story is a bit disturbing, showing how a few common daily actions result in data being tracked. It certainly is something I know happens as I’ll see ads for Redgate products on a volleyball site or ads for the bike in which I was interested on a technical database article. It’s annoying and frustrating. I get the idea of making many advertising impressions to influence me, but it’s also distracting when I’m doing something unrelated. Maybe more annoying is that once I buy something, I’m no longer interested, but I still see the ads.

    I don’t mind a company tracking me on their site and showing me something that is possibly related to what I am doing. I do mind having apps do this across apps, and companies aggregating and selling this data. I know this has happened for years, but the scale of today is more problematic. For me, this truly is an issue that needs to be addressed with more control and respect for the human rather than the organization.

    I loved my iOS devices for years, until they removed the headphone jack. I switched the Android, and I’ve been happy, but now I’m in the same situation as the last few Android phones don’t have headphone jacks. I like the choice I get, but that freedom comes with a price in this space. I’m not sure I see Google, or really most manufacturers using Android, making a good choice here for humans. I’m not sure Apple is a lot better, but this is a little better.

    I’d like to see more platforms open, but with also some accountability and responsibility from vendors that doesn’t just make the customer the product. Instead, let the customer choose what data to allow, and then you can adjust prices accordingly. If someone wants to give up all their information for less cost, fine.

    However, let me also choose privacy if the value is there for me. I’ll happily pay for it in many places.

    Steve Jones

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