盘点2021年Apache年报中呈现的国产我的项目:ShardingSphere, IoTDB, Carbon Data, Eagle, Kylin, Apisix, DolphinScheduler and Echarts.

1、引言


2021年8 月 31 日,Apache 软件基金会公布 2021 财年(2020 年 5 月 1 日 - 2021 年 4 月 30 日)年度报告,报告内容由 Apache 软件基金会概览、基金会主席报告、财务主管报告、财务报表、资金募集、法律事务、基础设施、平安方面、数据隐衷、营销宣传、品牌治理、会议、社区倒退、多元化与容纳、我的项目及代码、奉献方面、基金会成员、联系方式等十八个局部组成。

Apache 基金会成立于 1999 年,是世界上最大的开源基金会,治理着 2.27 亿行以上的代码,并且 100% 收费向公众提供价值约 220 亿美元的软件,这些软件简直是每个用户计算设施上不可或缺的一部分,而凋谢敌对的 Apache License v2 是开源行业标准,帮忙了总价值超过数十亿美元的公司,并使寰球有数用户受害。

报告中指出,统计周期内共有来自228个国家的用户共4095908 次访问,其中来自于中国的用户数量最多,国内用户成为了Apache我的项目的次要使用者。

此外,在2020年7 月 15 日,由中国开源软件推动联盟(COPU)主办的2020 第十五届“开源中国开源世界”高峰论坛上,Apache 基金会副主席 Shane Curcuru示意,在过来的 20 年里,Apache 基金会曾经从最后的 21 位创始人倒退到了 800 多位 Apache 会员,我的项目提交数量稳步增长,当初已有近 8000 名提交者,这些 Apache 我的项目中的提交者曾经公布了超过 2 亿行代码。尤其值得关注的是,来自中国的新社区和贡献者退出 Apache 我的项目的速度增长惊人,Shane Curcuru 这样说道:“令人兴奋的是,中国的技术专家和公司如此迅速地采纳寰球开源技术。当初,不仅帮忙 Apache 建设新我的项目,而且改善开源自身的工作形式,来自中国的整个 Apache 新我的项目的倒退也让人印象粗浅。咱们目前有 10 个源于中国的顶级我的项目,其中几个我的项目十分有名,当初还有 9 个来自中国的 Apache 孵化器我的项目正在致力成为顶级我的项目。重要的是,这些 Apache 我的项目涵盖了从大数据、流媒体到物联网,再到所有波及云治理的技术畛域。”

参考文章:由 Apache 说开,中国开源我的项目曾经走向世界!

明天咱们来盘点一下有哪些项目在2021年的Apache年报中呈现,以及这些我的项目目前的状况。

2、我的项目盘点

2.1 ShardingSphere

呈现次数:1次
呈现起因:代码提交次数排名为Top20我的项目

Apache ShardingSphere 是一套开源的分布式数据库中间件解决方案组成的生态圈,它由 3 款互相独立,却又可能混合部署配合应用的产品组成。它们均提供标准化的数据分片、分布式事务和数据库治理性能,可实用于如 Java 同构、异构语言、云原生等各种多样化的利用场景。

Apache ShardingSphere 由三个子项目组成,造成一个残缺的数据库解决方案,合称 J.P.S. 生态系统。

  • ShardingSphere-JDBC:定位为轻量级 Java 框架,在 Java 的 JDBC层提供额定服务。它应用客户端直连数据库,以 jar 包模式提供服务,无需额定部署和依赖,可了解为增强版的 JDBC驱动,齐全兼容JDBC 和各种 ORM 框架。
  • ShardingSphere-Proxy:定位为透明化的数据库代理端,提供封装了数据库二进制协定的服务端版本,用于实现对异构语言的反对。目前提供MySQL/PostgreSQL版本,它能够应用任何兼容 MySQL/PostgreSQL 协定的拜访客户端操作数据,对 DBA 更加敌对。
  • ShardingSphere-Sidecar(TODO):定位为 Kubernetes 的云原生数据库代理,以 Sidecar 的模式代理所有对数据库的拜访。通过无核心、零侵入的计划提供与数据库交互的的啮合层,即 Database Mesh,又可称数据网格。

Apache ShardingSphere 的亮点次要包含:

  • 残缺的分布式数据库解决方案:提供数据分片、分布式事务、数据弹性迁徙、数据库和数据治理等外围能力。
  • 独立的 SQL 解析引擎:反对多 SQL 方言的齐全独立化 SQL 解析引擎,可能脱离ShardingSpher独立应用。
  • 可插拔微内核:所有的 SQL 方言、数据库协定和性能都可能通过 SPI的可插拔形式加载或卸载,微内核甚至在将来能够运行于无任何性能的空白环境中。

