{"id":83,"date":"2016-08-26T23:29:44","date_gmt":"2016-08-26T22:29:44","guid":{"rendered":"http:\/\/188.166.119.205\/?p=83"},"modified":"2026-11-10T05:52:02","modified_gmt":"2026-11-10T05:52:02","slug":"google-cloud-sql-second-generation-is-available","status":"publish","type":"post","link":"https:\/\/banyek.net\/?p=83&lang=en","title":{"rendered":"Google Cloud SQL Second Generation is available"},"content":{"rendered":"<p>Recently <a href=\"https:\/\/cloudplatform.googleblog.com\/2016\/08\/Cloud-SQL-Second-Generation-performance-and-feature-deep-dive.html\">Google announced, that the second generation of Cloud SQL left the beta stage and it is available<\/a>. I decided to take a look, because last time when I checked it, it looked good, but I couldn\u2019t take it seriously because of the nonexistent SLA.<\/p>\n<p><!--more--><\/p>\n<p>I have a few databases running on Amazon RDS, but I don\u2019t really like them, it is really hard to see what\u2019s going on inside an instance, and which is most important: I can\u2019t make binary dumps (with Xtra backup) of them, because of the nonexistent access to the host OS. I have to deal with a vendor lock-in (snapshots) or I have to use slow logical dumps. I bet this is a good scenario for a lot of DBAs, but personally, I do love to work with MySQL, because it acts like a real UNIX application, and it just lives on the system native.<\/p>\n<p>We are moving to google cloud platform (GCP) so using \u2013 or at least trying out \u2013 cloud SQL seems a logical decision.<\/p>\n<p>I like GCP more than AWS, because it is really hard, and bad (for me) to use Amazon\u2019s product. They creating always a lot of fancy names for services, I have to always figure out what name covers which service, and frankly, the UI looks \u2026 patchy. GCP is more user-friendly when I want to do something, it is easy to find it on the interface \u2026 if it is available, of course. To be honest, AWS is more mature in that way than Google\u2019s cloud platform, there are way more services working there.<\/p>\n<p>But get back to cloud SQL! Its first generation has limitations which make it too small for us, we simply can\u2019t use it, so let\u2019s see the second generation. It has nice proposals about the performance, it is easy to manage (boy, I just <em>love<\/em> the way it handles replica creation (read, or even failover)), it has a nice secure way to access the database from a local application (SQL cloud proxy), but all the instances have to get an external IP address (no way!) for that, and that is a neuralgic point for me: the applications reside in google cloud engine what appears as an \u2018internal\u2019 network, and then we have to route our database traffic to external IP addresses (even in a secure way). No way sir, again, no way. In our current architecture, applications connect to HAProxies for accessing the database; imagine the scenario, when and an application has to connect to a proxy, which connects to another proxy which connects to the database\u2026 for me, it doesn\u2019t sound too reliable. That\u2019s a concern of mine, but not a show stopper.<\/p>\n<p>The showstopper for us is the fact, that right now there is no official way to replicate external data source to a second generation cloud SQL instance. With first generation it is possible, but with horrible limitations (Although the Cloud SQL replica is visible on the console, the console does not provide information about replication status for a replica with an external master instance.), but with the second generation it is not even mentioned so far. I can imagine by the way that this is solvable maybe with tungsten replicator, but I don\u2019t think if this is the rabbit hole I do want to dive in. (Replicating from the physical DCs is mandatory for a while.)<\/p>\n<p>I don\u2019t want to be unfair, so I have to say if I had to face a greenfield investment of a software development, where I just have to bring up a database instance for a trendy new application which will run on google cloud platform, then I think Google Cloud SQL is a great choice for that.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recently Google announced, that the second generation of Cloud SQL left the beta stage and it is available. I decided to take a look, because last time when I checked it, it looked good, but I couldn\u2019t take it seriously because of the nonexistent SLA.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[134],"tags":[180,182,144,126],"class_list":["post-83","post","type-post","status-publish","format-standard","hentry","category-tech-en","tag-cloud-en","tag-gcp-en","tag-mysql-en","tag-oldblog-en"],"_links":{"self":[{"href":"https:\/\/banyek.net\/index.php?rest_route=\/wp\/v2\/posts\/83","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/banyek.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/banyek.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/banyek.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/banyek.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=83"}],"version-history":[{"count":1,"href":"https:\/\/banyek.net\/index.php?rest_route=\/wp\/v2\/posts\/83\/revisions"}],"predecessor-version":[{"id":416,"href":"https:\/\/banyek.net\/index.php?rest_route=\/wp\/v2\/posts\/83\/revisions\/416"}],"wp:attachment":[{"href":"https:\/\/banyek.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=83"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/banyek.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=83"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/banyek.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=83"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}