【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

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 )关注我们,并与我们的编辑和其他读者朋友交流。

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2013-03-28 09:592060

评论

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

Jenkins 如何玩转接口自动化测试?

Liam

测试 jenkins 自动化测试 API 测试框架

专访亚信科技张桦:AntDB面向企业核心业务支撑的数据库产品

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

兆骑科创赛事活动承办,项目路演,人才引进平台

兆骑科创凤阁

APP为什么用JSON协议与服务端交互:序列化相关知识

程序员啊叶

Java 编程 程序员 架构 java面试

【7.22-7.29】写作社区精彩技术博文回顾

InfoQ写作社区官方

优质创作周报

手摸手实现Canal如何接入MySQL实现数据写操作监听

知识浅谈

MySQ 7月月更

Rust P2P网络应用实战-1 P2P网络核心概念及Ping程序

李明

rust 网络 Libp2p

金九银十喜提offer!秋招蚂蚁金服Java研发岗四面

程序员啊叶

Java 编程 程序员 架构 java面试

深圳见!云原生加速应用构建专场:来看云原生 FinOps、SRE、高性能计算场景最佳实践

阿里巴巴云原生

阿里云 云原生 峰会

大模型轻量化实践路径

澜舟孟子开源社区

人工智能 自然语言处理 神经网络 深度学习 预训练模型

你真的了解Redis的持久化机制吗?

C++后台开发

数据库 redis 后端开发 C/C++后台开发 C/C++开发

一文读懂Elephant Swap,为何为ePLATO带来如此高的溢价?

西柚子

微信公众号借助小程序云函数实现支付功能

Geek_24ed5f

签约计划第三季

兆骑科创海外高层次人才引进平台,企业项目对接,赛事活动路演

兆骑科创凤阁

即时通讯-改变社交与工作状态的新型软件

WorkPlus

不会多线程还想进BAT?精选19道多线程面试题,有答案边看边学

程序知音

Java 多线程 面试题 后端技术 BAT面试题

关于数字化转型 你需要知道的八项指导原则

WorkPlus

数据中台建设(四):企业构建数据中台评估

Lansonli

大数据 数据中台 7月月更

文档贡献与写作必读-OpenHarmony开发者文档风格指南

OpenHarmony开发者

Open Harmony

上海移动基于亚信科技AntDB完成核心账务数据库的国产化替换

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

基于Flink CDC打通数据实时入湖

数据社

签约计划第三季

数字孪生万物可视 |联接现实世界与数字空间

华为云开发者联盟

云计算 大数据 后端 智慧城市 数字孪生

顶礼膜拜!阿里内部出品,全网首发Spring Security项目实战搭建

冉然学Java

编程 spring security springboot Spring 框架漏洞

Google Cloud X Kyligence|如何从业务视角管理数据湖?

Kyligence

数据湖 智能多维数据库

今天拿SpringAOP和自定义注解的通用性开🔪

知识浅谈

切面编程 7月月更

官宣,又一上市公司杀入数据库市场

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

【堡垒机小知识】硬件堡垒机是什么意思?其与云堡垒机有什么区别?

行云管家

云计算 网络安全 数据安全 堡垒机 云堡垒机

面试?进大厂?还得靠这份Java面试指导手册

王小凡

Java 面试 JVM Java多线程 秋招

突破性能天花板!亚信数据库支撑 10 多亿用户,峰值每秒百万交易

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

从通信延伸到全行业,亚信科技AntDB 7.0蓄势待发

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

SQL 开始日期、结束日期查询

孙永潮

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