乱聊数据的那些事

伴随互联网公司的发展过程,最密切的是其数据的变化,公司的增长曲线也是数据的增长曲线。往往公司的业务发展扩张太大而有效价值的数据增长太少跟不上容易导致投入资源的浪费,而数据增长太快没有有效的技术支撑义务发展会受到极大的制约。如果一家公司的核心数据出了状况会损失非常大的市场竞争力,甚至面临生存危机。

我们把企业数据大致的划分为这几种大类型的数据方便下文分析—用户类数据,产品类数据,业务类数据,日志类数据,文件数据。

用户类数据包括公司的产品各类使用者的登陆账户、密码、用户相关的各种信息(如果使用第三方登陆I的用户信息其实也是很有价值的,应该尽量与产品本地用户绑定并持久化保存),衡量一家公司的价值首先看有效用户的量级,想想那些千万级甚至上亿用户的互联网巨头BAT就是依靠用户为基础产生巨大价值的;产品类数据这里指公司运营产品的相关数据,比如卖车的爱卡产品数据就是各种车的数据,淘宝的产品数据就是各种商品的数据;业务类数据是实际记录用户与产品产生价值的数据,比如商品订单。日志类数据就包括太多了,各种用户行为记录,系统操作记录,各种流水记录等等等。文件数据指那些图片,文件的实体文件,在音乐类网站音乐文件会是主要文件数据。

与数据相关的技术也一直伴随着互联网数据量的爆发而一直变迁进化,流行的趋势从追求单机性能为王的Oracle,到开源分布式多节点更优的Mysql,再到支持不规则结构的各种Nosql,以及分布式存储计算的Hadoop,可以看出与数据存储相关一直在跟随大数据时代的步伐前进。

从技术角度来说,企业级的数据应该注意哪些事情?
首先,需要建立健全的数据备份、恢复机制,至少做到周期性备份数据,以及备份数据的分离存储。(想一想所有数据在一个硬盘上就觉得心里慌)
其次,随着数据量变大,数据的迁移、数据结构的变化都需要考虑到相关的各个业务,一定要在测试环境仿真测试各个相关业务不受到影响才能迁移与变化,如果不确定影响范围有多大请找业务专家咨询。
第三,及时分表,分库,分片防止数据突然增长快到数据库再也负荷不起的那一天。
第四,做好对数据访问的缓存机制,如果实在没有,默默的调大数据库自带的缓存大小。
第四,在做任何操作的时候一定不能丢失原有的数据,一旦这些数据在正式环境开始了数据割接,那么灾难可能就开始了。
第五,保证数据操作的一致性,如果产生了不一致的数据需要及时回滚。
第六,不要给所有人生产环境的数据访问权限,如果不是有经验DBA,不要随便对千万条以上的数据表操作。
。。。。
最后,如果有一天由你来操纵生产环境数据,记住手不要抖。


本作品采用知识共享署名 4.0 国际许可协议进行许可,欢迎转载内容并请注明出处
《乱聊数据的那些事》 http://io97.com/2014/05/01/10001.html