Author Archives: askdba

Unknown's avatar

About askdba

Born to Sail, Forced to Work!

Sailing Through Three Decades of Database Administration: Lessons in Resilience and Innovation

Databases are the backbone of every data-driven application, a crucial element that fuels everything from simple web apps to complex enterprise systems. For over three decades, I have navigated the tumultuous waters of database administration, balancing technical intricacies with the often challenging dynamics of workplaces. My journey is not just one of keeping systems running but one of constant evolution—both in my career and in the technology I’ve used to build efficient and scalable databases.

The Early Days: Setting Sail

When I began my journey into database administration, the landscape was vastly different. Relational databases were becoming the cornerstone of digital infrastructure, but the tools and techniques we take for granted today were still in their infancy. Back then, designing a database was more about intuition and experience than adhering to well-defined best practices. It was like sailing uncharted waters, where the guiding stars were trial and error, persistence, and a touch of creativity.

MySQL and PostgreSQL were just emerging, promising a future of open-source solutions that could rival proprietary giants. I knew that these open-source databases were not just cost-effective alternatives but had the potential to evolve into robust, scalable solutions that could meet the demands of modern applications. I’ve had the privilege of working alongside both these databases from their early stages to their current iterations, witnessing firsthand how they’ve transformed the way we think about database design and management.

Navigating Database Design and Modeling: A Mastery in MySQL and PostgreSQL

As I worked through project after project, one lesson became crystal clear: the design and modeling of your database can make or break your entire system. Poorly designed databases lead to inefficiencies, performance bottlenecks, and often costly rework down the road. It’s akin to building a ship with weak foundations—you might stay afloat for a while, but you’re doomed when the first storm hits.

In my recent book, Database Design and Modeling with PostgreSQL and MySQL, I aim to guide readers through mastering the art of database design. This mastery goes beyond just creating tables and writing queries. It requires understanding the advanced concepts that keep systems running smoothly even when data size and complexity increase.

Normalization, for instance, often becomes essential for performance optimization. Indexing strategies are not just about speeding up queries but also managing trade-offs between read and write performance. Transaction management and concurrency control play critical roles in multi-user environments, ensuring data remains consistent even as users interact with the system simultaneously.

Scaling Databases: Preparing for the Storms Ahead

As data grows, scalability becomes a focal point. It’s one thing to manage a few gigabytes of data with ease; it’s quite another to manage terabytes or even petabytes of data without sacrificing performance. This is where techniques like sharding, replication, and load balancing come into play. They allow us to distribute workloads across multiple servers, ensuring that no single point of failure can bring down an entire system.

But scalability isn’t just about keeping your system running. It’s about preparing for the inevitable growth of your data and ensuring your database infrastructure can handle the storm.

Backup and recovery strategies are equally important. They act as your lifeboat when things go wrong—and things will go wrong in the world of databases. Without a solid recovery plan, you risk losing not only your data but also the trust of your users and stakeholders.

Integrating Databases with Modern Applications: Staying the Course

Databases don’t exist in isolation. They are integral parts of larger ecosystems connected to web and mobile applications that demand real-time, reliable data. Understanding how to connect, query, and secure your database in a modern web application environment is critical. With APIs and data layers becoming more complex, ensuring that your databases remain efficient and secure while supporting growing application demands is more important than ever.

The Future of Databases: New Horizons

While relational databases like MySQL and PostgreSQL remain essential, the database world is rapidly evolving. NoSQL databases have emerged as a popular solution for handling unstructured data, while cloud databases offer scalability and flexibility that on-premise solutions often can’t match. Integrating AI and machine learning into database systems is another frontier, opening up possibilities for smarter data management, predictive analytics, and automated optimization.

Staying ahead of these trends will be key to mastering database design and management in the years ahead. The ability to adapt to new technologies while maintaining a firm grasp on the foundational principles of database design will set the next generation of database administrators apart.

Final Thoughts: A Journey Worth Taking

Three decades in, I can say with certainty that database administration is not just a technical discipline—it’s an art. Like sailing through rough seas, it requires both skill and intuition. You must be prepared for the unexpected, adapt to changing conditions, and always keep an eye on the horizon.

