2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

何故データベース設計は軽視されるのか?

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

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

業務システムにおいては、
このデータベース設計(テーブル設計)は仕様そのものを定義する作業にも
近いと思いますし、この設計は開発工程やその後の運用における品質を
絶対的に左右するものだと思っています。
逆にこの設計があまりにも実現すべき仕様と比較し不整合なため、
その後の開発工程がデスマーチに陥ることも少なくないのではないでしょうか?

にも関わらず、正規化程度も理解できないような担当者が
この設計を行っていたり、業務システムの受託開発において、
「テーブルレイアウトを決める」という作業が、あまりにも軽視されているような
気がしています。

みなさんの現場ではどうでしょうか?
ご意見などお聞かせください。




608 :575:2021/06/22(火) 17:07:34.18 ID:???.net
ははは・・・
晴れて?「DB屋()」の仲間入りしそうだ・・・
PostgreSQL9.3とSQLServer2005を、プライベートで、弄ったことあるだけなのに(実務ではOracle11の炎上案件の燃料として放り込まれたぐらい)
7月からPostgreSQL12がフロントエンドで、Oracle(ナンバリングは効いてない)がバックエンドで動いてる「工場のFAのすごいやつと思えば間違いじゃない(スマートファクトリー)」とかいう謎の説明されたシステムのDBチームに配属になったわ・・・
メカ系や移動体通信系のファームしか経験ないつにいきなり・・・
ズブの素人よりはマシかもしれないけどDBそのもののスキルだったらそこらの学生以下だよ俺・・・orz.

609 :NAME IS NULL:2021/06/22(火) 18:09:02.74 ID:???.net
いまどきDBでチームがあるのか
ある意味すごいな

610 :NAME IS NULL:2021/06/22(火) 18:59:21.66 ID:wVCfrFWc.net
>>609
開発対象が、工場の機械からデータ受け取る中継ボックスみたいなところから、工場の中間サーバから複数の工場の情報をまとめるサーバまで一貫してるんだそうな。
そして中継ボックス、中間サーバ、全体の情報あつめるサーバってのを全部面倒見てる10人ほどのチームとのこと。
まだ現場に入ってないから実態判らんけど、門外漢な俺を採用しちゃうところだし、上下どころか横の連携もまともにとれないようなカオスなところでもおかしくないって個人的な経験則が言ってる。

他に仕事ないから受けたけど、今から「どんなとこかなー? 抜けるとしたらどうやって抜けようかなー?」って考えてるw

611 :NAME IS NULL:2021/06/22(火) 21:26:23.41 ID:???.net
もし関係者が見たら、特定できそうやな。w
ほどほどにしとけよ。

612 :NAME IS NULL:2021/06/26(土) 18:20:28.11 ID:???.net
データベースのテーブル設計書ってどうしてる?
エクセル方眼紙にしてかいてるんだけど、なんかいいのないのかな

613 :NAME IS NULL:2021/06/26(土) 23:14:34.00 ID:???.net
>>612
MySQL Workbenchはどや?
最近は使ってないから知らんが。

614 :NAME IS NULL:2021/07/03(土) 17:38:43.26 ID:R35jReGz.net
>>612
A5Mk-Uがよく使われている。

615 :NAME IS NULL:2021/10/13(水) 12:36:34.50 ID:???.net
データベーススペシャリストでよく問われるページサイズとか空き容量率とかどのメーカーのDBをターゲットにしてるんや?
教えてくれ

616 :NAME IS NULL:2021/10/13(水) 13:54:50.17 ID:???.net
特にどのDBMSをターゲットにしてるとかないぞ
一般的なBTreeを前提にしてるだけ

617 :ド底辺PG:2021/11/10(水) 22:00:45.28 ID:KaB0M86I.net
プロジェクトが燃え尽きたから別の案件に燃料しに行ったんだが、TEXT(可変長文字列)をPKにしてINDEX張ってて「パフォーマンス出ねぇ!」ってやってんですけど・・・
ちょう乱暴に描くと
CREATE TABLE T_TAGS(
 JPN AS TEXT NOT NULL,
 ENG AS TEXT,
 ・・・品詞とか同義語とかの定義いろいろ・・・
 PRIMARY KEY(JPN)
)
て感じの定義で、SELECTのサブクエリとかでも ON TBL1.JPN = ・・・ みたいにテキストのカラムをJOINしてるんすよ?

ドテ・イ・ヘーンな俺でも「なんで数値でIDのカラムを作らないの?」ぐらいの疑問はあるんだけど、
これって「データベースあるある」だったりするの?

