跳到主要內容

Google Cloud OnBoard 2017 Taipei

Google Cloud Platform

  • Per minute billing
  • Sustain pricing: 25% 自動提供折扣 (20% each 25% usage)
  • Compute Engine: customize CPU and memory (add more memory)
  • Committed discount (1 year or 3 year)
  • CloudNative use cases
  • Free trial 300 USD (1 year valid)

IAM

  • Google Account / Service Account / Google Groups / G suites accounts
  • Organization?

App Engine

  • Similar to AWS BeansTalk or AWS Container Service
  •  Cloud Shell / edit / preview (Very nice integration with browser!!)
  •  Standard environment / Flexible environment (provides ssh)
  •  PaaS, auto scale, container
  • Eclipse wizard integration

Cloud Datastore

  • Similar to AWS DynamoDB?
  • Encryption / Sharding / Replication
  • NoSQL 
  • Auto scaling

Billing

  • Free 28 instance hour? / cost calculator 

Cloud Storage

  • Similar with AWS S3 (bucket / region / storage type by access frequency)
  • < 5TB
  • BLOB
  • GB / per month (granular: minute)
  • Multi Regional 0.026, Regional Nearline(1 time / month)0.01, Coldline (1 time / year) 0.007

Bigtable

  • High loading read/write
  • Cloud Dataflow, Dataproc (Hadoop) integration
  • SunGard, Gmail, Google analytics

Cloud SQL

  • Similar with AWS RDS
  • MySQL 5.5 / 5.6, PostgreSQL (beta)
  • Cloud Spanner
  • Horizontally scalable
  • ACID and SQL queries, High Availability 

GKE: Container Engine

  • Kubernetes
  • Auto scaling / deployment modes (Blue/Green, Rolling Update)
  • kubctl scale / LB / expose …

Compute Engine

  • Similar to AWS EC2 but with additional customization and charging features...
  • Preemptible instance (AWS spot instance?)
  • Add template, group then add group to LB
  • Why keep mentioning pre-warm?

Google Stackdriver

  • Monitor / Trace / Logging / Report / Debugger
  • Fluentd

Lifecycle of Machine Learning model

  • Hosted TensorFlow service (!! AWS ML not provide offline SDK or framework for development)
  • Import / Export model (!! AWS ML not support this)
  • Fasten training time. (with GPU)
  • Data analyze -> clean up
  • Model might not fit the target (Asia 用餐時間 PM7 / 中東 PM9)
  • Linear Regression. Python Pandas, BQ/TnsorFlow => Predict Taxi demand from whether
  • Convolutional Neural Network => Handwriting Recognization

BigQuery

  • Datawarehouse for Analytics
  • Very interesting use case that SQL like query and see results on the fly (query duration)

Datalab

  • For data scientist
  • Very interesting use case!, Wiki style document / run python (panda) and plot chart
  • Average / RMSE 
  • Exploratory plot (whether and taxi trip count)
  • CNN => signature
  • 3 demos
  • Classification => drawing
  • Prediction => Whether and taxi trips
  • Convolution Neural Network => Handwriting reconization

Summary

  • Very similar with part of AWS services, but AWS has more complete coverage and use cases.
  • Machine Learning allow export model and based on open source TensorFlow framework
  • Billing is more flexible than AWS
  • Seems more emphasis on container use cases
  • Some special database storage, such as Cloud Spanner and BigTable, BigQuery....
  • The browser integration and UX is quite geek and interesting. (Datalab / BigQuery / Cloud Shell / Cloud Preview / In browser edit ...etc...)

References

留言

這個網誌中的熱門文章

3M UVA3000 更換濾芯紫外線燈匣

用了一年的3M濾水器提示說要換濾芯和燈匣 上 Youtube 想找教學的影片可是沒看到 UVA 3000 的 經過了一番奮戰後在這邊記錄一下 希望可以幫助後人,以免再重蹈覆轍。 Step 1. 拔掉插頭,把淨水器從牆上拿下來(基本上他是掛著而已),比較方便施工。 Step 2. 把前蓋往上拉,很容易就可以看到裡面的東西了。 Step 3. 打開後可以看到有兩個柱狀體,左邊的是燈匣,右邊的是濾芯。 Step 4. 這裡有個祕技是,這兩個柱狀體是可以往上 翻開30 度左右,這樣就可以有比較大的空間施工。 Step 4. 更換濾芯的話,柱狀體的瓶身上有箭頭,往左就是轉開,往右就是鎖緊。 Step 5. 更換燈匣的話比較麻煩一點,因為他底部是電源,頂部的右邊有個突出來的小方塊。對照淨水器上方連接處的話會有個弧形的凹槽,這是要 match 的.如果你只注意瓶身的箭頭往右鎖回去,就會造成漏水...Orz... Step 6. 把前蓋蓋回,機器掛回牆上,插插頭,開水,如果機器沒有告訴你有燈匣異常或漏水的話,就可以長按 C / UV  Reset 計數器了. 所以關鍵字就是,要往上翻 30 度,燈匣上面的小凸點要在右側,要看瓶身的 小箭頭. May it helps!

MySQL CONVERT_TZ return NULL

在 local dev 環境想要 reproduce 一個 bug 的時候, 卻發現在我的環境 MySQL store procedure 的行為和 production 機器上的不一樣 原本以為是 store procedure 的邏輯有問題 最後發現原來是 CONVERT_TZ() 搞的鬼... 因為我的 local dev 環境是自己從零開始 setup 的 沒想到 CONVERT_TZ 這個 MySQL 內建的 function 需要一些 initial data 不然只要丟給他轉換的日期時間都會回傳 NULL.... 解決方法就是 mysql_tzinfo_to_sql / usr / share / zoneinfo | mysql - u root mysql 這樣就會把 zoneinfo 轉成 CONVERT_TZ 所需要的資料 我的 local dev 環境的行為就恢復正常啦~ Reference: http://stackoverflow.com/questions/14454304/convert-tz-returns-null

Angular 2

Angular 2 似乎不錯的樣子? ECMAScript 6 的 class 和 Angular 2 語法的大改版 感覺似乎直覺多了... 從 Server Side 的 PHP Framework + jQuery 換成 Angular 2 的純 Frontend 可以真正擺脫後端做一套, 前端又要做半套 然後又難以測試的問題嗎? 或許 Angular 2 是一個值得投資時間關注的新方式? Angular 2 Preparation - Part 1 - Code Structure Comparison Free New Angular 2 Preparation Course An Angular2 Todo App: First look at App Development in Angular2 https://angular.io