微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

扯淡一下nosql

别人写文章是自己工作学习中的收获和心得,某不才,望不吝赐教;

先说明一下,我的团队最近在写一个nosql数据库为基础的小型黄页,忙活了一个月,这里算是整理了一下思路;

首先是用途和实际用户数量的问题,很多论坛活跃的可能只是某个版块,或者某一群人;很多近似“假死”的论坛,用户信息本来就很零碎,加上时间跨度大,管理员疏于清理,阅读或者发表也变得无趣;所以我的团队在一开始就不会太考虑用户数量的问题(这个到底是硬盘容量和处理器性能决定的),而是琢磨数据关联和使用索引来实现链式引用(包括建立共用索引和另立各个集合下面的链接)减少数据冗余,外加利用用户修改自身(收藏)内容来从宏观上改变数据库某一方面的信息积累,来体现用户的整体偏好;

(如果有可以百度得明白的地方,欢迎指出)按照自己摸索了一个寒假nosql的感觉,非关系数据库主要是处理大量非一对一数据的(比如某人的多个好友,发表同名的文章);

数据库本身的_id可以重写,也会在插入时自动生成,确实比起一般的关系数据库(诸如sqlserver和MysqL)智能不少;至于很多人吐槽的数据冗余问题,按照我实际观察(以MongoDB为例),目测实际用户在1000-3000的(超)小型论坛不会有什么负担(视频交流除外);实际占用空间不比MysqL大多少,加上自带的map-reduce 查找多个集合中同样属性(或者下标)的数据确实省事不少;

看起来最大的问题不是数据库本身,而是扩展;python对MongoDB的支持(看文档)比完整,但是python本身并发性能不比PHP或者Java,而PHP相比Java更加轻巧(不论是安装组件或者运行时的体积),除了不能直接常驻内存来进行字符检查等近似静态的事情(好吧我这里完全忽略了.NET那堆东西),其他诸如可维护性和更新都不错;最后我们选择了PHP来写后台,单入口之类wordpress常用的办法也会借鉴一点;

反正是鱼与熊掌的关系,不论是数据库还是服务器语言,要了(姑且称为框架的)整洁就要下功夫搞灵活性,这篇口水文的结尾,我想问个问题:PHP怎样实现近似静态的过滤字符串?

欢迎吐槽 :)

原文地址:https://www.jb51.cc/nosql/204219.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