专栏首页腾讯大数据的专栏Apache InLong重磅发布 0.10.0 版本,着力降低用户使用门槛

Apache InLong重磅发布 0.10.0 版本,着力降低用户使用门槛

导语:Apache InLong 以腾讯内部使用的TDBank为原型,依托万亿级别的数据接入和处理能力,整合了数据采集、汇聚、存储、分拣数据处理全流程,拥有简单易用、灵活扩展、稳定可靠等特性。

Apache InLong(孵化中) 刚刚发布了 0.10.0 版本,该版本是升级为 InLong(中文名:应龙) 后的第二个版本,着力解决InLong应用门槛高问题。该版本吸引腾讯内外 10 多位开发者参与,关闭超过 120 个issue, 开发超过 8 个重要Feature。

Apache InLong简介

InLong

Apache InLong(应龙)是腾讯捐献给 Apache 社区的一站式数据流接入服务平台,提供自动、安全、高性能、分布式的数据发布订阅能力,基于该系统用户可以轻松构建基于流式的数据应用。InLong 项目原本叫TubeMQ ,专注高性能、低成本的消息队列服务。为了进一步释放 TubeMQ 周边生态能力,我们将项目升级为 InLong ,专注打造一站式数据流接入服务平台。

Apache InLong 以腾讯内部使用的 TDBank 为原型,依托万亿级别的数据接入和处理能力,整合了数据采集、汇聚、存储、分拣数据处理全流程,拥有简单易用、灵活扩展、稳定可靠等特性。

Apache InLong 服务于数据采集到落地的整个生命周期,按数据的不同阶段提供不同的处理模块,主要包括:

  • inlong-agent ,数据采集 Agent ,支持从指定目录或文件读取常规日志,进行逐条的数据上报。后续也将扩展 DB 采集,扩展HTTP上报等能力。
  • inlong-dataproxy ,一个基于 Flume-ng 的 Proxy 组件,支持数据发送阻塞、落盘重发,拥有将接收数据后转发到不同MQ(消息队列)的能力。
  • inlong-tubemq ,腾讯自研的消息队列服务,专注服务大数据场景下海量数据的高性能存储和传输,在海量实践和低成本方面有着比较好的核心优势。
  • inlong-sort ,从不同的 MQ 消费数据后进行 ETL 处理,然后将数据汇聚并写入 Hive、ClickHouse、Hbase、IceBerg 等。
  • inlong-manager ,提供完整的数据服务管控能力,包括元数据、OpenAPI、任务流、权限等。
  • inlong-website ,一个用于管理数据接入的前端页面,简化整个 InLong 管控平台的使用。

Apache InLong 0.10.0版本简介

InLong

我们从上个版本( 0.9.0 )始,将 TubeMQ 升级为 InLong ,第一次将全链路数据接入能力开源出来。随着 0.9.0 发布后,我们组织了一次线上 Meetup ,探讨了大家在初次尝鲜 InLong 过程当中遇到的问题,发现大多数同学反馈 InLong 的“使用门槛太高,部署难度太大”。InLong 包括 6 个模块,并且每个模块拥有单独的编译打包、配置、启停脚本,完整的使用 InLong 还依赖 MySQL、Hive、Flink 集群等第三方服务组件,真正把 InLong 用起来的社区用户寥寥无几。

为了解决社区用户反馈的”开头难“问题, 我们将 0.10.0 版本开发目标设定为“降低 InLong 使用门槛,方便社区用户用起来”,在新版本中主要完成了以下几个方面的工作,来简化 InLong 的安装和使用:

  • 所有组件 Docker 化,提供一键安装能力
  • 进一步整合 InLong 所有模块,简化模块配置
  • 提供 Example Demo ,手把手教如何使用 InLong

Apache InLong 0.10.0 版本主要特性

InLong

全面拥抱 GitHub

