PHP解决大数据
一、使用缓存
1、使用程序直接保存到内存中。主要使用Map,尤其ConcurrentHashMap。
2、使用缓存框架。常用的框架:Ehcache,Memcache,Redis等。
最关键的问题是:什么时候创建缓存,以及其失效机制。
对于空数据的缓冲:最好用一个特定的类型值来保存,以区别空数据和未缓存的两种状态。
二、数据库优化
1、表结构优化
2、SQL语句优化,语法优化和处理逻辑优化。可记录各语句执行时间,有针对性的分析
3、分区
4、分表
5、索引优化
6、使用存储过程代替直接操作
三、分离活跃数据
例如用户,可以分为活跃用户和不活跃用户。
四、批量读取和延迟修改
1、高并发情况可以将多个查询请求合并到一个。
2、高并发且频繁修改的可以暂存缓存中。
五、读写分离
数据库服务器配置多个,配置主从数据库。写用主数据库,读用从数据库。
六、分布式数据库
将不同的表存放到不同的数据库中,然后再放到不同的服务器中。有些复杂问题,如:事务处理,多表查询。
七、NoSql和Hadoop
1、NoSql,not only SQL,没有关系型数据库那么多限制,比较灵活高效。
2、Hadoop,将一个表中的数据分成多块,保存到多个节点(分布式)。每一块数据都有多个节点保存(集群)。集群可以并行处理相同的数据,还可以保证数据的完整性。
以上内容仅供参考!
推荐教程:PHP视频教程
以上是php如何解决大数据的详细内容。更多信息请关注PHP中文网其他相关文章!