Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Growing your Product with Google Cloud Platform

Growing your Product with Google Cloud Platform

Talk on GCP given at Africa Women in Tech conference on 21/7/16.

James Mwai

July 21, 2016
Tweet

More Decks by James Mwai

Other Decks in Technology

Transcript

  1. About Me • KU Alumni (Computer Science) • Software Consultant

    based in Nairobi • Experience building Mobile and Web based applications, designing cloud infrastructure, and building cloud automation tools. • Ihub Consultant • Python Instructor at Akirachix • Google Developer Expert
  2. Google Developer Experts https://developers.google.com/experts/ […] Google Experts are a global

    network of experienced product strategists, designers, developers and marketing professionals actively supporting developers, startups and companies changing the world through web and mobile applications.
  3. Growing your product You will need Easily accessible and scalable

    computing power Secure, reliable data storage services
  4. Growing your product You will need Easily accessible and scalable

    computing power Secure, reliable data storage services Good developer tools
  5. Growing your product You will need Easily accessible and scalable

    computing power Secure, reliable data storage services Good developer tools Data analytics and warehousing tools
  6. Growing your product You will need Easily accessible and scalable

    computing power Secure, reliable data storage services Good developer tools Data analytics and warehousing tools Machine learning tools
  7. Growing your product You will need Easily accessible and scalable

    computing power Secure, reliable data storage services Good developer tools Data analytics and warehousing tools Machine learning tools Management tools
  8. Google Cloud Platform • Gives you access to all the

    above services in an easy to use manner • With GCP you can build and host your apps in the same infrastructure that runs your favorite Google products. • Secure and fully featured • Powerful data storage and analytics features • Constantly evolving • Reasonably priced
  9. GCP Services • Computing services • Data Storage • Networking

    • Big Data and Analytics • Machine Learning • Developer Tools • Management Tools
  10. Google App Engine • Fully Managed application hosting platform with

    many managed services. • Easily scale your application to millions of users by writing minimal code. • Managed data storage. • Managed caching, logging, queueing services. • You don’t need to worry about scaling issues, software upgrades, maintenance, backups…. Google takes care of that. • Build your app in your favorite platform.. Java, Python, PHP, Go, Nodejs, Docker
  11. App Engine Standard vs Flexible Standard Heavily customized and managed

    computing environment. Instance startup is in Milliseconds Cannot write to local disk Cannot run background process Flexible Allows you to customize the computing environment of your application Flexible environment with less restrictions. Startup time is in Minutes Can write to local disk Can run background processes
  12. Firebase A mobile application platform that helps you quickly build

    high quality applications. By doing most of the painful things for you. No need to set up a backend infrastructure, firebase has that covered for you. It’s cross-platform meaning you can use it for Android, iOS, Web….
  13. Google Compute Engine High Performance Virtual Machines Fast Networking Friendly

    Pricing Linux and Windows Per Minute Billing Has Regions across the world Leverages Google’s private fibre network
  14. Container Engine • Automated Container management and orchestration platform •

    Build your own computing cluster using Linux containers. • Easily run your Docker containers on Google Cloud using Kubernetes. • Kubernetes schedules your containers into pods and allocates them resources accordingly. • Makes it easy to scale your application up or down based on your requirements. • You define your cluster configuration in a simple yaml/json config file.
  15. Container Registry • Private Docker image hosting service by Google.

    • You docker images are only accessible by you. • Security protection by Google • You only pay for storage. • Easy integration with Docker • Choose a region to save your container
  16. Storage • Cloud Storage • Cloud SQL • Cloud DataStore

    • Cloud BigTable • Cloud Storage Nearline
  17. Cloud Storage • Powerful easy to use, cost effective object

    storage service. • Stores multiple copies of each object across regions for durability. • Scalable: You can store as much data as you want • Highly available. • No need to worry about backups or maintenance of your storage server.
  18. Cloud SQL • Cloud based MySQL Database Service • Fully

    Managed. • Google handles maintenance, backups for you. • Highly secure • No vendor lock-in • Easily integrates with Compute and app-engine
  19. Cloud DataStore • High performance NoSQL database. • Automatically scales

    as you data storage requirements grow. • Easy to learn query language • Reliable performance and easy to scale unlike traditional RDMS. • Based on BigTable
  20. Cloud BigTable • Massively scalable NoSQL database • Powers many

    core Google services such as Search, Maps, Gmail…. • Designed to handle massive workload at low latency and high throughput. • Great for high level computations such as financial analysis, • Can scale to petabytes of storage and millions of operations per second. • Integrates with popular big data tools like Hadoop • Fully managed
  21. Cloud Storage Nearline • Low cost data archiving and backup

    platform. • You can quickly access your data any time • Costs as low as $0.01 per month. • Your data is protected through redundant storage at multiple locations.
  22. Network • Cloud Load Balancing • Cloud Virtual Network •

    Cloud CDN • Cloud Interconnect • Cloud DNS
  23. Cloud Load Balancing • Allows you to distribute load across

    your computer resources. • Easily autoscale your resources up or down. • Distribute your resources across multiple regions close to where your users are. • Can handle over 1 million requests per second.
  24. Cloud Virtual Network • Allows you to isolate your cloud

    resources in your own virtual private cloud. • Allows you to define your own firewall policies to create private and public subnets. • Create VPNs • Create IP ranges. • Highly scalable • Cloud routers
  25. Cloud CDN • Leverage Google’s distributed network to fast deliver

    content to your apps and websites. • CDN edges all over the world. • Easily configurable SSL • Seamless integration with other Cloud resources.
  26. Cloud DNS Global Domain Name Service system that runs on

    the same infrastructure as Google. Easily create zones and hosted records You are in charge of managing your entire DNS on a scalable infrastructure.
  27. BigQuery • Large scale analytics as a service • Fully

    managed Data warehouse • Low cost • Petabytes Scale • Use the same SQL language you are familiar with. • Everything is managed by Google so you have no infrastructure to setup or maintain. • First terabyte is free every month • Use cases: Analyzing large amounts of data. E.g Spotify uses BigQuery to create personalized music experiences for it’s millions of users.
  28. Cloud Datalab Allows you to explore, analyze, visualize large data

    sets on Google cloud. Runs on Google App Engine. Allows analysis of your data using cloud storage and python Based on IPython (Now known as Jupyter)
  29. Cloud Pub/Sub (Publish/Subscribe) Real-time messaging service Allows you to send

    and receive messages between independent applications Publish and subscribe to data from multiple sources. Many Google productions leverage Pub/Sub. E.g Gmail, Ads… Allows you to decouple your system into microservices and have them communicate to each other via messages.
  30. Machine Learning • Vision API • Speech API • Translate

    API • Cloud Machine Learning Platform
  31. Vision API • Helps you understand the content of an

    image by leveraging Google’s own machine learning models. • Exposes Google’s Image processing algorithms in an easy to use REST API. • Can detect individual faces in images, labels, logos, landmarks, explicit content.. • E.g You can use Vision to block offensive images being uploaded on your site or detect faces and group related images. • You can do sentiment analysis on your images by analyzing emotional facial attributes. • OCR: Extract text from images.
  32. Speech API Enables you to convert speech to text by

    applying deep learning neural networks. Convert audio files to text by uploading them to Google cloud or stream text results in real-time
  33. Translate API Fast dynamic language translation Supports over 90 languages

    Language detection built-in Easy to integrated on your website via the REST API
  34. Deployment Manager Automated Google Cloud configuration service Automates creation and

    management of your Google cloud resources For example you can create templates to automatically launch and shutdown compute resources, deploy your code to staging or production. By making these tasks repetitive, you can focus on improving your product and less time configuring servers.
  35. Cloud Endpoints Create API’s mobile and gaming backends Easily turn

    your app engine code into REST API’s that can easily be consumed by Android, iOS or web clients. Simple annotations on your code turn Java or Python classes into REST endpoints. Builtin authentication.
  36. IAM Simplified Access Control for your cloud resources. Gives you

    full control to manage your cloud resource centrally. Allows admins to authorize users to specific resource on the Cloud Platform. Built-in audit trail so you can know who did what and when. Free of charge for all Cloud Platform customers.
  37. Cloud Repositories Fully featured private Git repositories hosted on Google

    cloud platform Integrated editor allows to browse, view and edit your source code online. You can connect your cloud repo with github so that the repos sync everytime you push changes to either one of them. Currently free for upto 500MB storage.
  38. StackDriver • Monitor your cloud platform resources • Powerful monitoring,

    logging, metrics • Provides a wide variety of metrics; alerts, log monitoring, dashboards, health reporting, tracing capabilities. • Easily find and fix issues in your cloud infrastructure • Integrates easily with all Cloud services