欧易

欧易(OKX)

国内用户最喜爱的合约交易所

火币

火币(HTX )

全球知名的比特币交易所

币安

币安(Binance)

全球用户最多的交易所

产品经理的技术修行笔记——数据库篇

时间:2022-10-10 18:19:15 | 浏览:4736

产品经理在产品功能设计,尤其是平台类产品设计的过程中,必然涉及到数据模型以及数据操作相关的设计。在用户场景和功能层面来看,是一个个根据用户的使用场景设计的功能点。但是从数据层面来看,是根据用户在该场景内对产品输入的数据信息进行处理并输出结果

产品经理在产品功能设计,尤其是平台类产品设计的过程中,必然涉及到数据模型以及数据操作相关的设计。

在用户场景和功能层面来看,是一个个根据用户的使用场景设计的功能点。但是从数据层面来看,是根据用户在该场景内对产品输入的数据信息进行处理并输出结果的一个过程。

和数据结构相对应,数据库作为存储数据的容器,所有与产品相关的功能数据、用户信息、操作数据等都存储在数据库中。通过学习数据库,可以从数据视角看产品,更多地从数据存储、数据关联等方面来对产品进行剖析。数据库对于从事平台产品设计,或者数据产品的小伙伴来说,尤其重要。

本文将与大家分享数据库相关的基础知识,希望可以共同学习,共同进步。

一、基础名词理解

  • 数据:“数据是对客观事物的符号表示,在计算机科学中指所有能输入到计算机中,并被计算机程序处理的符号的总称。”这是之前在数据结构篇中对数据的定义,那么结合数据库来理解,数据是数据库中存储的基本对象。

  • 数据库:可长期存储在计算机内,有组织、可共享的大量数据的集合,具有永久存储型有组织和可共享三个基本特点。

  • 数据管理:对数据进行分类、组织、编码、存储、检索和维护,是数据处理的中心问题。

数据管理从人工管理阶段,到文件系统阶段到现在的数据库系统阶段,最本质的差别在于:数据库管理做到了数据结构化

举个例子来说:将数据库比喻成一个仓库,那么数据就是这个仓库中的货物,管理员对这些货物做分类整理、运输等操作,就是数据管理。数据结构化就是讲这些货物分类分等地排列在货架中,以便管理员能更好地进行管理。

二、数据模型

数据模型是对现实世界数据特征的抽象,是数据库系统的核心和基础,是数据结构化到一定程度的产物,是一种机构化数据的展现。

数据模型有概念模型,逻辑模型和物理模型三种:

  1. 概念模型:又称信息模型,是指按用户的观点来对数据进行建模,主要用于数据库设计。

  2. 逻辑模型:按计算机系统的观点对数据和信息建模,主要用于DBMS(数据库管理系统)的实现。

  3. 物理模型:对数据最低层次的抽象,描述系统内部的表示和取存方法。

以上几个模型的一般实现顺序与流程为:

数据模型有三大组成要素:数据结构、数据操作、数据的完整性约束条件。

  1. 数据结构:在之前的数据结构篇中有详细的介绍(产品经理的技术修行笔记——数据结构篇)。

  2. 数据操作:就是对数据库中的各种对象可执行的操作的集合,比较常见的为数据库的增删改查。数据操作在平台类产品中十分常见。比如:电商后台管理系统中,针对一个商品的信息进行修改,上传图片、更新库存,或者直接删除新增商品,就是针对一个商品的数据操作。

  3. 数据的完整性约束:指的是为了防止不符合规范的数据进入数据库,在用户对数据进行插入、修改、删除等操作时,DBMS自动按照一定的约束条件对数据进行监测,使不符合规范的数据不能进入数据库,以确保数据库中存储的数据正确、有效、相容。比如:我们定义学生年龄字段的数据类型为整型,那么就无法将带有小数点的数字作为年龄插入之年龄字段中。

三、关系数据库

以最常见的关系数据库为例,对数据库相关的概念,操作以及和产品设计相关的知识进行整理。

3.1 基本概念

  • 实体:客观存在并可互相区分的事物。

  • 属性:实体所具有的某一特征。

  • 码:唯一标识实体的属性集。

  • 关系:实体之间的关系,主要可分多1:1、1:N、M:N三种。

为了更清晰地对以上几个名词进行理解,还是以学生和班级为例:

在这个例子中,学生和班级就是两个实体。学生的姓名、学号等就是学生的属性,学号作为唯一标识学生的属性,就是学生这个实体的码。

那么学生与班级之间的联系可以表示为N:1,因为一个学生只能在一个班级中,而一个班级中有多个学生。

一组关系组合在一起,就是关系模型。关系数据库是一种基于关系模型的数据库,是以显示世界中各个实体之间的关系为基础,来展现数据的数据库。每个关系的数据结构都可以用一张规范话的二维表来表示。一个关系通常对应一张表,每一列为一个属性。

