I am an IT Professional who has managed a range of PostgreSQL projects across diverse geographies since the year 2012. Throughout my career, I have held multiple roles, including PL/SQL Developer, Oracle to PostgreSQL Migration Expert, Database Lead, PostgreSQL Database Administrator, Corporate Trainer, PostgreSQL Developer, and many similar roles.
I regularly participate in pgConf India, where I’ve also delivered lightning talks. I frequently write blogs about PostgreSQL and co-authored a book titled “PostgreSQL for Jobseekers,” published in June 2023. Additionally, I have developed a LinkedIn Learning course called “PostgreSQL Backup Tool – pgBackRest,” that got launched in April 2024. Currently, I am serving on the Code of Conduct committee in the PostgreSQL Community for the 2024-25 period.
Data and databases have been the area of my interest since my University days. In 2012, a project lead at my company wanted to conduct a proof of concept (PoC) for PostgreSQL. At that time, Oracle was dominant, and many were hesitant to consider migrating from Oracle to PostgreSQL due to fears of switching to a less popular database. As a recent graduate eager to work with any database, I seized the opportunity and requested to take on the task. Initially, they were hesitant because I had no prior database experience, but with limited options, they agreed.
I was assigned a government project containing complex DB code with various Oracle-specific features like UTL_FILES, CONNECT BY PRIOR, triggers, MERGE Statements and what not. Converting certain aspects of the code proved challenging, as there were few functionalities available at the time that could match Oracle’s performance. Despite my limited knowledge, I was the sole person responsible at the DB Side as no-one was ready to work in PostgreSQL. After putting in long hours, I completed the PoC in three months. The client was pleased with the demo, and as a result, my company secured the migration project. This marked the beginning of my journey with PostgreSQL.
My first project – migrating from Oracle 10g to PostgreSQL 9.1, which included over 700 stored procedures, 200 functions, and 100 packages. The data also featured a wide variety of data types including custom data types. This project provided me with invaluable experience in working with databases. Today also, when I think of migration, I remember the dos and don’ts done at that time and try to apply them in my projects today also. I also learnt how to do DB Code during that process.
I have been doing multiple contributions to PostgreSQL via blogs, LinkedIn Learning Course, Co-Authoring a book – to name a few. However, I am yet to contribute to a PostgreSQL project that could make me proud.
I wish to become a PostgreSQL Committer and develop some nice features with AI or ML or contribute for SQL Query performances.
Have you faced any challenges in your work with PostgreSQL, and how did you overcome them?
The first version I worked with was PostgreSQL 9.1, which was relatively stable at the time. My initial projects involved migrating from Oracle to PostgreSQL, including both code and data. The migration of the code was particularly challenging due to the extensive use of Oracle-specific features. A major issue I encountered was with complex queries that relied heavily on built-in string and date functions, which resulted in poor performance in PostgreSQL. I had to completely rewrite the code to ensure no hindrance in performance, by removing unnecessary date/string functions and updating the data types at the table level to eliminate the need for conversions, allowing the queries to produce the results efficiently. Additionally, tuning the queries using the EXPLAIN plan proved to be very helpful.
In this project, they were also using Oracle’s PRAGMA AUTONOMOUS_TRANSACTION, which allows a new transaction to be initiated within another transaction, with the ability to commit or roll back changes independently. This was primarily used for auditing purposes, ensuring that the outcome of the main transaction wouldn’t affect certain critical operations. After extensive research and experimentation, I ultimately decided to use a database link and create two separate database connections. This approach allowed me to start a new transaction on a different connection, enabling independent commits or rollbacks. Although this was not the ideal solution, as it could pose security risks as same connection was used to access two different databases, we adapted it at that time since security was not a major concern for that specific module.
Community Involvement:
– I frequently write blogs on PostgreSQL which can be found on my current company’s website – https://www.percona.com
– I do try to speak at the PostgreSQL conferences. Till now I have given lightening talks at pgConf India.
– I have co-authored a book titled “PostgreSQL for Jobseekers,” published in June 2023. This book talks about the basics to intermediate concepts of PostgreSQL. (https://www.amazon.com/dp/B0C8Z4C9TQ/ref=sr_1_1?keywords=9789355514004&qid=1687431427&sr=8-1#customerReviews)
– I have developed a LinkedIn Learning course named “PostgreSQL Backup Tool – pgBackRest,” launched in April 2024. (https://www.linkedin.com/learning/postgresql-backup-and-restore-with-pgbackrest)
– Currently serving on the Code of Conduct committee in the PostgreSQL Community for 2024-25.
you share your experience with mentoring or supporting other women in the PostgreSQL ecosystem?
I have trained multiple experienced as well as fresher girls/women in database so that they can kick-start their journey in PostgreSQL.
Insights and Advice:
For women starting their careers in technology, particularly in database management and PostgreSQL, embracing a mindset of continuous learning is essential. Technology is always evolving, so staying curious and seeking knowledge can be incredibly beneficial for them. Gaining hands-on experience is also crucial; working on real projects, whether personal or through open-source contributions, allows them to apply their skills practically and deepen their understanding.
Engaging with the PostgreSQL community can provide valuable support and networking opportunities. They can build connections and foster a sense of belonging by participating in forums, meetups, and conferences. Seeking mentorship is another important step; finding mentors who can guide them through challenges and share insights can significantly impact their career journey.
This is true for anyone working in IT and specifically in Open Source technologies. Normally women are shy and don’t network easily but remember “Network is Net worth” nowadays and we should not move away from the same.
Are there any resources (books, courses, forums) you’d recommend to someone looking to deepen their PostgreSQL knowledge?
PostgreSQL is one of the most powerful opensource database today whose development started in 1986. It is a matured RDMS whose contributions are available across the globe PostgreSQL Documentation on the community website acts as a bible to understand the concepts of PostgreSQL which I highly recommend (https://www.postgresql.org/docs/current/)
-Apart from that, one can engage using PostgreSQL Mailing lists.
-Stack Overflow is a great place to ask questions and find answers about PostgreSQL.
-Additionally, I recommend PostgreSQL Wiki as one more good resource.
-Also, there is a dedicated Slack Channel for PostgreSQL where one can find very good stuff.
Looking Forward:
I am also an aspiring Data Science enthusiast, so any feature integrating AI & Machine Learning with PostgreSQL excites me. I am looking forward to when PostgreSQL will have extensive functionalities with ML, AI and similar concepts
Do you have any upcoming projects or goals within the PostgreSQL community that you can share?
I am actively contributing to the community through various initiatives mentioned earlier888. However, I haven’t yet made contributions to the coding side of PostgreSQL. I aspire to develop something and become a committer on the PostgreSQL Committee.
Personal Reflection:
Being part of the PostgreSQL community means engaging with a vibrant, diverse group of individuals who are passionate about open-source technology and database innovation.
How do you balance your professional and personal life, especially in a field that is constantly evolving?
Balancing professional and personal life in a constantly evolving field can be challenging but rewarding. One effective approach is to set clear boundaries between work and personal time. This involves establishing specific work hours and sticking to them, allowing for dedicated time to recharge and engage in personal interests.
Women often find themselves juggling multiple roles, particularly after becoming mothers, making multitasking a necessity. During challenging times, having a strong support system at home and at work is crucial. It’s important for them to continue on their professional paths, even if they can’t excel in every aspect. Taking breaks whenever needed is also essential for maintaining well-being and preventing burnout. Planning ahead can help maintain a balance between work and home life, ensuring that both responsibilities are managed effectively.
Prioritization is also key. Identifying what is most important, both professionally and personally, helps in making informed decisions about where to allocate time and energy.
Continuous learning is important in technology, but it can be managed by incorporating it into daily routines without overwhelming oneself. For instance, dedicating a small amount of time each week to learning new skills or exploring new technologies can be effective without disrupting personal life.
Message to the Community:
To all the women in the PostgreSQL community and those aspiring to join: their contributions are invaluable. The tech field thrives on diverse perspectives, and their voices can drive innovation and inclusivity. They should not hesitate to share ideas, ask questions, and seek support. It’s important to remember that every expert was once a beginner, and their journey is significant. Connecting with others, building networks, and celebrating achievements—both big and small—are essential. They belong in this space, and their presence enriches the community!
Our idea explores the implementation of AI-driven query optimization in PostgreSQL, addressing the limitations of traditional optimization methods in handling modern database complexities. We present an innovative approach using reinforcement learning for automated index selection and query plan optimization. Our system leverages PostgreSQL’s pg_stat_statements for collecting query metrics and employs HypoPG for index simulation, while a neural network model learns optimal indexing strategies from historical query patterns. Through comprehensive testing on various workload scenarios, we will validate the model’s ability to adapt to dynamic query patterns and complex analytical workloads. The research also examines the scalability challenges and practical considerations of implementing AI optimization in production environments.
Our findings establish a foundation for future developments in self-tuning databases while offering immediate practical benefits for PostgreSQL deployments. This work contributes to the broader evolution of database management systems, highlighting the potential of AI in creating more efficient and adaptive query optimization solutions.
This talk provides an introductory overview of Artificial Intelligence (AI) and Machine Learning (ML), exploring key concepts and their application in building intelligent systems. It will highlight the essential AI/ML techniques, such as supervised and unsupervised learning, and discuss practical use cases in modern industries. The session also focuses on how PostgreSQL, with its powerful extensions like PostgresML, TimescaleDB, and PostGIS, supports the development of AI-powered applications. By leveraging PostgreSQL’s ability to handle complex datasets and integrate machine learning models, participants will learn how to build scalable, intelligent solutions directly within the database environment.
Success is a multiplier of Action, External Factors and Destiny.
Out of these three, the only controllable aspect is our action. Again, action is the result of our EQ, IQ, SQ, and WQ (Willingness Quotient) together.
We all want to be successful and keep trying to motivate ourselves with external factors. We read inspirational books, listen to great personalities, and whenever possible upgrade ourselves with more knowledge and the list goes on.
Indeed these are excellent motivators, but in this process, we forget the most important source of energy, YOU!
We read other stories to feel inspired, thinking “I am not enough!”
But, the day we start accepting ourselves, introspect, understand, and align our life purpose with our routine, we find the internal POWER. This is a continuous source of motivation and energy which we need at down moments. When we feel, lonely, stuck and seek help, our inner voice is the greatest companion.
But, how many times do we consciously think about our “Subconscious”?
“Journey to Self” is our structured coaching program where we take back focus from the outside and delve deep inside to find our inner strength. Focusing on self-acceptance and personal growth
I believe everyone has POWER within them!
Let’s be the POWERHOUSE!
Human, AI, and Personalized User Experience for DB Observability: A Composable Approach
Database users across various technical levels are frequently frustrated by the time-consuming and inefficient process of identifying the root causes of issues. This process often involves navigating multiple systems or dashboards, leading to delays in finding solutions and potential downstream impacts on operations.
The challenge is compounded by the varying levels of expertise among users. It is essential to strike the right balance between specialized and generalized experiences. Oversimplification can result in the loss of critical information, while an overwhelming amount of data can alienate certain users.
Developers and designers are constantly navigating these trade-offs to deliver optimal user experiences. The integration of AI introduces an additional layer of complexity. While AI can provide personalized experiences within databases, it is crucial to maintain user trust and transparency in the process.
The concept of personalized composable observability offers a potential solution. By combining the strengths of human expertise, information balance, and AI-driven personalization, we can create intuitive and user-friendly experiences. This approach allows users to tailor their observability tools and workflows to their specific needs and preferences.