Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

20200212 KumaMCN GTFS勉強会

熊本のGTFSのデータが公開されたので、その勉強会の時の資料です

  • Be the first to comment

  • Be the first to like this

20200212 KumaMCN GTFS勉強会

  1. 1. GTFS勉強会 2020/2/12 KumaMCN 矢野 翔大
  2. 2. 自己紹介 • 株式会社KIS • 矢野翔大 • 興味あること:ARとかVRとか電子部品 • 趣味はモノづくり • ようやくMRTKv2触り始めた • Dynamics365 Guidesお試し中 • KumaMCNで活動中 MRTKv2 Dynamics365 Guides
  3. 3. GTFSを楽に使いたい
  4. 4. HTTPリクエスト投げれば 良い感じにデータ取れると嬉しい
  5. 5. Azureを使って 汎用的なAPIぽいものを作る
  6. 6. 簡単なイメージ 近くのバス停 知りたい 田迎付近にいるの で「田迎」で検索 GTFSのデータが 入ったデータベース 「田迎」に一致す るバス停検索 検索結果を返す結果を表示
  7. 7. LogicAppsを使う理由 • ほぼノンコーディングで作れる • プラットフォームやプログラミング言語に依存しない • HTTPのリクエストを受け取って起動するだけ • Azure Functionsでも良い • コード書ける人はこっちのほうがいいかも 運用どうすんのとか置いといて、ゆくゆくは・・・ • 開発者が気軽にGTFS使えるようになるといいな • 「このAPI叩けばこのデータ返ってくるよ」という形 • 福岡のCKANとかに似てる
  8. 8. LogicAppsの中身 LogicAppsのリソース を作る デザイナーをクリック
  9. 9. LogicAppsの中身 リクエスト受けたら 起動する このURLに対してPOSTすればいい JSON形式で好きに書く
  10. 10. LogicAppsの中身 接続先DBを選ぶ 今回はSQLServerを 使ってる 発行するクエリ POSTで受け取ったパラ メータをセット 受け取ったパラメータは formalParameterを使わない と、SQLインジェクション的 なことができちゃうみたい なので注意
  11. 11. Pythonで実行(google colaboratoryで試す) 検索条件(あいまい検索 LogicAppsのURL リクエスト投げる 結果の表示 「田迎」に一致するバス停の情報
  12. 12. Pythonで実行(google colaboratoryで試す) 先頭1件だけ取ってマップに プロットしてみる HTMLファイルを保存 HTMLファイルを開くと バス停がプロットされてる
  13. 13. とりあえずできた • URLに条件つけて送るだけなので簡単 • 検索条件をいろいろ指定できるようにLogicApps側を頑張る必 要がある • スマホの独自アプリや、webアプリだけでなく、LINEBotなど のプラットフォームに乗せることもできる • 意外とダイヤ改正が頻繁にあってるようなので、データを最新 に保つのが大変そう • Webページに更新日欲しい • ダウンロードしたZIPを解答して中身を見ないといけないのは面倒
  14. 14. おまけ ローカルPCにSQLServerとか入れるの大変な人向け
  15. 15. Azure SQL Database を作る リソースを作成する
  16. 16. Azure SQL Database を作る ①リソースグループはなけれ ば新しいものを作る ②データベース名入力 なんでもいい ③新規作成をクリック
  17. 17. Azure SQL Database を作る 全部入力して「OK」 ログインのユーザとパスワードは 後で使うので忘れないように
  18. 18. Azure SQL Database を作る クリックして構成を変える
  19. 19. Azure SQL Database を作る ①汎用目的にする ②サーバレスにする ③最小値でいい(今回は)
  20. 20. Azure SQL Database を作る ⑥クリック ⑤10Gもあればいい ④1時間にする ※ここに推定金額が 出るので参考までに
  21. 21. Azure SQL Database を作る クリック
  22. 22. Azure SQL Database を作る クリック
  23. 23. Azure SQL Database を作る 完了まで待つ
  24. 24. Azure SQL Database ができました クリック
  25. 25. ファイアウォールの設定 ファイアーウォールの 設定をクリック
  26. 26. ファイアウォールの設定 ①クライアントIPの追 加をクリック ここに自分のIPが表示され てるのでこれを追加する
  27. 27. ファイアウォールの設定 ②保存 IPは範囲指定でもいい ※少なくともここに載っているも のしかアクセスできないので必要 に応じて追加が必要です ①クリック ③保存後クリック
  28. 28. ログインできるか確認 ①クリック
  29. 29. ログインできるか確認 入力してOK ※DBにログインできるかの確認 ※ネットワークによっては ポートに穴をあける必要がある
  30. 30. ログインできるか確認 ログインできればOK
  31. 31. SSMSのインストール(DB管理用ツール) クリックしてダウンロード 後インストール https://docs.microsoft.com/ja-jp/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15
  32. 32. SSMS側でデータの登録などをすればOK インストール後はSSMSからこの サーバー名と ログイン確認で使ったユーザとパ スワードでログインし、操作可能
  33. 33. SSMS側でデータの登録などをすればOK サーバー名と ログイン確認で使ったユーザとパ スワードで接続
  34. 34. GTFSのデータを登録 データベースを右クリック後 タスク>フラットファイルのインポートを 選択
  35. 35. GTFSのデータを登録 次へ
  36. 36. GTFSのデータを登録 熊本バスのバス停のファイルを 選択(なんでもいい) ファイル名がテーブル名になるので必 要に応じて変えること ※バス会社ごとに同名のファイルがあ るのでマージが後で必要になる 次へ
  37. 37. GTFSのデータを登録 次へ
  38. 38. GTFSのデータを登録 次へ ※必要に応じて型の確認はする こと(今回はそのまま)
  39. 39. GTFSのデータを登録 完了
  40. 40. GTFSのデータを登録 閉じる エラーにならなければOK ※ほかのデータも同様に取り込むといい とりあえず今回はバス停のファイルだけ
  41. 41. GTFSのデータを登録 ①新しいクエリをクリック SELECT文でデータが取れればOK ※欲しい情報をLogicAppsのクエリに書 けばデータが連携できる
  42. 42. おわり

    Be the first to comment

    Login to see the comments

熊本のGTFSのデータが公開されたので、その勉強会の時の資料です

Views

Total views

87

On Slideshare

0

From embeds

0

Number of embeds

18

Actions

Downloads

2

Shares

0

Comments

0

Likes

0

×