50%OFF 梅弘】平鉋【東大作 鉋大量!【内丸鉋 忠宗 不二雲 悦英 正永 角利 播磨王 工具/メンテナンス
50%OFF 梅弘】平鉋【東大作 鉋大量!【内丸鉋 忠宗 不二雲 悦英 正永 角利 播磨王 工具/メンテナンス
m45643171354-18544-FY3
11,050円 17,000円
1547714305_1959610498.310x310.jpg, 一帆风顺立轴水墨纸本】拍卖品_图片_价格_鉴赏_绘画_雅昌艺术品拍卖网

政勝 万太郎 東清久 敏成 延鶴】【台直し鉋 義光】サイズ、形状、状態全て画像でのご判断お願いいたします。銘柄多数大量出品です。
カテゴリー:スポーツ・レジャー>>>自転車>>>工具/メンテナンス
商品の状態:やや傷や汚れあり
配送料の負担:送料込み(出品者負担)
配送の方法:らくらくメルカリ便
発送元の地域:大阪府
発送までの日数:2~3日で発送

1547714305_1959610498.310x310.jpg
一帆风顺立轴水墨纸本】拍卖品_图片_价格_鉴赏_绘画_雅昌艺术品拍卖网

close
ボルネオスカル キャップ トラッカーキャップ テンダーロイン makita BL1430 14.4V3.0Ahバッテリー2個セット 着物訪問着 スワトウ刺繍 牡丹 暈し染 金糸 正絹 PreciousMemories【俺ガイル[完]】未開封box サントリー 響21年 700ml makita 充電器 バッテリー セット バラ売り可 CHANEL シャネル 長財布 マトラッセ ピンク TransferJet ステーション SONY ミニスウィーツドール ローリエ HiKOKIハイコーキ ボード用ドライバ 海外限定 ニューヨーク メッツ 7 3/4 61.5 カスタム 専用 ステンレスチェーンベルト 2点 ❤️UNTITLEDファーマフラー❤️ ハーネス ZS Mサイズ 黒  新規格対応 GARMIN ForeAthlete 945 スマートウォッチ Javaプログラミング応用 キャットブーツ 声春っ! Blu-ray BOX〈6枚組〉 単体テスト 956★マキタ 24mm充電式ハンマドリル HR244D 本体のみ 大工道具 トレンド VPN 深層学習(DeepLearning) 京商 KYOSYO フェラーリ Ferrari ミニカーシリーズⅤ 5 メゾンキツネ 20ss リラックスfox イタリア製 タッセル スウェード ローファー レッド 赤 25cm マキタ充電式ディスグラインダ ADORE アドーア ウエストギャザーブラウス 華やぎブラウス ネイビー laropa キャップ LEX着用 Raspberry Pi 新品未使用 カーボン製 115cm キザキ 4時間以内発送 マキタ XPH14Z HP486DZ 海外マキタ beatmania IIDX 専用コントローラー エントリーモデル(調整済) 訪問着八掛付反物 濱ちりめん 手書き一品物 ブラウン裾紫 ブドウ、ワイングラス 専用物件 オリエント製タウカンダイバー パワーリザーブ インフラ実機演習 エンジンポンプ 90年代初期名作チェックボタンダウンシャツ 進撃の巨人 漫画 全巻 コンピュータ基礎 【新品・未使用】l'Or One-handle Square Bag Brown ノンガス 半自動溶接機 MIG130 単相200V ロングトーチケーブル仕様 Nintendo Switch Lite スイッチ ライト ザシアン・ザマゼンタ 非エンジニア向け 値下げ!定価20万。ニールバレット 本革ベスト ステラマッカトニーショートブーツ 専用 レザイン MEGA C GPS 心拍数 ケイデンス ほぼ未使用 balenciagaトルーパーブーツ Rubber ラバー ブラック 専用regina romantico ベロア ジャケット&パンツ ④刀剣乱舞 同人誌 つるいち 鶴丸国永×一期一振 青様専用 やり直し数学 折り畳み式のアームチェア釣りチェア携帯用レジャーチェア屋外写生チェア RUSH REPLAY X 3 BRUNO コンパクトホットプレート×マルチプレート TONE ソケットレンチセット 230MX ナノユニバースシングル ライダースジャケット レザージャケット 希少サイズ34★セリーヌ ホワイトパンツ stein(シュタイン) セットアップ ニッチ レバーホイストRN1形 リブレザージャケット mistaraz エディスリマン 最終価格 ジャッカル ハードルアー 8点セット ミニクーパー モンテカルロラリーキーホルダー❗️ バラ売り可‼️ makita マキタ 充電式インパクトレンチ TW300D 美品 SAIYUKI DRAFT 峰倉かずや STUDIOバックギャモン COACH 長財布 シグネチャー ブラウン バラ 薔薇 コンテスト トレーニング手法 20th シークレットレア スペシャルパック 未開封 プリズマ アーコレ 形鋼クランプ スーパーツール G検定 ライフ JB5 JB7 ゼスト JE1 RSR Basici車高調 メンズ カシミヤ100% テーラードジャケット ポロラルフローレン ジャケット surface duo 256GB SIMフリー 日立コンプレッサー COMME des GARCONS JUNYA WATANABE MAN kumotan 様専用 値下げしましたッ‼ レザージャケット 人事面談 新品!!象印チェーンレバーホイスト Y2-10 5個セット!! テレワーク(WFH) Kindle Paperwhite Wi-Fi 【NEWモデル】(8GB) RICOH THETA SC2 オーダーデコ^^デコ電 HILTI X-GHP 24 MX (ガス管・ピンセット) シュプリーム ナイキ ニット セーター Mサイズ supreme NIKE 【モーリ様専用】ノースフェイス/トレーナー/ブラック/黒/L/nt11905z 東芝コンパクトデスクトップPC 高速SSD240G 第3世代i3搭載 メモリ8G プロセス指向 共用 マキタ 充電式アングルインパクトドライバ TL061DZ iPhone12 mini 64g simフリー ホワイト システム障害 曹洞宗総本山 總持寺 & 人物写真 2種セット おまとめ 国の動向 MIHARA YASUHIRO アーカイブ 変形パンツ VERTEX安定化電源 & ProSpec ELAN R ガーメントバッグ BURBERRY スーツ カバー タブレット 10インチ Dickies × TRIPSTER セットアップ BLACK SUIT ✨廃盤品レア✨51002 デジタル照度計 YOKOGAWA (横河電機) Rene ワンピース ルネ 未使用品 メンタルヘルスケア 子供向けプログラミング ネオちゅらびはだ 4本セット 19aw PALACE RIPPED COACH JACKET ジャケット L スナップオン 14.4V バッテリーorチャージャー 1206 良好 NEC Lavie NS750 i7 8G ブルーレイ 遊戯王 IPマスカレーナ 絵違い プリシク Hey!Say!JUMP 伊野尾慧 公式写真 日立工機 HIkoki ハイコーキ 165mm 深切り電子丸のこ C6MEY UNIF ニット ニンテンドー2DS LL ピカチュウ ウルトラムーン 米版 iPhone 12 Pro MAX 256GB ブルー 5G・ミリ波に対応 [新規格適合] 3M フルハーネス 1114081N 組織論 NORTH ノースフェイス ミナペルホネン ダウンジャケット THEドラえもん展 村上隆 プレート バッグ・財布2点セット Kitamura 黒 小物 ☆美品お買い得セット☆マキタ充電式防じんマルノコ14.4v

