HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

Concurrent 发布 Lingual——一种用于 Hadoop 的领域专用语言

  • 2013-03-28
  • 本文字数:2048 字

    阅读完需:约 7 分钟

Cascading 是一个流行的应用框架,是一个面向企业数据流的模式语言。Cascading 可以定义复杂的数据处理流程,创建面向复杂数据的框架。这些框架可被用来作为领域专用语言(DSLs) 进行脚本编写。

Lingual 最新增加到Cascading 扩展套件中的新的基于SQL 的领域专用语言,整合了 Optiq (一个动态数据管理框架)的能力和 Cascading 基于 Hadoop 的执行。Lingual 的目标,是降低熟悉 SQL、JDBC 和传统 BI 工具的开发人员和数据分析师使用 Hadoop 的门槛。它所提供的能力,被公司誉为“真正用于 Cascading 和 Hadoop 的 SQL”。

据 Chris Wensel(Cascading 技术总监兼创始人)表示,Lingual 的目标是提供符合 ANSI 标准的 SQL 接口,该接口被设计为与所有知名的 Hadoop 发行版兼容——无论是自建的还是在云环境中的。它可以从传统数据仓库中“剪贴”已有的 ANSI 标准 SQL 代码,这样一来,用户就能够直接访问被锁在 Hadoop 集群中的数据。它也可以从 Hadoop 乃至大量各种不同的 BI 工具中查询并导出数据。

使用 Lingual,公司可以通过标准的技术把已有的技术和产品投资平移到 Hadoop 上,立刻就能够发挥它们的价值。如果分析师和开发人员熟悉 SQL、JDBC 或者传统的 BI 工具,可以现在马上很容易地在 Hadoop 上创建大数据应用,从而大幅提升工作效率,提前将产品推向市场。

Lingual 并不打算为 Hadoop 集群中上 PB 级别的数据提供次秒级(sub-second)的响应时间。公司更为重视的目标是,简化应用向 Hadoop 迁移的过程——实际上,最大的挑战主要集中在关系型数据库或大规模并行处理数据库向 Hadoop 的迁移。

Lingual 发行版包括

  • 在 Cascading 框架上层构建的 ANSI 标准 SQL 解析器与优化器
  • 大规模非结构化数据之中的关系型数据编目视图
  • 用来测试和提交 Hadoop 查询的 SQL shell
  • 以 JDBC 驱动程序集成现有的 BI 工具和应用服务器

InfoQ 有幸与 Concurrent 股份有限公司的技术总监兼创始人 Chris K Wensel 讨论了 Lingual。

InfoQLingual 看上去很像 Apache Hive。您能谈一下 Lingual 相比 Hive 最主要的优势吗?

WenselLingual 首要的目标集中在 ANSI 标准的兼容性上。Hadoop 从来都不是单独使用的,你既可以把数据从 HDFS 位桶(bit-bucket)转入备选工具(如 R 或 Mondrian),也可以把现有的工作负载转移到 Hadoop 上,以发挥其性价比的优势。无论是哪种情况,很大的可能性是你本来就熟悉 SQL,或者你正迁移的“应用”或查询已经是基于 SQL 来做的,甚至还有可能是你正使用的工具只能识别 SQL。所以,提供基于标准的 SQL 接口非常重要。

为了达成这个目标,我们做了很多测试。我们现在已经从 Mondrian 测试套件中提取了 6000 多个复杂 SQL 查询,并且我们已经达到了 90% 的测试覆盖,而且,还计划从流行的工具中吸收增加更多的测试。

Lingual 并不打算做成一个提供人类级别响应时间的专用查询工具。因此,我们建议使用一个适当的分布式 MPP(大规模并行处理)风格的数据库。我不建议在非 Hadoop 设计的场景下使用 Hadoop。

这就是说,我们提供了一个遵循 JDBC 驱动程序的标准,可以使用 Cascading 的“本地模式”去测试非本地数据的查询,这种方式不需要依赖 Hadoop 去提升测试速度。

在 ANSI 标准依丛性目标之上,Lingual 运行于 Cascading 的上层,所以任何针对 Cascading 的改进,或者任何新的“规划师”(除了专门为 Hadoop 准备的),以及本地内存处理,连同 Cascading 现有的健壮性、灵活性、可扩展性、标准性(很多公司已经在计算场景中应用了标准化的 Cascading)一起,都将被 Lingual 继承过来。

