<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MongoDB &#8211; 天地一沙鸥</title>
	<atom:link href="https://haoluobo.com/tag/mongodb/feed/" rel="self" type="application/rss+xml" />
	<link>https://haoluobo.com</link>
	<description>to be continue....</description>
	<lastBuildDate>Wed, 12 Sep 2012 06:27:10 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>
	<item>
		<title>MongoDB介绍以及Python的相关库</title>
		<link>https://haoluobo.com/2012/09/mongodb-python/</link>
		
		<dc:creator><![CDATA[vicalloy]]></dc:creator>
		<pubDate>Wed, 12 Sep 2012 06:27:10 +0000</pubDate>
				<category><![CDATA[编程]]></category>
		<category><![CDATA[MongoDB]]></category>
		<category><![CDATA[MongoEngine]]></category>
		<guid isPermaLink="false">/?p=10749</guid>

					<description><![CDATA[MongoDB是一个高性能，开源，无模式的文档型数据库，是当前NoSql数据库中比较热门的一种。MongoDB [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a href="http://www.mongodb.org/">MongoDB</a>是一个高性能，开源，无模式的文档型数据库，是当前NoSql数据库中比较热门的一种。MongoDB提供了比较丰富的数据库查询接口，是目前最接近关系数据库的NoSql数据库。<br />
近两年MongoDB的发展速度非常的快，不少公司已经将MongoDB应用到实际产品中。在这些公司中最著名的应当是<a href="https://foursquare.com/">foursquare</a>，国内的淘宝等公司也部分使用了MongoDB。MongoDB更完整的应用列表可以在MongoDB的<a href="www.mongodb.org/display/DOCS/Production+Deployments">Production Deployments</a>找到。<br />
技术人员普遍有追新的爱好，看到一个不错的东西就想在自己的项目中用少。在对MongoDB做了些了解后，感觉使用MongoDB作为普通web应用的主数据库或许并不是一个很好的主意。</p>
<ul>
<li>MongoDB的优势是速度以及海量数据的支持，另外一个有点就是schemeless。真正需要用到schemeless的地方似乎并不是太多。目前很多 MongoDB 封装，也都增加了scheme的定义功能，基本上放弃了schemeless特性。另外如果过度的schemeless，日子久了后可能自己都搞不清楚自己到底在数据库里放了什么东西。</li>
<li>MongoDB的特性决定了某些关系数据库很容易做的操作在MongoDB中会很不容易实现（比如多表关联查询等，而且据说分页性能也不怎么样？）。为配合MongoDB，在构架设计乃至产品功能需求方面都需要做些调整。</li>
<li>MongoDB的另外一个问题是太费内存，在内存不够大的时候性能很可能还不如mysql。所以有人称MongoDB是有钱人用的东西。</li>
<li>可能大多人都不太会有机会遇到真正需要MongoDB的海量数据。</li>
</ul>
<p>在V2EX上发了一个关于MongoDB的帖子（<a href="http://v2ex.com/t/47431">有谁在用 MongoDB 体验怎么样</a>），引来不少关于MongoDB的吐槽。不是说MongoDB不够优秀。MongoDB有着自己特定的应用场景，如果只是为了尝鲜而贸然使用，可能并不会得到预想的效果。<br />
下面简单的介绍一下MongoDB相关的一些Python库：</p>
<ul>
<li><a href="http://pypi.python.org/pypi/pymongo/">PyMongo</a> MongoDB的Python接口开发包。PyMongo提供了最原始的MongoDB访问接口，其他的Python MongoDB库基本上都是基于该库进行开发的。</li>
<li><a href="https://github.com/MongoEngine/mongoengine">MongoEngine</a> 为MongoDB提供了类似Django ORM的API。支持定义Scheme定义，同时提供DynamicDocument类用于支持schemeless。MongoEngine内置了Django提供支持。如果你之前使用过Django，MongoEngine会让你觉得非常舒服。</li>
<li><a href="https://github.com/namlook/mongokit">MongoKit</a> 和MongoEngine类似的一个库。个人更倾向于MongoEngine所以对MongoKit没有太多了解。</li>
</ul>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