在之前版本,InLong 的所有 Issue 由Jira管理,提交新的 PR 需要在 Jira 和 GitHub 来回跳转。同时,由于 Jira 和 GitHub 账号不通,新的贡献者需要先单独注册 Jira 账号和配置权限。在最近发布的 0.10.0 版本中,我们将 Jira Issue 历史迁移到了 GitHub Issue ,并设置了配套的 Issue 模板,方便开发者创建 Issue 和关联 PR 。同时,我们将 CI 工具由 Travis 迁移到 GitHub Actions ,配置了独立的 Workflow 进行代码编译、UT,很大程度提高了 PR 的合入效率。

支持 Docker-Compose 一键部署

InLong 拥有超过 6 个模块,完整的使用 InLong 还依赖 MySQL、Hive、Flink 集群等第三方服务组件,为了方便新用户快速了解 InLong ,直观感受 InLong 的特性,在 0.10.0 版本中,我们将所有组件 Docker 化,借助 Docker-Compose 提供一键安装能力,感兴趣的用户可以参考 InLong Standalone Using Docker Compose 体验。

InLong Standalone Using Docker Compose地址:

https://github.com/apache/incubator-inlong/blob/master/docker/docker-compose/README.md

增加 Hive 入库 Example

0.9.0 版本我们只开放了 InLong 入库Hive的能力,为了指导大家快速将采集的数据分拣到 Hive ,我们增加Hive入库Example,Step by Step帮助用户快速开始使用 InLong 。

入库Hive示例:

https://inlong.apache.org/zh-cn/docs/example.html

InLong Manger 整合 OpenAPI 和 API

InLong Manager 为 WebSite 提供了统一的访问 API ,为了方便其它模块获取元数据信息提供了统一的 OpenAPI 。在之前的版本中, API 和 OpenAPI 分别有两个独立的项目管理,安装时需要单独配置和启动,使用不同的端口提供服务。在 0.10.0 版本中,我们整合了 OpenAPI 和 API ,使用不同 URL Path 进行区分,通过一个项目来管理两套 API ,实现 Manager 只用部署一次的效果。

InLong Sort 增加 Pulsar 分拣能力

TubeMQ 的架构在性能和成本上拥有天然的优势,但没有多副本机制,可能会丢数据,而 Apache Pulsar 可以弥补这方面的不足。同时,为了实现 InLong 能够快速复用已有的消息队列服务,我们计划全链路支持 Pulsar ,在 0.10.0 版本中,InLong Sort 优先支持了 Pulsar 数据源的分拣能力,在后续版本中会完善 DataProxy->Pulsar、Manager->Pulsar ,实现 InLong 全链路支持 Apache Pulsar 。当然,我们也希望在未来全链路支持 Kafka 。

InLong Sort 支持指标系统

InLong Sort 中需要统计各个阶段数据条数的指标数据,如读入数据的条数,解析阶段失败/成功的数据条数,入库条数。指标系统用来统计系统各个阶段的数据条数,为了保证指标和数据语义的一致,我们通过 Flink 的 side output stream 输出指标。同时配合flink的窗口机制对指标进行预聚合,保证输出指标的量级不会太大。在 0.10.0 版本中,首先支持了通过日志的方式输出指标(At-least-once),后续我们计划扩展输出指标的系统,如 MySQL ,HBase 等,同时支持输出指标的 Exactly-once 。

InLong WebSite 国际化

上个版本重点是整合所有 InLong 所有模块,前端国际化没有来得及做,在这个版本一起优化了。InLong 当前还有很多待翻译的文档,计划在后续版本一起完善,期待英语不错的社区爱好者加入翻译大军。

InLong TubeMQ 优化 Web API

该特性将以往元数据变更后需要外部被动、批量的加载调整为 由 Master 自动的分批加载,并且数据加载与后续的配置变更同步进行。

InLong Agent 重构 DataProxy 配置获取方式

InLong Agent 采集到数据后,会将数据发送到 DataProxy ,所以 DataProxy 的配置信息需要 Agent 提前拿到。在上个版本的实现中,我们在每个接入任务的Agent配置文件中指定 DataProxy 的地址等信息。而在 0.10.0 版本中,我们重构了这部分实现,交由 Manager 管理 DataProxy 地址等信息,Agent 中配置的接入任务直接通过 Manager OpenAPI 获取。

