何故データベース設計は軽視されるのか? (659レス)
1-

1
(12): 2008/12/01(月)01:07 ID:X6n/IiFX(1) AAS
何故データベース設計は軽視されるのか?

ここでいうデータベース設計とは、
特定の業務システムにおける
テーブルレイアウトを設計し、決める作業であるとします。

業務システムにおいては、
このデータベース設計(テーブル設計)は仕様そのものを定義する作業にも
近いと思いますし、この設計は開発工程やその後の運用における品質を
省9
579
(3): 2021/01/12(火)12:19 ID:??? AAS
プログラム組まないやつが設計すると保守性重視になるよな…
人間がパッと見て理解しやすい設計にしがち 
ナチュラルキー多用したり
580
(1): 2021/01/12(火)15:18 ID:??? AAS
>>579
ナチュラルキーを多用してるにもかかわらず保守性が高いならいいんじゃね
581: 2021/01/12(火)16:22 ID:??? AAS
>>580
>>579は「保守性」と言っちゃってるが、実はたぶん保守性の話やないな。
初見のわかりやすさしか見えてないような、困ったちゃんの話なんやろな。
582: 2021/01/12(火)17:06 ID:??? AAS
そうすると保守性を理解してない>>579が困ったちゃんってことになる
583: 2021/01/12(火)17:48 ID:??? AAS
すまん、保守性って言葉が悪かったな
プログラムの保守性ではなくて
ユーザーからの問い合わせ時にデータ見てパッとわかるテーブル構造を好む
584: 2021/01/12(火)20:38 ID:??? AAS
人間にとっての見やすさというかわかりやすさも重要な品質要素だからね
それを犠牲にして得られるメリットとのバランス次第
何と何をトレードオフしようとしてるのか理解してないうちはまともな設計は期待できない
585
(1): 2021/01/12(火)21:08 ID:??? AAS
パッと見理解しやすくて保守性も高いならいいことずくめに読めるが。

たぶん言いたいことは逆になにか問題があるということなんだろうけど
結論書いてないから何を言いたいのかわからない。
586: 2021/01/12(火)21:28 ID:??? AAS
>>585
理解力なさすぎ。
人工キー+JOIN前提みたいな、不慣れだとややこしげに見えるテーブルを組みたがらない素人の話なだけやろ。
587
(1): 2021/01/12(火)21:37 ID:??? AAS
だから、そこで自然キーの欠点や人工キーの利点を説明しなきゃ何を言いたいのかわからんだろ。
人工キーが自然キーより優れているのは自明だと思ってるとかそんなとこかね。
588: 2021/01/12(火)21:45 ID:??? AAS
>>587
SQL書くときに条件や結合は少ないほうがバグが発生しにくい
プログラマにとってはサロゲートキーの方がわかりやすい

しかしサロゲートキーだと生データを見たときにわかりにくいことがある

ナチュラルキーとサロゲートキーの代表的なメリットデメリットだと思うけど…

その辺天秤にかけてこのテーブルはサロゲートキー、このテーブルはナチュラルキーと決定できるのは
設計もプログラムも保守もやる人。
省1
589
(2): 2021/01/12(火)21:57 ID:??? AAS
こうやってブレイクダウンするとどこに誤解があるか見えてくる。

複合キーは扱いづらいのでかわりにサロゲートキーを使うことはあるが
自然キーだと一律にサロゲートキーより扱いづらいなんて理由はないだろう。
590: 2021/01/12(火)22:30 ID:??? AAS
>>589
おっしゃる通り複合キーの場合だな
大変失礼しました

設計と保守しかしない年配のSEさんはサロゲートキーを知らずに複合キーを使いまくる傾向にある
プログラマは若かったり雇われだったりなので口出しできずにクソシステムの出来上がり
591: 2021/01/12(火)22:34 ID:??? AAS
>>589
めんどくさ。
そんな話じゃなかったやろ。。。

