Notes from my Professional Cloud Database Engineer beta certification exam
Subscribe to my YouTube channel that teaches you to apply Google Cloud to your projects and also prepare for the certifications: youtube.com/AwesomeGCP. Check out the playlists I currently have for Associate Cloud Engineer, Professional Architect, Professional Data Engineer, Professional Cloud Developer, Professional Cloud DevOps Engineer, Professional Cloud Network Engineer, and Professional Cloud Security Engineer.
New Exam Software
The exam software for remotely administered exams has changed since May 16th, 2022. For those who have never taken a Google Cloud certification exam before, there are two ways you can take the exam. You could go to a designated test center where the exam will be set up for you — this is an onsite exam. Alternatively, you can take it at home on your personal computer — this is a remote exam. If you take the exam at home, you need to install a specific software on your computer. This software takes full control of your machine during the exam and will not allow you to switch to other windows.
- Instead of the earlier Sentinel software, you now need to download and install a new software called “NEW Secure Browser”. It seems to be a customized chromium browser now. It behaves similarly by taking full control of your screen/machine.
- Only navigation buttons mainly on the top above the main content screen (which don’t work anyways, i think).
- There used to be a help button on the top right, but that’s not there now. So, there’s probably no way to reach support or the proctor from the exam window. If there is an issue, you’ll have to exit the Secure Browser window and contact Help on the webassessor.com/googlecloud page.
- There used to be zoom in/out buttons on the top right, but that’s not there now. You can use Cmd+ and Cmd- on the Mac to zoom in/out. I’m assuming that it is Ctrl+ and Ctrl- on Windows.
- When network is down, there is a page that comes up saying something to the tune of “We are experiencing network issues. We are trying to connect again. Your progress so far is saved. No part of your exam time is lost.” I think this is a good new touch because test takers used to get anxious when the screen froze or the network went down.
Some Issues Faced with New Software
- I faced an issue with the new software where the video from my webcam was just black. I fixed it by closing the Secure Browser window and relaunching the exam.
- A few exam takers (but only very few) have faced more excruciating issues with the new software — video or microphone not working, seems to be the main concern. Whatever it is, remember that it is not your problem — so don’t panic or become anxious. As long as you have been communicating with the proctor or support, they will be able to help you out.
By the time you take the exam, hopefully, some of these issues will probably have been fixed. But even if it does occur, don’t panic. Talk to the proctor and work through the issue. They are there to help.
My preparation for this exam was a little weak. I was traveling quite a bit and had other parallel 11th hour engagements that kept me busy. In true Dunning-Kruger form, I think I was probably over confident about the exam because I hadn’t prepared very much. It did help, however, that I am somewhat well versed in core Google Cloud concepts like storage, IAM, networking, compute, etc. Since I’d also done the Professional Data Engineer exam, there was definitely some overlap knowledge from there too. So, a certain amount of confidence was acceptable.
Since this was a Beta exam, there were 120 questions and 4 hours to solve it. You can’t move from your seat during that whole time when taking the exam remotely. Add to it the time in the beginning to identify myself to the proctor, to show a clear area around you, solving the camera issue, etc., I was on my butt in one position for about 4.5 hours. I’ve made my vows again that I’ll never put myself through this torture, but we’ll see when the next beta exam rolls in.
Trying to take a different approach this time, I had planned to do all the questions at a very fast pace — maybe finish it within an hour and a half. Then the remaining time I would go back and review my answers. None of that panned out. It took me about 3 hours 20 minutes to go through the questions once. Then I had under 40 minutes to do a review of all the questions, but I couldn’t finish that either.
I struggled often on many questions. Many were straightforward and easy, but there were enough and more to make me doubt whether I would pass the exam. Questions required a second or third reading. Sometimes the answer options often were fairly close which made me hesitant. In a little time towards the end that I got for review, I found myself second guessing and correcting some of the answers that I had put in the first time. That was not something that I’ve done on previous exams. So I believe this exam has questions that are often a little convoluted or confusing or just more areas where I did not have definitive knowledge on.
For preparation, the officially recommended courses are available on Coursera and Pluralsight. However, as I’ve seen with all the other certification exams, the official material is fairly light. The exam requires you to know details deeper than what is covered in the official courses. You should prepare more by doing available labs, reading a lot of documentation, and even doing reliable and relevant practice tests. Knowledge of databases and database administration beyond what is offered by Google Cloud is also important.
I’ll be adding whatever learning material I find to this repo: https://github.com/sathishvj/awesome-gcp-certifications/blob/master/professional-cloud-database-engineer.md
And then, onto the study areas that you should cover.
* Spanner: different types of scaling — stepwise, linear, direct or default scaling. (also video)
* IAM: For every exam IAM is relevant. With this exam too, understand IAM deeply without by-hearting roles. Know generic naming conventions. For example, different Cloud Spanner roles. Difference between backup admin and backup user and backup writer.
* Firestore: enabling offline data and persistence mode.
* Cloud SQL: How do you configure it for high availability? Which locations does it span? (zone, region?)
* Spanner: Where do you locate Spanner instances? Does keeping read and write on Spanner workloads closest to the default Spanner primary location have an effect on performance?
* Cloud SQL: Cloud SQL Proxy. How do you connect using a private IP? And with Private Services Access?
* Cloud SQL: Connect from Cloud Run into a MySQL database. What do you need? Do you need to use Cloud SQL proxy? How can you improve performance? Can you improve performance by using pooled connections and connection limits?
* Data Transfer: You need to know how to calculate data transfer rates. E.g. given 10 TB and a 1 Gbps link, how long does it take to transfer data. Based on that which hybrid connectivity option would you choose? p.s. it was tough to do this calculation in my head. So, work out some numbers beforehand.
* KMS: CMEK, CSEK.
* Know which databases are suitable for different types of data — relational, document, key-value, binary, etc.
* Data Recovery: What are RTO and RPO? What options do you have on different databases? Including numbers on amount of time.
* BMS: What is the Bare Metal Solution? How is it different from other database options?
* Oracle: Where would you move Oracle workloads?
* Bigtable: Where do you allocate Clusters in Bigtable to make them highly available?
* Query Insights: with cloud SQL, Spanner, other databases
* Key Visualizer: for Bigtable and Spanner
* Key Visualizer: identifying schema issues and resolving them.
* Cloud Scheduler and Cloud Functions for data export in Cloud SQL, Firestore, and other databases.
* Cloud SQL backup and export: Ways to minimize impact on source database when creating exports or new copies.
* Database migration service: All the ways that it is used, including for migration from on premise or or within Google Cloud.
* Datastream: use cases and features.
* PG tools: When to use tools like pgbouncer?
* mysql cmd line tool: when and how to use it.
* Migrating to Cloud SQL from PostgreSQL, MySQL, SQL Server: E.g. When migrating from PostgreSQL, what do we need to keep in mind? Do we need to have primary keys for all tables? Do we need to be concerned about foreign key relationships? Do we need to be concerned about encryption keys?
* Cloud SQL: Maintenance window and denying a maintenance window.
* Actifio. What is its use and how is this comparable to Oracle tools like rman?
* Cloud SQL: Use of external replication.
* Cloud SQL: What is the difference between server replication, server standby, and read replica?
* Cloud SQL: Parallel replication in MySQL and how to enable and disable it. What is the use case for doing it? What flags can you set?
* Cloud SQL: From which kind of replicas can you restore an instance?
* VMware engine: just know at a high level what this is. Customers might have databases running in VMware and might have to migrate it.
* Cloud SQL: Know typical error messages and how to resolve them for MySQL, PostgreSQL, and SQL Server.
* Cloud SQ: How to use recommender insights? For example, for MySQL.
* gcloud sql options: Know the basic commands including instances create/patch/etc.
* Cloud SQL: How do you restore primary instances after it failed?
* Firestore: in native mode and data store mode. When would you use which one?
* Security: Various security related questions on private Google access, service controls, workload identity federation, key management, etc.
* Cloud NAT: How do you set up access to the public internet for updates?
* Networking: various networking topics that everybody should know like Peering, Shared Networks, Hybrid Connectivity.
* Data Processing: Use of Dataflow, Data Fusion, Cloud Composer to process and move data from one system to another.
* Open tools: Terraform, pg tools, mongodb, etc.
* Database performance. How to debug database performance? How to improve database performance? What tools are available at your disposal?
* Persistent Disks: Which persistent disks for different IOPS?
* Cloud SQL: What are the different configurations in which you will set up MySQL for high availability and MySQL for read replica across zones and regions?
* Connecting to the database using Cloud SQL Proxy, private and public addresses, SSL.
* Cloud SQL Proxy: troubleshooting Cloud SQL Proxy errors.
* Backups: Automated backups, configuring them, and optimizing them for storage and recovery. For Cloud SQL and Spanner.
* Backups: Recovering/restoring from backups.
* Point-in-time recovery: for Spanner and Cloud SQL.
* Spanner: What introspection tables and tools are available?
* Spanner: What are the best practices for schema design?
* Cloud SQL: Schema design best practices
* Bigtable: Schema design best practices.
* Information schema for databases: Spanner, Postgre.
* Disks: asynchronous and synchronous replication
* Cloud SQL: Which features are not supported for different database flavors
* On Cloud SQL: it supports MySQL, PostgreSQL, and SQL Server. However, note that there are occasional differences between them. Usually reading about one of them applies to the others too, but not always.
* Replicas: Know that there are multiple types of replicas: https://cloud.google.com/sql/docs/mysql/replication
* Unix tools: like fdisk, resizetofs, lvextend, du, df, etc.
Notes from each of my exams
For those appearing for the various certification exams, here is a list of sanitized notes (no direct question, only general topics) about the exam.
Github Repo: awesome-gcp-certifications
A collection of posts, videos, courses, qwiklabs, and other exam details for all exams: https://github.com/sathishvj/awesome-gcp-certifications
Wish you the very best with your GCP certifications. You can reach me at LinkedIn and Twitter. If you can support my work creating videos on my YouTube channel AwesomeGCP, you can do so on Patreon or BuyMeACoffee.