进一步整合 InLong 各模块

在上个版本,InLong 各个模块编译后的二进制文件分散在不同目录,启停配置、命名、端口使用等也不统一,InLong 给人一种“拼凑”的印象。在 0.10.0 版本中,为了进一步强化 InLong 整体性,我们将各个模块编译结果输出到统一目录,增加Maven编译 InLong WebSite ,并规范了目录、脚本等名称,重新整理了安装部署文档,使所有模块更加统一。

Apache InLong 后续规划

InLong

在 InLong 后续版本规划中,我们会进一步释放 InLong 的能力,覆盖更多的使用场景,主要包括

  • 支持 Apache Pulsar 全链路数据接入能力
  • 支持 ClickHouse、Apache Iceberg、Apache HBase 等数据流向
  • InLong on Kubernetes

Apache InLong 贡献者招募

InLong

Apache InLong目前还处在项目孵化的初期,还有很多工作需要做,包括社区运营、文档翻译、Feature 开发等,期待更多的开源爱好者一起共建。在过去的一个版本,Apache InLong 新增国内外贡献者 6 名,实现快速增长。当前社区重于代码,我们急需更多的贡献者加入快速发展的项目社区,努力将 InLong 打造成 Apache 顶级项目,以下为 InLong 重要发展时间点:

  • 2019年9月12日,TubeMQ 对外开源并捐献给 Apache 社区;
  • 2019年11月3日,进入 Apache 社区孵化;
  • 2020年5月30日,按照 Apache 社区规范发布第一个社区版本;
  • 2020年12月20日,进行项目改名讨论和投票;
  • 2021年2月11日,发起社区改名变更申请;
  • 2021年4月11日,完成社区改名,调整为 Apache InLong;
  • 2021年7月12日,发起更名后第一个版本 0.9.0 投票。

Apache InLong项目官方网站:

https://inlong.apache.org/zh-cn/

点击“阅读原文”即可访问。

Apache InLongGitHub地址:

https://github.com/apache/incubator-inlong

加入Apache InLong交流群

请扫描下方二维码

添加“星火计划活动助手”好友,并备注“应龙

-End-

扫码关注 | 即刻了解腾讯大数据技术动态

