Using Google's Cloud - for Developers
-
Upload
lynn-langit -
Category
Technology
-
view
3.323 -
download
0
description
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