InfoQ:我们从现有的产品描述上还无法非常清晰地了解 Lingual 如何定义和维护关系型数据库编目。您可以解释一些实现细节吗?它是否需要准备好特定的文件,或者使用类似于 Hive SerDe 的机制去提供现有数据与表结构定义的映射?

Wensel在最初的发布里有一个内置的“单用户”编目。我们将在短期内提供 HCatalog 集成及(或)一个备选的方案。当前,元数据编目是一个琐细的(并可由人工编辑的)JSON 文档,它可以保存在本地文件系统或 HDFS(甚至 S3)上,可以允许基本的共享。

至于读 / 写数据方面,Lingual 将整合提供所有 Cascading(以及 Cascalog、Scalding 等等)的支持。这些都通过 Lingual 的命令行接口进行管理。

用户不必使用任何“Cascading 特有的”格式去查询数据。

用户可以从命令行中把一个文件简单地注册为一张表,如果一切顺利的话,在该文件中可以找到任何元数据(列和类型)信息。我们将在接下来的工作中把它逐步细化,把编目工具中最新的可支持的数据格式也添加进来。

InfoQ Lingual 的安全模型是如何考虑的?它是否基于文件访问权限?是否可以被 JDBC 驱动程序支持?

Wensel目前没有考虑去扩展 Hadoop 当前的安全模型。

查看英文原文: Concurrent Releases Lingual, a SQL DSL for Hadoop


感谢杨赛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-03-28 09:592145

评论

发布
暂无评论
发现更多内容

体育赛事直播源码:开发的各项功能如何提升用户体验与参与度

软件开发-梦幻运营部

解决Ubuntu或Debian apt-get IPv6问题:如何设置仅使用IPv4

百度搜索:蓝易云

Linux ubuntu 运维 云服务器 Debian

php如何处理高并发请求

百度搜索:蓝易云

php 云计算 Linux 运维 Web

长期看好Celestia,质押TIA教程分享,以bitget为例

股市老人

高可用 - 隔离原则

京东零售技术

架构 高可用 企业号 4 月 PK 榜

在线白板Miro最佳替代品!一文说清两款软件的差异!

彭宏豪95

在线白板 办公软件 在线协同 在线协作 boardmix

鸿蒙HarmonyOS实战-ArkUI组件(Menu)

蜀道山

鸿蒙 前端 HarmonyOS 鸿蒙卡片 menu

总结反思 持续进步-开源即时通讯(IM)项目OpenIM 新版本release-v3.7发布

Geek_1ef48b

鸿蒙HarmonyOS实战-ArkUI组件(页面路由)

蜀道山

鸿蒙 架构 前端 HarmonyOS 鸿蒙系统

以太网口硬件知识分享

梦笔生花

Mac 以太网 PHY

Linux设备驱动系列(五)——字符驱动设备文件

Linux内核拾遗

Linux内核 设备驱动

ubuntu18安装cmake27的方法

百度搜索:蓝易云

云计算 Linux ubuntu 运维 cmake

JDK14新增关键字——record

FunTester

开源大模型到底是不是真开源?

三掌柜

释放Stable Diffusion 无限可能

亚马逊云科技 (Amazon Web Services)

Amazon Lambda Amazon S3 Glacier

LED显示屏与LCD显示屏的9个区别

Dylan

LED显示屏 全彩LED显示屏 led显示屏厂家 lcd

ubuntu20使用apt安装pcl

百度搜索:蓝易云

云计算 Linux ubuntu 运维 云服务器

Adobe Photoshop动作导入方法详解,PS动作安装教程

Rose

ps动作

和鲸科技出席第五届空间数据智能学术会议,执行总裁殷自强受邀发表主题报告

ModelWhale

人工智能 数据模型 空间数据

EasyExcel导出-自适应图像尺寸

alexgaoyh

EasyExcel 自适应 图像 等比缩放 导出

AI工程师看这里!与真实世界数据“亲密拥抱”的机会来了!

AI浩

人工智能

基于rrweb框架,搭建前端技术运营监控体系的实践分享

智在碧得

框架设计 rrweb框架 rrweb 前端框架设计 技术监控

Centos/Ubuntu一行指令安装Docker

百度搜索:蓝易云

Docker Linux ubuntu centos windows

Concurrent发布Lingual——一种用于Hadoop的领域专用语言_大数据_Boris Lublinsky_InfoQ精选文章