首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PL/SQL能否可靠地转换成猪、拉丁和蜂巢管道?

PL/SQL能否可靠地转换成猪、拉丁和蜂巢管道?
EN

Stack Overflow用户
提问于 2013-10-24 19:06:29
回答 2查看 2.5K关注 0票数 1

我对用Hadoop替换我的Oracle db很好奇,并且正在学习Hadoop生态系统。

我有许多PL/SQL脚本,如果我要走这个路线,就需要替换它们。

我的印象是,通过一些艰苦的工作,我将能够将任何PL/SQL脚本转换为类似的Pig拉丁脚本。如果不仅是猪拉丁语,那么蜂巢和猪的结合通过奥兹。

这是正确的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-24 19:22:52

虽然大多数SQL语句可以转换为等效的Pig和/或Hive语句,但是hadoop文件系统所固有的一些限制被传递到语言中。主要的限制是HDFS是一个写一次,读-多系统.这意味着包含类似UPDATE SQL命令或DELETE sql命令的语句将无法工作。这主要是因为两者都需要编程语言能够更改已经存在的文件的内容,这与hadoop的写一次范式相矛盾。

然而,这是有解决办法的。这些命令都可以通过复制有关文件和在写入副本、删除原始文件和将副本移到原始位置时进行更改来模拟。pig和Hive都没有这种功能,因此您必须稍微扩展这些语言才能做到这一点。例如,几行bash可能会在执行pig脚本后处理副本的删除和移动。考虑到您可以首先使用bash调用猪脚本,这允许一个相当简单的解决方案。或者您可以查看HBase,它提供了做类似事情的能力。然而,这两种解决方案都涉及到猪/蜂巢以外的东西,所以如果你绝对不能走出这些语言,答案是否定的。

票数 6
EN

Stack Overflow用户

发布于 2015-02-28 22:06:40

您可以使用PL/HQL - Hadoop上的过程SQL,这是一个开源项目,它旨在为Hive和其他SQL实现提供类似PL/SQL的过程语言。

PL/HQL是一个开源工具(Apache 2.0),它为Apache和其他SQL on Hadoop实现实现了过程SQL语言。 PL/HQL语言在很大程度上与Oracle / SQL、ANSI/ISO /PSM (IBM DB2、MySQL、Teradatai.e)、Teradata、PostgreSQL PL/pgSQL (Netezza)、Transact-SQL (Microsoft和Sybase)兼容,使您能够利用现有的SQL/DWH技能和熟悉的方法在Hadoop上实现数据仓库解决方案。它还有助于将现有业务逻辑迁移到Hadoop。

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

https://stackoverflow.com/questions/19574457

复制
相关文章

相似问题

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