小弟有个数据查询的网站,预计数据量很大,我起初想为了查询方便就插入mysql中,但实测下来每天插入的数据量可能在100M以上,如果用mysql估计成本增加,还不知道效率怎么样。
所以我想用文件形式保存数据,考虑过txt,xml,这样读取文件稍微麻烦点也不好紧。不过我最近想到,能不能用序列化的办法保存成文件?(因为我那些数据本质上属于一些数组数据),如果全部序列化,读取的时候直接反序列化那么效率应该会快得多?
想听听高手的意见,谢谢!!

解决方案 »

  1.   

    只有缓存不经常变化的数据才是有意义的,否则检查数据是否更新的开销也是不可忽略的
    如果你的数据只是一些数组数据,那么最高效的就是保存 var_export 的结果到程序文件
    使用时只需 include 即可
      

  2.   

    用文件不如用sqlite,文件且带sql查询不清楚楼主说的成本指哪方面
    建议楼主谷歌下PostgreSQL,mysql内存数据库,以及maria
    文档类型简单数据也可考虑nosql,如couchdb,mongodb等
    -----------------------------------------------------
    另外,如果不考虑IO,性能,查询插入并发啥的,可以把生成php文件用变量放数组或序列化后的数据
      

  3.   

    试试mogonDB啊,存储序列化数据还是很方便的,跟php的连接读取也很成熟,读xml和txt肯定没读数据库快的
      

  4.   


    版主讲的狠对,另外将var_export的结果保存在一个文件php文件中同时设置下缓存时间,这样就既可以保证缓存还可以保证不频繁查询数据库,当然要用数据库保存的话插入是必不可少的嘛。还能有什么办法减少插入的次数的同时还能保证数据不变?大概只能保证少链接下数据库了吧?请指教