Joe Asked: 2011-10-21 16:11:15 +0800 CST2011-10-21 16:11:15 +0800 CST 2011-10-21 16:11:15 +0800 CST NoSQL 和 RDBMS 在一起? 772 我想知道在 NoSQL 数据库中记录数据然后将它们转换为 RDBMS 是否有任何好的解决方案? 例如,如果您想快速捕获一些数据,如会话日志,但您希望稍后能够创建关于它们的报告。 我最喜欢的数据库是 Postgres,所以如果您的答案与 Postgres 相关,那就太好了。 rdbms nosql 2 个回答 Voted Best Answer Mike Walsh 2011-10-21T17:28:46+08:002011-10-21T17:28:46+08:00 快速回答 - 是的。一直在发生。 有很多好的解决方案。您的环境中已有哪些解决方案?我正在帮助一个客户从他们的 Web 应用程序中获取他们的网站/会话活动信息,他们将其写入 xml,然后将该 xml 反序列化到 Hadoop 中。然后,他们在 Hadoop 之上使用 Hive 来创建聚合和事实(通过加入此日志数据以引用他们存储在 Postgres 数据库中的网站数据)。然后将这些聚合和事实加载到 RDBMS 中(它们使用 SQL Server,因为 SQL Server 堆栈中提供了丰富的分析)。 我会探索 Hadoop,看看 Hive,它是 Hadoop 之上的一个查询引擎,它允许您编写与 SQL 非常相似的声明式查询,并在幕后转换为 MapReduce 作业。然后看看 Sqoop,它是 Hadoop 系列中的另一个工具,可以帮助您导出/导入数据。 http://hadoop.apache.org/ http://www.amazon.com/Hadoop-Definitive-Guide-Tom-White/dp/1449389732/ref=sr_1_1?s=books&ie=UTF8&qid=1319160463&sr=1-1 HTTP //www.cloudera.com/blog/2009/06/introducing-sqoop/ http://hive.apache.org/ 还有其他选择...... Dantalion 2011-12-16T03:23:59+08:002011-12-16T03:23:59+08:00 并非所有的 NoSQL 都是一样的。例如 MongoDB 有很好的查询能力。检索数据非常容易,以一种让您想起 SQL 的方式对数据进行排序。所以我要说的是,您不应该考虑使用 SQL 进行报告,当然,除非您拥有需要 SQL 兼容数据的现成工具。就从您的商店获取类似 SQL 的结果而言,其他一些 NoSQL 涉及更多,例如 CouchDB,定义一个简单的 where-clause 类型查询并不容易。MongodDB——我使用过 Python 驱动程序——是小菜一碟。所以我发现担心将我的数据移植到关系存储不太重要。
快速回答 - 是的。一直在发生。
有很多好的解决方案。您的环境中已有哪些解决方案?我正在帮助一个客户从他们的 Web 应用程序中获取他们的网站/会话活动信息,他们将其写入 xml,然后将该 xml 反序列化到 Hadoop 中。然后,他们在 Hadoop 之上使用 Hive 来创建聚合和事实(通过加入此日志数据以引用他们存储在 Postgres 数据库中的网站数据)。然后将这些聚合和事实加载到 RDBMS 中(它们使用 SQL Server,因为 SQL Server 堆栈中提供了丰富的分析)。
我会探索 Hadoop,看看 Hive,它是 Hadoop 之上的一个查询引擎,它允许您编写与 SQL 非常相似的声明式查询,并在幕后转换为 MapReduce 作业。然后看看 Sqoop,它是 Hadoop 系列中的另一个工具,可以帮助您导出/导入数据。
http://hadoop.apache.org/ http://www.amazon.com/Hadoop-Definitive-Guide-Tom-White/dp/1449389732/ref=sr_1_1?s=books&ie=UTF8&qid=1319160463&sr=1-1 HTTP //www.cloudera.com/blog/2009/06/introducing-sqoop/ http://hive.apache.org/
还有其他选择......
并非所有的 NoSQL 都是一样的。例如 MongoDB 有很好的查询能力。检索数据非常容易,以一种让您想起 SQL 的方式对数据进行排序。所以我要说的是,您不应该考虑使用 SQL 进行报告,当然,除非您拥有需要 SQL 兼容数据的现成工具。就从您的商店获取类似 SQL 的结果而言,其他一些 NoSQL 涉及更多,例如 CouchDB,定义一个简单的 where-clause 类型查询并不容易。MongodDB——我使用过 Python 驱动程序——是小菜一碟。所以我发现担心将我的数据移植到关系存储不太重要。