【发布时间】:2011-01-06 14:24:38
【问题描述】:
看到这张图后: http://2.bp.blogspot.com/_T-uXeKcGTnM/TIdoKBGwk9I/AAAAAAAABcs/CLW3_cRlN78/s1600/tumblr_kxovt0VLZy1qappj8.png 我想知道是否存在任何将 SQL 查询转换为 MongoDB map/reduce 查询模型的工具??
【问题讨论】:
看到这张图后: http://2.bp.blogspot.com/_T-uXeKcGTnM/TIdoKBGwk9I/AAAAAAAABcs/CLW3_cRlN78/s1600/tumblr_kxovt0VLZy1qappj8.png 我想知道是否存在任何将 SQL 查询转换为 MongoDB map/reduce 查询模型的工具??
【问题讨论】:
更新 2011 年 1 月提出的问题:
现在有几个站点可以将 sql 转换为 mongodb。
将 MySQL 查询转换为 MongoDB 语法 http://www.querymongo.com/
和
sql转mongodb http://klaus.dk/sqltomongodb/
【讨论】:
简单的答案? No.
稍微复杂一点的答案是,有些人幸运地将更复杂的 SQL 转换为 Mapreduce 函数...
但是,话虽如此...一般来说,您最好正确学习 mapreduce,因为如果数据已经在 MongoDB 中...您真的需要知道如何正确查询 MongoDB 才能完成任何有意义的事情!
MongoDB 有很棒且有用的文档http://www.mongodb.org/display/DOCS/Advanced+Queries
还有一个简单易用的在线教程:http://try.mongodb.org/
【讨论】:
简单的答案:是的。 Hibernate OGM - NoSQL 的 JPA。
JPA 是用于将对象映射到数据存储的 Java API。
它包括JPQL,一种类似于SQL 的查询语言,增加了OOP 概念。它不是 SQL,但您不想要纯 SQL - 它是为关系范式设计的。
Hibernate OGM 提议通过采用 JPA/Hibernate API 和语义来将数据存储在 NoSQL 存储(如 JBoss Enterprise Data Grid)而不是传统的 RDBMS 中来简化编程模型。 (source)
另请参阅 Hardy Ferentschik 的 Hibernate OGM: JPA for NoSQL 谈话
【讨论】:
最近偶然看到这个网站mongoquery.com,你可以试试。
【讨论】:
只是添加到最后一条评论
re:The simple answer: Yes. Hibernate OGM - JPA for NoSQL.
JPA is Java API for mapping objects to data stores.
It includes JPQL, a query language similar to SQL which adds the OOP concepts. It's not SQL, but you don't want pure SQL - that was designed for the relational paradigm.
有一家名为 UnityJDBC 的公司发布了适用于 Mongo 的 JDBC 驱动程序,允许您在任何支持 JDBC 的 Java 应用程序中对 mongo 运行 SQL 查询。
您可以在以下网址免费下载此驱动程序 http://www.unityjdbc.com/mongojdbc/mongo_jdbc.php
希望对你有帮助
【讨论】:
您还可以http://teiid.org 提供对 MongoDB 的基于 SQL 的全方位访问。您可以通过 JDBC/ODBC 使用 SQL 或使用基于 REST/ODATA 的 MongoDB 访问。 Teiid 使用 MongoDB 的聚合框架来提供高级 SQL MongoDB 查询对话。
【讨论】: