我对NoSQL完全不熟悉[刚刚阅读了一些关于NoSQL的文章],并希望使用它来开发一个简单的应用程序。
请帮我选择一个NoSQL系统
系统应该具有这些功能
答案 0 :(得分:1)
看看MongoDB。使用简单,快速,可靠,功能强大。此外,还有一个很好的PHP驱动程序。
MongoDB是“NoSQL”,无架构且面向文档。使用了不同的术语,但作为初学者,您可以认为它具有集合而不是表,文档而不是行和字段而不是列。插入和选择非常简单:
// Select some documents.
$cursor = $db->my_collection->find(array(
'field1' => array('$gt' => 10), // where field1 > 10
), array(
'field1', 'field2', // which fields to fetch
))->sort(array(
'field3' => -1, // sort descending by field3
));
while($document = $cursor->getNext())
{
// ...
}
// Insert a document.
$db->my_collection->insert(array(
'field1' => 'a',
'field2' => 2,
'field3' => 14.8,
));
答案 1 :(得分:1)
我认为大多数nosql dbs都支持创建集合/表/列系列,并且与php兼容。 您最好需要查看要存储和检索的数据类型,以决定使用哪种数据。
答案 2 :(得分:1)
您的设计是否有许多相互关联的实体,或者相对较少的大型表?
如果是后者那么我全心全意地同意面向文档的数据库,例如 Mongo 或Apache CouchDB 。
如果是前者那么你可能想看看 neo4j - 它有一个节点图方法。该网站上的介绍性视频值得关注。面向图的解决方案的主要优点是可以在实例的基础上定义关系(而不是RDBMS的类级实体方法)
对于管理员和简单数据输入:CouchDB和neo4j都具有易于使用的基于Web的前端; Mongo有phpmoadmin(第三方)应用程序。
免责声明 - 我没有试图看到上述任何规模,我最大的应用程序[使用Ruby on Rails的沙发]只有大约1000个条目。
祝你好运!