Tag Archive for 数据库

用户积分功能的设计

用户积分功能的设计 有一个SNS应用,用户在使用的过程中积累积分,例如登陆+3点,个人空间每次浏览+1点,结交每个朋友+5点等等。同时,很重要的一点是,用户需要看到自己的积分累计有多少,能够根据积分划分用户等级,在自己的空间展示积分。

在用户量比较大的情况下(例如超过三千万),这是一个比较典型的读写都很频繁的问题,而且写入的次数可能和读取的次数差别不大(大多数SNS应用中,读次数远超写次数的场景居多,例如用户的状态

[......]阅读全文

分享到:

数据库范式总结

数据库范式总结 数据库表结构设计时,遵从一定的范式(NF,Normal Form)可以减少数据冗余和操作异常。

第一范式(1NF)

1NF指的是每个属性值都是不可再分的。

满足1NF的关系被称为规范化的关系,1NF也是关系模式应具备的最起码的条件。

比如有这样一张表user的两列:

  • name
  • phone_number

phone_number这一列只存储一个电话号码,如果一条数据同时存

[......]阅读全文

分享到:

提高数据库查询速度的几个思路

提高数据库查询速度的几个思路 1、缓存,在持久层或持久层之上做缓存。

2、数据库表的大字段剥离,保证单条记录的数据量很小。

3、恰当地使用索引。

4、必要时建立多级索引。

5、分析Oracle的执行计划,通过表数据统计等方式协助数据库走正确的查询方式,该走索引就走索引,该走全表扫描就走全表扫描。

6、表分区和拆分,无论是业务逻辑上的拆分(如一个月一张报表、分库)还是无业务含义的分区(如根据ID取模分区)。

7、RAC,值得注

[......]阅读全文

分享到: