logo
Menu
Seamless Scaling: Amazon Aurora Sharding and Traffic Management on Kubernetes

Seamless Scaling: Amazon Aurora Sharding and Traffic Management on Kubernetes

An interview with AWS Hero Trista Pan on distributed database architecture to improve throughput and performance plus the full recording of her session from AWS re:Invent 2023.

Mark Pergola
Amazon Employee
Published Feb 12, 2024
AWS Hero Trista Pan is blowing the doors open on open-source. As the recipient of the “2020 China Open-Source Pioneer” award & the “2021 OSCAR Top Open Source Pioneer”, she is passionate about others in the data space having everything they need to stay ahead of the curve. At AWS re:Invent 2023 she gave a much-anticipated talk on Amazon Aurora sharding and traffic management on Kubernetes.
Below is the full recording of her session along with an in-depth interview to take you farther into the topic and her brilliant thinking.
Who can learn from your talk and what is the most important thing you want them to do differently after hearing it?
"The talk is relevant for a wide range of audiences including database administrators, developers, architects, and individuals interested in or learning about distributed databases and cloud databases. It is particularly valuable for those facing challenges with massive queries requiring low latency in highly demanding read or write scenarios.
The most important thing I want them to do differently after hearing the talk is to consider leveraging a database proxy or gateway, such as Apache ShardingSphere, to automate data sharding and load balancing for improved throughput and performance in their database. Additionally, I want them to understand the benefits of leveraging a flexible shard-nothing distributed database architecture, enabling them to effectively utilize the database service in both on-premises and Kubernetes environments."
Is there anything someone should understand first before watching your talk, and are there community content resources that would help them prepare?
"It would be beneficial for individuals to have a basic understanding of cloud RDBMS, such as Aurora, RDS and their performance and availability considerations. Familiarity with the challenges associated with handling massive queries in demanding read/write scenarios, and database migration would also be beneficial. There are several community content resources that can help individuals prepare for the session:
Community Forum & Articles:
  • This forum of articles on community.aws is a great resource
  • This blog by Ankush Agarwal explaining databases, data warehouses and data lakes is helpful.
Relevant posts of mine for your reference:
Apache ShardingSphere Documentation:
How do you see generative AI impacting this particular topic?
"I believe that GenAI presents us with the opportunity to revolutionize a wide range of products across most of the industries, such as online shopping, financial technology (FinTech), and more. When it comes to big data and database, there are several relevant topics that we can consider based on user specific cases.
Privacy Concerns: GenAI addresses privacy concerns by generating synthetic data that resembles real-world data, enabling analysis without directly accessing sensitive information.
Business Insights: GenAI can help analyze large datasets, uncovering patterns and trends for data-driven decision-making.
Automation and Optimization: GenAI can automate data management tasks, streamline processes, and optimize resource allocation in cloud environments, improving efficiency and performance."
What didn’t you cover in the talk because time was limited that you wish you could have?
"Due to time limitations, there are several aspects that could not be covered in the talk but would have been valuable to discuss. Some of these include:
Additional Features of ShardingSphere: The talk could have delved into more features offered by ShardingSphere, such as data encryption, authentication mechanisms, and observability capabilities. These features are important for ensuring data security, controlling access to the database, and monitoring the performance and health of the distributed database system.
Real-World Scenarios: Providing more real-world scenarios and use cases would have helped users understand the specific issues that this solution can address. This could include scenarios like handling high traffic loads, scaling the database system horizontally, and managing data across data centers on Kubernetes or on-premise. Users can find more here."
What’s one question you wish someone would ask you about this topic?
"One question I wish someone would ask about this topic is: “What are the important factors to consider when adopting a sharding or distributed data solution?”
The answer would involve discussing the significance of the sharding key and sharding algorithm in achieving better query performance and efficient data management based on specific use cases.
Sharding Key: The selection of an appropriate sharding key is crucial. The sharding key determines how data is divided and distributed across different shards or partitions. It should be chosen carefully to ensure an even distribution of data and to minimize hotspots. The sharding key should also align with the query patterns of the application to ensure efficient query routing and retrieval.
Sharding Algorithm: The sharding algorithm determines how the sharding key is mapped to specific shards. It defines the logic for determining which shard should handle a particular data record or query. Various algorithms, such as range-based, hash-based, or composite-based, can be used based on the specific requirements of the application. The choice of the sharding algorithm should consider factors such as data distribution, load balancing, and ease of maintenance.
By considering the sharding key and sharding algorithm, users can achieve improved query performance, efficient data distribution, and scalability in their distributed data solutions."
How did you become an expert in this area, and why is it an area you are passionate about?
"Actually, these two questions have a consequence: The passion for data and cloud computing is the driving force behind my motivation and enthusiasm to become an expert in this field. Secondly, there are some specific techniques for your consideration:
  1. Delve into Your Profession: Immerse yourself in your work, allowing you to encounter specific challenges, accumulate experience, and refine your skills.
  2. Learn from Veterans: Engage with experienced professionals in the field to gain valuable insights, spark ideas, and broaden your understanding.
  3. Stay Current with Cutting-Edge Knowledge: stay ahead through research papers, articles, conferences, and online resources.
I’m passionate about the field of data management and cloud computing because I believe that data is like a hidden treasure just waiting to be discovered and utilized. With the rise of projects and tools that tackle the challenges posed by the 5 V’s of Big Data (volume, value, variety, velocity, and veracity), it’s an good time to be in this field. Moreover, cloud computing has revolutionized the potential of big data and created a lot of possibilities. It’s like a playground where we can use our skills and talents to explore innovative ways of creating good products.
In addition, I have gained practical experience in this field after completing my master’s degree. This career has provided me with opportunities to connect with professionals and benefit from their valuable insights, contributing to my personal and professional growth. I hope I can make some fresh contributions to this field and exploring new possibilities in the future."
About Trista
Trista Pan is the cofounder & CTO of SphereEx, an AWS Data Hero, Apache member & Incubator mentor, and on the Apache ShardingSphere PMC (Project Management Committee). You can connect with Trista on GitHub, LinkedIn or X (Twitter).
___
AWS Heroes are a community of seasoned technology builders outside AWS who have contributed incredible efforts to their field, helped others learn and grow in communities and tested and provided critical feedback to AWS on its services. To connect with an AWS Hero in your area or in a particular field of expertise, visit the program page here. AWS User Group meetups are an easy way to start connecting with and learning from community. Find a meetup near you.

 

Any opinions in this post are those of the individual author and may not reflect the opinions of AWS.

Comments