Through my experiences, I’ve learned that the most successful database administrators are not those who avoid challenges but those who embrace them, using each storm as an opportunity to improve. And as we move into the future of databases, these lessons will only become more valuable. Whether you’re just starting your journey or are already deep into your career, there’s always more to learn, more challenges to face, and more opportunities to build something truly remarkable.

In Database Design and Modeling with PostgreSQL and MySQL, I aim to share these lessons and provide the tools you need to navigate your database challenges. Because at the heart of every successful system is a well-designed database—and the expertise to keep it running smoothly, no matter how rough the seas get.

I’m thankful to my co-author Ibrar Ahmed, a true professional and PostgreSQL expert. I would like to thank our publisher, Packt, for making this book possible and our primary editor, Tiksha Lad, product manager, Apeksha Shetty, and project manager,Aparna Nair , and the rest of the Packt staff. I also would like to send my gratitude to our technical reviewers Frederic Descamps , Naresh Miryala, and Seemanjay Ameriya. Not to forget our foreword author, Peter Zaitsev; we are grateful for his valuable time.

#designandmodeling #mysql #postgresql #opensource #databases #author

My Journey with MySQL Community and Beyond – MySQL Rockstar 2023

After the most memorable MySQL community event, #MySQLBelgianDays2024, and earning legendary recognition from the MySQL Community team, I have decided to share some thoughts about the importance of a community. 

Previously in life

As a former enterprise DBA, I have been part of other communities strictly focused on monetary and entitlement of accomplishments. I had a chance to work on world-leading enterprises and had ability access to the most advanced technologies for both software and hardware. This journey was fun, fruitful, and rewarding for me.

In the latter half of my career, I entered the open-source community of MySQL by shifting my prior decade and a half of experience into it. 

Entry to the open-source community

When I entered this community full-time, there were several controversial discussions and assumptions about Oracle’s acquisition of MySQL, the separation of MariaDB, etc. While some of those claims had some reality, most turned out to be baseless without knowing the intentions and future. 

The importance of Percona Live events and the Oracle MySQL team’s contributions to this community, which several other open-source contributors surrounded, was my entry point. There was a significant influence from hyper-scalers, known as initially social media companies, followed by SAAS and cloud vendors.  

I have watched, followed, and strictly learned from community leaders, including influencers like Peter Zaitsev. Although open-source communities feel and look like closed-circuit groups of geeks having fun, they are very open to newcomers. But remember, communities accept contributors, not watchers. What I mean by contributors is not just coming to a company-paid trip to the event once in a blue moon. Even if you attend an event as a visitor, you can still help by promoting and getting the word out through social media and other networks. 

Where to start?

One can share ideas, code tools, and software and become a speaker. If you aren’t the type of person who can speak and present, you can help others by providing content and ideas and having them review them. Let me help you get there and recognitions will follow.

How do I start helping and becoming a part of the community?

  1. Create a public repository of the tools and code you spend time on. 
  2. Start writing blogs about your experiences and sharing content. 
  3. Become a speaker or co-speaker with the same or similar subject.
  4. Conduct webinars and post-speaking events for those who were not able to attend. Include feedback and corrections to your talk. 
  5. Create training content on recorded videos and training sites. 
  6. Coordinate or help with local meetups. 
  7. Help sponsoring events. 
  8. Encourage to send co-workers to events. 
  9. Introduce newcomers to community veterans. 
  10. Author or co-author books and booklets. 
  11. Act as an event committee member. 
  12. Help to answer questions via GitHub issues or Slack channels. 
  13. Always spread the word through social channels.

If you still can’t do any of those, help marketing colleagues carry boxes of swag and give away materials, and set up and clean up booths for the events. You can always help sales and pre-sales folks by connecting your network. 

I have to credit Laine Campbell for introducing me to and allowing me to meet the most influential leaders of the MySQL community. 

Many thanks to Peter Zaitsev for all the help, support, and openness in accepting me into the MySQL community. 

