Spring School Cloud Computing, IoT, and Big Data
[email protected] Launching and growing a startup on the Google Cloud Platform
Jerome Mouton - CTO at SnapEngage
Google Developer Expert for the Google Cloud Platform
Back to early 2008... Spring 2008 Early 2009 Mid 2009 September 2009
SDK / Deploy Auto-scaling Connectivity
+ capacity scales to infinity + data replicated + copies geographically distributed
- eventual consistency - performance - cost
+ Easy auth. AppEngine-CloudStorage
+ Web serving: https://storage.googleapis.com/{bucket}/{file}
- Need a real CDN GcsFilename filename = new GcsFilename("mybucket", "myfile.txt");
GcsFileOptions options = new GcsFileOptions.Builder() .mimeType(...).acl(...).cacheControl(...).build;
GcsService fs = GcsServiceFactory.createGcsService(); GcsOutputChannel wc = fs.createOrReplace(filename, opts); wc.waitForOutstandingWrites(); wc.write(ByteBuffer.wrap(bytes)); wc.close();
@Api(name = "myApi", namespace = @ApiNamespace(ownerDomain = "awesome.com", ownerName = "GDG"), version = "v1", clientIds = {...} ) public class YourFirstAPI { @ApiMethod(name = "sayHi") public String sayHi(@Named("name") String name) { return "Hi, " + name; } }
SnapEngage Analytics v1
AppEngine DataStore cron for counting visualization in HTML tables
+ scalability - not extensible
circa 2010 SnapEngage Analytics v2
ReportGrid / Precog - haproxy, kafka, zookeeper - mongoDB + shard file DB - svg + phantomJS
+ very powerful - complex, fragile
circa 2014 SnapEngage Analytics v3
Requirements: - hosted (PaaS) - supporting 2x the current client load - data visualization - data export - multi-tenancy - reasonably priced SnapEngage Analytics v3
BI: Tableau, Jaspersoft, Pentaho, Bime, etc. Cloud Analytics: Keen.io
Data: BigQuery, CloudSQL, Redshift Visualization: D3.js, Highcharts, Raphael, etc. SnapEngage Analytics v3
BI: Tableau, Jaspersoft, Pentaho, Bime, etc. Cloud Analytics: Keen.io
Data: BigQuery, CloudSQL, Redshift Visualization: D3.js, Highcharts, Raphael, etc. SnapEngage Analytics v3
BI: Tableau, Jaspersoft, Pentaho, Bime, etc. Cloud Analytics: Keen.io
Data: BigQuery, CloudSQL, Redshift Visualization: D3.js, Highcharts, Raphael, etc.