AWS Certified Solutions Architect Associate SAA-C03 Practice Question
Your application requires a relational database with native support for JSON/JSONB data types, the ability to create indexes directly on JSON data, and full support for complex joins and ACID transactions. Which database engine should you choose?
PostgreSQL is the best fit because it provides native JSON and JSONB data types and allows you to create GIN or GiST indexes directly on JSONB columns, giving excellent performance for JSON queries. It also offers rich join capabilities and fully ACID-compliant transactions.
MySQL introduced a JSON type (starting in 5.7), but JSON columns cannot be indexed directly-you must create generated or functional columns first, which is less flexible.
Amazon Aurora is a managed database engine offered by AWS; its PostgreSQL-compatible edition would meet the requirements, but its MySQL-compatible edition inherits the same JSON-indexing limitations as MySQL. Because the option listed is simply "Amazon Aurora" without specifying the PostgreSQL edition, it is not the most clearly correct choice.
SQLite stores JSON as plain text via the JSON1 extension and lacks native binary JSON support or GIN-style indexing, making it a weaker choice for these requirements.
Therefore, PostgreSQL is the most appropriate engine.
Ask Bash
Bash is our AI bot, trained to help you pass your exam. AI Generated Content may display inaccurate information, always double-check anything important.
What are the advantages of using PostgreSQL for JSON data types?
Open an interactive chat with Bash
How does indexing work with JSON data in PostgreSQL?
Open an interactive chat with Bash
What distinguishes PostgreSQL from other database engines regarding transactions?