3.2 关系数据库的完整性

  • 实体完整性:实体完整性要求每个表都有唯一标识符,每一个表中的主键字段不能为空或者重复的值——即若属性A为基本关系R 的主属性,那么A不能取空。

  • 参照完整性:参照完整性要求关系中不允许引用不存在的实体,设定相应的更新删除插入规则来更新参考表——即若属性(或者属性组)F还基本关系S的外码,它与基本关系S 的主码K对应,则对于R中每个元祖在F 上的至必须为1,空值为2,等于S中某个元祖的主码值。

举例理解一下,以课程表为例:

(1)课程表(课程ID、课程名、类型ID、学分… …)。

(2)课程类别表(类型ID、类型)。

这两个表之间存在着属性的引用——即“课程”表引用了“课程类别”表的主键“类型ID”。

按照参照完整性规则,“课程”表中每个元祖的“类型ID” 属性只能取下面两类值:

  1. 空值:表示该课程还未确定类别。

  2. 非空值:此时取值必须和“课程”表这某个元祖的“类型ID”值相同,表示这门课程归属该类别。

(3)用户定义完整性:用户自定义完整性是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。

3.3 关系数据库的标准语言

SQL :即结构化查询语言,是关系数据库的标准语言。

特点表现为:

  1. 综合统一;

  2. 高度费过程化;

  3. 面向集合的操作方式;

  4. 以一种语法结构提供多种使用方式;

  5. 语言简洁、易操作。

常见的操作语句有以下几种:

(1)定义基本表

create table <表名>

<列名> <数据类型> [约束条件]

<列名> <数据类型> [约束条件]

………

(2)修改基本表

alter table <表名>

[add <新列名> <数据类型> [约束条件]]——增加新的列和条件

[drop [约束条件]]——删除条件

[alter column <列名> <数据类型> ]——修改列定义

(3)删除基本表:

drop table <表名>

(4)数据查询

select [ALL|DISTINCT]<目标表达式>……——取消重复列

From <表名或视图名>……

[where <条件表达式> ]

[group by <列名1> [HAVING <条件表达式>]]