I would also like to thank the past, current, and future MySQL Community team for their hard work.  The rest of the list is too long to mention here, but they know who they are.

Congratulations to all previous MySQL Rockstars and 2023 winners. 

MySQL Cookbook 4th Edition

A nomadic sailing dream that turns into book authoring and a new role…

The inception of the book

I want to start with a huge thank you to Sveta for her invitation to her engagement with O’Reilly as a previous author. Although I had mentioned that I had an inspiration to author a book and attempted to release a booklet in the past, this was somewhat unexpected in the midst of my first biggest pandemic. 

Unexpected and surprising developments

Let’s go back in time to the infamous covid-19 pandemic. We have been under pressure with the unknown virus with little or no hope of recovery anytime soon. I got an alert from one of the brokers about a sailboat I was interested in. After a few minutes of checking with my long-time friend Nurhan, I decide to make an offer. Unfortunately, our discussions didn’t go that smoothly, and I was informed that the boat was already sold to another buyer. I insisted on increasing the price and changing the wind direction to my side by writing a moral story to the broker, and he accepted it. Now, no flights were allowed during a total lockdown. 

The rest of the story is here

After three weeks of getting a special business permit, we landed in Zagreb, Croatia, and completed our purchase. The paperwork took about another three weeks to complete. That’s when I got the ping from Sveta about the possible authoring of a book. At the time, I worked at Percona as Sr. Technical Manager at the same company as Sveta. Strangely, I had an offer from another company within the same week. So I accepted to join PlanetScale as part of the Vitess Open Source project role. So now I have a boat to bring home, a new job to sign in, and a book to author. 

O’Reilly Experience

I had no prior experience authoring a technical book or working with a professional editor. The company has proven to be one of the best in the industry, working with the brightest minds and publishing hundreds of books annually. Here comes Sveta again for help while I’m planning a long pandemic-bound sailing journey and a new job with many unknowns. 

The MySQL Cookbook was initially authored by Paul DuBois and released three times. So it had massive content, and I had not gone through it in detail. Looking at the overall chapters and fast reading in 48 hours, I have decided to accept to co-author 4th release of the book. The original agreement was to update %60 of the content of the last edition. Since a significant time passed and MySQL advanced to hole new levels with MySQL 8 altering for new release would merely touch every part of the book. Not only MySQL itself, but there were also new programming languages to be added, and deprecated code had to be removed. 

Developments in making

Discussions and agreements were made based mainly on Sveta’s input on all the chapters, and I was mostly monitoring how this book could be turned into a new release. Besides the technical content and programming languages used, there was another challenge to the authors about the platform. 

It’s not a simple Word document or gdoc that had to be used, but DocBook and XML had to be mastered. After two years, I still lack the skill to do both. 

The process of authoring new chapters was more effective than rewriting or editing existing chapters. For example, the book used a different data set throughout the chapters, and we decided to change that. Finding a sample data set that is freely available and suitable for the entire book is difficult. So we had to go to multiple sources. 

The older chapters also had a lot of deprecated values and updates, which changed the storyline of the content. To fix those, we had to rewrite most of the chapters and revisit them repeatedly to ensure referenced content was not missing from other chapters. 

Key Takeaways 

Before agreeing to author a book, talk to other authors about the time and material, it takes for the type of book you are getting in. This will allow better planning of your work/life/book balance hence avoiding burnout. 

Once agreement is made, research the platform you will be responsible for authoring and training yourself—for example, Gitlab, DocBook, XML, etc. 

Take advice on how to plan or co-author the parts you’ll be responsible for. Record all agreements you made to keep track of the progress. Take everything very seriously and ensure it does not impact your other responsibilities. 

Be well organized in your time and planning. What times and which days you’ll be spending time on the book where? Create a cadence around this dedicated time, and it’s no different than finishing a degree. 

Allow extra time to deliver sections you’re involved in, as there’s a deep feedback circle. If you are authoring alone, this time will be reduced, but you’ll get feedback later in the process. If you are co-authoring, every chapter you’ve split will have to be reviewed before the first editorial. After the initial review, you’ll get feedback to clarify, modify, remove and rewrite multiple times. Some sections go into an endless feedback loop for a very long time. You’ll receive at least four to six technical people’s feedback later in the process and additional editorial feedback. So expect to return to a section or chapter you were involved in a year ago. 

