I
wonder if I had started my career as a PostgreSQL DBA or MongoDB DBA, would it
be easier for me to accept the
rapid growth and the variety of data storage solutions and our new reality of
the Polyglot persistence?
Polyglot is the term
that came from the Ancient Greek meaning speaking many languages. Polyglot persistence is about storing your
data not only inside SQL Server but in multiple data storage technologies.
Whatever suits better your application needs or sometimes even single
application component.
Be
prepared that tomorrow or next month one of developers will come up with some
"other database" which (they will be 100% confident) will serve their
application needs better. In some
situations they might be right. My
own first natural reaction to those situations is to immediately start
searching for "why not" arguments. To keep them in SQL Server. These
days I try my best to hold this reaction and allow them to try. If it will work
out - everyone will be happy. If not, everyone will learn.
If you push yourself
to this change, you soon will realize that the learning curve is not that huge
and you are not starting from zero level. Data can be modeled in various forms. Relational form, document form or key and value form but you already understand how to deal with data
and how to take care of it. And believe me or not, the concepts are quite
similar.
Of course, your
developer is now convinced that he will not need a DBA with his brand new NoSQL
technology. Surprise him. You, as a DBA, and Mr. Developer have a strong focus
and interest on an entirely different yet equally important aspects of the application
infrastructure.
You know that data must be backed up on some agreed
schedule and from time to time it is beneficial to try and restore the backup
to make sure it is useful. Of course if data is important and needs to be persistent.
After digging for a
while you learn that the many open schema systems need someone to manage the
schema anyway. Correct data types impact queries in ElasticSearch, Cassandra and some other systems that I have
worked with.
Data modelling can
be tricky and experienced DBA has a lot of added value there. Some queries
might benefit from the pre-aggregations.
Monitoring your
server is another huge topic. Monitoring free space, monitoring queries per
second, events per second - trust me, Mr. Developer didn’t think about all
this. He will be more than grateful to have you as a part of his project. He
will re-learn to value DBA.
DBA stays DBA no
matter which technology he is managing. Your experience is very valuable and
you can append it to any technology you meet on your way.