<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>Cloud Blog</title><link>https://cloud.google.com/blog/</link><description>Cloud Blog</description><atom:link href="https://cloudblog.withgoogle.com/rss/" rel="self"></atom:link><language>en-us</language><lastBuildDate>Thu, 18 Jul 2019 18:00:00 -0000</lastBuildDate><image><url>https://gweb-cloudblog-publish.appspot.com/static/blog/images/google.a51985becaa6.png</url><title>Cloud Blog</title><link>https://cloud.google.com/blog/</link></image><item><title>How to use a Chromebook if you’ve switched from a PC</title><link>https://cloud.google.com/blog/products/chrome-enterprise/how-to-use-a-chromebook-if-youve-switched-from-a-pc/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;i&gt;&lt;b&gt;Editor’s note:&lt;/b&gt;This is the second post in an ongoing tips series. If your company recently switched to Chrome OS, use these tips to get up to speed. If you’re an IT administrator, pass these tips along to your users to help them stay productive. &lt;/i&gt;&lt;/p&gt;&lt;p&gt;Last month, &lt;a href="https://cloud.google.com/blog/products/chrome-enterprise/6-common-questions-and-answers-for-new-chromebook-users"&gt;we shared tips&lt;/a&gt; on how to use a Chromebook if you switched from previously using a Mac. This month, we’ll explore similar topics for PC users, answering questions about keyboard shortcuts and finding files. If you’ve recently switched from using a PC with a Windows operating system to a Chromebook with Chrome OS, here are four must-read tips to help you get started. &lt;/p&gt;&lt;p&gt;&lt;b&gt;1. How do I locate my apps and files? &lt;/b&gt;&lt;br/&gt;You’re probably used to accessing files and apps via the Start Menu on the bottom left-hand side of your PC. On a Chromebook, you access files and apps from the Launcher, which is the button that looks like a circle with a dot in the bottom of your screen.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="GS-chrome-launch-button" src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/695-GS-chrome-launch-button-SM-v4.gif"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;i&gt;Here’s how to use the Launcher:&lt;/i&gt;&lt;br/&gt;If you don’t have a touchscreen, click anywhere on the Launcher button. If you have a touchscreen, drag your finger up from the bottom part of your screen (we call this the “app shelf”). The Launcher will pop up—this is where you can access all of your apps, including Gmail, Google Drive, Docs, Sheets and Slides, as well as YouTube. &lt;/p&gt;&lt;p&gt;If you need to find a specific app, document or file, you can search in the search bar at the top of Launcher. Using predictive text based on machine learning, Google Search helps you find what you need quickly, whether it’s tracking down an app to use, searching the web, or finding a specific Doc you created. &lt;/p&gt;&lt;p&gt;&lt;b&gt;2. How do I take a screenshot?&lt;/b&gt;&lt;br/&gt;If you want to take a screenshot of your entire screen on a Chromebook, press Ctrl + the Show windows button (&lt;b&gt;Ctrl + F5&lt;/b&gt;). To capture a partial screenshot, press Shift + Ctrl + Show windows (&lt;b&gt;Shift + Ctrl + F5&lt;/b&gt;), then click and drag your cursor over the exact area you want to capture. To take a screenshot on tablets, press the Power button + the Volume down button at the same time.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Chrome-screenshot-shortcut" src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/696-GS-chrome-screenshot-shortcut-SM-v4_1.gif"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;While we’re on the topic, there are loads of ways to work more efficiently with keyboard shortcuts. &lt;a href="https://support.google.com/chromebook/answer/183101"&gt;Check out our Help Center&lt;/a&gt; for other shortcut ideas.&lt;/p&gt;&lt;p&gt;&lt;b&gt;3. How do I change my settings?&lt;br/&gt;&lt;/b&gt;For users familiar with a PC, the control panel is the place where you access settings like screen resolution, keyboard preferences, and privacy and security. On a Chromebook, you’ll find all of these options in Settings, which can be accessed in the bottom right of your screen. &lt;/p&gt;&lt;ol&gt;&lt;li&gt;Click the time in the bottom right corner of your screen. It will pull up different tools for you to use. &lt;/li&gt;&lt;li&gt;Click the gear/settings icon in the top right.&lt;/li&gt;&lt;li&gt;Scroll down to the setting options that interest you and make sure they match your needs.&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="ChromeOSTipsforMacSwitchers" src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/626_GS_GIF1ChromeOSTipsforMacSwitchers_R3_short_version_AV.gif"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Note: clicking “Advanced” at the bottom will get you even more options for settings. You can also enter keywords in the search bar to locate a specific setting.&lt;/p&gt;&lt;p&gt;&lt;b&gt;4. How do I set up right-click? &lt;br/&gt;&lt;/b&gt;Right-click works a little differently on a Chromebook than on a PC (where you typically hit Shift + F10). You can either press the touchpad with two fingers to open the right-click menu, or you can click “Alt” and use just one finger on the touchpad. Once you do, you can scroll, moving left and right to move horizontally or up and down to move vertically. You can also switch your scroll direction. &lt;a href="https://support.google.com/chromebook/answer/1047367"&gt;This article&lt;/a&gt; explains how, along with other helpful touchscreen tips.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Resources for IT admins to help users&lt;br/&gt;&lt;/b&gt;If you’re an IT admin, use these tips to help former PC users adjust to Chromebooks, or keep an eye out for more advice you can share—we’ll link new posts here as we publish them. &lt;/p&gt;&lt;p&gt;For former Mac users: “&lt;a href="https://cloud.google.com/blog/products/chrome-enterprise/6-common-questions-and-answers-for-new-chromebook-users"&gt;6 common questions (and answers) for new Chromebook users&lt;/a&gt;”&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Thu, 18 Jul 2019 18:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/chrome-enterprise/how-to-use-a-chromebook-if-youve-switched-from-a-pc/</guid><category>Productivity &amp; Collaboration</category><category>Chrome Enterprise</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/Next_london_Cloud_Storage-01_4uZgoD5.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>How to use a Chromebook if you’ve switched from a PC</title><description>If your company recently switched to Chrome OS, use these tips to get up to speed. If you’re an IT administrator, pass these tips along to your users to help them stay productive.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/Next_london_Cloud_Storage-01_4uZgoD5.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/chrome-enterprise/how-to-use-a-chromebook-if-youve-switched-from-a-pc/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jacob Soviero</name><title>Program Manager, Chromebook Adoption</title><department></department><company></company></author></item><item><title>Introducing the What-If Tool for Cloud AI Platform models</title><link>https://cloud.google.com/blog/products/ai-machine-learning/introducing-the-what-if-tool-for-cloud-ai-platform-models/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Last year our TensorFlow team&lt;a href="https://ai.googleblog.com/2018/09/the-what-if-tool-code-free-probing-of.html"&gt;announced&lt;/a&gt; the&lt;a href="https://pair-code.github.io/what-if-tool/"&gt;What-If Tool&lt;/a&gt;, an interactive visual interface designed to help you visualize your datasets and better understand the output of your TensorFlow models. Today, we’re announcing a new integration with the What-If Tool to analyze your models deployed on&lt;a href="https://cloud.google.com/ai-platform/"&gt;AI Platform&lt;/a&gt;. In addition to TensorFlow models, you can also use the What-If Tool for your XGBoost and Scikit Learn models deployed on AI Platform.&lt;/p&gt;&lt;p&gt;As AI models grow in complexity, understanding the inner workings of a model makes it possible to explain and interpret the outcomes driven by AI. As a result, AI explainability has become a critical requirement for most organizations in industries like financial services, healthcare, media and entertainment, and technology. &lt;/p&gt;&lt;p&gt;With this integration, AI Platform users can develop a deeper understanding of how their models work under different scenarios, and build rich visualizations to explain model performance to business users and other stakeholders of AI within an enterprise.&lt;/p&gt;&lt;p&gt;With just one method call, you can connect your AI Platform model to the What-If Tool:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;You can use this new integration from AI Platform Notebooks, Colab notebooks, or locally via Jupyter notebooks. In this post, we’ll walk you through an example using an XGBoost model deployed on AI Platform.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Getting started: deploying a model to AI Platform&lt;/b&gt;&lt;br/&gt;In order to use this integration, you’ll need a model deployed on Cloud AI Platform. Once you’ve trained a model, you can deploy it to AI Platform using the gcloud CLI. If you don't yet have a Cloud account, we’ve got one &lt;a href="https://colab.research.google.com/github/PAIR-code/what-if-tool/blob/master/xgboost_caip.ipynb"&gt;notebook&lt;/a&gt; that runs the What-if Tool on a public Cloud AI Platform model so you can easily try out the integration before you deploy your own.&lt;/p&gt;&lt;p&gt;The XGBoost example we’ll be showing here is a binary classification model for predicting whether or not a mortgage application will be approved, trained on &lt;a href="https://www.ffiec.gov/hmda/hmdaflat.htm"&gt;this public dataset&lt;/a&gt;. In order to deploy this model, we’ve exported it to a &lt;code&gt;.bst&lt;/code&gt; model file (the format XGBoost uses) and uploaded this to a Cloud Storage bucket in our project. We can deploy it with this command (make sure to define the environment variables when you run this):&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;b&gt;Connecting your model to the What-If Tool&lt;/b&gt;&lt;br/&gt;Once your model has been deployed, you can view its performance on a dataset in the What-If Tool by setting up a &lt;code&gt;WitConfigBuilder&lt;/code&gt; object as shown in the code snippet above. Provide your test examples in the format expected by the model, whether that be a list of JSON dictionaries, JSON lists, or &lt;code&gt;tf.Example&lt;/code&gt; protos. Your test examples should include the ground truth labels so you can explore how different features impact your model’s predictions. &lt;/p&gt;&lt;p&gt;Point the tool at your model through your project name, model name, and model version, and optionally set the name of the feature in the dataset that the model is trying to predict. &lt;/p&gt;&lt;p&gt;Additionally, if you want to compare the performance of two models on the same dataset, set the second model using the &lt;code&gt;set_compare_ai_platform_model&lt;/code&gt; method. One of our &lt;a href="https://colab.research.google.com/github/PAIR-code/what-if-tool/blob/master/keras_sklearn_compare_caip_e2e.ipynb"&gt;demo notebooks&lt;/a&gt; shows you how to use this method to compare &lt;code&gt;tf.keras&lt;/code&gt; and Scikit Learn models deployed on Cloud AI Platform.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Understanding What-If Tool visualizations&lt;/b&gt;&lt;br/&gt;Click &lt;a href="https://pair-code.github.io/what-if-tool/walkthrough.html"&gt;here&lt;/a&gt; for a full walkthrough of the features of the What-If Tool.&lt;/p&gt;&lt;p&gt;The initial view in the tool is the &lt;b&gt;Datapoint Editor&lt;/b&gt;, which shows all examples in the provided dataset and their results from prediction through the model:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Datapoint Editor.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Datapoint_Editor.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Click on any example in the main panel to see its details in the left panel. You can change anything about the datapoint and run it again through the model to see how the changes affect prediction. The main panel can be organized into custom visualizations (confusion matrices, scatter plots, histograms, and more) using the dropdown menus at the top. Click the partial dependence plot option in the left panel to see how changing each feature individually for a datapoint causes the model results to change, or click the "Show nearest counterfactual datapoint" toggle to compare the selected datapoint to the most similar datapoint that the model predicted a different outcome for.&lt;/p&gt;&lt;p&gt;The &lt;b&gt;Performance + Fairness&lt;/b&gt; tab shows aggregate model results over the entire dataset:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Performance + Fairness.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Performance__Fairness.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Additionally, you can slice your dataset by features and compare performance across those slices, identifying subsets of data on which your model performs best or worst, which can be very helpful for ML fairness investigations.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Using What-If Tool from AI Platform Notebooks&lt;/b&gt;&lt;br/&gt;The WitWidget comes pre-installed in all TensorFlow instances of &lt;a href="https://cloud.google.com/ai-platform-notebooks/"&gt;AI Platform Notebooks&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;You can use it in exactly the same way as we’ve described above, by calling &lt;code&gt;set_ai_platform_model&lt;/code&gt; to connect the What-If Tool to your deployed AI Platform models.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Start building&lt;/b&gt;&lt;br/&gt;Want to start connecting your own AI Platform models to the What-If Tool? Check out these demos and resources:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;&lt;b&gt;Demo notebooks:&lt;/b&gt; these work on Colab, Cloud AI Platform Notebooks, and Jupyter. If you’re running them from AI Platform Notebooks, it will work best if you use one of the TensorFlow instance types.&lt;/p&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;&lt;a href="https://colab.research.google.com/github/PAIR-code/what-if-tool/blob/master/xgboost_caip.ipynb"&gt;XGBoost playground example&lt;/a&gt;: connect the What-If Tool to an XGBoost mortgage model already deployed on Cloud AI Platform. No Cloud account is required to run this notebook.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a href="https://colab.research.google.com/github/PAIR-code/what-if-tool/blob/master/xgboost_caip_e2e.ipynb"&gt;End-to-end XGBoost example&lt;/a&gt;: train the XGBoost mortgage model described above on your own project, and use the What-If Tool to evaluate it.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a href="https://colab.research.google.com/github/PAIR-code/what-if-tool/blob/master/keras_sklearn_compare_caip_e2e.ipynb"&gt;tf.keras and Scikit Learn model comparison&lt;/a&gt;: build tf.keras and Scikit Learn models trained on the &lt;a href="https://archive.ics.uci.edu/ml/datasets/wine+quality"&gt;UCI wine quality dataset&lt;/a&gt; and deploy them to Cloud AI Platform. Then use the What-If Tool to compare them.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;&lt;b&gt;What-If Tool:&lt;/b&gt; For a detailed walkthrough of all the What-If Tool features, check out their &lt;a href="https://pair-code.github.io/what-if-tool/walkthrough.html"&gt;guide&lt;/a&gt; or the &lt;a href="https://github.com/tensorflow/tensorboard/blob/master/tensorboard/plugins/interactive_inference/README.md"&gt;documentation&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;We’re &lt;a href="https://ai.google/responsibilities/responsible-ai-practices/?category=interpretability"&gt;actively working&lt;/a&gt; on introducing more capabilities for model evaluation and understanding within the AI Platform to help you meaningfully interpret how your models make predictions, and build end user trust through model transparency. And if you use our new What-If Tool integration we’d love your feedback. Find us on Twitter at &lt;a href="https://twitter.com/srobtweets"&gt;@SRobTweets&lt;/a&gt; and &lt;a href="https://twitter.com/bengiswex"&gt;@bengiswex&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Thu, 18 Jul 2019 17:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/ai-machine-learning/introducing-the-what-if-tool-for-cloud-ai-platform-models/</guid><category>Google Cloud Platform</category><category>AI &amp; Machine Learning</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/BlogHeader_Data_Analytics1.max-600x600.jpg" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Introducing the What-If Tool for Cloud AI Platform models</title><description>With this integration, AI Platform users can develop a deeper understanding of how their models work under different scenarios, and build rich visualizations to explain model performance to others.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/BlogHeader_Data_Analytics1.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/ai-machine-learning/introducing-the-what-if-tool-for-cloud-ai-platform-models/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Sara Robinson</name><title>Developer Advocate, Google Cloud Platform</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>James Wexler</name><title>Software Engineer</title><department></department><company></company></author></item><item><title>Gartner names Google Cloud a leader in its IaaS Magic Quadrant</title><link>https://cloud.google.com/blog/products/gcp/gartner-names-google-cloud-a-leader-in-its-iaas-magic-quadrant/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;For the second consecutive year, Gartner has identified &lt;a href="https://cloud.google.com/"&gt;Google Cloud&lt;/a&gt; as a Leader in the 2019 Gartner Cloud Infrastructure as a Service Magic Quadrant. Enterprises rely on research firms like Gartner to help them evaluate and compare cloud providers, and we’re thrilled for the recognition.&lt;/p&gt;&lt;p&gt;Here at Google Cloud, our goal is to be &lt;a href="https://cloud.google.com/blog/topics/google-cloud-next/google-cloud-next19-welcome-to-the-future-of-digital-transformation"&gt;the easiest cloud for enterprises to do business with&lt;/a&gt;. We’ve committed to dramatically extending the size of our sales and support teams, and have made meaningful changes to our contracting and discounting practices. Further, we’re working closely with key ISVs and service providers to ensure that running enterprise workloads on &lt;a href="https://cloud.google.com/"&gt;Google Cloud Platform&lt;/a&gt; (GCP) is a seamless, satisfying experience. &lt;/p&gt;&lt;p&gt;Customers also choose GCP for its differentiated technology. Here’s a sampling.&lt;/p&gt;&lt;p&gt;&lt;b&gt;High-performance global scale that’s highly reliable&lt;/b&gt;&lt;br/&gt;At Google Cloud, we’ve worked hard to build infrastructure that organizations can count on, wherever they choose to deploy their workloads. In addition, Gartner calls out our innovative Customer Reliability Engineering team—engineers trained in Google’s rigorous Site Reliability Engineering (SRE) processes who teach customers how to run applications in a way that maximizes uptime, while still encouraging innovation. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Leading data analytics and machine learning&lt;/b&gt;&lt;br/&gt;Running applications is important, but you also need to make sense of the data they generate. Google Cloud has highly differentiated offerings in the realm of data analytics and machine learning. &lt;a href="https://cloud.google.com/bigquery/"&gt;BigQuery&lt;/a&gt;, for instance, is our hyper-scalable, hosted serverless data warehouse that lets you query data with a familiar SQL-like interface, to meet all your enterprise data analytics needs. We’re also extending BigQuery with easy-to-use ML capabilities, so you can leverage the power of AI on existing data sets without having to hire a team of data science PhDs. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Open source for the enterprise&lt;br/&gt;&lt;/b&gt;Many Google Cloud IaaS offerings benefit from our innovation in the field of containers, networking and automation. While some customers choose GCP to build cloud-native applications, this year, we’ll bring open-source automation and scalability to the enterprise directly with &lt;a href="https://cloud.google.com/anthos/"&gt;Anthos&lt;/a&gt;, which takes the best of open source (&lt;a href="https://kubernetes.io/"&gt;Kubernetes&lt;/a&gt;, &lt;a href="https://istio.io/"&gt;Istio&lt;/a&gt;, &lt;a href="https://github.com/knative"&gt;Knative&lt;/a&gt;) to help enterprises modernize any application, and run them wherever they see fit—in our cloud, on-premises, or even in third-party clouds. &lt;/p&gt;&lt;h2&gt;A cloud for the enterprise&lt;/h2&gt;&lt;p&gt;Enterprises choose Google Cloud for all kinds of reasons. &lt;a href="https://cloud.google.com/blog/topics/customers/ups-uses-google-cloud-to-build-the-global-smart-logistics-network-of-the-future"&gt;UPS uses Google Cloud data analytics and machine learning&lt;/a&gt; to help it optimize its package routing software, helping it deliver 21 million packages in 220 countries, every single day. &lt;a href="https://cloud.google.com/blog/topics/customers/how-whirlpool-corporation-is-driving-digital-transformation-with-google-cloud"&gt;Whirlpool uses G Suite&lt;/a&gt; to help its 92,000 employees around the world collaborate and innovate in real-time. &lt;a href="https://cloud.google.com/blog/topics/customers/mckesson-chooses-google-cloud-to-help-it-chart-a-course-to-the-future"&gt;McKesson chose Google Cloud as its preferred cloud provider&lt;/a&gt;, using our Cloud Healthcare API to enhance its applications, and to modernize its SAP environment. Learn more about &lt;a href="https://cloud.google.com/why-google-cloud/"&gt;what sets Google Cloud apart&lt;/a&gt;—and how you can use it to transform your business. You can also &lt;a href="https://cloud.google.com/gartner-cloud-infrastructure-as-a-service/"&gt;download a complimentary copy&lt;/a&gt; of the 2019 Gartner Infrastructure as a Service Magic Quadrant on our website.&lt;/p&gt;&lt;p&gt;&lt;i&gt;&lt;sub&gt;Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner's research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose. Gartner Magic Quadrant for Cloud Infrastructure as a Service, Worldwide, Raj Bala, Bob Gill, Dennis Smith, David Wright, 16 July 2019.&lt;/sub&gt;&lt;/i&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Thu, 18 Jul 2019 16:10:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/gcp/gartner-names-google-cloud-a-leader-in-its-iaas-magic-quadrant/</guid><category>Inside Google Cloud</category><category>Google Cloud Platform</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/Google_Cloud-01.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Gartner names Google Cloud a leader in its IaaS Magic Quadrant</title><description>For the second consecutive year, Google Cloud is a leader in Gartner Infrastructure as a Service (IaaS) Magic Quadrant.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/Google_Cloud-01.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/gcp/gartner-names-google-cloud-a-leader-in-its-iaas-magic-quadrant/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Rob Enslin</name><title>President, Google Cloud</title><department></department><company></company></author></item><item><title>IT set free to innovate with Chrome Enterprise</title><link>https://cloud.google.com/blog/products/chrome-enterprise/it-set-free-to-innovate-with-chrome-enterprise/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;i&gt;&lt;b&gt;Editor’s note:&lt;/b&gt;Today’s post is by Kan Liu, a member of the original Chrome OS team more than 10 years ago and now the platform's Senior Director for product management. &lt;/i&gt; &lt;/p&gt;&lt;p&gt;In the past, businesses often thought of IT as a support function—in charge of tasks like imaging devices, setting up on-premise servers, and repairing devices after breakdowns. But as more enterprises migrate to the cloud and digitally transform,  IT has become a change agent for the entire company. Today, IT helps employees work more creatively and collaboratively while improving company culture. &lt;/p&gt;&lt;p&gt;IT leaders and Chrome Enterprise customers tell us they are increasingly responsible for security measures, automating processes, reducing errors, and enabling AI—so much more than simply being a cost center. When IT is buried under administrative tasks like support tickets, security updates, or vendor negotiations, company velocity slows, and frustration builds. But when companies have technology that doesn’t get in the way of worker productivity, these teams have more capacity to work on dream projects and explore new technology. &lt;/p&gt;&lt;p&gt;We wanted to make computing easy for both users and IT, without sacrificing performance. We started by building a machine and operating system (Chrome OS) that could go from a closed laptop lid to the browser in as fast as six seconds, so users can quickly get to work and be productive. With auto-updates, multilayered security, and fast deployment, time savings turns into cost savings for businesses, and creates space for IT to generate innovative ideas—transforming IT into revenue generators instead of cost centers.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;We see these changes happening across industries. &lt;b&gt;SoulCycle&lt;/b&gt; rewrote the old IT model and innovated from every angle. As Derek McWilliams, Director of IT at SoulCycle, told us: “We wanted our technology to prepare for innovation in the future, find opportunities for new interactions and find a centralized suite to reduce overhead. Studio upgrades had to be updated within two to three hours without disrupting studio classes. We were easily able to send one IT team member to each location to upgrade devices at the studios to Pixelbooks.” IT innovation also helped foster culture change.. As Derek explained, “Changing technology can be really intimidating for people who don’t live with it every day. It’s our job [as IT] to ensure that our employees feel good when they’re using technology.” &lt;a href="https://www.youtube.com/watch?v=Az8W2538eQg&amp;amp;t=1590s"&gt;Hear more here&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-pull_quote"&gt;&lt;div class="uni-pull-quote h-c-page"&gt;&lt;section class="h-c-grid"&gt;&lt;div class="uni-pull-quote__wrapper h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;div class="uni-pull-quote__inner-wrapper h-c-copy h-c-copy"&gt;&lt;q class="uni-pull-quote__text"&gt;We wanted our technology to prepare for innovation in the future, find opportunities for new interactions and find a centralized suite to reduce overhead. Studio upgrades had to be updated within two to three hours without disrupting studio classes. We were easily able to send one IT team member to each location to upgrade devices at the studios to Pixelbooks.&lt;/q&gt; &lt;cite class="uni-pull-quote__author"&gt;&lt;span class="uni-pull-quote__author-meta"&gt;&lt;strong class="h-u-font-weight-medium"&gt;Derek McWilliams, Director of IT at SoulCycle&lt;/strong&gt;&lt;br/&gt;&lt;/span&gt;&lt;/cite&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Donna Chornawka, Managing Director of Team Member Collaboration and Enablement at &lt;b&gt;ATB Financial&lt;/b&gt;, &lt;a href="https://cloud.google.com/blog/products/productivity-collaboration/how-we-adopted-pixelbooks-and-gsuite-and-changed-atb-financials-work-culture-step-by-step"&gt;shared&lt;/a&gt; how ATB had a vision to transform the way employees work and how customers bank. Identifying the right technology, establishing an evangelist team, and focusing on support during the migration phase enabled culture change because of IT.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;b&gt;Dr. Agarwal’s Eye Hospital&lt;/b&gt;, a group of 70 eye-care hospitals across India and Africa, experienced the same shift in perception. CTO Dilip Ramadasan deployed Chromebooks to help doctors and administrative staff capture patient data and reduce IT help tickets: “We, as IT, are no longer the people who employees only contact when computers break down. Now we’re the team that helps to improve patient health.”&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Local and state government IT leaders are also leading the charge in driving innovation. Mark Lumley, Assistant Director for digital and IT for &lt;b&gt;Kingston and Sutton London Borough Councils&lt;/b&gt; in the UK, shared his perspective: “IT is more than wires and wifi. We need to focus on digital transformation to truly enable transformation. We’re putting ourselves into our users’ shoes to redesign the user journey to be as effective as possible—we’re trying to find their pinch points to use technology to solve those problems.” &lt;/p&gt;&lt;p&gt;When you start on your own digital transformation journey, consider what role you want your IT team and technology to play during your transition to the cloud. Free your team from the day-to-day administrative tasks and focus on achieving your organization’s vision. &lt;/p&gt;&lt;p&gt;To learn more about our campaign, IT Set Free, or how to empower your IT teams visit the &lt;a href="https://cloud.google.com/chrome-enterprise/os/"&gt;Chrome Enterprise website&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Thu, 18 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/chrome-enterprise/it-set-free-to-innovate-with-chrome-enterprise/</guid><category>Chrome Enterprise</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/chrome_enterprise_SsnrNQE.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>IT set free to innovate with Chrome Enterprise</title><description>When companies have devices that don’t get in the way of worker productivity,  IT teams have more capacity to work on dream projects and explore new technology.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/chrome_enterprise_SsnrNQE.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/chrome-enterprise/it-set-free-to-innovate-with-chrome-enterprise/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Kan Liu</name><title>Senior PM Director, Chrome OS</title><department></department><company></company></author></item><item><title>Operate with confidence: Keeping your functions functioning with monitoring, logging and error reporting</title><link>https://cloud.google.com/blog/products/devops-sre/keeping-your-functions-functioning-with-monitoring-logging-and-error-reporting/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;If you want to keep bugs from making it into production, it’s important to have a comprehensive testing plan that employs a variety of techniques. But no matter how complete your plan might be, tests are bound to miss bugs every now and then, which get pushed into production.&lt;/p&gt;&lt;p&gt;In our previous post, &lt;a href="https://cloud.google.com/blog/products/application-development/release-with-confidence-how-testing-and-cicd-can-keep-bugs-out-of-production"&gt;Release with confidence: How testing and CI/CD can keep bugs out of production&lt;/a&gt;, we discussed ways to reduce bugs in a &lt;a href="https://cloud.google.com/functions/"&gt;Cloud Functions&lt;/a&gt; production environment. In this post, we’ll show you how to find bugs that did slip through as quickly and painlessly as possible by answering two basic questions: &lt;i&gt;if&lt;/i&gt; there is a problem in our code, and &lt;i&gt;where&lt;/i&gt; in our codebase that problem occurred.  &lt;/p&gt;&lt;p&gt;To do this, you have to &lt;i&gt;monitor&lt;/i&gt; your functions and keep an eye out for unusual values in key metrics. Of course, not all unusual values are due to errors—but the occasional false alarm is almost always better than not getting an alert when something goes wrong. Then, once you have monitoring in place and are receiving alerts, examining &lt;i&gt;function&lt;/i&gt; and &lt;i&gt;error&lt;/i&gt; logs will help you further isolate where the bugs are happening, and why.  &lt;/p&gt;&lt;p&gt;&lt;a href="https://cloud.google.com/stackdriver/"&gt;Stackdriver&lt;/a&gt;, Google Cloud's provider-agnostic suite of monitoring, logging, and Application Performance Management (APM) tools, is a natural starting point for monitoring your Cloud Functions. &lt;a href="https://cloud.google.com/functions/docs/monitoring/"&gt;Stackdriver Monitoring&lt;/a&gt;’s first-party integration with Cloud Functions makes it easy to set up a variety of metrics for Cloud Functions deployments.&lt;br/&gt;&lt;/p&gt;&lt;p&gt;Stackdriver Monitoring is typically used along with a set of companion Stackdriver tools, including &lt;a href="https://cloud.google.com/logging/"&gt;Logging&lt;/a&gt;, &lt;a href="https://cloud.google.com/error-reporting/"&gt;Error Reporting&lt;/a&gt;, and &lt;a href="https://cloud.google.com/trace/"&gt;Trace&lt;/a&gt;. Stackdriver Logging and Error Reporting are natively integrated with Cloud Functions, and Stackdriver Trace is relatively simple to install.&lt;/p&gt;&lt;h2&gt;Monitoring: Is there a problem?&lt;/h2&gt;&lt;p&gt;Once you have a monitoring stack in place, it’s time to go bug hunting! When looking for bugs in production, the first thing you want to know is if there is a problem in your code. The best way to answer this question is to set up a monitoring and alerts policy with different types and levels of monitoring. &lt;/p&gt;&lt;p&gt;Generally speaking, the more metrics you monitor, the better. Even if you don’t have  time to implement a comprehensive level of monitoring from the start, some is always better than none. Also, you don’t have to set up your monitoring all at once—start with the basics and build from there. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Basic monitoring&lt;br/&gt;&lt;/b&gt;The first level of monitoring is to set up alerts for when severe log entries, such as errors, become too frequent. A good rule of thumb is to &lt;b&gt;consider errors that are greater than a certain percentage of function invocations.&lt;/b&gt; Of course, this percentage will depend on your use case. For stable mission-critical applications, you might send an alert if 0.5%, 0.1%, or even 0.01% of your invocations fail. For less critical and/or unstable applications, alert thresholds of 1% - 5% can help reduce the likelihood of receiving too many false alarms.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Intermediate monitoring&lt;br/&gt;&lt;/b&gt;Next, you should set up alerts for when certain metrics exceed normal limits. Ideally this should be built on top of error monitoring, since different monitoring techniques catch different potential issues. &lt;/p&gt;&lt;p&gt;Two metrics that are particularly useful are &lt;b&gt;execution time&lt;/b&gt; and &lt;b&gt;invocation count&lt;/b&gt;. As their names suggest, execution time measures the amount of time it takes your function to execute, and invocation count is the number of times a function is called during a certain time period. &lt;/p&gt;&lt;p&gt;Once you’ve set up the triggers you want to monitor, you need to calibrate your alerts. That may take some time depending on your application. Your goal should be to find a range that avoids getting too many or too few alerts. It can be tempting to set relatively low alert thresholds, on the theory that it’s better to receive more alerts than fewer. This is generally true, but at extreme levels, you may find yourself getting too many alerts, leading you to ignore potential emergencies. The reverse is also true: If your metrics are too lax, you may not get an alarm at all and miss a significant issue.&lt;/p&gt;&lt;p&gt;Generally, for both metrics, it’s ideal to set alert thresholds of about &lt;b&gt;two-to-four times&lt;/b&gt; greater than your normal maximums and &lt;b&gt;.25-.5 times&lt;/b&gt; your normal minimums. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Advanced monitoring&lt;br/&gt;&lt;/b&gt;A step up from monitoring execution time and invocation count is to monitor your functions' memory use, using Stackdriver HTTP/S uptime checks (for HTTP/S-triggered functions), and monitoring other components of your overall application (such as any Cloud Pub/Sub topics that trigger functions). Again, finding the sweet spot of when to get alerts is critical.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--medium h-c-grid__col h-c-grid__col--4 h-c-grid__col--offset-4 "&gt;&lt;img alt="Advanced monitoring.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Advanced_monitoring.max-1000x1000.png"/&gt;&lt;figcaption class="article-image__caption "&gt;&lt;div class="rich-text"&gt;&lt;i&gt;An example Stackdriver alerting policy that emails you when your functions take too long to complete.&lt;/i&gt;&lt;/div&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;Logging and error reporting: Where’s the broken code?&lt;/h2&gt;&lt;p&gt;Once you’re alerted to the fact that something is wrong in your production environment, the next step is to determine where it’s broken. For this step, we can take advantage of Stackdriver Logging and Error Reporting.&lt;/p&gt;&lt;p&gt;Stackdriver Logging stores and indexes your function logs. Error Reporting aggregates and analyzes these logs in order to generate meaningful reports. Both features are relatively easy to use, and together they provide critical information that helps you quickly determine where errors are occurring.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--medium h-c-grid__col h-c-grid__col--4 h-c-grid__col--offset-4 "&gt;&lt;img alt="Logging and error reporting.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Logging_and_error_reporting.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;In our example above, the log shows an error: “Uninitialized email address.” By looking at the report for this error, we can find several important pieces of information:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The name of the Cloud Function involved (onNewMessage)&lt;/li&gt;&lt;li&gt;How many times the error  has occurred&lt;/li&gt;&lt;li&gt;When the error started: It first occurred 13 days ago and was last seen six days ago.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Data points like these make the process of pinpointing and fixing production errors much quicker, helping to reduce the impact of bugs in production.&lt;/p&gt;&lt;h2&gt;Bugs begone&lt;/h2&gt;&lt;p&gt;Testing is rarely perfect. A solid monitoring system can provide an additional line of defense against bugs in production, and Stackdriver tools provide all the monitoring, logging, and error reporting you need for your Cloud Functions applications. &lt;/p&gt;&lt;p&gt;Combined with the lessons from the &lt;a href="https://cloud.google.com/blog/products/application-development/release-with-confidence-how-testing-and-cicd-can-keep-bugs-out-of-production"&gt;first post of this series&lt;/a&gt; on testing and CI/CD, you can reduce the number of bugs that slip into your production environment, and minimize the damage caused by those that do find their way there.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Thu, 18 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/devops-sre/keeping-your-functions-functioning-with-monitoring-logging-and-error-reporting/</guid><category>Management Tools</category><category>Application Development</category><category>Google Cloud Platform</category><category>DevOps &amp; SRE</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/DevOps_BlogHeader_C_Rnd3_n7MW7mI.max-600x600.jpg" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Operate with confidence: Keeping your functions functioning with monitoring, logging and error reporting</title><description>Learn how to use Stackdriver monitoring tools to quickly detect bugs that slipped into production</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/DevOps_BlogHeader_C_Rnd3_n7MW7mI.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/devops-sre/keeping-your-functions-functioning-with-monitoring-logging-and-error-reporting/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Ace Nassri</name><title>Developer Programs Engineer</title><department></department><company></company></author></item><item><title>How to start using G Suite in 5 easy steps</title><link>https://cloud.google.com/blog/products/g-suite/how-to-start-using-g-suite-in-5-easy-steps/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;You’ve chosen G Suite for your business, and now it’s your job to get it up and running for you and your employees. It’s a big step, but one that will make it easier for employees to work together and go mobile. The step-by-step guide below will walk you through everything from setting up your account to training workers on the finer points of G Suite.&lt;/p&gt;&lt;p&gt;&lt;b&gt;1) Sign in to your G Suite administrator account and set up your first users.&lt;/b&gt;&lt;br/&gt;This is where you can manage all of the G Suite services for your business, including mobile device management, data migration, setting password requirements, and &lt;a href="https://support.google.com/a/answer/3035631?hl=en&amp;amp;ref_topic=2413312"&gt;much more&lt;/a&gt;. &lt;a href="https://support.google.com/a/answer/182076"&gt;This guide&lt;/a&gt; walks you through the admin sign-in process. &lt;/p&gt;After you sign in, you will need to set up your G Suite account by 1.) &lt;a href="https://support.google.com/a/answer/60216"&gt;verifying&lt;/a&gt; you own your domain, 2.) adding user accounts for your employees, and 3.) when all employees have been added, setting up Gmail as your email client by &lt;a href="https://support.google.com/a/answer/140034"&gt;updating your MX records&lt;/a&gt;. Don’t worry, none of these changes will affect your website, if you have one.&lt;p&gt;&lt;/p&gt;&lt;hr/&gt;&lt;p&gt;&lt;b&gt;Insider tip:&lt;/b&gt; Changing MX records can take anywhere between five minutes and a couple of hours to take effect. In order to reduce disruptions, change your MX records at night or over the weekend when employees are less likely to be sending and receiving email.&lt;br/&gt;&lt;/p&gt;&lt;hr/&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;2) Start a G Suite pilot program. &lt;/b&gt;&lt;br/&gt;Before you roll out G Suite to everyone, you may want to do a test run with a small group. That way you can collect helpful feedback about Gmail, experiment with migrating old emails and calendar events to G Suite, and configure G Suite for mobile devices. Your pilot group can test Gmail without changing their current addresses. &lt;/p&gt;&lt;p&gt;Follow this &lt;a href="https://support.google.com/a/answer/9212719"&gt;five-step plan&lt;/a&gt;to start your pilot program. &lt;/p&gt;&lt;p&gt;&lt;b&gt;3) Spread the word about G Suite and start training. &lt;/b&gt;&lt;br/&gt;Workers are understandably nervous when businesses introduce new technology. Reassure them with helpful emails to make the changeover go smoothly. Think about providing details to them about what to expect when data migration happens, or send welcome emails to new users with helpful tips on getting started with G Suite—you can find sample emails to help you get started &lt;a href="https://support.google.com/a/answer/9212588#cm-templates"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;In addition, consider setting up internal training resources tailored to the G Suite tools that your users rely on the most. For example, if your users use a particular app frequently, consider providing them with a specific how-to guide on how to use that app. This will save you with support questions in the long-term. &lt;/p&gt;&lt;hr/&gt;&lt;p&gt;&lt;b&gt;Insider tip:&lt;/b&gt; Once you have these support materials, consider making a quick, internal website for your team using &lt;a href="https://sites.google.com/"&gt;Google Sites&lt;/a&gt;. You can add &lt;a href="https://support.google.com/a/users/search?hl=en&amp;amp;q=training&amp;amp;from_promoted_search=true"&gt;links from the G Suite Learning Center&lt;/a&gt; that relate to commonly-used tools, as well as house onboarding or training documents. Don’t forget to include contact info for IT team members who are available to help.&lt;br/&gt;&lt;/p&gt;&lt;hr/&gt;&lt;p&gt;&lt;b&gt;4) Migrate data such as mail, calendars, and contacts.&lt;/b&gt; &lt;br/&gt;This is a crucial part of the rollout, but Google has tools that can help make the migration go smoothly.  You’ll be able to migrate data from other cloud services including Gmail, or from enterprise servers housing your data. Choose one of the data sources from &lt;a href="https://support.google.com/a/answer/6251069"&gt;this list&lt;/a&gt; to get started.  &lt;/p&gt;&lt;p&gt;&lt;b&gt;5) Set up G Suite on mobile devices.&lt;/b&gt; &lt;br/&gt;Securing endpoints like mobile devices is one of the best ways for businesses to keep data safe—and G Suite’s &lt;a href="https://gsuite.google.com/products/admin/mobile/"&gt;mobile management&lt;/a&gt; already covers more than 40 million devices. Basic device management is automatically enabled for your mobile devices that access G Suite. This means employees don’t have to install profiles on iOS and Android devices. Admins can also choose to opt for advanced mobile management from within the Admin Console to get even more security management controls to help them.&lt;/p&gt;&lt;p&gt;Got more questions about running G Suite like a pro? We have &lt;a href="https://support.google.com/a/answer/7455160"&gt;resources&lt;/a&gt;on rolling out G Suite to employees, migrating and synchronizing data, and helping workers get familiar with G Suite. You can also check out our &lt;a href="https://support.google.com/a/answer/6365252"&gt;quick start guides&lt;/a&gt; that are customized to match the size of your company. &lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Wed, 17 Jul 2019 18:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/g-suite/how-to-start-using-g-suite-in-5-easy-steps/</guid><category>Small and Medium Businesses</category><category>Productivity &amp; Collaboration</category><category>G Suite</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/Chromebook1_mPd6Rf5.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>How to start using G Suite in 5 easy steps</title><description>This step-by-step guide will walk you through everything from setting up your account to training workers on the finer points of G Suite.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/Chromebook1_mPd6Rf5.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/g-suite/how-to-start-using-g-suite-in-5-easy-steps/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Paul Jacobs</name><title>Product Manager, G Suite</title><department></department><company></company></author></item><item><title>Keep calm and query on: Running your databases in GCP</title><link>https://cloud.google.com/blog/products/databases/keep-calm-and-query-on-running-your-databases-in-gcp/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;A fundamental piece of many applications is a database, and that’s true for many cloud-based solutions too. Running a database in the cloud is in many ways similar to running a database on-premises, but there are important differences—and advantages. &lt;/p&gt;&lt;p&gt;Our team—database solutions architects here at Google Cloud—works to help you understand every aspect of databases in the cloud: deploying, migrating, and managing. We want to help you choose the right way to run your database on &lt;a href="https://cloud.google.com/"&gt;Google Cloud Platform&lt;/a&gt; (GCP).&lt;/p&gt;&lt;p&gt;When you run a &lt;a href="https://cloud.google.com/products/databases/"&gt;database&lt;/a&gt; on GCP, you can choose between managed services or running on infrastructure we manage for you. Managed services can remove some of the operational overhead required to operate a database, while running it yourself gives you full control over how your database is deployed. With both options, you get reliability, security, and elasticity built in, with the ability to get global connectivity using Google’s network.&lt;/p&gt;&lt;p&gt;Our team works continually to help users understand every aspect of databases in the cloud: deploying, migrating, and managing. Here are some examples of our recent solutions for using cloud databases, from deployment to monitoring. &lt;/p&gt;&lt;h2&gt;Deploying IBM Db2&lt;/h2&gt;&lt;p&gt;The first step for cloud-based databases is, of course, to get your database up and running. IBM Db2 is a common enterprise database, so we recently published a comprehensive solution document that describes how to deploy IBM Db2 on GCP: &lt;a href="https://cloud.google.com/solutions/deploying-highly-available-ibm-db2-on-compute-engine"&gt;Deploying highly available IBM Db2 11.1 on Compute Engine with automatic client reroute and a network tiebreaker&lt;/a&gt;. The solution starts with setting up Compute Engine instances (VMs) to run Db2. As you can tell from the title, it goes well beyond the basics of deployment—it walks you through how to create a highly available deployment in a cluster with transaction replication and automated failover, as shown here:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--medium h-c-grid__col h-c-grid__col--4 h-c-grid__col--offset-4 "&gt;&lt;img alt="Deploying IBM Db2.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Deploying_IBM_Db2.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;And the solution doesn't just stop when you've set everything up. The goal is high availability, so to make sure everything is working, author Ron Pantofaro shows you how to temporarily disable the primary cluster node. You can then verify that the database fails over properly and that the standby node takes over. &lt;/p&gt;&lt;h2&gt;Migrating an existing database to GCP&lt;/h2&gt;&lt;p&gt;In many cases, you aren't deploying a database from scratch. Instead, you want to migrate an existing database to GCP. Just migrating a database from one platform to another can have its challenges. But what if you also want to change from a NoSQL database to a relational one? &lt;/p&gt;&lt;p&gt;In his solution &lt;a href="https://cloud.google.com/solutions/migrating-dynamodb-to-cloud-spanner"&gt;Migrating from DynamoDB to Cloud Spanner&lt;/a&gt;, SA Sami Zuhuruddin recently tackled this interesting and challenging transition. He describes how to move your data from Amazon DynamoDB, which is a NoSQL database, to Cloud Spanner, which is a fully relational, fault-tolerant SQL database with transaction support. &lt;/p&gt;&lt;p&gt;When you read Sami's solution, you'll see why you'll want to follow his expert guidance for this task. The process goes through a number of intermediate steps that include Amazon S3, Google Cloud Storage, AWS Lambda, Cloud Pub/Sub, and Cloud Dataflow before arriving at Cloud Spanner. Sami explains the data model on both sides of the migration, including keys, data types, and indexes. You’ll see which user permissions you need in order to perform each step. The solution walks you through the entire process, including verification at the end. Here’s a look at the architecture involved:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Migrating an existing database to GCP.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Migrating_an_existing_database_to_GCP.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;Backing up a database&lt;/h2&gt;&lt;p&gt;It's just as important in the cloud as it is on-premises to back up your databases. Two recent solutions discuss ways to do this.&lt;/p&gt;&lt;p&gt;In &lt;a href="https://cloud.google.com/solutions/backup-and-archival-of-sql-with-point-in-time-recovery"&gt;Using Microsoft SQL Server backups for point-in-time recovery on Compute Engine&lt;/a&gt;, SA Ron Pantofaro turns his hand from deployment to backup and shows you how to configure backup for a SQL Server instance that's running on Compute Engine. You’ll see how to back up both the data and the database logs to Cloud Storage. He also describes how to restore a backup in case you ever need to do that (though we hope not). This isn't the end of the job, though. From there, you’ll see how to schedule your backups and how to prune backups that you no longer need.&lt;/p&gt;&lt;p&gt;Of course, you might be using a different database. In &lt;a href="https://cloud.google.com/solutions/mysql-hot-backups"&gt;Performing MySQL Hot Backups with Percona XtraBackup and Cloud Storage&lt;/a&gt;, the SA team shows a similar set of tasks—backing up, restoring, scheduling, and pruning—but for MySQL databases. &lt;/p&gt;&lt;h2&gt;Adding tracing to your GCP-based database&lt;/h2&gt;&lt;p&gt;One of the benefits of running a database in GCP is that you can take advantage of services like Stackdriver to gather tracing information. In his community tutorial &lt;a href="https://cloud.google.com/community/tutorials/memorystore-oc"&gt;Client-side tracing of Cloud Memorystore for Redis workloads with OpenCensus&lt;/a&gt;, SA Karthi Thyagarajan discusses how to add tracing that lets you measure data-retrieval latency. This solution uses a data store consisting of Cloud Memorystore backed by Cloud Storage. As he says, this lets you "focus on the key aspects of client-side tracing without getting hung up on things like database deployments and related configuration."&lt;/p&gt;&lt;p&gt;You can download the Java client app that Karthi created as a Java client app that you can get from GitHub, which already contains the logic for reading from the data store and generating trace output. After you've got the data store set up, you run the client app to read data. You can see some of the benefits of the instrumentation you've set up—you go to the Stackdriver console and visually compare the latencies of cached and non-cached reads:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Adding tracing to your GCP-based database.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Adding_tracing_to_your_GCP-based_database.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;More GCP database solutions&lt;/h2&gt;&lt;p&gt;This covers just a few of the database-oriented solutions that our Solutions Architects team has produced. To find out more, check out the &lt;a href="https://cloud.google.com/docs/tutorials#database"&gt;databases&lt;/a&gt; and &lt;a href="https://cloud.google.com/db-migration/#migration-assessment-guides"&gt;migration&lt;/a&gt; entries in the GCP Solutions Gallery.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Wed, 17 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/databases/keep-calm-and-query-on-running-your-databases-in-gcp/</guid><category>Google Cloud Platform</category><category>Databases</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/BlogHeader_Database_2_qKw20dA.max-600x600.jpg" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Keep calm and query on: Running your databases in GCP</title><description>Run your databases smoothly in the cloud with these tips from Google Cloud solutions architects, from migrating IBM Db2 to adding tracing to a database.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/BlogHeader_Database_2_qKw20dA.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/keep-calm-and-query-on-running-your-databases-in-gcp/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Mike Pope</name><title>Technical Editor</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Ron Pantofaro</name><title>Solutions Architect</title><department></department><company></company></author></item><item><title>5 tips for onboarding your first employees using G Suite</title><link>https://cloud.google.com/blog/products/g-suite/5-tips-for-onboarding-your-first-employees-using-g-suite/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Hiring your business’s first employees is a big step—but it can also be a bit scary. There’s the time you spend on training and orientation, not to mention setting people up to be productive right away. On top of all that, you still need to run your business and keep customers happy. &lt;/p&gt;&lt;p&gt;If you’re worried about adding “human resources manager” to the many hats you wear, don’t be. From employee 1 to 1,000, &lt;a href="https://gsuite.google.com/"&gt;G Suite&lt;/a&gt;’s easy-to-use tools can help you quickly hire and onboard new employees without adding too many more tasks to your already busy schedule. &lt;/p&gt;&lt;p&gt;Here’s your to-do list for onboarding new employees—once you’re done, find more onboarding tips &lt;a href="https://support.google.com/a/users/answer/9283141?hl=en"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;b&gt;1. Create a business email address.&lt;/b&gt; &lt;br/&gt;You’ll want your new hires to start emailing right away—but using their work email accounts, not their personal ones. It’s important to avoid having employees work from their personal accounts since it will be challenging to recover files. It also makes it harder to keep track of who has access to your company’s information.&lt;/p&gt;&lt;p&gt;When you’re ready, &lt;a href="https://support.google.com/a/users/answer/9297879"&gt;create email addresses in Gmail&lt;/a&gt; with a custom domain in order to project a professional image and show that you and your new hires are a team. It’s easy to do this &lt;a href="https://support.google.com/work/mail/answer/6241806?hl=en"&gt;using G Suite’s Admin console&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;b&gt;2. Share calendars. &lt;/b&gt;&lt;br/&gt;Of course, you’ll need to coordinate schedules with your employees. Instead of sending emails back and forth to book meetings or to log out-of-office times, add the employees to a &lt;a href="https://support.google.com/calendar/answer/37082?hl=en"&gt;shared Google Calendar&lt;/a&gt;. In a shared Google Calendar, you can keep track of the entire team’s schedule, not just an individual. Since calendar changes and additions are instantly displayed to all employees, it’s an easy way to make sure that you and your new hires are on the same page right from the start.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Share Calendar.gif" src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/Share_Calendar.gif"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;b&gt;3. Reduce paperwork clutter by creating shared folders online. &lt;br/&gt;&lt;/b&gt;Keeping track of paper forms is a headache. Try moving routine forms and employee handbooks to a template in a digital document and storing those forms in a &lt;a href="https://support.google.com/a/users/answer/9310249"&gt;shared Drive folder&lt;/a&gt; for access by your new hires. Also, create online checklists in Google Keep or Docs so that your new team members can get up to speed on their jobs quickly. Your checklists could include orientation meetings for new employees or a list of forms to fill out for health coverage.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="magnifying-glass-in-wrapper-2.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/magnifying-glass-in-wrapper-2.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;b&gt;4. Create a training hub. &lt;br/&gt;&lt;/b&gt;Your first hires are hopefully just the initial step in building out a bigger (potentially global) team. To prepare for the future, begin building orientation materials and storing them in your shared Drive. For example, you can use Slides to&lt;a href="https://support.google.com/a/users/answer/9310186#1.1"&gt;create a slide presentation&lt;/a&gt; on policies for handling cash or how to process customer orders.&lt;/p&gt;&lt;p&gt;As you build out your orientation materials, think about creating a mini-onboarding portal in Google Sites to store them. Don’t worry, you don’t need to be a coding expert to build a website in Sites—you’ll find tips &lt;a href="https://support.google.com/a/users/answer/9282722?hl=en"&gt;here&lt;/a&gt;for getting started.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="GS ChromeWrapper DF" src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/693-GS-ChromeWrapper-DF.gif"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;b&gt;5. Chat about business even when you’re on the go. &lt;br/&gt;&lt;/b&gt;If you aren’t working in the same space as your new colleagues all day—maybe you both work from home, or you’re on the road a lot—chat and video meetings can help you quickly solve problems.  It’s also a great way to keep your Gmail from filling up with low-priority emails. &lt;/p&gt;&lt;p&gt;You can set up &lt;a href="https://support.google.com/a/users/answer/9300511?hl=en"&gt;Hangouts Chat&lt;/a&gt; on desktop computers, tablets, and phones so you’re always ready to send and receive messages. It’s also possible to search previous conversations for information, and start video meetings directly from chats.&lt;/p&gt;&lt;p&gt;If you’re considering adding more employees, you may be ready to take your human resources up a notch. Check out &lt;a href="https://support.google.com/a/users/answer/9282974?hl=en&amp;amp;ref_topic=9282971"&gt;this article&lt;/a&gt; on the G Suite Learning Center for advice on how to create job descriptions, keep track of candidates, and interview by video.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Tue, 16 Jul 2019 18:30:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/g-suite/5-tips-for-onboarding-your-first-employees-using-g-suite/</guid><category>Small and Medium Businesses</category><category>Productivity &amp; Collaboration</category><category>Gmail</category><category>G Suite</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/GCP_Header-image_defy-ventures_11-14_opt2.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>5 tips for onboarding your first employees using G Suite</title><description>From employee 1 to 1,000, G Suite’s easy-to-use tools can help you quickly hire and onboard new employees without adding too many more tasks to your already busy schedule. Here’s your to-do list for onboarding new employees.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/GCP_Header-image_defy-ventures_11-14_opt2.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/g-suite/5-tips-for-onboarding-your-first-employees-using-g-suite/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jennifer Bi</name><title>Product Marketing Manager, G Suite</title><department></department><company></company></author></item><item><title>Configuring secure remote access for Compute Engine VMs</title><link>https://cloud.google.com/blog/products/identity-security/configuring-secure-remote-access-for-compute-engine-vms/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;System administrators are frequently asked to assess risk when moving their applications to the cloud. One common concern is the platform’s inherent presence on the internet, and how to properly secure cloud-based virtual machines and services that are now exposed. In Google Cloud, you can configure VMs and APIs so they’re not connected to the public internet but still accessible to system administrators. Here’s how.   &lt;/p&gt;&lt;h2&gt;Use Compute Engine’s No External IP Org policy &lt;/h2&gt;&lt;p&gt;The first thing you can do to protect VMs it to configure a policy that disallows VMs from obtaining an external IP. From the &lt;a href="https://console.cloud.google.com/"&gt;admin console&lt;/a&gt;, click Security and select Organization Policies.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="1.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/1_pxYqbmr.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="2.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/2_EThE95N.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Note that this policy is not retroactive, so if you already have machines with external IP addresses, this policy does not remove them. Also be aware that while the default VPC has firewall rules to allow SSH / RDP, without an external IP, these are only accessible from the internal network.  &lt;/p&gt;&lt;h2&gt;Use Cloud Identity-Aware Proxy &lt;/h2&gt;&lt;p&gt;Next, you need to allow developers to access these machines. Traditionally, you configure a VPN client to connect to the VPC. In Google Cloud, there’s a better way: you can use &lt;a href="https://cloud.google.com/iap/"&gt;Cloud Identity-Aware Proxy (IAP)&lt;/a&gt; to connect to the machines. To show you how, we’ll follow &lt;a href="https://cloud.google.com/iap/docs/using-tcp-forwarding"&gt;this guide&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;From the admin console, click Security then select Identity-Aware Proxy.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="3.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/3_bmaWikx.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;If you haven’t used Cloud IAP before, you’ll need to configure the oAuth screen:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="4.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/4_sBypl2I.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="5.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/5_8ayKZMK.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Configure the consent screen to only allow internal users in your domain, and click Save.  &lt;/p&gt;&lt;p&gt;Next, you need to define users who are allowed to use Cloud IAP to connect remotely. Add a user to the “IAP-secured Tunnel User” role on the resource you’d like to connect to.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="6.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/6_fRzooCW.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Then, connect to the machine via the ssh button in the web UI or gcloud.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="7.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/7_niVBjBh.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;When using the web UI, notice the URL parameter useAdminProxy=true.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="8.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/8_CvGDjEs.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Tip: If you don’t have gcloud installed locally, you can also use Cloud Shell:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;You should now be connected! You can verify that you don’t have internet connectivity by attempting to ping out. 8.8.8.8 (Google’s Honest DNS) is a good address to try this with.  &lt;/p&gt;&lt;h2&gt;Controlling access with VPC Service Controls&lt;/h2&gt;&lt;p&gt;Most GCP developers will still want access to Google Cloud APIs. You can give them access to Google Cloud APIs while restricting them to resources that are present in the project by using &lt;a href="https://cloud.google.com/vpc-service-controls/"&gt;VPC Service Controls&lt;/a&gt;.  &lt;/p&gt;&lt;p&gt;First, enable private Google API access on the VPC network where your VM is located (in this example, US-West1.) Select the VPC network in the region where your virtual machines are located. Select the subnet, and click Edit. Enable Private Google access by selecting “Private Google Access” and click Save.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="9.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/9_NP1lp9O.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Once you’ve enabled private access, gcloud commands from the VM will work.  &lt;/p&gt;&lt;p&gt;Now use VPC Service Controls to define where you’d like those API requests to be allowed. Navigate to the ORG node for your domain and select VPC Service Controls from the Security tab. Select New Perimeter. Add your project and the APIs you’d like to protect to the “New VPC Service Perimeter” and click Save.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="10.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/10_REOntW5.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Now that you’ve gone through all these steps, your VMs should be configured so they are only accessible via Identity-Aware Proxy, and only have access to the local network and Google APIs that are part of the project to which they belong.  &lt;/p&gt;&lt;p&gt;As you can see, using Google Cloud tools like Cloud IAP and VPC Service Controls can help you insulate projects from the public internet, reducing risk and fears about moving apps and infrastructure to the cloud. To learn about more security capabilities and features, visit &lt;a href="https://cloud.google.com/security/"&gt;cloud.google.com/security&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Tue, 16 Jul 2019 16:30:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/identity-security/configuring-secure-remote-access-for-compute-engine-vms/</guid><category>Google Cloud Platform</category><category>Identity &amp; Security</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/055-GC-AI-ML-Blog-Header-3.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Configuring secure remote access for Compute Engine VMs</title><description>You can use Cloud IAP to limit access to the internet for your Google Compute Engine VMs.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/055-GC-AI-ML-Blog-Header-3.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/identity-security/configuring-secure-remote-access-for-compute-engine-vms/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Collin Frierson</name><title>Cloud Customer Engineer and Security Specialist</title><department></department><company></company></author></item><item><title>How Google Cloud helps RecruitMilitary connect more veterans to jobs</title><link>https://cloud.google.com/blog/topics/customers/how-google-cloud-helps-recruitmilitary-connect-more-veterans-to-jobs/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;i&gt;&lt;b&gt;Editor’s note:&lt;/b&gt; Today’s post is by Mike Francomb, Senior Vice President of Technology, RecruitMilitary and a U.S. Army Veteran. RecruitMilitary is a wholly owned subsidiary of Bradley-Morris, Inc. (BMI), the largest military-focused recruiting company in the United States. RecruitMilitary uses Google Cloud Talent Solution to power its job search experience and connect more organizations with veteran talent.&lt;/i&gt;&lt;/p&gt;&lt;p&gt;For seven years, I served in the U.S. Army as a Field Artillery Officer, Military Occupation Code 13A. My time in service included a deployment to Operation Desert Shield / Desert Storm with the 24th Infantry Division out of Fort Stewart, GA, and a variety of front line artillery leadership roles, serving as a logistics officer for my unit and as an instructor teaching new officers how to be professional artillerymen. My day-to-day entailed leading teams of highly trained soldiers and managing logistics and materials to help those soldiers perform at a high level in stressful, fast-paced environments. It was my job to ensure we were ready to handle any circumstance. &lt;/p&gt;&lt;p&gt;The hardest part about transitioning out of the Army in May 1996 as a highly trained artillery veteran was the fact that, though I felt prepared for any challenge ahead, I wasn’t sure I was making the right choice. I made a common mistake of transitioning veterans, I jumped right into an entrepreneurial venture. Looking back, I wish I’d had access to resources that displayed career options that would help translate my skills for the corporate world, it would have helped me be better prepared and know what my options were. I wasn’t ready to jump from the Army into running a business, and it was a long two years. &lt;/p&gt;&lt;p&gt;Though my first job out of the Army was challenging, it taught me that I loved the start-up environment, and I joined &lt;a href="http://www.recruitmilitary.com?utm_source=PR&amp;amp;utm_medium=Devra+press+release&amp;amp;utm_content=RMPage&amp;amp;utm_campaign=PRGoogle0719"&gt;RecruitMilitary&lt;/a&gt; in October 1998 when it was five months old. For the past 21 years, I have been fortunate enough to play an important role in helping RecruitMilitary grow to what it is today, the industry leader in connecting military veterans with organizations.  &lt;/p&gt;&lt;p&gt;RecruitMilitary connects organizations with veteran talent through over 30 products and services, all of which are fueled by our &lt;a href="https://success.recruitmilitary.com/jobs?utm_source=PR&amp;amp;utm_medium=Devra+press+release&amp;amp;utm_content=JobBoard&amp;amp;utm_campaign=PRGoogleRMJobBoard0719#register"&gt;job board.&lt;/a&gt; Our job board, with over 1,400,000 members, is core to our business. In fact, if we don’t have an active and growing job board population, we don’t have the supply of veteran talent we need to deliver to our clients across our suite of services. &lt;/p&gt;&lt;p&gt;With veteran unemployment at a 50-year low, it became increasingly challenging for RecruitMilitary to grow our veteran job seeker database and keep those veterans actively applying to client jobs. Being a data-driven company, we saw our existing search functionality was no longer producing the desired results for clients and began to receive client feedback about decreased candidate activity.&lt;/p&gt;&lt;p&gt;It was clear to us that we needed to begin adopting machine learning and more advanced search capabilities into our products and operations. The HR Tech space is shifting that way fast, and we want to be at the forefront. As we researched paths to take and learned of Google’s operating philosophy leading with AI, and that they were developing a tool for veteran job search, it made a lot of sense to go with a leader.&lt;/p&gt;&lt;p&gt;When Grow with Google &lt;a href="https://www.blog.google/outreach-initiatives/grow-with-google/veteran-job-search/?_ga=2.55263522.888791651.1561573601-1029126628.1550260890"&gt;announced&lt;/a&gt; its commitment to support veterans, we learned that we could add their military occupation code (MOS) translation feature to our job board through Cloud Talent Solution. This &lt;a href="http://cloud.google.com/blog/topics/inside-google-cloud/improving-job-search-for-veterans-with-google-clouds-talent-solution"&gt;feature&lt;/a&gt; lets transitioning service members enter their military occupation codes (MOS, AFSC, NEC, or rating) directly into our search bar to see relevant civilian jobs available at client companies. We’re also using Cloud Talent Solution’s &lt;a href="https://cloud.google.com/blog/products/gcp/connecting-employers-near-and-far-remote-job-seekers-cloud-talent-solution"&gt;remote work functionality&lt;/a&gt; to provide an improved job search experience that allows our customers to make remote work opportunities in the U.S. more discoverable on their career sites. We’re excited about this feature, as it enhances our ability to deliver meaningful jobs to important members of our military community, military spouses, and veterans with limited mobility. &lt;/p&gt;&lt;p&gt;The &lt;a href="https://cloud.google.com/customers/recruitmilitary/"&gt;results&lt;/a&gt; of Cloud Talent Solution compared to our previous search are tremendous. Our job seekers are getting a much better experience, and to us that means more veterans are connected to jobs with our clients. We know this because our number of daily job applications has grown by 78 percent. And knowing that we now have a tool that’s going to learn and get better as more of our job seekers use it means that we will reap benefit for work done over time, and so will our clients and veterans who use our job board. That’s tremendous ROI to receive for a lean development staff. &lt;/p&gt;&lt;p&gt;These are just a few of the types of tools I wish I'd had access to when I was considering my transition in 1996. With the help of technology and resources, like those from RecruitMilitary and &lt;a href="https://grow.google/programs/veterans-commitment/#?modal_active=none"&gt;Grow with Google&lt;/a&gt;, people in the military community, including veterans like myself, can prepare for and build meaningful careers.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Tue, 16 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/topics/customers/how-google-cloud-helps-recruitmilitary-connect-more-veterans-to-jobs/</guid><category>AI &amp; Machine Learning</category><category>Google Cloud Platform</category><category>Inside Google Cloud</category><category>Customers</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/miliatry.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>How Google Cloud helps RecruitMilitary connect more veterans to jobs</title><description>Mike Francomb, Senior Vice President of Technology, RecruitMiliary, and a U.S. Army Veteran, shares how RecruitMilitary uses Google Cloud Talent Solution to power its job search experience and connect more organizations with veteran talent.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/miliatry.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/topics/customers/how-google-cloud-helps-recruitmilitary-connect-more-veterans-to-jobs/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Mike Francomb</name><title>SVP Technology, RecruitMilitary</title><department></department><company></company></author></item><item><title>Announcing new GKE architecture specialization—now with one month free access</title><link>https://cloud.google.com/blog/products/containers-kubernetes/announcing-new-gke-architecture-specialization/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Today, IT organizations want to move fast, deploy software efficiently, and scale big. Kubernetes, containers, and &lt;a href="https://cloud.google.com/kubernetes-engine/"&gt;Google Kubernetes Engine&lt;/a&gt; (GKE) can help you do that—and we can help you get started with learning these technologies with our newest training path, the &lt;a href="https://www.coursera.org/specializations/architecting-google-kubernetes-engine?utm_source=googlecloud&amp;amp;utm_medium=institutions&amp;amp;utm_campaign=julyblog_gke"&gt;Architecting with Google Kubernetes Engine Specialization&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;In this specialization, you’ll learn all about Kubernetes, the open-source, vendor-neutral system for orchestrating workloads that are packaged in containers. You’ll gain an understanding for how you can run Kubernetes, and deploy production solutions on it, using&lt;a href="https://cloud.google.com/"&gt;Google Cloud Platform&lt;/a&gt; (GCP). We’ll also deep dive into our GKE managed service that gives you access to Google's advanced load-balancing technologies, its worldwide network, and GCP's range of data and machine-learning managed services. If you’re already familiar with working in a virtual-machine-based environment, this specialization will present familiar architecture principles, but in a GKE environment. You’ll also learn how to configure your GKE environment; build, schedule, load-balance, and monitor workloads; manage access control and security; and give your applications persistent storage. &lt;/p&gt;&lt;p&gt;This specialization is delivered as a combination of lectures and hands-on labs to help you master your skills. When you finish each course, you will receive a certificate that you can share with your professional network and employers.&lt;/p&gt;&lt;p&gt;The Architecting with GKE Specialization consists of four courses:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;GCP Fundamentals: Core Infrastructure&lt;/b&gt; - Learn about important concepts and terminologies for working with GCP. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Architecting with GKE: Foundations&lt;/b&gt; - Master the foundations of architecting with GKE by reviewing the layout and principles of GCP, followed by an introduction to creating and managing software containers and to the architecture of Kubernetes. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Architecting with GKE: Workloads&lt;/b&gt; - Learn about how to perform Kubernetes operations, create and manage deployments, use GKE networking tools; and how to give your Kubernetes workloads persistent storage. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Architecting with GKE: Production&lt;/b&gt; - The last course covers Kubernetes and GKE security, logging and monitoring, and using GCP managed storage and database services from within GKE. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Want to learn more? Join us July 26th at 9:00 am PST for a special webinar, &lt;a href="https://cloudonair.withgoogle.com/events/americas?expand=talk:anthos-journey"&gt;Architecting with Google Kubernetes Engine: Get started on your Anthos journey&lt;/a&gt;. In this webinar you will learn how to enable a hybrid cloud strategy with Kubernetes and participate in a free hands-on lab on how to configure persistent storage for GKE. Just for attending the webinar, we’ll give you one month free access to the GKE Specialization. &lt;a href="https://cloudonair.withgoogle.com/events/americas?expand=talk:anthos-journey"&gt;Register&lt;/a&gt; for the webinar today.&lt;br/&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Fri, 12 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/containers-kubernetes/announcing-new-gke-architecture-specialization/</guid><category>Training and Certifications</category><category>Google Cloud Platform</category><category>Containers &amp; Kubernetes</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/BlogHeader_Kubernetes_B_U7tRcsP.max-600x600.jpg" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Announcing new GKE architecture specialization—now with one month free access</title><description>Google Cloud’s new “Architecting with Google Kubernetes Engine Specialization” prepares you to design and build container-based environments.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/BlogHeader_Kubernetes_B_U7tRcsP.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/containers-kubernetes/announcing-new-gke-architecture-specialization/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Brian Rice</name><title>Technical Curriculum Lead, Cloud Infrastructure</title><department></department><company></company></author></item><item><title>Production debugging comes to Cloud Source Repositories</title><link>https://cloud.google.com/blog/products/devops-sre/production-debugging-comes-to-cloud-source-repositories/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Google Cloud has some great tools for software developers. Cloud Source Repositories and Stackdriver Debugger are used daily by thousands of developers who value Cloud Source Repositories’ excellent code search and Debugger’s ability to quickly and safely find errors in production services.&lt;/p&gt;&lt;p&gt;But Debugger isn’t a full-fledged code browser, and isn’t tightly integrated with all the most common developer environments. The good news is that these tools are coming together! Starting today, you can debug your production services directly in Cloud Source Repositories, for every service where Stackdriver Debugger is enabled.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Debugger CSR 1.gif" src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/Debugger_CSR_1.gif"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;What’s new in Cloud Source Repositories&lt;/h2&gt;&lt;p&gt;This integration brings two pieces of functionality to Cloud Source Repositories: support for snapshots, and logpoints.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Snapshots&lt;br/&gt;&lt;/b&gt;Snapshots are point-in-time images of your application’s local variables and stack that are triggered when a code condition is met. Think of snapshots as breakpoints that don’t halt execution. To create one, simply click on a line number as you would with a traditional debugger, and the snapshot will activate the next time that one of your instances executes the selected line. When this happens, you’ll see the local variables captured during the snapshot and the complete call stack—without halting the application or impacting its state and ongoing operations!&lt;/p&gt;&lt;p&gt;You can navigate and view local variables in this snapshot from each frame in the stack, just as with any other debugger. You also have full access to conditions and expressions, and there are safeguards in place to protect against accidental changes to your application’s state.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Logpoints&lt;br/&gt;&lt;/b&gt;Logpoints allow you to dynamically insert log statements into your running services without redeploying them. Each logpoint operates just like a log statement that you write into your code normally: you can add free text, reference variables, and set the conditions for the log to be saved. Logpoints are written to your standard output path, meaning that you can use them with any logging backend, not just Stackdriver Logging.&lt;/p&gt;&lt;p&gt;Creating a logpoint is a lot like creating a snapshot: simply click on the line number of the line where you wish to set it, and you’re done.&lt;/p&gt;&lt;p&gt;Upon adding a logpoint to your application, it’s pushed out to all instances of the selected service. Logpoints last for 24 hours or until the service is redeployed, whichever comes first. Logpoints have the same performance impact as any other log statement that exists normally in your source code.&lt;/p&gt;&lt;h2&gt;Getting started&lt;/h2&gt;&lt;p&gt;To use Cloud Source Repositories’ production debugging capabilities, you must first enable your Google Cloud Platform projects for Stackdriver Debugger. You can learn more about these setup steps in the &lt;a href="https://cloud.google.com/debugger/docs/setup/"&gt;Stackdriver Debugger documentation&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Once this is complete, navigate to the source code you wish to debug in Cloud Source Repositories, then select ‘Debug application’. Today this works best with code stored in Cloud Source Repositories or that is mirrored from supported third-party sources including GitHub, Bitbucket, and GitLab. Once you’ve selected your application you can start placing snapshots and logpoints in your code by clicking on the line numbers in the left gutter.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Debugger CSR 2.gif" src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/Debugger_CSR_2.gif"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;Production debugging done right&lt;/h2&gt;&lt;p&gt;Being able to debug code that’s running in production is a critical capability—and being able to do so from a full-featured code browser is even better! Now, through bringing production debugging to Cloud Source Repositories, you can track down hard-to-find problems deep in your code, while being able to do things like  continually sync code from a variety of different sources, cross-reference classes, look at blame layers, view change history, and search by class name, method name, etc. To learn more, check out &lt;a href="https://cloud.google.com/debugger/docs/quickstart"&gt;this getting started guide&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;&lt;i&gt;Russell Wolf, Product Manager, also contributed to this blog post.&lt;/i&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Fri, 12 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/devops-sre/production-debugging-comes-to-cloud-source-repositories/</guid><category>Management Tools</category><category>Application Development</category><category>Google Cloud Platform</category><category>DevOps &amp; SRE</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/DevOps_BlogHeader_A_Rnd3.max-600x600.jpg" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Production debugging comes to Cloud Source Repositories</title><description>You can now debug production code running on GCP from within Cloud Source Repositories, using capabilities from Stackdriver Debugger.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/DevOps_BlogHeader_A_Rnd3.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/devops-sre/production-debugging-comes-to-cloud-source-repositories/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Morgan McLean</name><title>Product Manager</title><department>Stackdriver Trace</department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Cristopher Claeys</name><title>Software Engineer</title><department></department><company></company></author></item><item><title>Blockchain.com, scaling and saving with Cloud Spanner</title><link>https://cloud.google.com/blog/products/databases/blockchain-scaling-and-saving-with-cloud-spanner/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;As cryptocurrencies have gotten more popular, we’ve seen the birth of thousands of new currencies and, in parallel, just as many platforms to use them on. One prominent example at the forefront of cryptocurrencies is &lt;a href="https://www.blockchain.com/"&gt;Blockchain&lt;/a&gt;, which has helped 39 million cross-platform wallet users in 140 countries worldwide access the crypto ecosystem.&lt;/p&gt;&lt;p&gt;Blockchain, a Google Cloud customer, was initially focused on creating tools to understand and use Bitcoin, but the company has since expanded to other cryptocurrencies like Ethereum, Bitcoin Cash, Stellar Lumens and the Paxos Standard. Now, millions of individuals rely on the Blockchain Wallet to secure and use the world’s leading cryptocurrencies.&lt;/p&gt;&lt;p&gt;Needless to say, with the size and geographic sprawl of its user base, managing these datasets is no easy feat.&lt;/p&gt;&lt;h2&gt;Meeting user needs while growing fast&lt;/h2&gt;&lt;p&gt;Since the company’s inception, Blockchain has used &lt;a href="https://cloud.google.com"&gt;Google Cloud Platform&lt;/a&gt; (GCP), adding services wherever the team saw opportunities to meet its evolving needs. While Blockchain maintains some of its own hardware and data centers, it wanted to evolve its approach to managing infrastructure to enhance the security, reliability, and accuracy of information platforms. &lt;/p&gt;&lt;p&gt;Blockchain’s flagship products, &lt;a href="https://www.blockchain.com/wallet"&gt;Blockchain Wallet&lt;/a&gt; and &lt;a href="https://www.blockchain.com/explorer"&gt;Blockchain Explorer&lt;/a&gt;, require complicated calculations on hard-to-access data across the massive, decentralized ledgers that underpin cryptocurrency networks. Accessing that data requires complex domain knowledge, technical infrastructure, and development effort, not to mention time to process the entire data chain. This became a major undertaking that required significant in-house IT resources and overhead. &lt;/p&gt;&lt;p&gt;To manage these challenges and enhance the user experience across all products and platforms, Blockchain began running infrastructure on &lt;a href="https://cloud.google.com/compute/"&gt;Compute Engine&lt;/a&gt; instances. Blockchain also chose &lt;a href="http://cloud.google.com/spanner"&gt;Cloud Spanner&lt;/a&gt; as its database service of choice because this database server could scale fast (with no downtime), and provide high-availability with low operational overhead. Cloud SQL, Stackdriver, and identity management products also make up Blockchain’s cloud infrastructure.&lt;/p&gt;&lt;h2&gt;Securing user financial data&lt;/h2&gt;&lt;p&gt;With millions of users across the globe relying on Blockchain for information about and access to their funds, it's no surprise that one of its core values is “Sanctify Security.”&lt;/p&gt;&lt;p&gt;“Security is our number one priority,” says Lewis Tuff, head of platform engineering at Blockchain. “Google Cloud goes above and beyond to help protect data, infrastructure, and services from external threats. GCP makes it easy to get the basics of security right. Cloud Identity Access Management (Cloud IAM) and VPC firewall allow Blockchain to lock down access to resources according to the least privilege principle and implement defense in depth within our environment. Leveraging Stackdriver's logging and monitoring capability enable us to be alerted to any unusual activities in real time.”&lt;/p&gt;&lt;p&gt;Blockchain also uses Google’s Cloud Identity-Aware Proxy (Cloud IAP) to control cloud app access through user identity verification and context awareness. It also uses Cloud Key Management Service (Cloud KMS), integrated with Cloud IAP, to manage cryptographic keys for a comprehensive approach.&lt;/p&gt;&lt;p&gt;“So many companies would benefit from &lt;a href="https://cloud.google.com/iap/"&gt;Cloud IAP&lt;/a&gt;,” Tuff adds. “It’s really easy to authenticate and activate applications based on &lt;a href="https://gsuite.google.com/"&gt;G Suite&lt;/a&gt; accounts. That's huge for us because we have a number of internal and back-office applications that can now be managed through granular, role-based access rights.”&lt;/p&gt;&lt;h2&gt;Scaling on demand to match large volumes of data &lt;/h2&gt;&lt;p&gt;When it came time for Blockchain to expand its Explorer offering to include the Ethereum network, it turned to &lt;a href="https://cloud.google.com/spanner/"&gt;Cloud Spanner&lt;/a&gt;, GCP’s strongly consistent, high-availability (up to 99.999% SLA) database service, to accelerate deployment and keep pace as data volumes grew rapidly, while maintaining reliability. Cloud Spanner’s on-demand scalability let Blockchain cut its operational overhead—the company has achieved savings of 30% by replacing its previous database layer with Cloud Spanner. &lt;/p&gt;&lt;p&gt;With Cloud Spanner, Blockchain knew it could start small and not have to worry about growth of datasets as its service grew. One example of the scaling power the company has found using GCP is the import and export functionality, which allows them to perform a full restoration of the database in nine hours, instead of one week. That’s essential for the company’s rapid development work, and eliminates the need to ingest the whole chain from the genesis block in each environment.     &lt;/p&gt;&lt;p&gt;“That kind of flexibility is really powerful,” says Tuff. “It means we can run our dataset through our environments very easily. We can add nodes as and when required, with high availability and strong consistency across a scalable, distributed database.”&lt;/p&gt;&lt;p&gt;Moving forward, Blockchain’s team is strategically preparing for the future of an emerging market, using GCP services to help execute on initiatives across product and engineering.&lt;/p&gt;&lt;h2&gt;Building out with managed services&lt;/h2&gt;&lt;p&gt;In addition to expanding its use of &lt;a href="http://cloud.google.com/spanner"&gt;Cloud Spanner&lt;/a&gt; as a managed database, and &lt;a href="https://cloud.google.com/stackdriver/"&gt;Stackdriver Monitoring&lt;/a&gt; for logging metrics and analysis, Blockchain is building more microservices with GCP managed services. “It makes sense to see what we can do with GCP products, instead of spinning up our own VMs and managing the whole backup and failover strategy,” says Tuff.&lt;/p&gt;&lt;p&gt;He added, “We’re a fast-moving company, so our relationship with Google Cloud has been invaluable. When we needed advice, the Cloud Spanner team talked through our ideas so we could build the right architecture. The team is experienced, knowledgeable, and dedicated to finding the right architecture for your use case. When you come to Google Cloud with a challenge, the team puts all its talent behind finding the best solution.”&lt;/p&gt;&lt;p&gt;Learn more about &lt;a href="https://cloud.google.com/spanner/"&gt;Cloud Spanner&lt;/a&gt;, and about other &lt;a href="https://cloud.google.com/products/databases/"&gt;Google Cloud databases&lt;/a&gt; here.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Thu, 11 Jul 2019 23:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/databases/blockchain-scaling-and-saving-with-cloud-spanner/</guid><category>Google Cloud Platform</category><category>Spanner</category><category>Databases</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/CloudSpanner-01.2980125050912193.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Blockchain.com, scaling and saving with Cloud Spanner</title><description>Cryptocurrency company Blockchain uses Google Cloud Platform (GCP) to scale its products and serve millions of users securely.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/CloudSpanner-01.2980125050912193.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/blockchain-scaling-and-saving-with-cloud-spanner/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Adrian Poole</name><title>Head of Financial Services UK, Google Cloud Platform</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Deepti Srivastava</name><title>Product Manager, Cloud Spanner</title><department></department><company></company></author></item><item><title>Everyday AI: predicting the work you need to do, with the work you’ve already done</title><link>https://cloud.google.com/blog/products/g-suite/everyday-ai-predicting-the-work-you-need-to-do-with-the-work-youve-already-done/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Nearly all of us have felt overworked and under-resourced in the workplace. Imagine what we could accomplish if we had extra help with mundane tasks like replying to emails, organizing files or even finding relevant data. With G Suite, we aim to do just that by providing assistive features to help you stay productive. For example, in Google Drive we use a feature called Priority that’s powered by machine learning (ML) to find and surface documents for you. If you’re curious about how ML works in Drive, we’ll go “under the hood” in this post. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Refresh: what is Priority in Drive?&lt;/b&gt;&lt;br/&gt;Before we explain the technology, let’s recap what Priority is. In Drive, there are page options on the left side of the homepage to help you access documents: 1.) Priority, 2.) My Drive and 3.) shared drives. The Priority page is a spot in Drive that uses several different ML techniques to continually surface relevant files for you. It looks like this.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Priority in Drive.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Priority_in_Drive.1008058718881038.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;When you click through to the priority page, you’ll see that it is comprised of two parts:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;i&gt;Priority cards&lt;/i&gt;, located in the top half of the page. These cards continually surface important content via predictive machine learning models. Using signals (like upcoming meetings or people you frequently work with) Drive suggests relevant documents, spreadsheets, presentations and more. It can also suggest associated actions to take. We’ll explain how these two things work in a bit.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Workspaces&lt;/i&gt;, located in the bottom half of the page. This is where Drive suggests clusters of files for a project that may need attention based on signals like a common topic (such as a codename) or team members. As time goes on, Drive offers new workspace suggestions and/or flags files that you might want to add to an existing workspace so that you can keep them fresh.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;First, how does Drive know what files to surface for you? &lt;/b&gt;&lt;br/&gt;Priority uses several different ML models, each with their own unique purpose, to decide which “cards” to surface for you. Let’s break them down by the information they help gather.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Using signals from other G Suite apps you use.&lt;/b&gt; One deep learning model we use in Drive is Quick Access, which we constantly update and retrain. This model collects signals from across G Suite to predict which files you will open next. For example, files attached to Gmail threads or upcoming Calendar meetings are both examples of signals that improve Quick Access ranking. Naturally, so are repeatedly-edited Docs, Sheets, and Slides. &lt;a href="https://ai.google/research/pubs/pub46184"&gt;Check out this research paper&lt;/a&gt;, which breaks down the Quick Access model in more detail and includes information on the multi-layer, feed-forward, neural network architecture.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Learning from collaboration patterns.&lt;/b&gt; To suggest files in Drive's "Shared with me" section (located in the left of your homepage under “shared drives”), we &lt;a href="https://gsuiteupdates.googleblog.com/2018/03/find-shared-content-with-new-file.html"&gt;launched&lt;/a&gt; a new model that predicts suggestions based on who you collaborate with frequently. This model informs the Priority page, too, by using the graph of who you share your files with, who you work with in Docs, Sheets, and Slides, who you meet with in Calendar, and who you talk to in Gmail and Hangouts Chat. Unlike the file suggestions from Quick Access, the collaborator model is more robust because it’s informed by your most frequent interactions. That means that when deciding which comment to show, Priority will favor showing the comment from your #1 collaborator instead of your #2.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Registering important comments to identify files to suggest.&lt;/b&gt; In G Suite, you can comment on Docs, Sheets, Slides, and even &lt;a href="https://www.blog.google/products/g-suite/new-ways-comment-microsoft-files-and-more-google-drive/"&gt;Microsoft Office files&lt;/a&gt;, PDFs, and images. The frequency at which you comment can be a great indicator of important files. We built a comment model on top of the ML models above to rank your closest collaborators’ comments higher. This model also informs our suggested actions, which we’ll explain a little further down.  &lt;/li&gt;&lt;li&gt;&lt;b&gt;Defining your “working set” to predict what files are important in the near term.&lt;/b&gt; We built a deep learning model that estimates the likelihood that a file will appear in your working set, that is, the set of files you will need to do your job for the week. This model comes in handy for the “workspaces” section. It works similarly to the Quick Access model, but it filters out files that you haven’t recently edited. Also, it's trained from data collected over an entire week instead of a single visit to Drive.  &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;With these multiple ML models split across Priority cards and Workspaces, Priority can optimize for both precision and recall to surface exactly the right files when you need them.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Next, how does Drive know what actions to suggest? &lt;/b&gt;&lt;br/&gt;We know your work encompasses more than just opening the file you need, which is why Drive is smart enough to not only surface relevant files for you, but to also suggest actions for you to take. For example, it can provide links to help you respond to comments from the Priority page (without having to switch to the document itself) or even suggest files you might need to review before an upcoming meeting. This is all made possible via the ML comment model we built and described above.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--medium h-c-grid__col h-c-grid__col--4 h-c-grid__col--offset-4 "&gt;&lt;img alt="Drive suggested actions.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Drive_suggested_actions.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;With so many comment threads going in our documents, you’d expect it to be hard to track for ML models. Not for Drive. The advantage of being in the cloud, is that we can aggregate these otherwise hard-to-find signals to make useful suggestions—something that isn't possible with on-premises or hybrid content management systems. And the benefits show: in internal analysis, Drive users respond to comments 10–15 minutes faster via Priority than other methods, thanks to the help of ML.&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Last, how does Drive intelligently organize workspaces? &lt;/b&gt;&lt;br/&gt;Drive's ML models, which we outlined above, helps create workspaces for you to access files faster, essentially providing suggestions based on clues from the files.&lt;/p&gt;&lt;p&gt;Let’s say that you just finished a working session with a colleague. Throughout the session you both shared multiple files with each other and started collaborating in real-time with Docs, Sheets, and Slides. Drive clusters these files using your content and the “working set” machine learning model to propose a collection of five files as shown below:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--medium h-c-grid__col h-c-grid__col--4 h-c-grid__col--offset-4 "&gt;&lt;img alt="drive suggested workspace.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/drive_suggested_workspace.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;To begin working in the workspace, you just need to accept it by clicking “Save.” When you accept a suggested workspace, you maintain full control over its name and other files you add to it.&lt;/p&gt;&lt;p&gt;But as you know, projects evolve, and so do their supporting files. In addition to intelligently clustering collection of files to seed a workspace, Drive suggests additional files to add to a workspace to keep it up-to-date:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Drive suggests additiona files.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Drive_suggests_additiona_.0956075616361357.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;b&gt;Spending time on valuable work &lt;/b&gt;&lt;br/&gt;Altogether, machine learning has helped Drive users find the files they need up to 50 percent faster, which means they can spend their time doing more valuable work instead. IT admins can also spend less time tagging, organizing or categorizing content on the backend. That time adds up.&lt;/p&gt;&lt;p&gt;&lt;a href="https://gsuite.google.com/products/drive/"&gt;Learn more&lt;/a&gt; about how your business can use Drive.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Wed, 10 Jul 2019 18:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/g-suite/everyday-ai-predicting-the-work-you-need-to-do-with-the-work-youve-already-done/</guid><category>Drive</category><category>AI &amp; Machine Learning</category><category>Productivity &amp; Collaboration</category><category>Work Transformation</category><category>G Suite</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/GoogleDrive.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Everyday AI: predicting the work you need to do, with the work you’ve already done</title><description>If you’re curious about how ML works in Drive, we’ll go “under the hood” in this post.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/GoogleDrive.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/g-suite/everyday-ai-predicting-the-work-you-need-to-do-with-the-work-youve-already-done/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Mike Colagrosso</name><title>Software Engineer, Google Drive</title><department></department><company></company></author></item><item><title>Cloud TPU Pods break AI training records</title><link>https://cloud.google.com/blog/products/ai-machine-learning/cloud-tpu-pods-break-ai-training-records/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Google Cloud’s AI-optimized infrastructure makes it possible for businesses to train state-of-the-art machine learning models faster, at greater scale, and at lower cost. These advantages enabled &lt;a href="https://cloud.google.com"&gt;Google Cloud Platform&lt;/a&gt; (GCP) to set three new performance records in the latest round of the &lt;a href="https://mlperf.org/"&gt;MLPerf&lt;/a&gt; benchmark competition, the industry-wide standard for measuring ML performance.&lt;/p&gt;&lt;p&gt;All three record-setting results ran on &lt;a href="https://cloud.google.com/blog/products/ai-machine-learning/googles-scalable-supercomputers-for-machine-learning-cloud-tpu-pods-are-now-publicly-available-in-beta"&gt;Cloud TPU v3 Pods&lt;/a&gt;, the latest generation of supercomputers that Google has built specifically for machine learning. These results showcased the speed of Cloud TPU Pods— with each of the winning runs using less than two minutes of compute time.&lt;/p&gt;&lt;h2&gt;AI-optimized infrastructure&lt;/h2&gt;&lt;p&gt;With these latest MLPerf benchmark results, Google Cloud is the first public cloud provider to outperform on-premise systems when running large-scale, industry-standard ML training workloads of Transformer, Single Shot Detector (SSD), and ResNet-50. In the Transformer and SSD categories, Cloud TPU v3 Pods trained models &lt;b&gt;over 84% faster&lt;/b&gt; than the fastest on-premise systems in the MLPerf Closed Division.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;The &lt;b&gt;Transformer&lt;/b&gt; model architecture is at the core of modern natural language processing (NLP)—for example, Transformer has enabled &lt;a href="https://ai.googleblog.com/2017/08/transformer-novel-neural-network.html"&gt;major improvements in machine translation&lt;/a&gt;, &lt;a href="https://ai.googleblog.com/2018/11/open-sourcing-bert-state-of-art-pre.html"&gt;language modeling&lt;/a&gt;, and &lt;a href="https://openai.com/blog/better-language-models/"&gt;high-quality text generation&lt;/a&gt;. &lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;The &lt;b&gt;SSD&lt;/b&gt; model architecture is widely used for object detection, which is a key part of computer vision applications including medical imaging, autonomous driving, and photo editing.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Google Cloud TPU v3 Pod speed-ups.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Google_Cloud_TPU_v3_Pod_speed-ups_sCUcjjC.max-1000x1000.png"/&gt;&lt;figcaption class="article-image__caption "&gt;&lt;div class="rich-text"&gt;&lt;br/&gt;&lt;/div&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;To demonstrate the breadth of ML workloads that Cloud TPUs can accelerate today, we also submitted results in the NMT and Mask R-CNN categories. The NMT model represents a more traditional approach to neural machine translation, and Mask R-CNN is an image segmentation model.&lt;br/&gt;&lt;/p&gt;&lt;h2&gt;Scalable &lt;/h2&gt;&lt;p&gt;GCP provides customers the flexibility to select the right performance and price point for all of their large-scale AI workloads. The wide range of Cloud TPU Pod configurations, called slice sizes, used in the MLPerf benchmarks illustrates how Cloud TPU customers can choose the scale that best fits their needs. A Cloud TPU v3 Pod slice can include 16, 64, 128, 256, 512, or 1024 chips, and several of our &lt;a href="https://github.com/tensorflow/tpu"&gt;open-source reference models&lt;/a&gt; featured in our &lt;a href="https://cloud.google.com/tpu/docs/tutorials"&gt;Cloud TPU tutorials&lt;/a&gt; can run at all of these scales with minimal code changes.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Cloud TPU v3 Pod performance scaling.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Cloud_TPU_v3_Pod_performance_scaling1.max-1000x1000.png"/&gt;&lt;figcaption class="article-image__caption "&gt;&lt;div class="rich-text"&gt;&lt;br/&gt;&lt;/div&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;/p&gt;&lt;h2&gt;Get started today&lt;/h2&gt;Our growing Cloud TPU customer base is already seeing benefits from the scale and performance of Cloud TPU Pods. For example, &lt;a href="https://cloud.google.com/customers/recursion/"&gt;Recursion Pharmaceuticals&lt;/a&gt; can now train in just 15 minutes on Cloud TPU Pods compared to 24 hours on their local GPU cluster.&lt;p&gt;&lt;/p&gt;&lt;p&gt;If cutting-edge deep learning workloads are a core part of your business, please contact a Google Cloud &lt;a href="https://cloud.google.com/contact/?utm_source=cloudaiblog&amp;amp;utm_medium=blog&amp;amp;utm_campaign=tpuv2v3podsbeta"&gt;sales representative&lt;/a&gt; to request access to Cloud TPU Pods. Google Cloud customers can receive evaluation quota for Cloud TPU Pods in days instead of waiting months to build an on-premise cluster. Discounts are also available for one-year and three-year reservations of Cloud TPU Pod slices, offering businesses an even greater performance-per-dollar advantage.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;h2&gt;Only the beginning&lt;/h2&gt;We’re committed to making our AI platform—which includes the latest GPUs, Cloud TPUs, and advanced AI solutions—the best place to run machine learning workloads. Cloud TPUs will continue to grow in performance, scale, and flexibility, and we will continue to increase the breadth of our &lt;a href="https://cloud.google.com/tpu/docs/tutorials"&gt;supported Cloud TPU workloads&lt;/a&gt; (source code &lt;a href="https://github.com/tensorflow/tpu"&gt;available&lt;/a&gt;).&lt;p&gt;&lt;/p&gt;&lt;p&gt;To learn more about Cloud TPUs, please visit our Cloud TPU &lt;a href="https://cloud.google.com/tpu/"&gt;homepage&lt;/a&gt; and &lt;a href="https://cloud.google.com/tpu/docs/"&gt;documentation&lt;/a&gt;. You can also try out a Cloud TPU for free, right in your browser, via this &lt;a href="https://colab.research.google.com/github/tensorflow/tpu/blob/master/models/official/mask_rcnn/mask_rcnn_demo.ipynb"&gt;interactive Colab&lt;/a&gt; that applies a pre-trained Mask R-CNN image segmentation model to an image of your choice. You can find links to many other Cloud TPU Colabs and tutorials at the end of our recent &lt;a href="https://cloud.google.com/blog/products/ai-machine-learning/googles-scalable-supercomputers-for-machine-learning-cloud-tpu-pods-are-now-publicly-available-in-beta"&gt;beta announcement&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;sub&gt;&lt;i&gt;1. MLPerf v0.6 Training Closed. Retrieved from www.mlperf.org 10 July 2019. MLPerf name and logo are trademarks. See www.mlperf.org for more information.&lt;br/&gt;&lt;/i&gt;&lt;i&gt;2. MLPerf entries 0.6-6 vs. 0.6-28, 0.6-6 vs. 0.6-27, 0.6-6 vs. 0.6-30, 0.6-5 vs. 0.6-26, 0.6-3 vs. 0.6-23, respectively.&lt;br/&gt;&lt;/i&gt;&lt;i&gt;3.  MLPerf entries 0.6-3, 0.6-4, 0.6-5, 0.6-6, respectively, normalized by entry 0.6-1&lt;/i&gt;&lt;/sub&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Wed, 10 Jul 2019 17:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/ai-machine-learning/cloud-tpu-pods-break-ai-training-records/</guid><category>Google Cloud Platform</category><category>TPUs</category><category>Inside Google Cloud</category><category>AI &amp; Machine Learning</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/TPU_V3_POD_FULLFRONT_FORWEBONLY_FINAL.max-600x600.jpg" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Cloud TPU Pods break AI training records</title><description>Google Cloud sets three new records in the industry-standard ML benchmark contest, MLPerf, with each of the winning runs using less than two minutes of compute time.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/TPU_V3_POD_FULLFRONT_FORWEBONLY_FINAL.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/ai-machine-learning/cloud-tpu-pods-break-ai-training-records/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Zak Stone</name><title>Senior Product Manager for Cloud TPUs, Google Brain Team</title><department></department><company></company></author></item><item><title>Helping OpenText customers move Enterprise Information Management workloads to Google Cloud</title><link>https://cloud.google.com/blog/topics/partners/helping-opentext-customers-move-enterprise-information-management-workloads-to-google-cloud/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Now more than ever, enterprises are looking to the cloud not just for security, scalability, and access to new technologies, but to drive real business value. For many businesses, the key to this transformation is prioritizing workloads in a few important areas, like &lt;a href="https://cloud.google.com/blog/products/sap-google-cloud/innovating-for-sap-customers-with-google-cloud"&gt;ERP&lt;/a&gt; and &lt;a href="https://atos.net/en/2019/press-release_2019_07_01/atos-expands-strategic-partnership-with-google-cloud-to-enable-oracle-database-customers-to-benefit-from-google-cloud-platform"&gt;databases&lt;/a&gt;. To help, Google Cloud has expanded its partnerships in these areas, developing new ways for customers to run them on the &lt;a href="https://cloud.google.com"&gt;Google Cloud Platform&lt;/a&gt; (GCP).&lt;/p&gt;&lt;p&gt;Increasingly, enterprise information management (EIM) solutions are joining this category of “priority workloads,” as businesses try to derive value from their structured and unstructured information. And that’s why today we’re excited to announce expansions to our partnership with OpenText to help more customers migrate their EIM workloads to Google Cloud.&lt;/p&gt;&lt;p&gt;We began partnering with OpenText, a preferred partner for EIM, in 2018, and now our extended partnership spans multiple product and solutions areas, including Anthos for multi-cloud and hybrid deployments, disaster recovery services on GCP, G Suite, and AI and machine learning. In each of these areas, our shared goal is to help OpenText customers leverage the technology, scale and security of Google Cloud.&lt;/p&gt;&lt;p&gt;Specifically, we are rolling out the following new integrations:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;OpenText has planned containerized versions of several EIM applications on GCP, including Content Server/xECM, Documentum, InfoArchive, and Archive Center. These will all leverage Anthos, our multi-cloud and hybrid offering, to deploy and manage containerized EIM application workloads in a multi-cloud environment.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;OpenText intends to use Google Cloud to enable multi-layered global disaster recovery services for customers with business-critical EIM workloads running in the cloud, on-premises, and in hybrid cloud architectures.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;OpenText plans to begin integrating its EIM solutions with G Suite to allow seamless collaboration across the two platforms.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;We’re working with OpenText to create purpose-built solutions for specific industries, including financial services, healthcare and media and communications, leveraging Google Cloud’s AI and ML services.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Partnering with OpenText is particularly beneficial to customers who are moving SAP applications to the cloud as many run OpenText archiving and other integrated EIM applications to extend the value of their SAP solutions. Our collaboration and OpenText’s investment in managed services in the cloud means these customers can now migrate SAP systems, including their supporting OpenText EIM workloads, to GCP as fully validated and supported applications.&lt;/p&gt;&lt;p&gt;These integrations announced today are just the beginning of our strategic partnership with OpenText. Many customers are increasingly interested in moving critical EIM workloads to Google Cloud and leveraging our reliable and performant infrastructure, AI and ML capabilities, expertise in containerization and our hybrid and multi-cloud solution, Anthos, so we are delighted that OpenText has named Google Cloud as its preferred cloud provider for the enterprise..&lt;/p&gt;&lt;p&gt;We’re excited to bring these integrations to market jointly with OpenText, and we’re excited for a strong future of innovation together—all to the benefit of our mutual customers.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Wed, 10 Jul 2019 13:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/topics/partners/helping-opentext-customers-move-enterprise-information-management-workloads-to-google-cloud/</guid><category>Google Cloud Platform</category><category>SAP on Google Cloud</category><category>Inside Google Cloud</category><category>Partners</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/opentext.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Helping OpenText customers move Enterprise Information Management workloads to Google Cloud</title><description>We’re introducing new integrations with OpenText to help businesses move critical EIM workloads to the cloud—with particular benefit to enterprises migrating SAP applications.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/opentext.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/topics/partners/helping-opentext-customers-move-enterprise-information-management-workloads-to-google-cloud/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Rob Enslin</name><title>President, Google Cloud</title><department></department><company></company></author></item><item><title>Don’t leave frontline workers behind: The case for cloud-native devices</title><link>https://cloud.google.com/blog/products/chrome-enterprise/dont-leave-frontline-workers-behind-the-case-for-cloud-native-devices/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;What does a physician’s assistant, a police records technician, a retail sales associate, and an automobile quality assurance worker have in common? They all work on the front lines of an organization. For some, this means interacting directly with customers or patients. For others, it involves building, checking  or delivering goods or services. No matter the job, they all &lt;a href="https://www.youtube.com/watch?v=ulnZQPPTRAg&amp;amp;feature=youtu.be"&gt;make work happen&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;Because they interact directly with customers, or with the creation of goods and services, frontline workers can be some of the most important employees in an enterprise, yet they’re frequently underserved when it comes to up-to-date tools and technology. &lt;/p&gt;&lt;p&gt;Fortunately, that’s starting to change, and we shared the ways several Google Cloud customers are bringing cloud-native technologies to the front lines in our previous post, &lt;a href="https://cloud.google.com/blog/products/chrome-enterprise/5-ways-it-leaders-can-invest-in-their-frontline-workers-with-chromebooks-and-g-suite"&gt;“5 ways IT leaders can invest in their frontline workers with Chromebooks and G Suite&lt;/a&gt;.”&lt;/p&gt;&lt;p&gt;But we also wanted to get a deeper understanding of what the frontline workforce wants and needs when it comes to technology adoption, as well as what gets in its way. In May, we commissioned an &lt;a href="http://services.google.com/fh/files/misc/forrester_research_study_on_cloud_and_frontline_workers.pdf"&gt;independent study&lt;/a&gt; with Forrester to explore exactly that, and below you’ll find  a snapshot of what we learned, directly from frontline workers themselves. &lt;/p&gt;&lt;p&gt;&lt;b&gt;The frontline workforce faces obstacles to completing core job tasks&lt;br/&gt;&lt;/b&gt;Happy and productive employees can mean both lower workforce attrition and higher customer satisfaction, leading to more sales. But it can be hard to deliver that productivity when employees grapple with  dysfunctional technology, which can interrupt flow, slow down performance, or stop work in its tracks.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;The frontline workforce in particular is slowed down by technology in a few ways, including: device operating failure or required rebooting after updates; slow or outdated systems; and a lack of immediate access to critical information.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--medium h-c-grid__col h-c-grid__col--4 h-c-grid__col--offset-4 "&gt;&lt;img alt="chrome enterprise data.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/chrome_enterprise_data.max-1000x1000.png"/&gt;&lt;figcaption class="article-image__caption "&gt;&lt;div class="rich-text"&gt;&lt;i&gt;&lt;a href="http://services.google.com/fh/files/blogs/fy19q2_forrester_image_issue_frequency.jpg"&gt;Download link&lt;/a&gt;&lt;/i&gt;&lt;/div&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;This information gap can be crippling because frontline workers often need access to multiple sources of information to do their jobs. According to the survey, 46 percent of frontline workers reported they have to ask customers to wait while they hunt down information at least once a week, if not more. Both employee and customer experiences suffer as a result.&lt;/p&gt;&lt;p&gt;What the frontline workforce wants is clear from the Forrester survey results:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Devices that are secure from external threats&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Easy, instant communication with teammates, managers, and leadership&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Continuous productivity, rather than glitchy or slow-operating systems&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Self-service information on-demand to help them do their jobs&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;a href="http://services.google.com/fh/files/misc/forrester_research_study_on_cloud_and_frontline_workers.pdf"&gt;Download the report&lt;/a&gt; to read more specifics on these findings. &lt;/p&gt;&lt;p&gt;&lt;b&gt;Filling the technology gap for the frontline workforce &lt;br/&gt;&lt;/b&gt;Forrester findings suggest that businesses can address frontline workforce needs by adopting cloud-native technologies because they’re easy to use and deploy for employees, as witnessed in worker responses. &lt;/p&gt;&lt;p&gt;For example, only 12 percent of the frontline workers surveyed found it difficult to use work-related applications accessed via a web browser. That means that the other 88 percent of workers felt comfortable using apps that are browser-based to do their jobs. &lt;/p&gt;&lt;p&gt;Taking this a step further, &lt;a href="https://cloud.google.com/files/chrome-enterprise/helpcenter/forrester_tei_of_chrome_os_with_gsuite.pdf"&gt;an additional report&lt;/a&gt; that we commissioned with Forrester in 2018 reviewed the economic impact of adopting cloud-native solutions, like Chrome OS and G Suite. In that report, research suggests that businesses could stand to benefit from hidden cost savings when adopting cloud-native tools, including more than $477,000 in IT management and services savings.&lt;/p&gt;&lt;p&gt;If you couple those findings with these frontline workforce insights, the opportunity presents itself: going cloud-first can increase productivity, employee retention and engagement and mobility for businesses, all at a lower cost.&lt;/p&gt;To learn more about the perspectives of the frontline workforce, &lt;a href="http://services.google.com/fh/files/misc/forrester_research_study_on_cloud_and_frontline_workers.pdf"&gt;read the full study&lt;/a&gt;, or join J. P. Gownder, vice president and principal analyst at Forrester, on July 24 for a free webinar on the &lt;a href="https://chromeonair.withgoogle.com/events/frontlineworkerstudy"&gt;technology gap for frontline workers&lt;/a&gt;.&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Tue, 09 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/chrome-enterprise/dont-leave-frontline-workers-behind-the-case-for-cloud-native-devices/</guid><category>Research</category><category>Inside Google Cloud</category><category>Productivity &amp; Collaboration</category><category>Work Transformation</category><category>Chrome Enterprise</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/Retail_Hero_image_m6dPaq7.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Don’t leave frontline workers behind: The case for cloud-native devices</title><description>We commissioned Forrester Consulting to conduct an independent study exploring technology adoption and barriers to success directly from frontline workers in healthcare, manufacturing, retail, and government.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/Retail_Hero_image_m6dPaq7.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/chrome-enterprise/dont-leave-frontline-workers-behind-the-case-for-cloud-native-devices/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Menaka Shroff</name><title>Global Marketing Head of Emerging Business, Google Cloud</title><department></department><company></company></author></item><item><title>How to serve deep learning models using TensorFlow 2.0 with Cloud Functions</title><link>https://cloud.google.com/blog/products/ai-machine-learning/how-to-serve-deep-learning-models-using-tensorflow-2-0-with-cloud-functions/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;i&gt;&lt;b&gt;Editor’s note&lt;/b&gt;: Today’s post comes from Rustem Feyzkhanov, a machine learning engineer at Instrumental. Rustem describes how Cloud Functions can be used as inference for deep learning models trained on TensorFlow 2.0, the advantages and disadvantages of using this approach, and how it is different from other ways of deploying the model.&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="https://www.tensorflow.org/"&gt;TensorFlow&lt;/a&gt; is an established &lt;a href="https://github.com/tensorflow/tensorflow"&gt;framework&lt;/a&gt; for training and inference of deep learning models. Recent updates to &lt;a href="https://www.tensorflow.org/beta"&gt;version 2.0&lt;/a&gt; offer a number of &lt;a href="https://medium.com/tensorflow/whats-coming-in-tensorflow-2-0-d3663832e9b8"&gt;enhancements&lt;/a&gt;, including significant changes to &lt;a href="https://www.tensorflow.org/guide/eager"&gt;eager execution&lt;/a&gt;. But one of the challenges with this new framework is deploying TensorFlow 2.0 deep learning models. &lt;a href="https://cloud.google.com/functions/"&gt;Google Cloud Functions&lt;/a&gt; offer a convenient, scalable and economic way of running inference within Google Cloud infrastructure and allows you to run the most recent version of this framework.&lt;/p&gt;&lt;p&gt;This post will explain how to run inference on Cloud Functions using TensorFlow 2.0.&lt;/p&gt;&lt;p&gt;We’ll explain how to deploy a deep learning inference including:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;How to install and deploy Cloud Functions&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;How to store a model&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;How to use the Cloud Functions API endpoint&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;The components of our system&lt;/h2&gt;&lt;p&gt;&lt;a href="https://cloud.google.com"&gt;Google Cloud Platform&lt;/a&gt; (GCP) provides multiple ways for deploying inference in the cloud. Let’s  compare the following methods for deploying the model:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Compute Engine cluster with TF serving&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cloud AI Platform Predictions&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cloud Functions&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;b&gt;TensorFlow Serving&lt;br/&gt;&lt;/b&gt;Typically you might use a cluster as inference for the model. In this case, &lt;a href="https://www.tensorflow.org/tfx/guide/serving"&gt;TF serving&lt;/a&gt;would be a great way to organize inference on one or more VMs —then, all you need to do is add a load balancer on top of the cluster.  You can use the following products to deploy TF serving in AI Platform:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;&lt;a href="https://cloud.google.com/deep-learning-vm/"&gt;Deep Learning VM images&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;a href="https://cloud.google.com/ai-platform/deep-learning-containers/"&gt;Deep Learning Containers&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;This approach has the following advantages:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Great response time as the model will be loaded in the memory&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Economy of scale, meaning cost per run will decrease significantly when you have a lot of requests&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="TensorFlow Serving.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/TensorFlow_Serving.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;b&gt;AI Platform Predictions&lt;br/&gt;&lt;/b&gt;AI Platform provides an easy way to serve pre-trained models through &lt;a href="https://cloud.google.com/ml-engine/"&gt;AI Platform Predictions&lt;/a&gt;.  This has many advantages for inference when compared to the cluster approach:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Codeless inference makes getting started easy&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Scalable infrastructure&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;No management of infrastructure required&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Separate storage for the model, which is very convenient for tracking versions of the model and for comparing their performance&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;b&gt;Note&lt;/b&gt;: You can use Cloud Functions in combination with AI Platform Predictions (you can learn more in &lt;a href="https://cloud.google.com/blog/products/ai-machine-learning/empower-your-ai-platform-trained-serverless-endpoints-with-machine-learning-on-google-cloud-functions"&gt;this post&lt;/a&gt;).&lt;/p&gt;&lt;p&gt;&lt;b&gt;Cloud Functions&lt;br/&gt;&lt;/b&gt;When comparing Deep Learning VMs and AI Platform Predictions, the full serverless approach provides the following advantages:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;Simple code for implementing the inference, which at the same time allows you to implement custom logic.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Great scalability, which allows you to scale from 0 to 10k almost immediately&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Cost structure which allows you only to pay for runs, meaning you don’t pay for idle servers.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Ability to use custom versions of different frameworks (Tensorflow 2.0 or PyTorch)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;In summary, please take a look at this table:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Cloud Functions table.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Cloud_Functions_table.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Since Google Cloud also provides some &lt;a href="https://cloud.google.com/functions/pricing-summary/"&gt;free&lt;/a&gt; invocations of Cloud Functions per month, this kind of setup would be perfect for a pet project or for a start-up that wants to get early customer feedback on a prototype. Also, it would be useful in cases where you have to process peak loads. The downside would be that in cases where the model is too big, the cold start could take some time and it would be very hard to achieve real-time performance. Also we need to keep in mind that serverless infrastructure doesn't provide economy of scale, meaning the price of an individual run won’t go down when you have a large number of requests, so in these types of cases, it may be cheaper to use a cluster with TF serving as inference.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="TF serving as inference.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/TF_serving_as_inference_IZxw9W5.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;As we can see, Compute Engine pricing per hour looks extremely attractive (with utilizing &lt;a href="https://cloud.google.com/compute/docs/instances/preemptible"&gt;preemptible&lt;/a&gt; instances or &lt;a href="https://cloud.google.com/compute/docs/instances/signing-up-committed-use-discounts"&gt;commitment use&lt;/a&gt;, the price will be even lower), but the catch here is that cost of instance is per one second, with a &lt;a href="https://cloud.google.com/compute/pricing#billingmodel"&gt;minimum of one minute&lt;/a&gt;. Cloud Functions, on the other hand, have billing per 100ms without a minimum time period. This means Cloud Functions are great for short, inconsistent jobs, but if you need to handle a long, consistent stream of jobs, Compute Engine might be a better choice.&lt;/p&gt;&lt;h2&gt;Architecture Overview&lt;/h2&gt;&lt;p&gt;Our system will be pretty simple. We will train the model locally and then upload it to Google Cloud. Cloud Functions will be invoked through an API request and will a download model and a test image from Cloud Storage.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="cloud function Architecture Overview.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/cloud_function_Architecture_Overview.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;There are several things to consider when you design a system to use serverless infrastructure as an inference.&lt;/p&gt;&lt;p&gt;First of all, keep in mind differences between &lt;i&gt;&lt;b&gt;cold invocation&lt;/b&gt;&lt;/i&gt;, when the function needs time to download and initialize the model, and warm invocation, when function uses a cached model. Increasing the ratio of warm invocations to cold invocations not only allows you to increase processing speed, it also decreases the cost of your inference. There are multiple ways you can increase the ratio. One way could be warming up functions so they will be warm when a high load comes in. Another way is to use Pub/Sub to normalize a load so that it will be processed by warm containers.&lt;/p&gt;&lt;p&gt;Secondly, you can use batching to optimize the cost and speed of processing. Because a model can run on the whole batch instead of running separately on each image, batching allows you to decrease the difference between cold and warm invocation and improve overall speed.&lt;/p&gt;&lt;p&gt;Finally, you can have some part of your model saved as part of your libraries. This allows you to save time downloading the model during cold invocation. You could also try to divide the model into layers and chain them together on separate functions. In this case, each function will send an intermediate activation layer down the chain and neither of the functions would need to download the model.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Cost&lt;br/&gt;&lt;/b&gt;In the demo which we will deploy we use 2GB Cloud Function. Cold invocation takes 3.5s and warn invocation takes 0.5s. In terms of pricing we get 0.0001019$ per cold invocation and 0.0000149$ per warm invocation. It means that for 1$ we get ~10k cold invocations and ~65k warm invocations. With free tier provided by Google Cloud you would get for free ~20k cold invocations and ~140k warm invocations per month. Feel free to check the pricing for your use cases using &lt;a href="https://cloud.google.com/products/calculator/#"&gt;pricing calculator&lt;/a&gt;.&lt;/p&gt;&lt;h2&gt;TensorFlow 2.0 example&lt;/h2&gt;&lt;p&gt;First, let’s install Tensorflow 2.0 beta on your computer. You can install it either on your system python or by creating a &lt;a href="https://packaging.python.org/guides/installing-using-pip-and-virtual-environments/"&gt;virtual environment&lt;/a&gt;:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Let's use fashion MNIST with TensorFlow 2.0b as an example. Here is how the code for training and exporting model weights would look like:&lt;/p&gt;&lt;p&gt;Based on the &lt;a href="https://www.tensorflow.org/alpha/tutorials/quickstart/advanced"&gt;example&lt;/a&gt;:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;The code will produce the following files:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;We will need to store the model separately from the code as there is a limit on local file size on the Cloud Functions. You can upload them to the Cloud Storage bucket along with the &lt;a href="https://github.com/ryfeus/gcf-packs/blob/master/tensorflow2.0/example/test.png"&gt;test image&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--medium h-c-grid__col h-c-grid__col--4 h-c-grid__col--offset-4 "&gt;&lt;img alt="Cloud Storage test image.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Cloud_Storage_test_image.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;Cloud Functions&lt;/h2&gt;&lt;p&gt;One of the main upsides of Cloud Functions is that you don't have to manually generate the package. You can just use a &lt;i&gt;requirements.txt&lt;/i&gt; file and list all used libraries there. Also, remember to have the model as a global variable in your python code so it will be cached and reused in warm invocations of Cloud Functions.&lt;/p&gt;&lt;p&gt;Therefore we will have two files:&lt;/p&gt;&lt;p&gt;&lt;code&gt;requirements.txt&lt;/code&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;and &lt;code&gt;main.py&lt;/code&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;Deployment through the command line&lt;/h2&gt;&lt;p&gt;You can easily deploy and run Cloud Functions using &lt;i&gt;gcloud&lt;/i&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;The response would be:&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-code"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid uni-paragraph-wrap"&gt;&lt;div class="uni-paragraph h-c-grid__col h-c-grid__col--8 h-c-grid__col-m--6 h-c-grid__col-l--6 h-c-grid__col--offset-2 h-c-grid__col-m--offset-3 h-c-grid__col-l--offset-3"&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;Deployment through the web console&lt;/h2&gt;First, let’s start from the Cloud Functions &lt;a href="https://console.cloud.google.com/functions/list"&gt;dashboard&lt;/a&gt;. To create a new Cloud Function,  choose the “Create function” button. In the “Create function” window, set the function’s name (“tensorflow2demo”), allocated memory (2 GB in our case for the best performance), trigger (HTTP trigger in our case) and runtime (python 3.7).&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="cloud functions create function.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/cloud_functions_create_function.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Next, set the main.py and requirements.txt files. You can just copy the code and libraries from the files at the &lt;a href="https://github.com/ryfeus/gcf-packs/tree/master/tensorflow2.0/example"&gt;repo&lt;/a&gt;. Finally, w push the “Create” button and initialize the creation of the function.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="main py.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/main_py.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Once the function is deployed, you can test it in the “Testing” section of theCloud Functions dashboard. You can also customize incoming events and see output as well as logs.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="tensorflow demo.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/tensorflow_demo.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="tensorflow logs.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/tensorflow_logs.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;As you can see, our pretrained model successfully classified image as trousers. If we run the functions one more time, we will see that it will run a lot faster because we saved the model to the cache and won’t need to reload it during warm invocation.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="tensorflow logs 2.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/tensorflow_logs_2.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h2&gt;Conclusion&lt;/h2&gt;&lt;p&gt;With this post, you should now be able to create a TensorFlow 2.0 endpoint on GCloud Functions. Setting the project up is easy, and can save a lot of time when compared to the traditional approach of using a cluster of VMs. As you can see, Cloud Functions provide an easy way to start with contemporary frameworks and deploy pre-trained models in a matter of minutes. &lt;/p&gt;&lt;p&gt;As a hobby, I port a lot of libraries to make the serverless friendly. Feel free to check my repos with other examples like headless chrome or pandas with numpy on Cloud Functions. They all have an MIT license, so feel free to modify and use them for your project.&lt;/p&gt;&lt;p&gt;Learn more about Cloud Functions &lt;a href="https://cloud.google.com/functions/"&gt;here&lt;/a&gt;, and consider starting a &lt;a href="https://cloud.google.com/free/"&gt;free trial&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;i&gt;Acknowledgements: Gonzalo Gasca Meza, Developer Programs Engineer contributed to this post.&lt;/i&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Tue, 09 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/ai-machine-learning/how-to-serve-deep-learning-models-using-tensorflow-2-0-with-cloud-functions/</guid><category>Google Cloud Platform</category><category>Serverless</category><category>AI &amp; Machine Learning</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/CloudFunctions_TF.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>How to serve deep learning models using TensorFlow 2.0 with Cloud Functions</title><description>Learn how to run inference on Cloud Functions using TensorFlow 2.0.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/CloudFunctions_TF.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/ai-machine-learning/how-to-serve-deep-learning-models-using-tensorflow-2-0-with-cloud-functions/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Rustem Feyzkhanov</name><title>Machine Learning Engineer, Instrumental</title><department></department><company></company></author></item><item><title>Cloud Memorystore adds import-export and Redis 4.0</title><link>https://cloud.google.com/blog/products/databases/cloud-memorystore-adds-import-export-and-redis-4-0/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;&lt;a href="https://cloud.google.com/memorystore/"&gt;Cloud Memorystore for Redis&lt;/a&gt; provides a fully managed Redis service on &lt;a href="https://cloud.google.com"&gt;Google Cloud Platform&lt;/a&gt; (GCP) that lets you build low-latency, highly scalable applications. This in-memory data store brings super-fast access to data, and is used for caching, session stores, rate limiting, job queues, fast ingest, messaging and more. &lt;/p&gt;&lt;p&gt;Since the beta launch, one of the most requested features has been the ability to migrate data into Cloud Memorystore and back up instance data, in order to leverage fully managed Cloud Memorystore services. We are pleased to announce the availability of import-export in beta for Cloud Memorystore, which lets you import data into Cloud Memorystore instances using RDB (Redis Database Backup) snapshots, as well as back up data from existing Redis instances. The use of the RDB format allows seamless migration of your data in and out of Google Cloud.&lt;/p&gt;&lt;p&gt;Along with import-export, we are also pleased to announce the general availability of support for Redis version 4.0.  &lt;/p&gt;&lt;h3&gt;How to use import-export&lt;/h3&gt;&lt;p&gt;The new import-export feature allows you to import and export data using the native Redis RDB format. Once you import the RDB file, it will be stored in a Google Cloud Storage bucket of your choosing, so you have control over where your files are located. &lt;/p&gt;&lt;p&gt;To import data into Cloud Memorystore, start by backing up your existing instance data using &lt;a href="https://redis.io/commands/bgsave"&gt;BGSAVE&lt;/a&gt;, the native Redis command that will take an RDB snapshot. Once you have the RDB file, upload it into a regional Cloud Storage bucket. &lt;/p&gt;&lt;p&gt;Once the file is available in a regional bucket, it is very easy to import the file into a Cloud Memorystore instance. To do this, in the GCP Console, navigate to the instance details page and select “Import,” then select the RDB file you want to bring in. Click on the “Import” button.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Cloud Memorystore instance details.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Cloud_Memorystore_instance_details.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-image_full_width"&gt;&lt;div class="article-module h-c-page"&gt;&lt;div class="h-c-grid"&gt;&lt;figure class="article-image--large h-c-grid__col h-c-grid__col--6 h-c-grid__col--offset-3 "&gt;&lt;img alt="Cloud Memorystore import from cloud storage.png" src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Cloud_Memorystore_import_from_cloud_storag.max-1000x1000.png"/&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;Exporting data from an instance is similar; simply choose the Cloud Storage bucket where you want to store the RDB file being exported.  &lt;/p&gt;&lt;p&gt;To learn more, check out the &lt;a href="https://cloud.google.com/memorystore/docs/redis/import-export-overview"&gt;documentation&lt;/a&gt;. And take a look at this session from Next ‘19 to see a Cloud Memorystore for Redis demo:&lt;/p&gt;&lt;h3&gt;&lt;/h3&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-video"&gt;&lt;div class="article-module article-video "&gt;&lt;figure&gt;&lt;a class="h-c-video h-c-video--marquee" data-glue-modal-disabled-on-mobile="true" data-glue-modal-trigger="uni-modal-BNDTgMG3cLk-" href="https://youtube.com/watch?v=BNDTgMG3cLk"&gt;&lt;img alt="In-memory caching is a common architectural pattern used to speed up application performance. As easy as it sounds, storing and accessing data from in-memory stores have challenges. How do you size your cache for the optimal cache-hit ratio? What APIs should I use to solve a specific use case? How do I troubleshoot when there is a latency problem? With Cloud Memorystore, we make it easy to deploy and operate an in-memory store that is fully compatible with Redis. In this session, you will learn how to effectively use Cloud Memorystore to speed up your application." src="//img.youtube.com/vi/BNDTgMG3cLk/maxresdefault.jpg"/&gt;&lt;svg class="h-c-video__play h-c-icon h-c-icon--color-white" role="img"&gt;&lt;use xlink:href="#mi-youtube-icon"&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/a&gt;&lt;/figure&gt;&lt;/div&gt;&lt;div class="h-c-modal--video" data-glue-modal="uni-modal-BNDTgMG3cLk-" data-glue-modal-close-label="Close Dialog"&gt;&lt;a class="glue-yt-video" data-glue-yt-video-autoplay="true" data-glue-yt-video-height="99%" data-glue-yt-video-vid="BNDTgMG3cLk" data-glue-yt-video-width="100%" href="https://youtube.com/watch?v=BNDTgMG3cLk" ng-cloak=""&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;h3&gt;What’s next for Cloud Memorystore&lt;/h3&gt;&lt;p&gt;We are continuing to work on top requests from our customers. Stay tuned for new features, like updated Redis versions. Let us know what other features and capabilities you’d like to see with our &lt;a href="https://cloud.google.com/support/docs/issue-trackers"&gt;Issue Tracker&lt;/a&gt; and by joining the Cloud Memorystore &lt;a href="https://groups.google.com/forum/#!forum/google-cloud-memorystore-discuss"&gt;discussion group&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Tue, 09 Jul 2019 16:00:00 -0000</pubDate><guid>https://cloud.google.com/blog/products/databases/cloud-memorystore-adds-import-export-and-redis-4-0/</guid><category>Google Cloud Platform</category><category>Databases</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/BlogHeader_Database_3_ZIyuD1m.max-600x600.jpg" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Cloud Memorystore adds import-export and Redis 4.0</title><description>The new import-export feature is now available in Cloud Memorystore for Redis, letting you move Redis instances into Cloud Storage buckets for application caching.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/BlogHeader_Database_3_ZIyuD1m.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/cloud-memorystore-adds-import-export-and-redis-4-0/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Gopal Ashok</name><title>Product Manager for Cloud Memorystore</title><department>Google Cloud Platform</department><company></company></author></item><item><title>Google to acquire Elastifile</title><link>https://cloud.google.com/blog/topics/inside-google-cloud/expanding-our-enterprise-file-storage-offerings-to-simplify-the-management-and-scaling-of-data/</link><description>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div class="block-paragraph"&gt;&lt;div class="rich-text"&gt;&lt;p&gt;We are very excited to announce that Google has entered into a definitive agreement to acquire Elastifile, a provider of scalable, enterprise file storage for the cloud. The acquisition of Elastifile is expected to be completed later this year and is subject to customary closing conditions, including the receipt of regulatory approvals. Upon the close of the acquisition, Elastifile will join Google Cloud.&lt;/p&gt;&lt;p&gt;File storage is fundamental to enterprise infrastructure and a priority for customers looking to accelerate their digital transformation. For example, companies who run SAP need access to highly available and consistent file storage. Developers building applications that use Kubernetes need file storage for their stateful workloads. As these critical applications migrate to the cloud, IT teams need simple, natively compatible storage options along with the features and performance to support them. &lt;/p&gt;&lt;p&gt;Elastifile is a pioneer in solving the challenges associated with file storage for enterprise-grade applications running at scale in the cloud. They’ve built a unique software-defined approach to managed Network Attached Storage (NAS), enabling organizations to scale performance or capacity without cumbersome overhead. Building on this technology, our teams are excited to join together and integrate Elastifile with Google Cloud Filestore. &lt;/p&gt;&lt;p&gt;“The integrated circuit (IC) design  process can produce a wide spectrum of compute and storage requirements,” said Naidu Annamaneni, CIO and VP of Global IT at eSilicon. “This can translate into thousands of cores and petabytes of storage for some portions of the IC design. The combination of Elastifile and Google Cloud provides the scale and performance that we need to successfully deliver these ICs on time and on budget.”   &lt;/p&gt;&lt;p&gt;The combination of Elastifile and Google Cloud will support bringing traditional workloads into GCP faster and simplify the management and scaling of data and compute intensive workloads. Furthermore, we believe this combination will empower businesses to build industry-specific, high performance applications that need petabyte-scale file storage more quickly and easily. This is critical for industries like media and entertainment, where collaborative artists need shared file storage and the ability to burst compute for image rendering; and life sciences, where genomics processing and ML training need speed and consistency; and manufacturing, where jobs like semiconductor design verification can be accelerated by parallelizing the simulation models. &lt;/p&gt;&lt;p&gt;"Helping our customers solve difficult storage challenges for their most critical workloads has enabled these enterprises to unleash the full benefits of the cloud,” said Erwan Menard, CEO at Elastifile. “We’re excited to join Google for the next part of our journey, building on the success we’ve had together over the past two and a half years. File storage is essential to enterprise cloud adoption and, together with Google, we are well-positioned to serve those needs."&lt;/p&gt;&lt;p&gt;Earlier this year, we launched Elastifile File Service on GCP, a fully-managed version of Elastifile integrated with Google Cloud. Customers like Appsbroker, eSilicon and &lt;a href="https://www.youtube.com/watch?time_continue=2&amp;amp;v=VL6iG54PanI=19m14s"&gt;Forbes&lt;/a&gt; have already taken advantage of the latest Elastifile solutions on GCP. &lt;/p&gt;&lt;p&gt;“In recent years, we’ve seen enterprises increasingly deploy traditional applications as well as new performance sensitive applications to the cloud,” said Deepak Mohan, Research Director at IDC.  “These applications require on-premises level of performance for latency and consistency alongside of the scalability benefits of the cloud. The acquisition of Elastifile will better enable Google Cloud customers to meet this mix of needs, as they deploy such workloads to the Google Cloud Platform.” &lt;/p&gt;&lt;p&gt;Google Cloud is committed to our storage partner ecosystem, providing customers the choice of solutions that best fit their needs. The acquisition of Elastifile extends our current file storage offering, Cloud Filestore, and our robust third party partner offerings to support applications from website hosting to computer chip design. We can’t wait for our customers to benefit.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;</description><pubDate>Tue, 09 Jul 2019 13:30:00 -0000</pubDate><guid>https://cloud.google.com/blog/topics/inside-google-cloud/expanding-our-enterprise-file-storage-offerings-to-simplify-the-management-and-scaling-of-data/</guid><category>Databases</category><category>Inside Google Cloud</category><media:content url="https://storage.googleapis.com/gweb-cloudblog-publish/images/elk.max-600x600.png" width="540" height="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Google to acquire Elastifile</title><description>The combination of Elastifile and Google Cloud will help businesses bring traditional workloads into GCP faster and simplify the management and scaling of data and compute intensive workloads.</description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/elk.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/topics/inside-google-cloud/expanding-our-enterprise-file-storage-offerings-to-simplify-the-management-and-scaling-of-data/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Thomas Kurian</name><title>CEO, Google Cloud</title><department></department><company></company></author></item></channel></rss>