Last but not least, do never over-commit yourself. This will decrease your productivity and lower the quality of the output. Timing is essential to fulfilling this lifelong dream of being an author. Some do it earlier in their career maybe a better result for authoring other books.  

I want to thank my wife, Aslihan, and my daughters, Ilayda and Lara, for their patience and support when I needed to focus and use family time to write this book.

Many thanks to my colleagues and team at PlanetScale, especially Deepthi Sigireddi, for her extra care and support. Special thanks go to the MySQL community, friends, and family members.

I also want to take a moment to thank Sveta Smirnova for her endless support while coaching me throughout my first book journey.

You can read the book here,

Thank you

Hustle for that Muscle

Self-motivation

I have been asked several times about my diet and exercise practices. I thought it would be good to share it here as for a healthy business life we all need a balance between our work and life. Before getting into exercises and other dietary recommendations we need to clarify the motivational part.

Self-motivation to achieve the most beneficial goal in life “A healthy living style”. This should be our only goal since without our health nothing else matters. Even if they did there would be no room to focus on them. Many people would take this as a goal when they realize it’s been late or faces health issues in their mid-thirties. Life comes with several ups and downs and such life events with pretty much poisonous diets we totally forget about our real cause which is long living with health under our belt.

How do I motivate myself?

Like every other goal I have a short, mid and long term plans those fit my lifestyle and genetic characteristics. Everybody is different in their physiology, DNA, lifestyle, living conditions and other factors. So be realistic when setting goals and compare with your abilities, dedication and past experiences. We’re in a new year and the gym I’ve been going has been super busy lately. I asked a few friends and trainers what’s up with this crowd and the answer was don’t worry “It’s new year resolutions, those will wear out soon.”. Sure enough, just before March of this year I’m already noticing attendance is less and less every day. I’m sure by the summer it’ll be back to regulars only. So in order to make your motivation stick, attach it to a goal, a realistic one.

Short term goals and results

Exercising hard will give you some results depending on again age, size, DNA and habits. But don’t expect to see a change in your body overnight. Even if you lose a couple of pounds/kgs that’s mostly water, you’ll gain more of that faster than you’ve lost it.

Going back to the motivational part. Believing that you’ll achieve your goals in a given time period and keeping that pace for a prolonged period of time will give you the answer you need.

My advice is to do the same exercise, in the same place, with the same people, at the same time every day… or whatever your schedule allows you. Exercise time should overlap as little as possible other activities so your focus will go 100% to your exercise instead of something else.

For example, if you need to take care of other errands, walk the dog, drop kids to school etc. in the morning, alter your exercises time to midday or evening. This will keep you motivated to your ultimate goal of healthy living.

The way I motivate myself is very similar and I do it in the morning for a reason. I’m a morning person: with a short and light sleep overnight, I can wake up fresh. So I take advantage of this as much as possible by taking care of things early otherwise I would not have time. As of this writing, I’m at a high pace with 6 days/week 30 minutes intense training which we’ll get into detail about below.

The second biggest item here is the infamous diet that you’ll need to accompany your exercise. We will go with 80/20 rule here and motivation along with a diet, of course, will be your 80%. If you are surprised by this, it’s the reality that people don’t think of to start with. Exercising a lot does not allow you to become fit or live a healthy life. In fact, most exercises people do for a long period of time such as running, cycling or weight lifting have damaging side effects. I will not get into details here for these but you may research easily. Or just look around at your friends and family members to see complications they’ve faced after so many years of training hard.

What’s a healthy diet?

This is a big subject and there are so many resources to come to some sort of conclusion here. My take on this is starting with our body’s biggest enemy “Sugar..!” Why is sugar bad? Because we humans aren’t designed to live only on sugar but many eat only a sugary diet. What really happened in the 20th Century is we turned into Sugar Monsters. Everything including all GMO products contained heavy amounts of sugar which had more sugar than pure sugar originally had. Yes, you read it right you can have a higher sugar index than actual 100% sugar on a product. Those products are in your kitchen cabinets and fridges and you are consuming them without hesitation. The other enemy to your body fitness is fat. Taking organic and healthy fat such as olive oil will help you boost your diet. Avoid all others by any means.

