Google Cloud Professional Data Engineer — Question 19

You designed a database for patient records as a pilot project to cover a few hundred patients in three clinics. Your design used a single database table to represent all patients and their visits, and you used self-joins to generate reports. The server resource utilization was at 50%. Since then, the scope of the project has expanded. The database must now store 100 times more patient records. You can no longer run the reports, because they either take too long or they encounter errors with insufficient compute resources. How should you adjust the database design?

Answer options

Correct answer: C

Explanation

The correct answer is C, as normalizing the database structure into separate patient and visits tables reduces redundancy and improves performance by avoiding complex self-joins. Option A merely adds resources but does not address the design inefficiencies. Option B, while it proposes a method to manage data, does not resolve the underlying issues of the current table structure. Option D also divides data but does not provide the same level of normalization and efficiency as option C.