MongoDB是我想要的存储么?
时间:2010-11-19 来源:JonathanYoung
先贴点资料吧:
不周山博客上的MongoDB的总结 http://www.wentrue.net/blog/?p=772
超群的MongoDB in Action http://www.fuchaoqun.com/2010/01/mongodb-in-action/
PPT地址:http://www.fuchaoqun.com/2010/01/mongodb-in-action/
MongoDB的安装地址:http://www.tbdata.org/archives/410
接下来秀下自己的安装的结果,算是对今晚工作的一个记录了,先让自己的环境跑起来了,真的去用了,去体验了才感觉到它的强大
安装成功截图,我是在Ubuntu下直接使用了Synaptic Packages Manager 来安装的 ^_^ 没有任何的计算含量了,无奈机器不支持虚拟机的64位安装
接下来要做的是PHP下使用MongoDB的具体步骤了.....
贴出超群写的MongoDB下的PHP的操作类Cola_COM_Mongo一看就知道如何操作了,具体操作语句见超群的PPT了
<?php Class Cola_Com_Mongo { protected $_mongo, $_db; /** * Constructor * * @param array $config */ public function __construct($config = array()) { $config = (array)$config + array('server' => 'mongodb://localhost:27017', 'options' => array('connect' => true)); extract($config); $this->_mongo = new Mongo($server, $options); if (isset($database)) $this->db($database); if (isset($user) && isset($password)) $this->auth($user, $password); } /** * Authenticate * * @param string $user * @param string $password */ public function auth($user, $password) { $result = $this->_db->authenticate($user, $password); if (1 == $result['ok']) { return true; } throw new Cola_Exception('Mongo Auth Failed: bad user or password.'); } /** * Select Database * * @param string $db * @return MongoDB */ public function db($database = null) { if ($database) { $this->_db = $this->_mongo->selectDB($database); } return $this->_db; } /** * Select Collection * * @param string $collection * @return MogoCollection */ public function collection($collection) { return $this->_db->selectCollection($collection); } /** * MongoId * * @param string $id * @return MongoId */ public static function id($id = null) { return new MongoId($id); } /** * MongoTimestamp * * @param int $sec * @param int $inc * @return MongoTimestamp */ public static function Timestamp($sec = null, $inc = 0) { if (empty($sec)) $sec = time(); return new MongoTimestamp($sec, $inc); } /** * GridFS * * @return MongoGridFS */ public function gridFS($prefix = 'fs') { return $this->_db->getGridFS($prefix); } }
MongoDB下的数据库设计工具
然后做的是将现有的MySQL下的数据库设计移植到MongoDB下
Memcache 和 MongoDB 配合实现新的数据层 是需要好好的来思考和实现的.....
相关阅读 更多 +