Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【ショート版】 AWSを駆使して特許出願に至ったVUIの 「音声レビュー・ログデータ収集・分析システム」の話

show
May 10, 2019

【ショート版】 AWSを駆使して特許出願に至ったVUIの 「音声レビュー・ログデータ収集・分析システム」の話

AAJUG関東Vol.3で使用したスライドです。
AlexaDay2019のショート版+QuickSightの情報を追記しています。

show

May 10, 2019
Tweet

More Decks by show

Other Decks in Technology

Transcript

  1. 2019/05/09 AAJUG 関東支部 Vol.3 - re:cap Alexa Day 2019@スペースアルファ三宮 【ショート版】

    AWSを駆使して特許出願に至ったVUIの 「音声レビュー・ログデータ収集・分析システム」 の話 1
  2. 3つのコミュニティを運営中 7 ・Amazon Alexa Japan User Group (AAJUG) 関東支部 ・2019年から関東支部発足・主催

    https://aajug.connpass.com/ ・3か月に1回開催、2019年3月で1周年 ・300人以上が集まる回もある https://kotodama.connpass.com/ ・2019年4月で8回目の開催 ・150人以上が集まる回もある https://iotlt.connpass.com/ #AAJUG
  3. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova AWS Lambda Amazon

    Kinesis Firehose S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon CloudWatch Amazon API Gateway ERRORだけ抜き取る エラー通知が飛ぶ。 AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ERRORや障害時のみ 通知するための動作 ・認証情報 Webページから認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 Amazon CloudWatch API Gatewayを突破 したらすべて CloudWatchにログ をためておく システム構成概要 Amazon API Gateway AWS Lambda 11 ※動いた段階の構成。現在は一部異なります。 #AAJUG
  4. 13

  5. 2 件 っ て な ん だ よ ! ©

    タイトル:ブラックジャックによろしく 著作者名: 佐藤秀峰 25
  6. 2 件 っ て な ん だ っ た ん

    だ よ ! © タイトル:ブラックジャックによろしく 著作者名: 佐藤秀峰 30 #AAJUG
  7. 41

  8. コンセプト 42 ・API化 ・インテントの使用状況 ・★いくつ ・フリーコメント ・時間 ・カテゴリ ・作成ツール データ収集

    ・SQLで検索 ・BIツールでグラフ化 ・Webページに反映 分析・可視化 ・VUIでユーザが違和感 を持たない応答速度 ・プラットフォームに 依存しない設計 こだわり部分 #AAJUG
  9. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova AWS Lambda Amazon

    Kinesis Firehose S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon CloudWatch Amazon API Gateway ERRORだけ抜き取る エラー通知が飛ぶ。 AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ERRORや障害時のみ 通知するための動作 ・認証情報 Webページから認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 Amazon CloudWatch API Gatewayを突破 したらすべて CloudWatchにログ をためておく システム構成概要 Amazon API Gateway AWS Lambda 46 ※動いた段階の構成。現在は一部異なります。 #AAJUG
  10. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova AWS Lambda Amazon

    Kinesis Firehose S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon CloudWatch Amazon API Gateway ERRORだけ抜き取る エラー通知が飛ぶ。 AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ERRORや障害時のみ 通知するための動作 ・認証情報 Webページから認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 Amazon CloudWatch API Gatewayを突破 したらすべて CloudWatchにログ をためておく システム構成概要 Amazon API Gateway AWS Lambda 49 ※動いた段階の構成。現在は一部異なります。 #AAJUG
  11. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova Amazon Kinesis Firehose

    S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 アラート系は本質ではないので別として Amazon API Gateway AWS Lambda 50 アラート系 #AAJUG
  12. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova Amazon Kinesis Firehose

    S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 まずは登録部分 Amazon API Gateway AWS Lambda 51 アラート系 #AAJUG
  13. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova Amazon Kinesis Firehose

    S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 スキル作成時 Amazon API Gateway AWS Lambda 53 アラート系 #AAJUG
  14. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova Amazon Kinesis Firehose

    S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 API Gatewayの呼び出し Amazon API Gateway AWS Lambda 57 アラート系 #AAJUG
  15. Alexa skill AWS Lambda システムユーザの アレクサのスキル Amazon Kinesis Firehose S3

    bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 Cognitoなりアカウントリンクなりも検討した Amazon API Gateway AWS Lambda 61 Amazon Cognito #AAJUG
  16. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova Amazon Kinesis Firehose

    S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 なのでレスポンスとデータ格納を分割する Amazon API Gateway AWS Lambda 66 アラート系 #AAJUG
  17. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova Amazon Kinesis Firehose

    S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 データ格納箇所 Amazon API Gateway AWS Lambda 67 アラート系 #AAJUG
  18. Athena案 維持費は最安値の可能性 83 Amazon Kinesis Firehose S3 bucket AWS Lambda

    Parquet形式変換 Amazon Athena 検索 Amazon QuickSight #AAJUG
  19. Athena案 けども・・ 84 Amazon Kinesis Firehose S3 bucket AWS Lambda

    Parquet形式変換 Amazon Athena ここに お金がかかる 検索 Amazon QuickSight #AAJUG
  20. Athena案 けども・・ 85 Amazon Kinesis Firehose S3 bucket AWS Lambda

    Parquet形式変換 Amazon Athena ここに お金がかかる 検索 どのように分析されるか未知数 であるためパーティション化が難しい Amazon QuickSight #AAJUG
  21. 案4 はじめからRedShift 91 ・ Amazon Redshift ・データ分析をBIツールでやるなら、やはりRedShift ・列指向 → レビュー、フィードバックコメント、

    人気度(AlexaのsessionId)を それぞれ独立列で管理できる ・きちんと設計すれば速い → ショートクエリ判断、リザルトキャッシュ etc #AAJUG
  22. 結果、素直にFirehoseからRedShift 92 Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova Amazon

    Kinesis Firehose S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 Amazon API Gateway AWS Lambda 92 アラート系 #AAJUG
  23. Alexa skill AWS Lambda システムユーザの アレクサのスキル Clova Amazon Kinesis Firehose

    S3 bucket Amazon DynamoDB Amazon Redshift Webページに音声レビュー結果を表示 Amazon API Gateway AWS Lambda まず認証だけやる AWS cloud 3 4 5 6 9 10 11-2 12 13 14 15 ・認証情報 Webページから 認証情報発行 1 2 7 8 Amazon QuickSight AWS Lambda 10 12 invoke Amazon Kinesis Firehose S3 bucket 11-1 12 データをCSV形式 に変換して流す 想定される格納デー タの生データのまま 生データ保管用 分析画面箇所 Amazon API Gateway AWS Lambda 93 アラート系 #AAJUG