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
データベース01: データベースを使わない世界
Search
Y. Yamamoto
April 15, 2024
Technology
1
380
データベース01: データベースを使わない世界
1. ガイダンス
2. データベースを使わない世界
講義ノートURL
https://dbnote.hontolab.org/content/introduction/01.html
Y. Yamamoto
April 15, 2024
Tweet
Share
More Decks by Y. Yamamoto
See All by Y. Yamamoto
データベース12: 正規化(2/2) - データ従属性に基づく正規化
trycycle
0
560
データベース11: 正規化(1/2) - 望ましくない関係スキーマ
trycycle
0
530
データベース10: 拡張実体関連モデル
trycycle
0
560
データベース09: 実体関連モデル上の一貫性制約
trycycle
0
540
データベース08: 実体関連モデルとは?
trycycle
0
540
データベース14: B+木 & ハッシュ索引
trycycle
0
260
データベース15: ビッグデータ時代のデータベース
trycycle
0
170
データベース06: SQL (3/3) 副問い合わせ
trycycle
0
400
データベース05: SQL(2/3) 結合質問
trycycle
0
510
Other Decks in Technology
See All in Technology
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
110
ゼロから創る横断SREチーム 挑戦と進化の軌跡
rvirus0817
2
260
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
12
3.4k
第3回Snowflake女子会_LT登壇資料(合成データ)_Taro_CCCMK
tarotaro0129
0
180
社内イベント管理システムを1週間でAKSからACAに移行した話し
shingo_kawahara
0
180
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
150
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
フロントエンド設計にモブ設計を導入してみた / 20241212_cloudsign_TechFrontMeetup
bengo4com
0
1.9k
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
2
2.1k
サイボウズフロントエンドエキスパートチームについて / FrontendExpert Team
cybozuinsideout
PRO
5
38k
AI時代のデータセンターネットワーク
lycorptech_jp
PRO
1
280
祝!Iceberg祭開幕!re:Invent 2024データレイク関連アップデート10分総ざらい
kniino
2
250
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Thoughts on Productivity
jonyablonski
67
4.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
810
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Transcript
“データベース”を使わない世界 ⼭本 祐輔 名古屋市⽴⼤学 データサイエンス学部
[email protected]
第1回 データベース 2024年4月15日 (ガイダンス
+)
シラバス情報 科目名 データベース 2 開講学期 2年次 前期 科目区分 専門基礎(必修) 担当教員
山本 祐輔
ガイダンス 1 授業をどう進めるか?
データベースと言えば 何を思い浮かべる?
⼀般⼈が思い浮かべるデータベース 新聞データベース 画像出典: https://www.pokemon.co.jp/ex/sun_moon/pokemon/ ポケモン図鑑的 たくさんのデータの集まりや図鑑的なもの
情報科学屋にとってのデータベース データベース管理システムあるいは それによって管理されたデータの集合 画像出典: https://en.wikipedia.org/
授業⽬的 データベース技術 (特に関係データベース) ⼤規模なデータを効率よく管理・処理するための データ分析者が最低限知っておくべき を学ぶ
この授業で学ぶこと lデータベースの概念 l関係データモデル l関係データベースの問い合わせ方法 l関係データベースの設計 l索引づけ lビッグデータ時代のデータベース
この授業で学ばないこと l前提知識の復習(集合と写像) l関係代数 & 関係論理 l問い合わせ最適化 lデータ格納方式 lトランザクション(障害回復,並列処理) 関係データベース操作 の理論的基礎
ハードウェアに近い話 データベースの内部処理 上記内容はデータエンジニアなら知っておくべき!!
回 実施日 トピック 1 04/15 ガイダンス:データベースを使わない世界 2 04/22 データベースの概念 3
04/29(祝) 関係データモデル 4 05/13 SQL (1/3) 5 05/20 SQL (2/3) 6 05/27 SQL (3/3) 7 06/03 SQL演習 – レポート課題1 8 06/10 実体関連モデル (1/3) 9 06/17 実体関連モデル (2/3) 10 06/24 実体関連モデル (3/3) 11 07/01 正規化 (1/2) 12 07/08 正規化 (2/2) 13 07/15(祝) データベース設計演習 – レポート課題2 14 07/22 索引付け 15 07/29 NoSQL 16 08/05 期末試験 授業計画 11 関係データベース「操作」 関係データベース「設計」
授業の進め⽅ 理解を深める クイズや演習 0:00 1:30 0:60 座学 細かな練習を通じて DB技術を体得 データベースの理論や技術
の理解 (プログラミングスキルは不要)
授業で使⽤するもの(1/2) 配布スライド データベースの講義ノート 13
授業で使⽤するもの(2/2) 14 Google Colaboratory - データベース問合わせ練習⽤ - ブラウザで動く - 要Googleアカウント
draw.io - データベース設計練習⽤ - ブラウザで動く - ユーザアカウントは不要
成績評価 授業中に課す課題(レポート): 40% ・SQL演習(1回) + データベース設計(1回) ・授業内に設けた演習時間(+⾃宅)で回答を作成 期末試験: 60% ・授業中に出題範囲を宣⾔
・⾃分で作成した資料を持ち込み「可」とする予定
参考図書(1/2) 画像出典:https://www.ohmsha.co.jp/book/9784274223730/ 画像出典: https://www.ohmsha.co.jp/book/9784274225161/ 16
参考図書(2/2) https://www.saiensu.co.jp/search/?isbn=978-4-7819-1390-2&y=2017 17
講義ノート https://bit.ly/3xqTSds l 参考図書を踏まえて作成 l コラムや練習問題が充実 l 無料
連絡⽅法 担当教員メールアドレス
[email protected]
授業連絡 Microsoft Teams 学務情報システム データサイエンス学部LMS みなさん,どれを連絡⼿段として希望しますか?
データベースを使わない世界 2 データベースを使う必要性はどこにある?
ある⼩売店のお話(1/3) ⼩売店店主の ⼭畑さん 山畑さんは家族で小さな小売店を営んで いる. 個人経営ながら山畑さんのお店は 繁盛している. とはいえ,街には大手 チェーン小売店が進出してきており,この まま順調に経営を続けられるかは不安だ.
何か手を打たなければならない. 2020年の4月,山畑さんは念願のショッ ピングサイトを立ち上げた. 言うまでもな い.ショッピングサイトを立ち上げたのは, オンラインにも顧客獲得の機会を求める ためだ. サイトは順調に立ち上がり,注文 もポツポツ入ってきている.
ある⼩売店のお話(2/3) ところで,最近世の中では「データサイエンス」なるもの が注目を集めているらしい. データを活かせばビジネスチャンスが広がる,とのことだ. 山畑さんは,Excelシートに入力しつつあった販売履歴 を分析してみようと思い立った. ⼩売店店主の ⼭畑さん ビジネス インサイト
ある⼩売店のお話(3/3) Excelシートには,いつ,誰が,何を,いくらで購入したか の情報が記録されている. ⼩売店店主の ⼭畑さん ビジネス インサイト ショッピングサイトは立ち上がったばかりであるため, Excelシートには200行しかデータが入っていないが, これからデータが貯まっていけば,売り上げを増やす
ための課題が見えるかもしれない!!
課題1 & 2 課題1 以下のURLから⼭畑さんが使っている Excelファイルをダウンロードし,中⾝を確認せよ https://bit.ly/4awIEms 課題2 Excelファイルを使って「岡⽥ 真綾」という⼈物が
何回買い物をしていたかを数えよ
課題3〜5 オートフィルタ機能を使って,「ビタミン補助剤」 を購⼊している⼈をピックアップせよ 課題3 Excel関数のSUMを⽤いて,現時点での総売上⾦額 を計算せよ. 課題4 Excelのピボットテーブル機能を使って,集計期間 中に「最も購買回数が多かった商品」「最も売上⾦ 額の合計が⼤きかった商品」のそれぞれを求めよ
課題5
⼭畑さんのお話の続き(1/3) ⼩売店店主の ⼭畑さん ショッピングサイト⽴ち上げ以降,順調に利⽤者数も 増えていった. やはりメディアに取り上げられたの が⼤きかったのだろう. あのタイミングで認知度が ⼀気に上がり,サイト利⽤頻度も加速度的に増えて いった.
それに伴い,サイト運営に関わるスタッフ も増員した. 増員されたスタッフ
⼭畑さんのお話の続き(2/3) 販売履歴の管理は当初⼭畑さんが⼀⼈で担当してい たが,さすがに⼀⼈では捌ききれなくなった. そこ で,ある時点から数名体制で販売履歴の記録をする ことになった. これまで販売履歴の管理に使って きたExcelシートをクラウドストレージに置き, 販売 履歴記録のスタッフのPC間で同期を取るようにした.
こうすることで,同じExcelファイルの上で記録を つけられるようにしたのである.
⼭畑さんのお話の続き(3/3) ⼗分に販売履歴データが蓄積されたと判断した⼭畑 さんは,いよいよ⼤規模に販売履歴データを分析 しようと思った. シートを開き⾏数を数えてみると その数90万⾏以上! データの数に⼩躍りした⼭畑さん. 早速Excelシートでの分析に詳しいスタッフと⼀緒に データ分析に取りかかった…
課題1 & 2 課題1 以下のURLから⼭畑さんが使っている Excelファイルをダウンロードし,中⾝を確認せよ 完全版ファイル: https://bit.ly/3xxgWYc 課題2 Excelファイルを使って「岡⽥
真綾」という⼈物が 何回買い物をしていたかを数えよ ⼩さめファイル: https://bit.ly/4as2sHv
課題3〜5 オートフィルタ機能を使って,「ビタミン補助剤」 を購⼊している⼈をピックアップせよ 課題3 Excel関数のSUMを⽤いて,現時点での総売上⾦額 を計算せよ. 課題4 Excelのピボットテーブルを使って,集計期間中に 「最も購買回数が多かった商品」「最も売上⾦額の 合計が⼤きかった商品」のそれぞれを求めよ
課題5
お疲れ様でした シナリオ2の課題に 取り組んだ感想は? イライラしたとか,何でもOK
Excelが固まる… 日付の書き方が統一されていない… 全角数字が混じっている… 1マスに複数の商品が… 途中から数字がおかしい…?(疑心暗鬼に)
Excel vs. 情報技術屋の「データベース」 Excel § 個人用の表計算ソフト § 対象データは⽐較的⼩さい § データの管理には不向き
(正しく管理できるかは⼈に依存) “データベース” l 大規模データを効率よく処理 l データを正しく管理 l データを複数⼈/複数アプリで 同時に使うことを想定
余談)データ⼈材とその価値 技術レベル Excel使い ・Excelの関数やマクロを使う ・総合職では⼤活躍
余談)データ⼈材とその価値 Excel使い ・Excelの関数やマクロを使う ・総合職では⼤活躍 相関分析/仮説検定屋 ・Rにこだわる ・研究・開発畑なら必要 技術レベル ビジネス上の価値
余談)データ⼈材とその価値 技術レベル ビジネス上の価値 似非データサイエンティスト ・どの学部でも学べる ・AIと機械学習の区別ができない ・データサイエンティストと名乗ったはら恥ずかしい 相関分析/ 仮説検定屋 Excel使い
余談)データ⼈材とその価値 技術レベル ビジネス上の価値 機械学習ホビーイスト データがあればちょっとした 機械学習コードは書ける データサイエンティストの卵 ・情報系学部の卒業生 ・AIと機械学習の区別ができる ・中小企業でDS人材として雇われると悲劇
相関分析/ 仮説検定屋 Excel使い 似非データサイエンティスト
余談)データ⼈材とその価値 Excel使い 相関分析/ 仮説検定屋 技術レベル ビジネス上の価値 機械学習 ホビーイスト 似非データサイエンティスト 非情報系の研究開発職なら
使える人材になれる可能性あり データサイエンティストの卵
従来のデータ分析 vs. ビッグデータ分析 ビッグデータ分析 仮説発見 従来のデータ分析 仮説検証 (統計的検定・アンケート調査のような) (パターン,隠れたルールetc.) 注意)
どちらの分析も何を対象とするか(クエスチョン)は決まっていないと何も始まらない 39
余談)データ⼈材とその価値 Excel使い 相関分析/ 仮説検定屋 技術レベル ビジネス上の価値 機械学習 ホビーイスト 似非データサイエンティスト データサイエンティストの卵
ビジネス的に価値が出てくるライン
余談)データ⼈材とその価値 Excel使い 相関分析/ 仮説検定屋 技術レベル ビジネス上の価値 機械学習 ホビーイスト 似非データサイエンティスト データサイエンティストの卵
ビジネス的に価値が出てくるライン データサイエンス系学部で しっかり学ぶ価値があるライン
余談)データ⼈材とその価値 Excel使い 相関分析/ 仮説検定屋 技術レベル ビジネス上の価値 機械学習 ホビーイスト 似非データサイエンティスト +
⼤規模データ分析者 ・データベースを扱える ・⼤規模データ処理コードが書ける ・ある程度機械学習ができる 機械学習エンジニア ・データベースを扱える ・深層学習コードがかける データサイエンティストの卵 戦力になるデータ人材
余談)データ⼈材とその価値 Excel使い 相関分析/ 仮説検定屋 技術レベル ビジネス上の価値 機械学習 ホビーイスト 似非データサイエンティスト +
⼤規模データ分析者 機械学習エンジニア 戦力になるデータ人材 データサイエンティストの卵 ポイントの1つは⼤規模データを扱うスキルがあるか
データサイエンス作業の分担と職種 https://www.oreilly.com/ideas/data-engineers-vs-data-scientists データサイエンティスト データエンジニア 高度な数学・統計知識 機械学習 高度な分析技術 高度なプログラミング データベース データパイプライン
分散処理 機械学習エンジニア データラングリング 機械学習の運用 機械学習のチューニング
Excel vs. 情報技術屋の「データベース」 Excel § 個人用の表計算ソフト § 対象データは⽐較的⼩さい § データの管理には不向き
(正しく管理できるかは⼈に依存) “データベース” l 大規模データを効率よく処理 l データを正しく管理 l データを複数⼈/複数アプリで 同時に使うことを想定 ⼤規模データを扱うならデータベースを学ぶ意味は⼤いにあり