本文分享自微信公众号 - 腾讯大数据(tencentbigdata)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-09-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【重磅】Apache InLong(incubating) 发布 0.10.0 版本

    ? | 导语 Apache InLong 以腾讯内部使用的TDBank为原型,依托万亿级别的数据接入和处理能力,整合了数据采集、汇聚、存储、分拣数据处理全流程...

    腾源会
  • 开源项目介绍|Apache InLong-分布式消息中间件系统

    2021腾讯犀牛鸟开源人才培养计划 开源项目介绍 滑至文末报名参与开源人才培养计划 提交项目Proposal ? ? Apache InLong介绍 ? Ap...

    腾讯高校合作
  • 快速学习-Kafka Streams

    Kafka Streams。Apache Kafka开源项目的一个组成部分。是一个功能强大,易于使用的库。用于在Kafka上构建高可分布式、拓展性,容错的应用程...

    cwl_java
  • 果然还是那个马斯克!特斯拉Q1狂收59.85亿美元,股价飙到900美元

    刚刚特斯拉公布了非常亮眼的Q1财报,即Q1总营收59.85亿美元、净利润6800万美元,交付88400辆汽车,这是特斯拉首次Q1实现盈利、连续三个季度实现盈利。

    镁客网
  • 小程序这一年:1.7亿日活、上线58万个

    来源:微信公开课 1月15日,2018微信公开课PRO版微信公开课现场,小程序发布重磅数据:日活跃用户数1.7亿、已上线小程序58万个,覆盖100万开发者、23...

    顶级程序员
  • 微信官方爆料!这批小程序重磅「新能力」即将开放

    但据知晓程序(微信号 zxcx0101)了解,这两个新能力,并不是真正的「新」能力。早在官方宣布之前,一些小程序就已经使用了类似特性。?

    知晓君
  • 基于 Flink+Iceberg 构建企业级实时数据湖

    Apache Flink 是大数据领域非常流行的流批统一的计算引擎,数据湖是顺应云时代发展潮流的新型技术架构。那么当 Apache Flink 遇见数据湖时,会...

    Spark学习技巧
  • 百度大脑3月新品推荐:EasyDL视频目标追踪全新发布

    经过不断的技术优化和沉淀,百度大脑 AI 开放平台已经成为企业智能化升级道路上重要的技术支撑,通过百度智能云赋能各行各业实现产业智能化。本月EasyDL OCR...

    用户1386409
  • 持续引领大数据行业发展,腾讯云发布全链路数据开发平台WeData

    2020年9月11日,在腾讯全球数字生态大会大数据专场上,腾讯云大数据产品副总经理雷小平重磅发布了全链路数据开发平台WeData,同时发布和升级了流计算服务、云...

    腾讯云大数据
  • 持续引领大数据行业发展,腾讯云发布全链路数据开发平台WeData

    9月11日,在腾讯全球数字生态大会大数据专场上,腾讯云大数据产品副总经理雷小平重磅发布了全链路数据开发平台WeData,同时发布和升级了流计算服务、云数据仓库...

    腾讯QQ大数据
  • 腾讯开源再登央视!助力提效增产和节能减排

    ? 引言 7月15日晚,在中央广播电视总台播出的《经济半小时》栏目之“开源软件主题特别节目中,腾讯云原生TencentOS获得了重要报道,旗下两款开源项目T...

    腾源会
  • 这是微信没跟你说的,还有一个小程序开发工具也更新了

    同时,知晓云也在今天有了大版本升级。新版本支持 trigger 触发器功能,而且完善了数据表功能,让它更强大、更好用。

    知晓君
  • 阅面携手英特尔重磅发布“繁星”,计算机视觉迈入AI芯片新纪元!

    镁客网
  • 腾讯开源之道:基于Apache之道的开源实践与探索

    8月6日,腾讯开源联盟主席、腾讯云开源生态总经理单致豪在2021 ApacheCon Asia上分享了腾讯对Apache之道的思考、探索与实践的历程。作为开源...

    腾讯开源
  • 商业无人机规则出台之前的机遇与挑战

    无人机技术正以前所未有的速度向前发展,创业能量也以极快的速度流入商业无人机产业。所有这一切都正在发生,而美国联邦航空管理局制定规则动作缓慢,让企业无法自由飞行。...

    机器人网
  • 本体重磅加入Torus Network,为密钥一键登录注入新活力

    近日,本体重磅加入 Torus Network,与 Binance、ENS、Etherscan 等众多机构共同运行一个验证节点,该节点将运行 Torus 的分布...

    本体Ontology
  • 从谷歌AutoML到百度EasyDL,AI大生产时代,调参师不再是刚需

    2018 年,Google Cloud 宣布将 AutoML 作为机器学习产品的一部分。至此,AutoML 开始进入大众的视野。

    AI科技大本营
  • 聚焦技术发展及开源生态 腾讯全面揭秘大数据平台演进之路

    11月7日,腾讯Techo开发者大会的“腾讯大数据”分论坛上,围绕大数据的新技术进展及开源生态,腾讯大数据团队进行了详细解读,包括由集群规模化与异构化挑战所引发...

    Techo
  • 携手开发者共建云生态 首届腾讯云+社区开发者大会在京举办

    北京时间12月15日,由腾讯云主办,极客邦科技、微信、腾讯TEG协办的首届腾讯云+社区开发者大会在北京朝阳悠唐皇冠假日酒店举办。在会上,腾讯云发布了重磅产品开发...

    云加社区

扫码关注云+社区

领取腾讯云代金券