作って学ぶはじめてのテーブル設計 に参加してみた

今回の研修参加レポートは 作って学ぶはじめてのテーブル設計 です!

データベース設計というと、正規化ガガー、モデルを書いてー、と敷居が高く感じられますが、坂井さんらしいとても馴染みやすい言葉で設計のステップを解説いただけました!

北谷菜切 コスプレ衣装(女性S) コストモ製

これからアプリケーションエンジニアとしてDB設計をはじめようという方には、進め方やスキルの鍛え方がわかる内容になっています!

では、どんな内容だったのかレポートします!

コース情報

想定している受講者 簡単なSQLの知識(主に JOIN を含む SELECT 操作など)
受講目標 テーブル設計についての基本的な考え方と感覚を身につける

講師紹介

講師は以前にレポートしたでも登壇された 坂井 恵 さんです。

坂井 恵

たとえ話を交えながら、本質となる部分をしっかりと理解してもらうスタイルが特徴。本業では、データベース技術を中心にした社内システムの提案やコンサルティングを手掛ける。データベーススペシャリスト。
有限会社アートライ代表取締役。日本MySQLユーザ会副代表。

ゲームキューブ 本体 ゲームボーイプレーヤー コントローラー セット

50%OFF 梅弘】平鉋【東大作 鉋大量!【内丸鉋 忠宗 不二雲 悦英 正永 角利 播磨王 工具/メンテナンス

  • データベースとは何かを、もっかい復習
  • テーブル設計ってどうやって進めるの?
  • 様々なケースで体験してみましょう