A healthy diet is a balanced diet which means consuming your vitamins, proteins, fat, and carbohydrates properly. Look up your needs per your weight size. If you need to lose some weight be on the deficit if you need to build some muscles be on the plus side with a bit more on protein than you would need (1gr of protein/pound a day). Remember this isn’t a competition, it’s for your health. Do the right thing and reduce sugar consumption by going on a low-carb diet. This diet doesn’t mean you’re fasting, you are actually in control of your diet paired with proper exercise and active living. Although intermittent fasting is proven to be healthy as well. This is how I get results so why shouldn’t you?

Last but not least our 20% of the goal which falls to exercise. In order to reach results in less than six months you need to give a bit more than the regular cadence of exercise. Gym membership has some benefits from an exercise standpoint. I’ve personally never liked gym exercises when I had a chance to play team sports like volleyball, basketball or soccer or outdoor sports. Enrolling in gym membership has some other benefits like your dedication and obligation to exercise at a cost. This money you’ll spend somewhat motivates you to gain your return on your investment. Though this isn’t always true with the budget and long term membership deals we get lately. The other benefit I see here at the gym is free group classes. They are fun, energizing and free most of the time. Third, but most important, the gym has access to professionals like personal trainers and athletes that you may not find on streets. You can consult, hire and gain information about your goals. Aside from that, cycling, running or any other cardio will help to meet your goals.

Exercise that fits for all

A body needs a minimum of 30 minutes of intense (non-stop) training a day. If you can double this up you’ll see results (fat loss, muscle gain) faster. You need to add or remove according to your need, but watch your cardio levels and don’t overdo or stress your body. I suggest cross-fit, conditioning and boot-camp-style exercises. Adjust your focus area of exercises depending on your current shape and balance the upper, lower or mid body.

Before starting your 30 minutes of exercise, I strongly suggest doing a minimum of 5 minutes warmup with an indoor row, elliptical trainer or treadmill to bring your cardio levels up.

I also suggest having at least one day of outdoor activity hiking, biking, sailing, fishing that has not only the physical exercise part but gives you the mental freshness you’ll need from your hard week at work.

Exercise Program (Recommended)

Monday – Wednesday- Friday | Morning/Evening (Alternate) | Exercise 30mins of intense cross-fit/conditioning

Tuesday – Thursday | Morning/Evening (Alternate) |Exercise body weight parts lower, upper, back

Monday – Wednesday – Friday | Noon (Optional)| Swim freestyle 30 mins/30 laps

Saturday | Morning/Evening (Alternate) | Freestyle biking/hiking

Sunday | Morning | Run for 30 mins regenerative (Indoor/Outdoor) / Coordinated bike ride of 50-80km

Saturday/Sunday |Weekend (Enjoy the weekend with an activity)| Hiking, Biking, Camping, Fishing, Sailing, etc (Outdoor activity when possible)

Once a week team or group sports in evenings (Soccer|Volleyball|Basketball, etc)

Above is an ideal world scenario but that’s something always not possible to achieve with busy work/life balance. If you can commute to work or the gym by bike that would  add to your total exercise counts. Remember one of the best exercises for humans is walking. So take advantage of that.

Although I’ve been training and exercising for decades as an all-time athlete, I never practiced any sports professionally. All the research and development are results of self-studies and they do not necessarily include professional health recommendations. Motivate, diet and exercise at your own risk, please.

Recommended reading :

Brain Rules

Grain Brain

Recommended Apps for calory intake monitor

MyFitnessPal

 

What’s BurnOps?

640px-Fire-Forest

In about every five years or so there is a new term born for a tech job role or function. We have seen this on all levels of engineering jobs as well as other business roles. Here, I want to share some thoughts on another term called BurnOpsThis isn’t a job role or title but it’s a consequence of having one of those technical roles. Do not mix it with Firefighting this is actually being burned of off unbearable work.

