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

2020.07-にゃーにゃーマップvol.2(CloudSearch)

w2or3w
July 08, 2020
170

 2020.07-にゃーにゃーマップvol.2(CloudSearch)

w2or3w

July 08, 2020
Tweet

Transcript

  1. サーバーレスWebアプリ制作で学ぶ
    CloudSearch にゃーにゃーマップ vol.2
    2020.07.08 JAWS UG 浜松
    2or3

    View Slide

  2. 自己紹介
    2or3 (ツカサ) 2(ツー) or(~か) 3(サン)
    アプリケーションエンジニア です。
    最近サーバーレスWebアプリ制作にお熱です!

    View Slide

  3. 自己紹介
    最初の2,3ヶ月
    ぼんやり参加
     ↓
    9月頃
    何かやらねば

    〜10, 11, 12月
    ダッシュで制作
    &進捗報告at勉強会
     ↓
    みなぎってきてる
    (37才)

    View Slide

  4. 自己紹介
    みなぎってきてる
    (37才)
     ↓
    3〜4月
    コロナ対策サイトに
    関わったりしながら、、

    4〜5月
    2つ目の作品
    にゃーにゃーマップ制作
     ↓
    ますますみなぎる38才
    となるか!?

    View Slide

  5. ● AWSを活用したサーバーレスWebアプリ
    ● 新型コロナ対策サイトで利用されていた技術の更なるキャッチアップ
    ● テイクアウトサイトの乱立。すぐ動ける人達への尊敬。
    ● ワタシもコロナにかこつけたアプリを作ってみたかった。
    ● 店舗やメディアの情報をキュレーションしたマップベースのWebアプリ
    ● Stay NEAR, Enjoy NEAR (近くで楽しむ) がコンセプト
    ● 絶賛学習 & 拡張中。
    サーバーレスWebアプリ
    『にゃーにゃーマップ』とは?
    https://near-near-map.w2or3w.com

    View Slide

  6. デモします。
    https://near-near-map.w2or3w.com

    View Slide

  7. 『にゃーにゃーマップ』
     アーキテクチャ図
    https://near-near-map.w2or3w.com

    View Slide

  8. 『にゃーにゃーマップ』
     アーキテクチャ図
    https://near-near-map.w2or3w.com

    View Slide

  9. CloudSearchとは?
    https://aws.amazon.com/jp/cloudsearch/

    View Slide

  10. CloudSearchで何をしている?

    View Slide

  11. CloudSearchで何をしている?
    https://CloudSearchEndpointAddress/2013-01-01/search?
    q=food&q.options={fields:['type']}&
    expr.distance=haversin(緯度,経度,latlon.latitude,latlon.longitude)&
    return=distance,type,title,tel,address,latlon,homepage,media1,,,,&
    sort=distance asc&size=25

    View Slide

  12. 何でCloudSearchを利用している?
    やりたかったこと
     → 現在位置から近い順に情報を取得する
    ● 各種RDS
    ● Redshift
    ● Athena
    ● DynamoDB
    ● Elasticsearch
    ● CloudSearch
    各種RDS, Redshift
    固定費かかるのはちょっと、、。
    サーバーレスとの相性も微妙そう、、。
    Athena
    レスポンスや同時実行性に難がありそう、、。
    DynamoDB
    大本命なんだけど、
    7年前に開発が止まってる
    JAVAのライブラリしかないのですが、、。

    View Slide

  13. 何でCloudSearchを利用している?
    やりたかったこと
     → 現在位置から近い順に情報を取得する
    ● 各種RDS
    ● Redshift
    ● Athena
    ● DynamoDB
    ● Elasticsearch
    ● CloudSearch
    Elasticsearch, CloudSearch
    なんかこれらが良さそう?
    CloudSearchのほうが簡単そう?
    (よくしらんけど)
    よし、CloudSearchにしよう!

    View Slide

  14. ところでサーバーレスとは?
    にゃーにゃーマップは
    サーバーレスWebアプリです!!

    View Slide

  15. ところでサーバーレスとは?
    ワタシにとっての
    「サーバーレス」とは、、。
    ● 簡単 に構築できる。
    ● メンテ不要 パッチ適用とか不要
    ● 安い 使った分しか費用発生しない

    View Slide

  16. おや?

    View Slide

  17. おや??

    View Slide

  18. おや???
    【悲報】全然コスト発生してなくて勘違いしてたけど、無料期間中だった。

    View Slide

  19. CloudSearchの固定費
    ● 最低スペックでも 200円/日くらい費用がかかる。
    ● DBやEC2のように停止する手段が無い。

    View Slide

  20. ところでサーバーレスとは?
    にゃーにゃーマップ、
    サーバーレスじゃありませんでした!!

    View Slide

  21. 緯度経度でソートしてフィルタするサービスが必要な場合、どうしても固定費が発生してしまう?
    であれば、最も安く済みそうなElasticsearchへの移行をこっそり決意。次のお題にします!
    意図せず失った約50$を取り返すべく、Alexaスキル開発を始めます!倍返しだ!
    改めて固定費を比べてみよう
    ● CloudSearch $ 0.082 / h (m1.small)
    ● Elasticsearch $ 0.056 / h (t2.small)
    ● RDS (Aurora) $ 0.063 / h (t3.small)
    固定費がもっとも高いサービスを選んでました (TдT)
    ※お手軽に使えて、とっても良きサービスでした、、!!

    View Slide

  22. サーバーレスWebアプリ制作で学ぶ
    CloudSearch
    Thank you CloudSearch !!

    View Slide

  23. Thank You !!

    View Slide