おまえは、自分が理解できない話を、自分が理解できるようにしたいだけ。w
何が「ブレイクダウン」や。w
592
(1): 2021/01/12(火)22:41 ID:??? AAS
>そんな話じゃなかったやろ。。。

どういう話なのか、お前はまず言いたいことを結論からハッキリ書くようにしろ。
593
(3): 2021/01/13(水)00:21 ID:??? AAS
呼び名はともかく人工キーは80~90年代でも普通に使われてただろうから年配だろうが知らないわけない

複合キーは見てわかりやすいわけじゃないが
人工キーに比べると整合性を維持する設計が簡単なんだよ
SQL書く時は面倒くさいから嫌がられるけど不整合が発生するのに比べればマシだから
594: 2021/01/13(水)00:38 ID:??? AAS
>>592
自分の理解力を棚に上げんなよ。
595: 2021/01/13(水)00:53 ID:??? AAS
>>593
不整合はユニーク制約つければいいんでないの
596
(1): 2021/01/13(水)08:06 ID:??? AAS
同じ型の単純キー同士なら、それが自然キーか人工キーかで扱いやすさが変わることはないやね。
597: 2021/01/13(水)08:13 ID:??? AAS
>>596
変わらない
複合キーが問題
598
(1): 2021/01/14(木)02:05 ID:??? AAS
>>593
ちょっと、「整合性を維持する設計」について詳しく説明してくれ
599
(2): 2021/01/20(水)22:55 ID:LfU5rlWt(1/3) AAS
>>557
仕様変更に強いかどうか。それと人間にとってわかりやすいかどうか。正規化の話はもっともらしいが、ちゃんとしたテストと運用・保守をやっていれば、ただの非現実的な理屈だとわかる。
600: 2021/01/20(水)23:01 ID:LfU5rlWt(2/3) AAS
>>593
論理的な整合性をアプリケーションで担保する。そうでないとアプリケーションのテストも難しい。
601: 2021/01/20(水)23:02 ID:LfU5rlWt(3/3) AAS
>>598
彼はアプリ屋と壁を作るタイプだから、かかわらない方がいいよ。
602: 2021/01/20(水)23:16 ID:??? AAS
>>599
アホなの?
603: 2021/01/22(金)08:45 ID:??? AAS
>>599
このちゃんとした
ってのがどれだけ難しいか
604: 2021/01/25(月)05:16 ID:cGhuaVFN(1) AAS
よく読め
605: 575 2021/06/22(火)17:07 ID:??? AAS
ははは・・・
晴れて?「DB屋()」の仲間入りしそうだ・・・
PostgreSQL9.3とSQLServer2005を、プライベートで、弄ったことあるだけなのに(実務ではOracle11の炎上案件の燃料として放り込まれたぐらい)
7月からPostgreSQL12がフロントエンドで、Oracle(ナンバリングは効いてない)がバックエンドで動いてる「工場のFAのすごいやつと思えば間違いじゃない(スマートファクトリー)」とかいう謎の説明されたシステムのDBチームに配属になったわ・・・
メカ系や移動体通信系のファームしか経験ないつにいきなり・・・
ズブの素人よりはマシかもしれないけどDBそのもののスキルだったらそこらの学生以下だよ俺・・・orz.
606
(1): 2021/06/22(火)18:09 ID:??? AAS
いまどきDBでチームがあるのか
ある意味すごいな
607: 2021/06/22(火)18:59 ID:wVCfrFWc(1) AAS
>>606
開発対象が、工場の機械からデータ受け取る中継ボックスみたいなところから、工場の中間サーバから複数の工場の情報をまとめるサーバまで一貫してるんだそうな。
そして中継ボックス、中間サーバ、全体の情報あつめるサーバってのを全部面倒見てる10人ほどのチームとのこと。
まだ現場に入ってないから実態判らんけど、門外漢な俺を採用しちゃうところだし、上下どころか横の連携もまともにとれないようなカオスなところでもおかしくないって個人的な経験則が言ってる。

