Oracle RDBMS 中的 Mapreduce 等效功能是什么?
What is Mapreduce equivalent capability in Oracle RDBMS?
Oracle RDBMS 中是否有 feature/capability 相当于 MapReduce 使用并行处理来处理大型数据集?
Oracle 发布了一份关于使用 PL/SQL 实现 MapReduce 算法的白皮书。 Find it here.
虽然白皮书中的代码有效,但基本前提经不起推敲。 MapReduce 通过应用大规模并行操作的蛮力来排序、过滤和转换数据。但是由于 Oracle 的许可政策,几乎没有人能够负担得起足够的 CPU 来使 MapReduce 在数据库上发挥作用。
幸运的是,Oracle 的内置功能(我们用那些令人眼花缭乱的许可费用支付的东西)功能强大到足以使 MapReduce 变得无关紧要。最好学习如何正确使用 SQL,尤其是分析函数和(在 12c 中)MATCH_RECOGNIZE。哦,还有适当的数据建模。
" When i was reading about NoSQL DBs, especially MongoDB MapReduce was mentioned as a capability difference compared to RDBMS."
警告:提前发表意见
这是一种能力差异,就像有木腿的海盗有能力在环形甜甜圈上挖洞一样。
本质上,MapReduce 是一个过程,用于将存储在一个未区分的大量数据中的一堆数据转换为适合特定任务的特定形状。 Google 设计了 MapReduce 算法来处理网页的屏幕以提取所有不同的单词并计算每个单词的出现次数。这就是为什么字数统计演示是 "Hello World" 的 MapReduce 等价物。
像 MongoDB 这样的商店以无模式格式(即文档)保存数据。这对于持久化和检索整个文档非常有用,但对于查询文档的某些部分或跨多个文档进行连接就不太好了。这就是为什么他们需要 MapReduce 的这种能力。商店本身没有智能。
Oracle 不需要 MapReduce,因为它有不同的范例。它将数据保存在模式中,将智能和结构应用于数据,并具有为连接数据结构而优化的查询引擎。
这两种方法各有利弊。 RDBMS 以前期设计和要求负载符合固定结构为代价提供数据完整性和查询速度。 "schema-less" 数据存储可以更轻松地保存任意结构化的文档,但读取任务会在预处理这些文档以生成所需的数据子集时付出代价。
是的。这称为并行执行。
Oracle RDBMS 中是否有 feature/capability 相当于 MapReduce 使用并行处理来处理大型数据集?
Oracle 发布了一份关于使用 PL/SQL 实现 MapReduce 算法的白皮书。 Find it here.
虽然白皮书中的代码有效,但基本前提经不起推敲。 MapReduce 通过应用大规模并行操作的蛮力来排序、过滤和转换数据。但是由于 Oracle 的许可政策,几乎没有人能够负担得起足够的 CPU 来使 MapReduce 在数据库上发挥作用。
幸运的是,Oracle 的内置功能(我们用那些令人眼花缭乱的许可费用支付的东西)功能强大到足以使 MapReduce 变得无关紧要。最好学习如何正确使用 SQL,尤其是分析函数和(在 12c 中)MATCH_RECOGNIZE。哦,还有适当的数据建模。
" When i was reading about NoSQL DBs, especially MongoDB MapReduce was mentioned as a capability difference compared to RDBMS."
警告:提前发表意见
这是一种能力差异,就像有木腿的海盗有能力在环形甜甜圈上挖洞一样。
本质上,MapReduce 是一个过程,用于将存储在一个未区分的大量数据中的一堆数据转换为适合特定任务的特定形状。 Google 设计了 MapReduce 算法来处理网页的屏幕以提取所有不同的单词并计算每个单词的出现次数。这就是为什么字数统计演示是 "Hello World" 的 MapReduce 等价物。
像 MongoDB 这样的商店以无模式格式(即文档)保存数据。这对于持久化和检索整个文档非常有用,但对于查询文档的某些部分或跨多个文档进行连接就不太好了。这就是为什么他们需要 MapReduce 的这种能力。商店本身没有智能。
Oracle 不需要 MapReduce,因为它有不同的范例。它将数据保存在模式中,将智能和结构应用于数据,并具有为连接数据结构而优化的查询引擎。
这两种方法各有利弊。 RDBMS 以前期设计和要求负载符合固定结构为代价提供数据完整性和查询速度。 "schema-less" 数据存储可以更轻松地保存任意结构化的文档,但读取任务会在预处理这些文档以生成所需的数据子集时付出代价。
是的。这称为并行执行。