无关ShardingSphere的孵化过程以及更多的信息能够拜访:GitHub 标星 10,000+,Apache 顶级我的项目 ShardingSphere 的开源之路

2.2 IoTDB

呈现次数:2次
呈现起因:

  • 1. 我的项目活跃度排名第7
  • 2. 2020年9月23日成为Apache顶级我的项目

IoTDB 是一款聚焦工业物联网、高性能轻量级的时序数据管理系统,具备低存储老本、高速数据写入(百万数据点秒级写入)、疾速查问(TB级数据毫秒级查问)、性能齐备(数据的增删改查、丰盛的聚合函数、相似性匹配)、查问剖析一体化(一份数据,满足实时查问与剖析开掘)、简略易用(采纳规范的 JDBC 接口、类 SQL 查询语言)等特点。

基准测试表明IoTDB读写性能均优于现有的时序数据库InfluxDB、OpenTSDB、Cassandra以及GE的工业大数据平台Predix。依据中国软件评测核心和中国人民大学的性能对标测试,IoTDB的各项性能指标均显著优于当今国内最优的时序数据库系统。

IoTDB 已通过 Apache 基金会孵化器的探讨并取得10票赞成。Apache 孵化器主席Justin Mclean、国内驰名大数据公司 HortonWorks 副总裁 Joe Witt、Apache PLC4X 我的项目负责人 Christofer Dutz、华为开源核心负责人姜宁成为本我的项目的指导者。2018年11月18日,IoTDB我的项目正式成为 Apache孵化器我的项目,这是我国高校目前惟一一个进入Apache孵化器的我的项目。
【目前Apache IoTDB已从Apache基金会毕业,成为Apache顶级我的项目,见Apache Blog】

以上内容摘自:欢送退出 Apache IoTDB!

Apache IoTDB的核心技术:【from Apache IoTDB 随笔 - IoTDB核心技术分析】

2.3 Carbon Data

呈现次数:1次

Apache CarbonData是一种新的大数据文件格式,应用先进的柱状存储、索引、压缩和编码技术来进步计算效率,这有助于在pb级的数据上以数量级的速度放慢查问速度。

CarbonData特地设计了多种优化策略,如多级索引、压缩和编码技术,旨在进步蕴含filter、aggregation和counst distinct等剖析查问的性能,用户冀望在领有较少节点的商用集群上取得对TB级别数据的亚秒级响应。

CarbonData具备以下长处:

  • 独特的数据组织模式:以取得更快的查问性能及更少的数据检索老本
  • 进一步的下推优化策略:与Spark进行深度集成,以改良Spark DataSource
  • API和其余试验个性,从而确保计算在靠近数据的中央执行,从而最大限度地缩小数据的读、解决、转换和传输(shuffle)
  • 多级索引:无效地修剪要扫描的文件和数据,从而缩小I/O扫描和CPU解决
  • CarbonData文件格式如图所示

    以上内容援用自carbondata 介绍

    2.4 Eagle

    呈现次数:1次

Apache Eagle 是由 eBay 公司开源的一个辨认大数据平台上的平安和性能问题的开源解决方案。该我的项目于2017年1月10日正式成为 Apache 顶级我的项目。 Apache Eagle 提供一套高效分布式的流式策略引擎,具备高实时、可伸缩、易扩大、交互敌对等特点,同时集成机器学习对用户行为建设Profile以实现实时智能实时地爱护 Hadoop 生态系统中大数据的平安。
Apache Eagle 次要包含三大层:

  • 数据收集及存储层(Data Collection and Storage)
  • 数据处理层(Data Processing)
  • 可视化层(Visualize)

整个组成如下:

Apache Eagle 依赖于 Apache Storm 来进行数据流动和操作日志的流解决,并且能够执行基于策略的检测和报警。它提供多个API:作为基于Storm API上的一层形象的流式解决API和 policy engine provider API的形象,它将WSO2的开源Siddhi CEP engine作为第一类对象。Siddhi CEP engine反对报警规定的热部署,并且警报能够应用属性过滤和基于窗口的规定(例如,在10分钟内三次以上的拜访)来定义。

Eagle 反对依据用户在Hadoop平台上历史应用行为习惯来定义行为模式或用户Profile的能力。领有了这个性能,不须要在零碎中事后设置固定临界值的状况下,也能够实现智能地检测出异样的行为。Eagle中用户Profile是通过机器学习算法生成,用于在用户以后实时行为模式与其对应的历史模型模式存在肯定水平的差别时辨认用户行为是否为异样。目前,Eagle 内置提供以下两种算法来检测异样,别离为特征值合成(Eigen-Value Decomposition)和 密度估计(Density Estimation)。这些算法从HDFS 审计日志中读取数据,对数据进行宰割、审查、穿插剖析,周期性地为每个用户顺次创立Profile 行为模型。一旦模型生成,Eagle的实时流策略引擎可能近乎实时地辨认出异样,分辨以后用户的行为可疑的或者与他们的历史行为模型不相符。