50%OFF 梅弘】平鉋【東大作 鉋大量!【内丸鉋 忠宗 不二雲 悦英 正永 角利 播磨王 工具/メンテナンス

つまり正解がないため、 10 人いれば 10 通りの設計が出来てしまいます。
70s LACOSTE ラコステ ポロシャツ 3 フランス製 フレンチラコステ

なので、なぜこの設計にしたのか、というのを説明できるように、自分で考えることが重要です。

RDBMS 上に “要件” を実現できるテーブルを作る、ということがテーブル設計の目的です。
ということは、この要件をしっかりと把握するということが、まず必要です。

なので要件が変われば、もちろんテーブルも変わります。

要件、つまり現実世界のルールはこのコースでは扱わないけど、とても密接なので、勉強しましょう。
坂井さんもはじめての業務・業種をやるときは、漫画のような本、教科書のような本、わかりやすい本の3冊は読んでいるとのことでした。

RDBMS の復習

前回「データベース超入門」でも出てきたスキル一覧ですが、テーブル設計をするには ↓ の 2 つが必要です。

  • SQL は必須
  • ( 1 テーブル何億レコードといった大規模なシステムを扱う場合は) パフォーマンス

特に SQL が重要で、このあと講義で身をもって知ることになりました。

また補足として、このすべての知識を理解できれば、トラブル対応が出来るようになるとのことでした。
確かにトラブル発生時に症状やログから何が起こっていて、どう切り分けて、どう復旧するのか、判断のスピードと正確さが求められるので、すべての知識が必要ですね。

テーブル設計の目的

「つかいやすい」を明確に定義されたので、わかりやすく、また SQL が分かってないと出来ないことが多いことに気付けました。

当たり前ですが、出来上がったデーブルをもとに SQL で操作するので、データの取り出しやすさや更新のしやすさ、またパフォーマンスもクエリによっては時間がかかってしまうので、 SQL を十分に知らずして、テーブル設計は出来ないというのが理解できます。

また、テーブルを作っているうちに正解が無いために迷ったり悩んだりするので、まず「データが壊れない」という RDBMS の原点に立ち返ると良いとのアドバイスも頂きました。

どうやって設計するのか

どのようなテーブルを作るべきなのか理解したところで、設計の進め方を解説していただきました。

情報を整理する「洗い出す」

  • ユーザーが考える要件は漏れるので、想像力は重要
  • 何を洗い出すのか
    • “注文内容” のような大きなデータのカタマリ。商品マスタなどは後で考える
    • どういうシーンで使われるデータなのか考える ex. ‘商品検索’ ‘注文確認’
  • 100 % の完成度は目指さず、ユーザーに何回も確認しながら進めることが重要

50%OFF 梅弘】平鉋【東大作 鉋大量!【内丸鉋 忠宗 不二雲 悦英 正永 角利 播磨王 工具/メンテナンス

  • データのカタマリに名前をつけて、おおざっぱに型を考えておく
  • 文字列なのか数字なのか日付なのか、その他
  • ここでも厳密に使用する RDBMS を意識せず、あくまで大雑把に整理する

テーブルのイメージができたら「シミュレーションする」

  • 実際に書く SQL をイメージして、追加、更新、削除、検索で考えてみる

テーブルを作りながら「ブラッシュアップする」

  • パフォーマンスを検討する
  • データ件数や増加率がどれぐらいか
  • 更新頻度はどれぐらいか
PR
SE カレッジならこのコースを含め、
年間 700 コースを
1 社 / 1 部門 / 1 チーム 単位
月額 28,000 円~で
受講し放題!!

詳しくはこちら

実際にテーブル設計を体験してみよう

BURBERRY 専用

また、予め坂井さんが用意した SUMO (相撲力士データベース) をもとに SQL 操作して、必要な SQL 操作や現状の設計の問題点を考えます。

必要な SQL の基礎知識を確認

用意いただいた SUMO のデータベースをもとに、幾つかのテーブルを結合する JOIN をやってみました。

なぜ JOIN からやったのかというと、テーブル設計ではテーブルを分割することが多く、それをどう分割前に戻すのか必要だからです。

