数据库设计的碎碎念

Assumption

这里是对一个臆想中的项目的数据库设计的分析。讨论一种 用户数据管理系统 的数据库设计方案。

  1. 用户管理系统包括三部分,也就是三个表。
    分别存在nosql-couchDB中和Postgresql的两个表中,Postgresql的两个表分别叫account,connection。

数据库选取-SQL (NOSQL-Couchdb)

  1. Postgresq 启动命令,document有,参数意思比较好理解,分别是数据库地址,log输出地址
  2. 启动数据库后,可理解为打开数据库软件,此时有默认创建的root用户,或提醒创建root用户
  3. 管理数据库的两种方式:
  4. 在终端通过 psql -l 命令 + user+pwd 登陆进行数据库管理
  5. 使用pgweb,一个非官方 postgresql 工具 ,提供可视化界面,方便数据库管理,端口号:8081 (在浏览器输入localhost:8081)。在pgweb界面使用postgresql地址,ip:port

数据库设计(一个例子)

couchdb+sql

  1. table-account-nosql: user info in JSON,
    uuid(primary key), username
  2. table-account: user public info
    id(primary key), uuid(foreign key-couchdb), name, email
  3. table-connection: user more details
    id, account-id(foreign key), wechat info

index

  1. 有一列频繁搜索,且这一列数据量很大,就给这行创建index。以后对这创建了index的列操作会非常快。
  2. 有一列频繁更改,不适合创建index,因为创建index很耗时
  3. 用来index的一般得是key,比如id,而不是name
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容