Editorials

What if your database can be more aware?

I’ve become a big proponent of the cloud – but for surprising reasons. I think there are big, broad, wide-ranging lessons to be learned about how to manage data, how to relate data and even learning across data sources. Sure, (booming voice) Big Data — has all sorts of promise. You’ll get a boost to learnings and use of your information. I get that.

But I think the accidental discoveries are going to be some of the best finds. If we can figure out how to look out beyond our own data borders and use larger sources, we’ll leverage even more.

But with the expanding awareness comes additional help – if we can address and correct hesitancies about the cloud – whatever they may be – if we can do that, we can start to learn so much more about managing that information. Best practices that will become instantly obvious across so very many database instances.

Things like usage patterns and access patterns and all sorts of things like that – that come from the aggregate and get tuned for the individual – will be possible. This is one of the areas Azure SQL Database is stepping up in several places.

For example, there is now the ability to recognize unusual activity on the system. The database engine is paying attention – recognizing odd items in the logs or activity and then notifying you of this. You can jump in much more quickly by reacting as soon as it’s seen. I hope this is a first step. I’d love to be able to indicate the types of activity flow and exceptions to notify for, and the types to block or take other actions for, automatically. It’s still reactive at this stage, but much more quickly.

Tuning, performance and managing the database pieces that are touched by those can also be self-administered – we’ve seen for awhile now that different optimizer options exist that look at activity and then recommend indexes and the like. The nice thing about this is that it adapts over time – it’s not a “one and done” type tuning, it’s more active. This includes paying attention to queries, indexes and more.

I think a lot of the learning is coming from the vast numbers of database instances that are running through Azure. You have to know that behind the scenes, the servers running all of the resources are closely monitored and the lessons learned can not only be learned, but vetted many times over before anything formal is done. But this type of broad brush-stroke learning being made available to your specific instances is great news.

It would be great to get some reporting and recommendations on things that aren’t necessarily real-time in terms of updates, and to have some proactive management in the future. Perhaps setting bounds or ranges will help prevent surprise activity from triggering an alert.

If we can continue to grow this collective intelligence about how databases run and react and we can all learn from the mass of circumstances behind database implementations, I think we’ll all be better for it and have better solutions for it as well.