Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
APIつくってみた
Search
Satoshi Gachi Fujimoto
March 12, 2020
Technology
0
72
APIつくってみた
熊本GTFS-JP活用勉強会 vol.2の資料です。
https://kumamcn.connpass.com/event/169877/
Satoshi Gachi Fujimoto
March 12, 2020
Tweet
Share
More Decks by Satoshi Gachi Fujimoto
See All by Satoshi Gachi Fujimoto
バスあと何分ミニサイネージ
satoshirobatofujimoto
0
55
高専で制御を、大学でセンシングを学び、次は脳みそ
satoshirobatofujimoto
0
210
画像生成AIを使って勝負しよう
satoshirobatofujimoto
1
79
ガチマナ会 vol.1
satoshirobatofujimoto
0
170
画像生成AIを使って勝負しよう
satoshirobatofujimoto
0
160
画像からプロンプトを考えて最も似ている画像を生成した人が勝ちのゲーム@AIミーティング
satoshirobatofujimoto
0
110
VPS研究者が語る”VPS概論”
satoshirobatofujimoto
0
360
画像からプロンプトを考えて最も似ている画像を生成した人が勝ちのゲーム
satoshirobatofujimoto
0
150
OpenAI 新機能まとめ(Function callingとAdd your data編)
satoshirobatofujimoto
0
210
Other Decks in Technology
See All in Technology
The Rise of LLMOps
asei
7
1.4k
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
380
AGIについてChatGPTに聞いてみた
blueb
0
130
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
ハイパーパラメータチューニングって何をしているの
toridori_dev
0
140
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
信頼性に挑む中で拡張できる・得られる1人のスキルセットとは?
ken5scal
2
530
Taming you application's environments
salaboy
0
190
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
50
7.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Building Your Own Lightsaber
phodgson
103
6.1k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Visualization
eitanlees
145
15k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Making Projects Easy
brettharned
115
5.9k
Automating Front-end Workflow
addyosmani
1366
200k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
Transcript
2020/03/12 熊本GTFS-JP活⽤勉強会 vol.2 APIつくってみた
⾃⼰紹介 ガチ本 です co-founder KumaMCN ナレッジコミュニケーション R&D戦略チーム AWS ML コンピテンシーパートナー
Microsoft Mixed Reality Partner CV / SLAM / WHILL / Python satoshi.gachi.fujimoto @sotongshi
API(Application Programming Interface)とは︖ • アプリケーションの⼀部を外部に公開して、 他のアプリケーションと繋ぐもの • データはjson形式でやりとり https://flow.microsoft.com/ja-jp/connectors/
Kuma GTFS API v1.0.2 • 仕様書 • http://ec2-18-180-6-76.ap-northeast-1.compute.amazonaws.com/ • 主な機能(※現在は産交バスのデータのみ対応)
• フィード情報取得 • 事業者情報取得 • 事業者追加情報取得 • 運⾏区分情報取得 • 運⾏⽇情報取得 • 営業所情報取得 • 経路情報取得 • 経路追加情報取得 • 停留所・標柱情報取得 • 翻訳情報取得 • 便情報取得
APIのつくり⽅ • AWS(Amazon Web Services) • Lambda • API Gateway
• DynamoDB • Step Functions • S3 AWS Cloud AWS Lambda Amazon API Gateway AWS Step Functions AWS Lambda AWS Lambda Amazon DynamoDB
DBの作成 • 12個のDBを作成するLambda関数(gtfs-create) • sankobus-feed-info • sankobus-agency • sankobus-agency-jp •
sankobus-calendar • sankobus-calendar-dates • sankobus-office-jp • sankobus-routes • sankobus-routes-jp • sankobus-stop-times • sankobus-translations • sankobus-trips
データの更新 • DBを更新するLambda関数(gtfs-update) • feed_info.txtからfeed_versionを取ってきて、DBの値と異なっていたら、更新する仕組み • データの⼤きいstops/stop_times/translations/tripsは1000件ずつ分けて保存 • 1回のLambdaの実⾏時間は15分まで、DynamoDBの書き込み速度(キャパシティ)も制限がある •
15分で5000件くらい書き込める • 並列実⾏はDBのキャパシティを超えるため不可能(※お⾦をかければ制限を超えられる • APIの応答時間は29秒なので、それを超えるような処理を実⾏したい場合はStepFunctionsを⽤いる • stop_timesは70万件ほどあるので1⽇かかるw
毎⽇更新されている︕
今後の展望 • DBをやめようかな • S3にデータを毎⽇ためる • データを差分とるやつを作ってみる
イベント告知 Kumamoto HoloLens ミートアップ vol.6 ⽇時︓2020/4/6(⽉)19:00-21:00 場所︓オンライン 参加費︓無料 登壇者︓@chomado @HoloMotoRanger
@sotongshi @Shota7Y
ご清聴ありがとうございました