618 :NAME IS NULL:2021/11/10(水) 22:40:02.10 ID:???.net
遅いのがTEXTのせいだってどうやって判断したの?

619 :NAME IS NULL:2021/11/11(木) 00:02:07.19 ID:???.net
>>617
>これって「データベースあるある」だったりするの?
文字列をPKに使うかどうかは状況による
絶対避けるというほどのものでもない
個人的には可変長は極力避けるけどパフォーマンスクリティカルなシステムじゃなければ
全部可変長で揃えてても特に問題なかったりする

PKを数値にしたバージョン作ってさくっと比較すればいいんじゃん?

620 :NAME IS NULL:2021/11/11(木) 19:06:31.16 ID:NSxyRLjO.net
>>617
あなたの言っていることは頭がおかしいくらい変なことを言っている。

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

念を押すと、頭のおかしい発言だぞ。

621 :NAME IS NULL:2021/11/11(木) 19:36:50.37 ID:NSxyRLjO.net
>>617
そのTEXT型がラージオブジェクト型というオチのネタ書き込みじゃないだろうな?

622 :NAME IS NULL:2021/11/11(木) 20:16:55.16 ID:???.net
>>620
そこまでやないやろ。w
テキストはCOLLATEの懸念があるし、 数値のが望ましいのはたしかやし。

まあ、遅いのはテキストキーやからと決めつけてかかってるところはアタマ弱そうやが。
EXPLAINしろっつーの。

623 :ドテ・イ・ヘーン:2021/11/11(木) 21:02:49.02 ID:xQZydvmR.net
俺の思い込みが解消されないレベルの現場という前提を認識ください m(_ _)m
マジ学生以下よ、俺のスキル・・・・

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

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

何の比較にもなってねぇじゃん!

という新事実が発覚して、馬鹿らしくなったので今日は仕事放り出して酒飲んできましたw

624 :NAME IS NULL:2021/11/11(木) 21:39:46.36 ID:6iIlck1C.net
説明の仕方でもうダメ

625 :NAME IS NULL:2021/11/11(木) 21:41:27.49 ID:6iIlck1C.net
Excelは何と関係があるのか?

626 :NAME IS NULL:2021/11/11(木) 21:41:54.34 ID:6iIlck1C.net
何が遅いのかまったくわかってねえな

627 :NAME IS NULL:2021/11/11(木) 23:17:34.86 ID:???.net
charやvarcharの文字列って意味でtextって言ってるんじゃなくtext型って話だったのか・・
sqliteならともかくそれ以外のメジャーなサーバー系DBMSでtext型をPKにすることはまずないぞ

628 :NAME IS NULL:2021/11/12(金) 00:22:09.87 ID:???.net
>>623
まとめたら、スペックの違いやろ。
一言ですむわ。w

629 :NAME IS NULL:2021/11/27(土) 20:05:57.75 ID:l5sFA9ZC.net
よくわかってないクライアントがよくわかってないSEに文句言って
よくわかってないフィルターで「お前らの作ったシステム遅いぞゴラァ!」ってなって現場に届くあるある案件ですな。

630 :NAME IS NULL:2022/02/12(土) 03:16:43.64 ID:Nh8yTOt3.net
>>629
性能要件があって、データが増えてもパフォーマンスに問題がないと一言、入っているだけで違うのにな。

631 :NAME IS NULL:2022/02/17(木) 18:59:32.20 ID:???.net
まあ、最近はフルSSDのストレージで構築したからsqlがとても早いです。statpack見るととんでもなくディスクREADしてるアホsqlあるけど、システム影響なし、いいんだか悪いんだかですねー

632 :NAME IS NULL:2022/02/22(火) 20:09:39.42 ID:P63gZsOo.net
>>631
それで解決したことにするとSSDでもどうにもならないSQLが増産されることになる。

633 :NAME IS NULL:2022/03/24(木) 22:48:04.07 ID:blhKkXUv.net
お前ら和歌山県出身の下村拓郎様(35歳独身、元自衛隊)をご存知か、この方は将来素晴しい人物になるから覚えておいて損はないぞ

634 :NAME IS NULL:2022/06/01(水) 14:23:26.36 ID:???.net
スキーマの意味よくわかってないけどスキーマ設計書にテーブル構成書いてるよ

635 :NAME IS NULL:2022/06/01(水) 17:38:04.59 ID:???.net
それっぽく聞こえるもんねw

636 :NAME IS NULL:2022/06/01(水) 20:43:48.71 ID:1CNMa44D.net
スキーマの概念が後付けの製品しか知らないんだろうな