また、ここでググってやるのでは遅く、テーブルを見たらスグに実行できるほどに SQL に習熟している必要があるとのことでした。なお、私はググって Qiita を見ていました。。 まだ設計レベルにありません。

まっくす様専用 tc544 N.S.PRO 950GH HT アイアンセット

洗い出す

ざっと登場するものを 大きく 考えることがポイントです。
洗い出しのコツは、

  • アウトプットに注目する
    • 帳票や画面を見る
  • ユーザーがいるならどんどん聞いたほうがよい

その上で、洗い出したテーブルをザッと書いてみます。(それが上のスライドです)

整理する

洗い出したテーブルをもとに、問題点を考えて、テーブルを分割します。また、そのテーブルに名前をつけ、カラムの型をざっくり決めます。

このテーブルの問題を考えながら、解決していきます。

  1. (問題) 注文テーブルをみると、1回の注文で1個しか注文できない
  2. (解決) 注文番号を複数にして、商品を注文できるようにする
  3. (問題) 複数の注文番号に対して、送付先住所が2つある
  4. (解決) 注文テーブルを 注文ヘッダ長財布、キーケース でテーブルを分けてみる

このように実際のデータを想定して、整理を繰り返します。

この整理の段階で、テーブル名をつけるのですが、その注意点も教えてもらいました。

  • RDBMSは海外製がほとんどマルチバイト文字に対応していない
    • とはいえ、いま RDBMS でマルチバイト対応が進んでいて、 emoji が使われるようになって復権している
    • - (ハイフン) はマイナスと判断されちゃうのでダメ
  • ホモニム: 同じものには同じ名前をつけるんだよ
    • 商品 items というテーブルを作ったら、他のテーブルで商品のカラムを使うときに product とか使わない
  • シノニム: 複数のテーブルには同じカラム名はつけない
    • 商品と顧客というテーブルを考えたときに、 name というカラムを双方のテーブルにあるとややこしい
    • client_name とか product_name とかにしよう

 

COACH コーチ クロスグレーン レザー ピンク

50%OFF 梅弘】平鉋【東大作 鉋大量!【内丸鉋 忠宗 不二雲 悦英 正永 角利 播磨王 工具/メンテナンス

実際に作ったテーブルをもとに、シミュレーションとブラッシュアップを繰り返します。

また忘れがちなポイントとして ↓ を注意点として挙げていただきました。

  • 時間の流れがあるデータもある
    • 赤べこさん用
  • NULL は慎重に扱うようにする
    • JOINしたときに NULL があると予期せぬ結果を招くことがある

 

null古着 vintage フレアパンツ ベルボトム センタープレス

現実世界では入力フォームの全項目にユーザーが入力する、ということは難しいので、とっても工夫をしないと大変です。

テーブル設計の経験数を増やすコツ

最後に、テーブル設計は経験によってスキルが磨かれるので、その経験数を増やすコツを教えてもらいました。

  • いろいろなレシートや伝票から設計する
    • 実はコンビニエンスストアごとに出力項目が違う
    • ドラッグストアとコンビニエンスストアでも、もちろん項目が違う

普段の生活の中で、とっても馴染みやすい思考訓練ですね。

最後に、実際に坂井さんが最近経験された失敗事例を教えてもらいました。

その失敗とは、設計そのものではなく、要件を真に受けすぎ、 100 回やって 1 回ぐらいしか検索しない要件をそのまま実装してしまい、パフォーマンスが落ちてしまったそうです。
坂井さんでもお客様の要件を理解する、ということは難しいものなので、とにかく要件を想像する、確認するというのは重要なことなのですね。

まとめ

テーブル設計とは何を目的に、どのように進めるのか、サンプルのシステムをもとに演習して理解しました。

モデルや正規化といった言葉は使わず、テーブルという馴染みのあるもので、データベース設計を学びました。

また設計の進め方も、「洗い出す」「整理する」など、とてもわかりやすい言葉で表現されていたので、どう進めるのか、とてもイメージしやすくなりました。

私自身、まだまだSQL操作に慣れる必要があるので、まずこれからですが、普段の生活でもレシートを見るということでも鍛えていきたいと思います。

データベース設計やアプリケーション設計にこれから携わるという方には、必要なスキルや見通しがとても良くなるのでオススメです!

 

 

label SE カレッジの無料見学、資料請求などお問い合わせはこちらから!!


SEカレッジについて
label 関連するタグ

午前免除 FAQ

タグ一覧

CLOUDCONTACT.NL RSS