各位大大好
小弟是一間小公司裡
負責部分核心業務的軟體工程師
為了日益多樣的客群,被安排要規劃新的設計
程式語言使用的是Java,資料庫是Postgres
框架使用了Hibernate及Spring data JPA
有天CTO跟我說想到了個好方法
要把核心業務中
原本關系為多對一的A Table 與B Table
改為多對多關係
並把Key直接用String Array Type
儲存在A Table的某個新欄位裡
這樣一來就有很大的彈性
小弟做了一些功課
向CTO表達了應該加關係表正規化的想法
但CTO不滿意,覺得關系表很多餘
小弟又用String Array Type 在Java世界裡
並沒有完整支援為理由嘗試說服
CTO卻覺得這些都是可以克服的問題...
小弟認為一但使用String Array Type
並且不使用關系表
就很有可能要全部走Native SQL
日後無論延展需求或維護都會相當痛苦
為此非常苦惱
因為核心業務的複雜程度
小弟希望可以降低日後的維護門檻
想詢問各位大大
String Array Type的問題
真的有這麼好克服嗎?
或是有什麼更好的說服理由是小弟沒想到的?
這是小弟首次於軟體版發文
感謝耐心看完的大大們,獻上萬分的謝意