最新回答 / hasty
如果写入数据比较大,的确不用普通索引(非主键)更好。非主键索引是和数据行单独存储的,每次写入数据时,除了更新数据行(包括了主键),还要额外更新非主键索引,会降低写处理的性能,因此如果写入数据量很大,不宜使用非主键索引。此情况下,通过将数据缓存在redis、mongo、memcached等nosql中,实现查询的优化。以及通过各种代码缓存分布式(分库分表分片)等策略、包括业务逻辑,最终使得查询性能也能得到较好的保证,或者将各种查询转化为依赖数据主键的查询都能保证查询也有较好的性能。
2015-02-09
已采纳回答 / hasty
PHP-MYSQL中间 插入一层:C或者java写的中间数据服务层,这样不会直接读写数据库,有很多好处:(1)数据逻辑与服务逻辑分离,对数据安全有很大好处。(2)同时,也便于数据层的扩展,底层的数据存储可以随时根据需要切换到其它数据存储上,mysql、oracle、redis、mongo,而不影响前面的php服务逻辑。(3)从性能上来说,mysql水平扩展并没有在数据读写逻辑层扩展容易。分隔开php与mysql,是大访问量系统降低耦合、提升可扩展性的需要。
2015-02-09