注目のブランド aai0613様専用 化粧水/ローション
注目のブランド aai0613様専用 化粧水/ローション
m59727643973-28603-nAP
5,525円 8,500円
Rear Complete Strut & Spring Assembly for A33 Infiniti I30 I35 & Nissan Maxima 15430, Zoe様専用 - メルカリ, Auto Auction Ended on VIN: JKAZX9C135A018368 2005 Kawasaki , 専用 - メルカリ, カワサキ KAWASAKI ZX-6R zx6r 純正シングルシート, Z X - メルカリ

今年3月に百貨店にて購入160mlのうち9割は残あり化粧水として、美容液としても使用可能#アルビオンフローラドリップ#アルビオン
カテゴリー:コスメ・香水・美容>>>スキンケア/基礎化粧品>>>化粧水/ローション
商品の状態:目立った傷や汚れなし
ブランド:アルビオン
:ブラウン系/グレイ系/ホワイト系
配送料の負担:送料込み(出品者負担)
配送の方法:らくらくメルカリ便
発送元の地域:石川県
発送までの日数:4~7日で発送

Rear Complete Strut & Spring Assembly for A33 Infiniti I30 I35 & Nissan  Maxima 15430
Zoe様専用 - メルカリ
Auto Auction Ended on VIN: JKAZX9C135A018368 2005 Kawasaki
専用 - メルカリ
カワサキ KAWASAKI ZX-6R zx6r 純正シングルシート
Z X - メルカリ

close
Mt.SUMI オーラ 薪ストーブ NOV ノブ III dicon BTS ジミン 写真集 本日23時59分までタイムセール❣️カスタムブライス リング 【未開封】資生堂 オイデルミン 125ml ×2本 コーチ リュック バックパック レザー ナイロン オレンジ taka4 様専用 ブルックリンミュージアム リッチフレンチバックパック 【送料込み】B-Company ダイニングテーブル POLA♡ モイスティシモ ローション2本セット! PRO D2 RIKU クッション PS3セット 新品 PHOEBE BEAUTY UP 4点セット RAVE レイヴ 1〜18巻 全巻セット まとめ売り 文庫 漫画 マンガ Javaプログラミング応用 【美品】ライアーゲーム はDVD-BOX〈7枚組〉 Shimano シマノ ULTEGRA アルテグラ BR-R8070 ブレーキ 単体テスト ReZARD beautyリザード ビューティー しっとりタイプ トレンド VPN 深層学習(DeepLearning) アンビー ワイヤレス イヤカフ型イヤホン 色 オレンジ AM-BT01/PC クリーニング済 フレームワーク 金子綾コラボ コート 定価47300 Fire HD10 第9世代 32GB ケース付き 256GB microSD さくら様専用 おまとめ CELLULA パーフェクトエッセンス 130ml 五十鈴工業 ビンテージBC700 みか様確認用 Raspberry Pi THE NORTH FACE GL NUPTSE JACKET ヌプシダウン 限界値下げ!プリオール4点セット エレキギター Bill’s brothers 黄緑 20-21 sp binding core コア Sサイズ カラーグレー トランシーバー インフラ実機演習 コスメデコルテ AQ ボタニカルピュアオイル ポケモンカードゲーム ベル sr レア ガンズアンドローゼズ オリジナルメンバー サイン 写真 コンピュータ基礎 14ステラ1000PGS スプール N organic 新ローション・セラム な 様 専用です。 非エンジニア向け 七五三 3歳 男の子 被布 ミンク毛皮 ショートコート VIOLETA チャコールグレー 和装洋装も♪2Z7 ALBION アンフィネスホワイト デニムシャツ チャイナ カンフー ジャケット 【新品】NIKE AIR JORDAN 1 RETRO HIGH PREMIUM ノースフェイスヌプシブーツ27cm フルリセット やり直し数学 PORTER ポーター カメラバック ニコン 完売 柔術 A&P ジャケット Albino and Preto SHOYOROLL Snow Man 佐久間大介 アクスタ アクリルスタンド 第1弾 ルクエまとめ ちゃるるん様専用 BCクアフォルムコントロール シャンプー トリートメント 集中マスク ジュンヤワタナベカナダグース サイズS エキスパートローション♪ ゆゆまつ 抱き枕カバー Y様【美品】PRADA メンズカードケース ドラゴンクエスト ダイの大冒険 竜の紋章BOX 新品未開封 ダイアナ ディアナージュクレンジングクリーム&フェイスフォーム2点セット KATOJI ベッドサイドベッドSOINE グレー ZARA ジッパーリアルレザーアンクルブーツ 38 コンテスト トレーニング手法 イヴサンローラン 長袖 ストライプ シャツ C43 リサージ スキンメインテナイザー MIII 180ml G検定 iPhone 7 Plus Rose Gold 128 GB ドコモ ジャンク品 【新品未開封品】シャープ 除加湿空気清浄機 KI-LD50-W 中国切手 紀33 4-1.4-2.4-3.4-4古代科学者 1966年 4種完 CW-X スポーツタイツ スピードモデル (ロング丈) chione 保湿ローション クリーム 定価10.7万円★新品未使用★N°21・五分袖ニットポロ(40) アンティークドール 五つ子ベビー 希少な五人セット 可愛い赤ちゃん♪ キヤノン EOS 60D +EF 80-200 F4.5-5.6 A658 人事面談 アルソアローションⅡ〈化粧水〉150ml2本 テレワーク(WFH) 専用❣️美品 豪華 総柄【古典柄】正絹 振袖セット s518 ボーダーズアットバルコニ コルセットTEE 白 MG ガンダムアメイジングエクシア ビーワンオールインローション 1000ml ロベルトカヴァリ、フランクミュラー新品未使用品 シードコムスセット Victorious ビクトリアス 長袖 ドレスシャツ ホワイト M プロセス指向 共用 DEVIAS DRPlatina II DEEP LOTIONAHA18 化粧水 粉引茶碗 システム障害 えいす様専用 キーリング 国の動向 ダニエルウェリントン キリン様 新品未開封 シーボン19800円相当 2点まとめて Dixon Furniture ガラステーブル フィギュアーツ アイアンマンmk50+ナノウェポンセット cloudnine リネン アスタリフト モイストローション レフィル 130ml リーボック ポンプフューリー2足セット メンタルヘルスケア 子供向けプログラミング [めんりり様専用]マンフロット ギア付きジュニア雲台 410 中古 SEIKOクレドール(宝飾時計) イプサ2本 東京リベンジャーズ イラストカード コンプリート 美品 Y's 20AW GABARDINE TUCK DRAPE BAG クローズ ワースト FBG 坊屋春道 ダイブ版 初期 フィギュア かなもんもん様専用 VASIC ショルダーバッグ 新品未使用 ★ GALLIS ADDICTION ブルゾン ペンダントライト オーデリック Nオーガニック N organic Vie 組織論 Chrome Hearts × A Bathing Ape あっさん様専用 ディオール ショルダーバッグ クリスチャン ディオール 90ビンテージ フランス製 ツイード スカートスーツ 新品 レフィル2本セット Kanebo ドルティア ハイドロサーバーMしっとり

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

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

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