[order by <列名2> [ASC|DESC]

四、总结

虽然对于客户端产品经理来说,进行产品功能设计时并不需要去考虑数据库的设计,一般会有架构师或者核心开发来规划。但是需要明确的是:一个个产品功能最终是由数据通过产品设计的业务逻辑来展现出来的。

所以当技术提出,产品的需求影响了现有数据库的设计,或者完成这个需求需要改变数据库的结构时,产品经理需要从产品的现有功能和后期规划中来考虑有关数据的这两个问题:

  1. 新增的功能需要现有数据库所做的调整是什么,以及后期的规划中是否会有类似的调整,是否需要统一设计;

  2. 明确1的基础上,思考这个修改对原有的老版本产品功能是否会有影响。

对于平台类产品经理来说,对数据库的学习应该需要更加深入。因为平台在某种意义上来说,其实就是一个数据库操作系统。以视频类产品的资产管理后台为例:所涉及到资产管理,推荐管理等功能,其实都是对于资产等实体进行查询,修改等操作的过程。

以上是本次的数据库的学习笔记,可能会有一些不合理的地方,希望共同学习共同进步。

参考教材:数据库系统概论

作者:方小白,2年互联网产品经验,专注用户增长与会员运营。

本文由 @方小白 原创发布于人人都是产品经理。未经许可,禁止转载

题图来自Unsplash,基于CC0协议

相关资讯

数据库:什么是数据库,数据库管理系统,数据库系统,数据库管理员?

数据库 : 数据库(DataBase 简称 DB)就是信息的集合或者说数据库是由数据库管理系统管理的数据的集合。数据库管理系统 : 数据库管理系统(Database Management System 简称 DBMS)是一种操纵和管理数据库

数据库超详细讲解,MySQL数据库的简介、及常用数据库介绍

数据库简介数据库:顾名思义,就是数据的仓库,它是长期存储在计算机内,有组织的、可共享的数据的集合。数据库管理系统(DBMS: 用来对数据进行存储、管理等操作的软件)数据库分类数据库通常分为:层次式数据库、网络式数据库和关系式数据库三种。而不

数据库技术新版图-Serverless数据库

数据库的发展已走过近四十年,作为基础软件之一,数据库称得上是一个“古老”的领域。而随着新技术的涌现,这个传统的领域也正不断焕发出新的生机。如果说云时代的到来推动了数据库的变革,那么,与 Serverless 的结合,则再次为数据库的发展添了

什么是数据库DataBase?数据库和数据记录的概念简单讲解

大家好,在讲数据库之前,我用了很长的时间,和大家分享了很多VBA方面的一些知识点,其中很多是我个人对VBA的理解。从这讲开始我们要在原先的基础上深入的讲解一些VBA的提高利用,就是我们要开始讲解的数据库。在《VBA与数据库利用》中我会讲解到

数据库看这一篇就够了!MySQL、Redis、Mongodb等常见数据库教程

数据库是系统健康和用户行为健康的重要指标。数据库中的异常行为可能会引起应用程序中的问题。或者当应用程序中存在异常时,都可以使用数据库指标来帮助加快调试过程。先来认识下市面上常用的数据库:关系型数据库1. MySQL数据库2. Microso

为什么要使用数据库,什么是数据库

1、为什么要使用数据库持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。持久化的大多数时候是将内存中的数据存储在数据库中,当然也可以存储在磁盘文件、XML数据文件中。方便管理数据(例如:快速的检索等)2、什么是数

重塑数据库发展路径业界聚焦我国数据库产业发展

人民网北京12月27日电 (记者乔雪峰)近日发布的《软件和信息技术服务业十四五规划》中,明确提出我国“十四五”时期要加快实施国家软件发展战略,不断提升软件产业创新活力,聚力攻坚基础软件,有效满足多层次、多样化市场需求,为构建以国内大循环为主

常见的数据库类型及各种数据库特点的简单介绍

大家好,在上一讲中,讲了数据库的概念及表的概念,通过上讲的内容,我们大概了解了一些数据库的基本知识。其实,在我的日常生产中,数据库和我们也是息息相关的,当我们打电话、上网、去银行交易等等,都要访问不同的数据库,这些数据库各有自己的特点,但都

数据库篇-第一章:数据库基本概念

基础知识学习,面试必备,关注吧 骚年01 第一,什么是数据库?维基百科上是这样定义的:所谓“数据库”是以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。一个数据库由多个表空间(Tablespace)

C++基础语法梳理:数据库!带你深入浅出了解数据库

基本概念数据(data):描述事物的符号记录称为数据。数据库(DataBase,DB):是长期存储在计算机内、有组织的、可共享的大量数据的集合,具有永久存储、有组织、可共享三个基本特点。数据库管理系统(DataBase Management

数据库指南:一文让你浅显易懂地了解数据库

在数据分析的技能中,数据库与SQL会是性价比最高的技能之一。数据库是逻辑上的概念,它是一堆互相关联的数据,放在物理实体上,是一堆写在磁盘上的文件,文件中有数据。这些最基础的数据组成了表(table),我们把它想象成一张Excel的sheet

什么是数据库?用最简单的方法讲明白数据库

数据库基本概念数据库是一个以某种有组织的方式存储的数据集合。数据库(database)是保存有组织的数据的容器。数据库管理系统(DBMS)是一种数据库软件,MySQL是一种DBMS,即它是一种数据库软件,作者使用的数据库管理系统是MySQL

一文读懂Access数据库,从此不用Access数据库

1992年11月,Microsoft Access 1.0版本发布。同时,这也是Access数据库,第一次进入大家的视野。起初,Access的原名并不叫Access,而叫Cirrus。Ciruus开发于Visual Basic之前,当时的窗

闲聊数据库发展历史三个阶段、分类、数据库规范及趋势

概述数据库(Database)是存储与管理数据的软件系统,就像一个存入数据的物流仓库。在商业领域,信息就意味着商机,取得信息的一个非常重要的途径就是对数据进行分析处理,这就催生了各种专业的数据管理软件,数据库就是其中的一种。当然,数据库管理

数据库行业研究报告:数据库,云化底座,百舸争流

(报告出品方/作者:中信证券,杨泽原、丁奇)报告综述:安全可控势在必行,数据库国产替代加速开展,以党政为代表的国产替代先行,并不断向金融、电信等领域拓展。同时,伴随云计算、大数据技术的快速发展, 云数据库、数据仓库、大数据分析等领域快速增长

友情链接

网址导航 SEO域名抢注宝宝起名网妈妈知道币圈今日沧州斯达半导A股陕西旅游网盏记燕窝内江新闻头条网大理石石材网保山今日新闻网地铁出行网东方航空股票戴森吹风机评测网华为手机评测网流浪地球2影评网张杰歌迷网马宝宝取名起名网贵州青酒网
今日合肥网-合肥是一座具有两千多年历史的古城,因东淝河与南淝河均发源于此而得名。合肥的菜系以庐州菜、江淮菜最为有名。合肥菜又称庐州菜,是徽菜的五大代表菜之一,合肥菜代表菜品有臭干炒千张、庐州烤鸭、包公鱼、逍遥鸡、三河米饺、肥西老母鸡汤、吴山贡鹅等。
今日合肥 ailibi.cn ©2022-2028版权所有