637 :NAME IS NULL:2022/06/01(水) 20:44:36.18 ID:1CNMa44D.net
論理的な意味でも括りというのは必要

638 :NAME IS NULL:2023/04/11(火) 20:09:59.45 ID:+S9P9M6L.net
ER図を見てもよくわからない設計は典型的なダメパターン

だか大手SIerの人間はテストも運用も保守もしたことがないので、理解不能な理屈で設計したがる。

639 :NAME IS NULL:2023/07/08(土) 11:55:41.75 ID:Dzd22CIu.net
今月から、某メーカー系の現場入り。
50万件ぐらいしか入っていない商品マスターを検索するサイトが激重。
DB設計がもろこぼらーの発想。苦言をやんわり現場に伝えたつもりだが、超絶俺様気質の担当者で、聞き入れる気配なし。
逃げたい。
ちなみに、私はデータベーススペシャリスト餅。

640 :NAME IS NULL:2023/07/08(土) 12:27:10.70 ID:???.net
よくある話。
「こぼらーの発想」とか言ってもどこがどう悪いのか他人には伝わらんだろうし。

641 :NAME IS NULL:2023/07/08(土) 14:07:15.72 ID:???.net
正規化って概念がないんだろうな
エクセル感覚であるだけ用意する設計なんだろ

642 :NAME IS NULL:2023/07/08(土) 14:41:30.21 ID:???.net
検索が重いとしか書かれていないのに正規化が出てくる人もどっこいどっこい。

643 :NAME IS NULL:2023/07/08(土) 17:41:12.84 ID:???.net
>ちなみに、私はデータベーススペシャリスト餅。
オレはお前から逃げたいw

644 :NAME IS NULL:2023/07/09(日) 05:25:53.28 ID:Yld3I0en.net
こぼらーがなぜ嫌われるかをこぼらー自身は検証もしないし、俺流正義マンで権力まで持ってたら。。。。
出くわしたら逃げるしかないんだろうか?

645 :NAME IS NULL:2023/07/09(日) 09:49:24.47 ID:???.net
いまどきCOBOL知ってる人も少ないだろうしどこがどのように問題かという具体的な指摘もないから
傍で見ていてよくわからんのよね。検証のしようもないだろう。

646 :NAME IS NULL:2023/07/09(日) 15:34:31.38 ID:???.net
RDBをよく知らない構造化ファイル時代のコボラーはJOINを嫌い
COBOLプログラムから一番扱いやすい形の構造化ファイル風にテーブルを作る
でもそんな時代は30年近く前に終わってる上に定形検索だけなら遅くはならないので
データベーススペシャリスト餅wが表面しか見ていないだけだろう

647 :NAME IS NULL:2023/07/09(日) 22:27:42.41 ID:???.net
「コボラー」と言っとけば多分反論は来ないしお手軽にマウントとった気分になれる便利なワード。

648 :NAME IS NULL:2023/07/10(月) 06:12:24.27 ID:???.net
このスレなんてそれが生き甲斐のやつばかりじゃん
初心者の質問にはまともに答えず、馬鹿にして溜飲を下げるだけ

649 :NAME IS NULL:2023/07/10(月) 22:30:41.83 ID:???.net
ところで構造化ファイルってどんなん?

650 :NAME IS NULL:2023/08/18(金) 08:33:02.53 ID:???.net
ホホホ!(^O^)

651 :NAME IS NULL:2023/09/30(土) 00:06:07.97 ID:???.net
まじかよ、それはありえんわ

652 :NAME IS NULL:2023/10/03(火) 22:53:58.05 ID:puC6ODCi.net
VSAMとか悪名高いよな

653 :NAME IS NULL:2023/12/03(日) 23:59:55.07 ID:???.net
VSAM

654 :NAME IS NULL:2024/03/07(木) 18:22:53.35 ID:4BnqPTKi.net
処理速度の遅さが頻繁に問題になっていても、めちゃくちゃな設計とめちゃくちゃなSQLを使うのが優秀な開発者なのがITの世界ではエリートだったりするからなあ

目に見えない部分は評価されにくい

655 :NAME IS NULL:2024/03/09(土) 19:05:23.11 ID:???.net
推敲してレスしなおしてくれないか

656 :NAME IS NULL:2024/03/09(土) 21:29:57.56 ID:sC2bZ4HS.net
有名製品でもデータモデルはひどかったりする

657 :NAME IS NULL:2024/04/19(金) 07:20:06.15 ID:0Ztguvb/.net
アプリ開発者がただの入れ物として設計してしまうからなあ

189 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★