Using Google's Cloud - for Developers

Post on 15-Jun-2015

3.327 views 0 download

Tags:

description

Introduction to Google

Transcript of Using Google's Cloud - for Developers

USING GOOGLE’S CLOUD

FOR DEVELOPERS

@LYNNLANGIT

WHAT IS GOOGLE’S CLOUD?

Set of offerings / services for public consumption

Two target audiences

--Consumer--Developer

Many services are in production

Some services are still in public or private beta

Free tier for most services is quite generous

WHICH CLOUD SERVICES ARE AVAILABLE FOR CONSUMERS?

IaaS – infrastructure (or storage) as a service

PaaS – platform as a service

SaaS – storage (or software) as a service

Other cloud services

• Google Drive – cloud storage for Google applications

• Google Fiber – very limited beta in Kansas City, KS only at this time

• N/A

• Google Docs – cloud-based word processing, spreadsheets, presentations and more

• Google Play – application store• YouTube – video hosting

WHICH CLOUD SERVICES ARE AVAILABLE FOR DEVELOPERS?

• Scalable compute via Google Compute EngineIaaS

• Scalable managed compute via Google App EnginePaaS

• Scalable storage via many choices • RDBMS, NoSQL, more…SaaS

• Big Query – query as a service• Prediction API – data mining as a service• Translation API – translation as a service• Google Maps – mapping as a service• Google Hangouts API – collaboration applications

Other

IAAS -- GOOGLE COMPUTE ENGINE

Compute that auto-scales (VMs)• Competes with

AWS EC2 and Windows Azure VMs (beta)

Currently only Linux

VMs

Currently in Invite-only

Beta

Interface via• Web Console

(limited)• Python client• APIs

USING GOOGLE’S PAAS CLOUD SERVICES

AppStorage

OtherServices

WHAT IS GOOGLE APP ENGINE? WHY USE IT?

What• Google’s cloud hosting and

storage environment• Java or Python are supported• NoSQL (High-Replication

Datastore) and/or mySQL supported

Why• Easy and free to try it out• Interesting feature set

• Automatic compute scaling• Flexibility on data storage /

queries• Authentication choices• Access to other Google APIs

SETTING UP YOUR ACCOUNT

Different types of account for different types of

services

Browser-based management consoles• GAE• GCE• BigQuery• Storage• Other APIs

Direct API access Command-line tools

DEMOUNDERSTANDING GOOGLE CLOUD ACCOUNTS

ABOUT BILLING Information about

free usage tier quotas

Scalable storage via many choices

Understanding Sandbox vs. Production

Monitoring Usage Via Service

Dashboards

Via APIs (programmable alerts / alarms)

How Scaling Works

Default is auto-scale

LOTS OF APIS…

WORKING WITH THE WEB CONSOLE(S)

Different Consoles for Different products Console for GCE

Console for GAE

Console for APIs

Console for BigQuery

DEVELOPER WEB CONSOLES

API ConsoleApp Engine ConsoleMore…

GOOGLE CLOUD APIS

OTHER CONSOLES – BIGQUERY EXAMPLE

DEMOWORKING WITH THE WEB CONSOLE TOOLS

START PROGRAMMING

Java or Python

Language SDK and IDE

GAE SDK

GAE tools for IDE

Other Google Web API tools

GWT tools (optional)

Android tools (optional)

DOWNLOAD & CONFIGURE ECLIPSE FOR GAE• Download Eclipse

• Get GAE SDK (access to APIs)

• Get GAE plug-in for Eclipse

CONFIGURE ECLIPSE FOR GAE - OPTIONS

• Enable other available APIs, partial list shown below

• Use the GWT (Google Web Toolkit)

GAE SETUP IN ECLIPSE

• GAE SDK

• GAE Eclipse plug-in

• GAE developer account• 5 GB storage free

DEMOCREATING AND TESTING ‘HELLO GOOGLE CLOUD’ IN ECLIPSE

HELLO (GOOGLE) WORLD APPLICATION

DEMODEPLOYING TO GAE AND USING THE WEB ADMIN CONSOLE

VIEWING DEPLOYED APPLICATIONS

• Create up to 10 applications

• Click application to view detailed information about each instance

MANAGING YOUR APPLICATION

VERSION CONTROL• Updating current versions

• Using appcfg

NEXT STEPS

Data Storage Options• Relational• non-

relational• Google

Drive• more

Other GAE services• Caching• routing

Other Google APIs• Prediction• Translation• Maps

Integrate with Android applications

Integrate with Google Play

DEMOUSING GOOGLE’S DEVELOPER RESOURCES

UNDERSTANDING GOOGLE’S DEV RESOURCES

Each product has API documentation and samples

RSS Google Developer Blog for product updates

Google IO and other community events

GTUGs

YouTube Channel

Google Developer Advocate Hangouts

Google’s Developer Expert Program

WWW.TEACHINGKIDSPROGRAMMING.ORG• Free Courseware

• Do a Recipe Teach a Kid (Ages 10 ++)

• Java or Microsoft SmallBasic

• recipes)

TOWARD DATA CRAFTSMANSHIP…

Follow me @LynnLangitRSS my blog www.LynnLangit.com

Subscribe to PluralSight for my GAE series

Hire me• To help build your BI/Big Data solution• To teach your team next gen BI• To learn more about using NoSQL solutions