Quick Start GCP
山内 沙織
- GCPを使うデモ
- Cloud Shell
- Google Cloudを使うためのツールがそろっている
- サーバレス
- Cloud Functions, App Engine standard
- オートスケール、使った分の課金 => サーバレス
- Cloud Storage
- Multi-Regional, Regional, Nearline, Coldline
- アクセス頻度(左がアクセス頻度大)
- オブジェクトストレージ、SQL、NoSQL
- SQL: SQL(MySQL, Postgres), Spaner(大規模向け)
- NoSQL: Datastore, Firestore(FirebaseのリアルタイムDBとDatastoreのいいとこどり) => 将来的に統合
PWAのイマ
takanorip
- PWAの説明(略)
- PWAのターゲット
- 広く広めたい => PWA
- デバイスのセンサーなどパワフルに使いたい => Native App
- ロイヤリティでWebとNative Appの中間を埋める
- ブラウザサポート
- iOS Safariはプッシュ通知などサポートしてない。Service Workerのみ
- PWA Checklist
- PWA Starter Kit
- pwa-helpers
- PWAのこれから
- Webの基盤になる
- すでにAndroidが優勢な国ではPWAの成功事例が多くある
- 日本はiPhoneが強いのでまだまだ
- ネイティブとの棲み分けがはっきりと
- ページをロードしたときにプッシュ通知の許可を求めるな!
- プッシュ通知を許可するストーリーがアプリよりも重要に
- 追加の設計が必要
GCPのデータベース・ストレージ
apstnbt
- GCPのストレージを使う利点
- 冗長化
- スケーラビリティ
- スケールアップには限界 => スケールアウト
- シャーディング
- コスト
- 最大負荷に備えると普段無駄 => 負荷に応じてスケール
- オートスケール
- ストレージオプション
- Bigtable (NoSQL) => Megastore (制約のあるACID) => Spanner (制約のないACID)
- GCPのストレージプロダクトの基盤、ルーツなどが論文で公開されている
Cloud Kata
sinmetal
- GCPサービス組み合わせのカタ(デザインパターン)
- LBを使ったWebアプリ
- LBでURL分岐 => API(GCE), Video(GCE), 静的コンテンツ(Storage)
- Cloud Storageで静的コンテンツ配信ができる
- Cloud Network w/ Edge Cacheを静的コンテンツの前に
- Logging => BigQuery で分析
- Traceで詳細モニタリング
- Queueを利用したkata
- Push型、Pull型
- App Engine Task Queue (Cloud Taskになる)
- Cloud Pub/Sub
- Media Storage(Storage) => Push(Pub/Sub) => Watermark(Functions)
- 大きめのタスクはPushとFunctionsでは厳しい
- 安価なプリエンプティブVM + Pull Queueで重い動画の加工処理
- リース期間を指定してタスクをPullして、終了後にタスクをdeleteするので、失敗しても、タスクが未処理でdeleteされることはない
- IoT core => Pub/Sub => Dataflow 数秒枚に集計
- 巨大ファイルのコピー: Instanceのsnapshotをとって再現
- Identity Aware Proxyで認証、KMSで暗号/復号
Introduction of Polymer 3.0
kazuyoshi kawakami
- Polymer Project
- Chromeチームの中のプロジェクト
- 目的:ウェブプラットフォームを進化させる
- 2012年のWeb Components
- Custom Element
- Shadow DOM
- HTML Imports
- 2018年のWeb Components
- Polymerキモい
- polyfill
- Polymerは当初はWeb Componentsのpolyfillだった
- Polymer 2.0からpolyfill部分を切り離した
- bower
- 当時一般的。クライアントサイドのパッケージマネージャーとしてあっていた
- HTML Import
- Polymer 3.0
- bower => npm
- HTML Imports => JavaScript Module
- TypeScript, Webpack, Rollupに対応
- Polymer 3.0で完成
- Next Polymer Project
- Lit-html/Lit-Element
- Material Web Components
- Polymer Starter Kit
GCPでつくるデータ処理パイプライン
永井 洋一
- バッチ処理とストリーム処理両方を扱うケースが多い
- イベント検知
- ログ異常検知、トレーディングボット
- 基本ストリーム処理だが、しきい値の調整にはバッチも必要
- 機械学習の特徴量生成
- リアルタイム・レコメンド、FX自動売買ボット
- 学習データはバッチ、予測はリアルタイム
- バッチとストリームを扱う場合の問題:別の環境が必要
- プログラミングモデル:Apache Beam
- 分散実行インフラ:Dataflow
- その他
- Dataflow + Beam:データ処理と分析
- Dataprep:非プログラマ向け
- Dataproc + Hadoop:Hadoop/Sparkユーザー向け
- Apache Beam
- 抽象データ(PCollection)と処理(PTransform)
- PTransformのサブクラスによく使う処理がSDKで用意されている
- I/Oに対応
- Google Cloud Dataflow
- 特徴
- サーバーレス(処理で立ち上がり、終わると消える)
- オートスケール
- 負担の大きいタスクを動的にリバランス
- 例:Wikipediaの日本語ページ230万ページの形態素解析が17分で$0.54
- GCP連携:I/O対応、パイプラインのTemplate
Auto ML Overview
永井 洋一
- Cloud Machine LearningとTensorFlowは難しく、APIは一般的すぎる
- その間を埋めるAutoML:職人技を自動で
- DeepLearningのハイパーパラメータの調整
- ネットワークの構造の調整
- ノード数、レイヤー数の調整
- AutoMLを支える(と思われる)技術
- 転移学習
- Learning to Learning
- AutoMLシリーズ
- Vision
- Natural Language
- Translation
- 使い方
- プログラミング不要
- 学習データ(入力とラベル)
- 裏で、学習用80%、評価用10%、テスト用10%に分けられる
- 分割を明示的に指定もできる
- ラベルごとに100以上あると望ましい
- 学習実行
- 予測モデルをAPIで利用
- お金をかければ、簡単に機械学習モデルが作れる
- 用途は限定的で、分類問題がメイン