首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >NoSql速成课程/教程

NoSql速成课程/教程
EN

Stack Overflow用户
提问于 2010-02-25 01:44:14
回答 9查看 88.9K关注 0票数 100

我在上面看到过很多关于NoSQL的信息,我很清楚为什么你会使用它(从这里,维基百科,等等)。这可能是因为缺乏对它是什么的具体和统一的定义(更多的是一种范式,而不是具体的实现),但我正在努力思考如何设计一个使用它的系统,或者如何在我的系统中实现它。我真的被困在一种关系数据库的思维模式中,用表和连接来思考事情……

无论如何,有没有人知道关于系统的速成课程/教程会使用它(对于基于NoSQL的系统来说,这是一种"hello world“),或者是一种教程,它将现有的基于SQL的"Hello World”应用程序转换成NoSQL(不一定是用代码编写的,只是一个高级的解释)。

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2010-02-25 01:49:57

Here is a decent slide show介绍MongoDB。我认为最大的不同之处在于,大多数系统都依赖于活动记录或类似的数据库抽象。

我还发现了一个很棒的free orlys book on Couch DB here,非常棒。

票数 45
EN

Stack Overflow用户

发布于 2010-02-25 01:57:56

在其最基本的形式中,NoSQL实际上只不过是一种使用某种键/值对系统来存储对象的方法。我想你已经一直在用这个了。例如。在javascript中,您可以创建一个名为foo的对象,然后执行foo['myobj'] = myobj;以在该对象中存储内容。

所有NoSQL服务器真正要做的就是为您提供一种添加/删除/查询大量阵列的方法,同时仍然允许持久性和容错。您可以用大约100行代码在内存服务器中创建一个NoSQL。

因此,让我们使用way...in / CouchDB来做这件事。所以让我们创建一个与一些SQL代码相同的映射函数:

代码语言:javascript
复制
SELECT * FROM users WHERE age > 10

在CouchDB中,您为服务器提供了一个JavaScript函数,该函数针对数据库中的每一项运行...

代码语言:javascript
复制
function (doc)
{
    if (doc.objType == "users") {
       if (doc.age > 10) {
           emit(doc._id, null)
       }
    }
}

这就是it.....it在服务器端变得更加复杂的全部,因为服务器必须处理崩溃,以及同一对象的多个修订,但这只是一个示例。

票数 53
EN

Stack Overflow用户

发布于 2010-02-25 01:48:39

看看来自DNR的this视频,和MongoDB做一些实践。如果是第一次介绍可能会更好。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2328169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档