以上内容起源:Apache Eagle:分布式实时Hadoop数据安全计划

2.5 Kylin

呈现次数:1次

Apache Kylin是一个开源的分布式剖析引擎,提供Hadoop之上的SQL查问接口及多维分析(OLAP)能力以反对超大规模数据,最后由eBay Inc. 开发并奉献至开源社区。它能在亚秒内查问微小的Hive表。
KylinJ架构图为

Apache Kylin外围概念

  1. 表(table):This is definition of hive tables as source of cubes,在build cube 之前,必须同步在 kylin中。
  2. 模型(model):模型形容了一个星型模式的数据结构,它定义了一个事实表(Fact Table)和多个查找表(Lookup Table)的连贯和过滤关系。
  3. Cube 形容:形容一个Cube实例的定义和配置选项,包含应用了哪个数据模型、蕴含哪些维度和度量、如何将数据进行分区、如何解决主动合并等等。
  4. Cube实例:通过Cube形容Build失去,蕴含一个或者多个Cube Segment。
  5. 分区(Partition):用户能够在Cube形容中应用一个DATA/STRING的列作为分区的列,从而将一个Cube依照日期宰割成多个segment。
  6. 立方体段(cube segment):它是立方体构建(build)后的数据载体,一个 segment 映射hbase中的一张表,立方体实例构建(build)后,会产生一个新的segment,一旦某个曾经构建的立方体的原始数据发生变化,只需刷新(fresh)变动的时间段所关联的segment即可。
  7. 聚合组:每一个聚合组是一个维度的子集,在外部通过组合构建cuboid。
  8. 作业(job):对立方体实例收回构建(build)申请后,会产生一个作业。该作业记录了立方体实例build时的每一步工作信息。作业的状态信息反映构建立方体实例的后果信息。如作业执行的状态信息为RUNNING时,表明立方体实例正在被构建;若作业状态信息为FINISHED ,表明立方体实例构建胜利;若作业状态信息为ERROR,表明立方体实例构建失败!

    2.6 APISIX

    呈现次数:1次
    呈现起因:2020年7月15日Apisix成为Apache的顶级我的项目

    2.7 DolphinScheduler

    呈现次数:1次
    呈现起因:2021年8月DolphinScheduler成为Apache顶级我的项目

Apache DolphinScheduler 于 17 年在易观数科立项, 19 年 3 月开源,8 月进入 Apache 孵化器, 已累计有 400+ 公司在生产上应用。直观来说,其为:一个分布式易扩大的可视化DAG工作流任务调度零碎。致力于解决数据处理流程中盘根错节的依赖关系,使调度零碎在数据处理流程中开箱即用。
Scheduler的零碎劣势:

以上内容参考文章:大数据调度零碎为什么选型Apache DolphinScheduler?

2.8 ECharts

呈现次数:1次
呈现起因:2021年1月26日 ECharts成为Apache顶级我的项目

ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,能够晦涩的运行在PC和挪动设施上,兼容以后绝大部分浏览器(IE6/7/8/9 /10/11,chrome,firefox,Safari等),底层依赖轻量级的Canvas类库ZRender,提供直观,活泼,可交互,可高度个性化定制的数据可视化图表。翻新的拖拽重计算、数据视图、值域漫游等个性大大加强了用户体验,赋予了用户对数据进行开掘、整合的能力。

反对折线图(区域图)、柱状图(条状图)、散点图(气泡图)、K线图、饼图(环形图)、雷达图(填充雷达 图)、和弦图、力导向布局图、地图、仪表盘、漏斗图、事件河流图等12类图表,同时提供题目,详情气泡、图例、值域、数据区域、时间轴、工具箱等7个可交 互组件,反对多图表、组件的联动和混搭展示。

详情可参考:十分具体的Echarts介绍

3、总结

总体来看,目前有7个国内我的项目因为各种起因登上了Apahce 2021年度报告,其中IoTDB、Apisix、DolphinScheduler和Echarts这四个我的项目均是因为在2020-2021年成为了Apache的新晋顶级我的项目而呈现在了年报当中,特地是IoTDB我的项目,还以社区最沉闷我的项目第6的身份在年报中呈现了2次;此外,ShardingSphere也以最沉闷我的项目的身份呈现在了年报中。