In the operation world of most administration jobs a.k.a admin jobs (network, system, database), the names were correlated with the area of interest. When the Dev team also responsible for Operational tasks it’s called DevOps. This way they also do hold pager and respond to incidents thus support issues to solve. This may also be referred to as the only ProdOps and it goes like that.

When the tasks of operations or software engineer become overwhelmingly stressful it turns into BurnOpsThe consequence of BurnOps is generally a loss of a job.

Let’s take a look at the main contributing factors what leads to BurnOps:

  • Life events and pressures
  • Poor leadership at work
  • Unrealistic work expectations
  • Skills mismatch
  • Chaotic workplace
  • Work/Life/School balance

As the order of contributing factors may vary by every person, in my opinion, top one reason to BurnOps is the surrounding life events and pressures they come with an added bonus. To be perfectly honest if there is a “Poor Leadership” at your workplace is not the case this will still stand out as number one.

In the career planning people mostly tend to be in relationships in their most productive age. These relationships usually result with marriage or other long-term commitments which involves having children and relations to extended family members. For those who are not in this category please move onto the next assessment. These life events followed with financial commitments such as a new house or car loan, overspending for a new place, gifts, travel and more can cause such turmoil that eventually can cause BurnOps while committing other operational tasks under pressure.  I suggest re-evaluating the priorities if you find yourself in this situation.

Poor leadership is a number one cause of employee depression in the workplace. This combined with any other factor listed above can immediately cause BurnOpsI don’t want to repeat the fact that “People don’t leave companies, they leave managers” analogy here still poor leadership that impacts the employees most to reach their BurnOps thresholds fast. Leaders can help employees to hump through their difficulties by changing some priorities and bringing some extra help with proper planning.

Unrealistic work expectations both from employer and employee side are a very common cause of BurnOps. As I mentioned earlier operational tasks are not only risky also pretty stressful to execute. Some of the tasks are so risky that outcome can cause major outages, loss of data and even legal problems. Combined with long working hours and coverage commitments shifted work weeks, timezone differences, multi-tasking duties as well as policies and procedures are all things needs to align. Ideally, proper resourcing and planning can easily overcome to avoid finding yourself in this situation.

Skills mismatch is another leading cause of BurnOpsWhile it can be assumed the responsibility of leadership, planning sometimes you’ll find yourself into a job that you aren’t cut for it. Often times it’s referred to as taking a challenge. This challenge can be so big that it leads you up to BurnOpsThe ideal solution for this is to asses the challenge and ask your mentor to discuss before getting into. If you have already taken the challenge and find yourself in BurnOps situation, plan for a change immediately.

A chaotic workplace is for real. You can never imagine ending up with one of those places where you have no intention to be part of past problems. Several companies in the past with great talent turned into a chaotic workplace after some changes in business, market conditions and other factors such as executive leadership changes. You may be in a chaotic workplace and literally trying everything but still, find yourself in BurnOps situation there’s always for another alternate job elsewhere. Look for one.

Work/Life/School balance is another leading cause of BurnOps. Let’s start with work/life balance and what that means. It simply means that you spend enough time with your family and friends along with the personal time that’s much needed to be successful at work. Start with a personal time that’s needed. Ask yourself this question “Do I have enough time for myself?“. If the answer is negative please refer to my earlier posts about Are you a workaholic? and Is 24x7x365 days+6 hours and leap seconds availability possible? In our long-term planning, there are times you may need to revisit academic career or some sort of certification which will bring additional stress to work/life balance. Life is too short to miss this train to find work/life balance.

We also need to acknowledge Site Reliability Engineering (SRE) role that helps us remove the toil and build new features efficiently in a scalable manner. The goal is to remove the recurring issues with a satisfaction which should help work/life balance in return.

In conclusion, BurnOps is a reality you may face in some parts of our career. As long as it’s short-lived with minimal damage it’s okay to learn some lessons from it. Taking a long break, changing locations and focus area, as well as employers, are other options to overcome this outcome.