他に仕事ないから受けたけど、今から「どんなとこかなー? 抜けるとしたらどうやって抜けようかなー?」って考えてるw
608: 2021/06/22(火)21:26 ID:??? AAS
もし関係者が見たら、特定できそうやな。w
ほどほどにしとけよ。
609
(2): 2021/06/26(土)18:20 ID:??? AAS
データベースのテーブル設計書ってどうしてる?
エクセル方眼紙にしてかいてるんだけど、なんかいいのないのかな
610: 2021/06/26(土)23:14 ID:??? AAS
>>609
MySQL Workbenchはどや?
最近は使ってないから知らんが。
611: 2021/07/03(土)17:38 ID:R35jReGz(1) AAS
>>609
A5Mk-?がよく使われている。
612: 2021/10/13(水)12:36 ID:??? AAS
データベーススペシャリストでよく問われるページサイズとか空き容量率とかどのメーカーのDBをターゲットにしてるんや?
教えてくれ
613: 2021/10/13(水)13:54 ID:??? AAS
特にどのDBMSをターゲットにしてるとかないぞ
一般的なBTreeを前提にしてるだけ
614
(3): ド底辺PG 2021/11/10(水)22:00 ID:KaB0M86I(1) AAS
プロジェクトが燃え尽きたから別の案件に燃料しに行ったんだが、TEXT(可変長文字列)をPKにしてINDEX張ってて「パフォーマンス出ねぇ!」ってやってんですけど・・・
ちょう乱暴に描くと
CREATE TABLE T_TAGS(
 JPN AS TEXT NOT NULL,
 ENG AS TEXT,
 ・・・品詞とか同義語とかの定義いろいろ・・・
 PRIMARY KEY(JPN)
省4
615: 2021/11/10(水)22:40 ID:??? AAS
遅いのがTEXTのせいだってどうやって判断したの?
616: 2021/11/11(木)00:02 ID:??? AAS
>>614
>これって「データベースあるある」だったりするの?
文字列をPKに使うかどうかは状況による
絶対避けるというほどのものでもない
個人的には可変長は極力避けるけどパフォーマンスクリティカルなシステムじゃなければ
全部可変長で揃えてても特に問題なかったりする

PKを数値にしたバージョン作ってさくっと比較すればいいんじゃん?
617
(1): 2021/11/11(木)19:06 ID:NSxyRLjO(1/2) AAS
>>614
あなたの言っていることは頭がおかしいくらい変なことを言っている。

たまたまいままで見てきたテーブルの主キー項目が数値型だっただけで、根拠のない思い込みをしてないか?

念を押すと、頭のおかしい発言だぞ。
618: 2021/11/11(木)19:36 ID:NSxyRLjO(2/2) AAS
>>614
そのTEXT型がラージオブジェクト型というオチのネタ書き込みじゃないだろうな?
619: 2021/11/11(木)20:16 ID:??? AAS
>>617
そこまでやないやろ。w
テキストはCOLLATEの懸念があるし、 数値のが望ましいのはたしかやし。

まあ、遅いのはテキストキーやからと決めつけてかかってるところはアタマ弱そうやが。
EXPLAINしろっつーの。
620
(1): ドテ・イ・ヘーン 2021/11/11(木)21:02 ID:xQZydvmR(1) AAS
俺の思い込みが解消されないレベルの現場という前提を認識ください m(_ _)m
マジ学生以下よ、俺のスキル・・・・

EXCELを読んでDBに追記して、DBを参照してEXCELに吐き出すっていう単機能のモジュール2つを並行して「これ、改良して」ってソースだけ渡されたんすよ!
周りが「おそいおそい!」って騒いでて「どんなもんじゃらほい?」って見たらJOINが5〜6個あってTEXTのカラムでつないでたんよ。
さすがにSELECTのWHERE句でIN使うほどじゃなかったけど、そういうSQLあっても不思議じゃないレベルのある意味読みやすいSQLでしたw

あと、遅いの根拠が「本番で使ってる高負荷に耐える超高性能マシン」で動かした旧バージョンと「テスト用のレンタル屋から借りてるそこそこの性能のマシン」で動かした新バージョンというね・・・

何の比較にもなってねぇじゃん!
省1
621: 2021/11/11(木)21:39 ID:6iIlck1C(1/3) AAS
説明の仕方でもうダメ
622: 2021/11/11(木)21:41 ID:6iIlck1C(2/3) AAS
Excelは何と関係があるのか?
623: 2021/11/11(木)21:41 ID:6iIlck1C(3/3) AAS
何が遅いのかまったくわかってねえな
624: 2021/11/11(木)23:17 ID:??? AAS
charやvarcharの文字列って意味でtextって言ってるんじゃなくtext型って話だったのか・・
sqliteならともかくそれ以外のメジャーなサーバー系DBMSでtext型をPKにすることはまずないぞ
625: 2021/11/12(金)00:22 ID:??? AAS
>>620
まとめたら、スペックの違いやろ。
一言ですむわ。w
626
(1): 2021/11/27(土)20:05 ID:l5sFA9ZC(1) AAS
よくわかってないクライアントがよくわかってないSEに文句言って
よくわかってないフィルターで「お前らの作ったシステム遅いぞゴラァ!」ってなって現場に届くあるある案件ですな。
627: 2022/02/12(土)03:16 ID:Nh8yTOt3(1) AAS
>>626
性能要件があって、データが増えてもパフォーマンスに問題がないと一言、入っているだけで違うのにな。
628
(1): 2022/02/17(木)18:59 ID:??? AAS
まあ、最近はフルSSDのストレージで構築したからsqlがとても早いです。statpack見るととんでもなくディスクREADしてるアホsqlあるけど、システム影響なし、いいんだか悪いんだかですねー
629: 2022/02/22(火)20:09 ID:P63gZsOo(1) AAS
>>628
それで解決したことにするとSSDでもどうにもならないSQLが増産されることになる。
630: 2022/03/24(木)22:48 ID:blhKkXUv(1) AAS
お前ら和歌山県出身の下村拓郎様(35歳独身、元自衛隊)をご存知か、この方は将来素晴しい人物になるから覚えておいて損はないぞ
631: 2022/06/01(水)14:23 ID:??? AAS
スキーマの意味よくわかってないけどスキーマ設計書にテーブル構成書いてるよ
632: 2022/06/01(水)17:38 ID:??? AAS
それっぽく聞こえるもんねw
633: 2022/06/01(水)20:43 ID:1CNMa44D(1/2) AAS
スキーマの概念が後付けの製品しか知らないんだろうな
634: 2022/06/01(水)20:44 ID:1CNMa44D(2/2) AAS
論理的な意味でも括りというのは必要
635: 2023/04/11(火)20:09 ID:+S9P9M6L(1) AAS
ER図を見てもよくわからない設計は典型的なダメパターン

だか大手SIerの人間はテストも運用も保守もしたことがないので、理解不能な理屈で設計したがる。
636: 2023/07/08(土)11:55 ID:Dzd22CIu(1) AAS
今月から、某メーカー系の現場入り。
50万件ぐらいしか入っていない商品マスターを検索するサイトが激重。
DB設計がもろこぼらーの発想。苦言をやんわり現場に伝えたつもりだが、超絶俺様気質の担当者で、聞き入れる気配なし。
逃げたい。
ちなみに、私はデータベーススペシャリスト餅。
637: 2023/07/08(土)12:27 ID:??? AAS
よくある話。
「こぼらーの発想」とか言ってもどこがどう悪いのか他人には伝わらんだろうし。
638: 2023/07/08(土)14:07 ID:??? AAS
正規化って概念がないんだろうな
エクセル感覚であるだけ用意する設計なんだろ
639: 2023/07/08(土)14:41 ID:??? AAS
検索が重いとしか書かれていないのに正規化が出てくる人もどっこいどっこい。
640: 2023/07/08(土)17:41 ID:??? AAS
>ちなみに、私はデータベーススペシャリスト餅。
オレはお前から逃げたいw
641: 2023/07/09(日)05:25 ID:Yld3I0en(1) AAS
こぼらーがなぜ嫌われるかをこぼらー自身は検証もしないし、俺流正義マンで権力まで持ってたら。。。。
出くわしたら逃げるしかないんだろうか?
642: 2023/07/09(日)09:49 ID:??? AAS
いまどきCOBOL知ってる人も少ないだろうしどこがどのように問題かという具体的な指摘もないから
傍で見ていてよくわからんのよね。検証のしようもないだろう。
643: 2023/07/09(日)15:34 ID:??? AAS
RDBをよく知らない構造化ファイル時代のコボラーはJOINを嫌い
COBOLプログラムから一番扱いやすい形の構造化ファイル風にテーブルを作る
でもそんな時代は30年近く前に終わってる上に定形検索だけなら遅くはならないので
データベーススペシャリスト餅wが表面しか見ていないだけだろう
644: 2023/07/09(日)22:27 ID:??? AAS
「コボラー」と言っとけば多分反論は来ないしお手軽にマウントとった気分になれる便利なワード。
645: 2023/07/10(月)06:12 ID:??? AAS
このスレなんてそれが生き甲斐のやつばかりじゃん
初心者の質問にはまともに答えず、馬鹿にして溜飲を下げるだけ
646: 2023/07/10(月)22:30 ID:??? AAS
ところで構造化ファイルってどんなん?
647: 2023/08/18(金)08:33 ID:??? AAS
ホホホ!(^O^)
648: 2023/09/30(土)00:06 ID:??? AAS
まじかよ、それはありえんわ
649: 2023/10/03(火)22:53 ID:puC6ODCi(1) AAS
VSAMとか悪名高いよな
650: 2023/12/03(日)23:59 ID:??? AAS
VSAM
651: 2024/03/07(木)18:22 ID:4BnqPTKi(1) AAS
処理速度の遅さが頻繁に問題になっていても、めちゃくちゃな設計とめちゃくちゃなSQLを使うのが優秀な開発者なのがITの世界ではエリートだったりするからなあ

目に見えない部分は評価されにくい
652: 2024/03/09(土)19:05 ID:??? AAS
推敲してレスしなおしてくれないか
653: 2024/03/09(土)21:29 ID:sC2bZ4HS(1) AAS
有名製品でもデータモデルはひどかったりする
654
(1): 2024/04/19(金)07:20 ID:0Ztguvb/(1) AAS
アプリ開発者がただの入れ物として設計してしまうからなあ
655: 2024/06/06(木)23:31 ID:??? AAS
>>654
それだね
他には正規化は遅くなるからだめだというやつもいる
正規化で整理してから多少崩すのは良いけど、そういう事言うやつはたいていめちゃくちゃに作る
もちろんデスペなんて持っちゃいない。
デスペごときをすげえとか言ってるレベル
656: 2024/06/07(金)00:35 ID:vcSub6lm(1/2) AAS
遅くなるというより、性能はあとからどうにでもなるという謎の思想があるからなあ。
657: 2024/06/07(金)00:36 ID:vcSub6lm(2/2) AAS
チューニングという言葉が嫌い
なんでチューニングという魔法で解決するのか
658: 2024/06/27(木)02:42 ID:5JhuaKBH(1) AAS
見えないところは軽視されてしまう
659: 2024/08/11(日)06:05 ID:ldMkScMC(1) AAS
オラクルクラウド Oracle Cloud Infrastructure (OCI) スレッド
外部リンク:www.oracle.com
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.205s*