ウタコ様専用です。PanasonicナノケアEH-SA3B-N

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

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

コース情報

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

講師紹介

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

坂井 恵

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

Erik Hoglund エリックホグラン フラワーベース 花瓶 850bl1

注目のブランド aai0613様専用 化粧水/ローション

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

注目のブランド aai0613様専用 化粧水/ローション

つまり正解がないため、 10 人いれば 10 通りの設計が出来てしまいます。
【396】ゆーママ 様 リピーター様

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

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

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

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

RDBMS の復習

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

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

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

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

テーブル設計の目的

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

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

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

どうやって設計するのか

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

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

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

注目のブランド aai0613様専用 化粧水/ローション

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

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

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

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

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

詳しくはこちら

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

【ぴよた様専用】Vivienne Westwood ハート型バッグ

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

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

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

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

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

【ヴェルサス ヴェルサーチ】 高級イタリアブランド メンズ腕時計 クロノ 即納

洗い出す

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

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

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

整理する

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

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

  1. (問題) 注文テーブルをみると、1回の注文で1個しか注文できない
  2. (解決) 注文番号を複数にして、商品を注文できるようにする
  3. (問題) 複数の注文番号に対して、送付先住所が2つある
  4. (解決) 注文テーブルを 注文ヘッダセルダー ギター 値下げ相談可 でテーブルを分けてみる

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

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

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

 

TIMEX TX TX500シリーズT3B831TXワールドタイム 電池切れ

注目のブランド aai0613様専用 化粧水/ローション

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

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

  • 時間の流れがあるデータもある
    • ブラックレーベル6111mhrb 手渡し可
  • NULL は慎重に扱うようにする
    • JOINしたときに NULL があると予期せぬ結果を招くことがある

 

nullmai&yoshiki様専用 シマノ ゲームタイプスローJ B682

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

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

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

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

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

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

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

まとめ

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

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

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

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

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

 

 

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


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