發(fā)布時間:2024-01-24閱讀(16)

產(chǎn)品經(jīng)理在產(chǎn)品功能設計,尤其是平臺類產(chǎn)品設計的過程中,必然涉及到數(shù)據(jù)模型以及數(shù)據(jù)操作相關的設計。
在用戶場景和功能層面來看,是一個個根據(jù)用戶的使用場景設計的功能點。但是從數(shù)據(jù)層面來看,是根據(jù)用戶在該場景內(nèi)對產(chǎn)品輸入的數(shù)據(jù)信息進行處理并輸出結果的一個過程。
和數(shù)據(jù)結構相對應,數(shù)據(jù)庫作為存儲數(shù)據(jù)的容器,所有與產(chǎn)品相關的功能數(shù)據(jù)、用戶信息、操作數(shù)據(jù)等都存儲在數(shù)據(jù)庫中。通過學習數(shù)據(jù)庫,可以從數(shù)據(jù)視角看產(chǎn)品,更多地從數(shù)據(jù)存儲、數(shù)據(jù)關聯(lián)等方面來對產(chǎn)品進行剖析。數(shù)據(jù)庫對于從事平臺產(chǎn)品設計,或者數(shù)據(jù)產(chǎn)品的小伙伴來說,尤其重要。
本文將與大家分享數(shù)據(jù)庫相關的基礎知識,希望可以共同學習,共同進步。
數(shù)據(jù)管理從人工管理階段,到文件系統(tǒng)階段到現(xiàn)在的數(shù)據(jù)庫系統(tǒng)階段,最本質(zhì)的差別在于:數(shù)據(jù)庫管理做到了數(shù)據(jù)結構化。
舉個例子來說:將數(shù)據(jù)庫比喻成一個倉庫,那么數(shù)據(jù)就是這個倉庫中的貨物,管理員對這些貨物做分類整理、運輸?shù)炔僮鳎褪菙?shù)據(jù)管理。數(shù)據(jù)結構化就是講這些貨物分類分等地排列在貨架中,以便管理員能更好地進行管理。
數(shù)據(jù)模型是對現(xiàn)實世界數(shù)據(jù)特征的抽象,是數(shù)據(jù)庫系統(tǒng)的核心和基礎,是數(shù)據(jù)結構化到一定程度的產(chǎn)物,是一種機構化數(shù)據(jù)的展現(xiàn)。
數(shù)據(jù)模型有概念模型,邏輯模型和物理模型三種:
以上幾個模型的一般實現(xiàn)順序與流程為:
數(shù)據(jù)模型有三大組成要素:數(shù)據(jù)結構、數(shù)據(jù)操作、數(shù)據(jù)的完整性約束條件。
以最常見的關系數(shù)據(jù)庫為例,對數(shù)據(jù)庫相關的概念,操作以及和產(chǎn)品設計相關的知識進行整理。
為了更清晰地對以上幾個名詞進行理解,還是以學生和班級為例:
在這個例子中,學生和班級就是兩個實體。學生的姓名、學號等就是學生的屬性,學號作為唯一標識學生的屬性,就是學生這個實體的碼。
那么學生與班級之間的聯(lián)系可以表示為N:1,因為一個學生只能在一個班級中,而一個班級中有多個學生。

一組關系組合在一起,就是關系模型。關系數(shù)據(jù)庫是一種基于關系模型的數(shù)據(jù)庫,是以顯示世界中各個實體之間的關系為基礎,來展現(xiàn)數(shù)據(jù)的數(shù)據(jù)庫。每個關系的數(shù)據(jù)結構都可以用一張規(guī)范話的二維表來表示。一個關系通常對應一張表,每一列為一個屬性。
舉例理解一下,以課程表為例:
(1)課程表(課程ID、課程名、類型ID、學分… …)。
(2)課程類別表(類型ID、類型)。
這兩個表之間存在著屬性的引用——即“課程”表引用了“課程類別”表的主鍵“類型ID”。
按照參照完整性規(guī)則,“課程”表中每個元祖的“類型ID” 屬性只能取下面兩類值:
(3)用戶定義完整性:用戶自定義完整性是針對某一具體關系數(shù)據(jù)庫的約束條件,它反映某一具體應用所涉及的數(shù)據(jù)必須滿足的語義要求。
SQL :即結構化查詢語言,是關系數(shù)據(jù)庫的標準語言。
特點表現(xiàn)為:
常見的操作語句有以下幾種:
(1)定義基本表
create table <表名>
<列名> <數(shù)據(jù)類型> [約束條件]
<列名> <數(shù)據(jù)類型> [約束條件]
………
(2)修改基本表
alter table <表名>
[add <新列名> <數(shù)據(jù)類型> [約束條件]]——增加新的列和條件
[drop [約束條件]]——刪除條件
[alter column <列名> <數(shù)據(jù)類型> ]——修改列定義
(3)刪除基本表:
drop table <表名>
(4)數(shù)據(jù)查詢
select [ALL|DISTINCT]<目標表達式>……——取消重復列
From <表名或視圖名>……
[where <條件表達式> ]
[group by <列名1> [HAVING <條件表達式>]]
[order by <列名2> [ASC|DESC]
四、總結
雖然對于客戶端產(chǎn)品經(jīng)理來說,進行產(chǎn)品功能設計時并不需要去考慮數(shù)據(jù)庫的設計,一般會有架構師或者核心開發(fā)來規(guī)劃。但是需要明確的是:一個個產(chǎn)品功能最終是由數(shù)據(jù)通過產(chǎn)品設計的業(yè)務邏輯來展現(xiàn)出來的。
所以當技術提出,產(chǎn)品的需求影響了現(xiàn)有數(shù)據(jù)庫的設計,或者完成這個需求需要改變數(shù)據(jù)庫的結構時,產(chǎn)品經(jīng)理需要從產(chǎn)品的現(xiàn)有功能和后期規(guī)劃中來考慮有關數(shù)據(jù)的這兩個問題:
- 新增的功能需要現(xiàn)有數(shù)據(jù)庫所做的調(diào)整是什么,以及后期的規(guī)劃中是否會有類似的調(diào)整,是否需要統(tǒng)一設計;
- 明確1的基礎上,思考這個修改對原有的老版本產(chǎn)品功能是否會有影響。
對于平臺類產(chǎn)品經(jīng)理來說,對數(shù)據(jù)庫的學習應該需要更加深入。因為平臺在某種意義上來說,其實就是一個數(shù)據(jù)庫操作系統(tǒng)。以視頻類產(chǎn)品的資產(chǎn)管理后臺為例:所涉及到資產(chǎn)管理,推薦管理等功能,其實都是對于資產(chǎn)等實體進行查詢,修改等操作的過程。
以上是本次的數(shù)據(jù)庫的學習筆記,可能會有一些不合理的地方,希望共同學習共同進步。
參考教材:數(shù)據(jù)庫系統(tǒng)概論
作者:方小白,2年互聯(lián)網(wǎng)產(chǎn)品經(jīng)驗,專注用戶增長與會員運營。
本文由 @方小白 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉載
題圖來自Unsplash,基于CC0協(xié)議
Copyright ? 2024 有趣生活 All Rights Reserve吉ICP備19000289號-5 TXT地圖HTML地圖XML地圖