com.clearspring.analytics:stream 组件安全漏洞及健康度分析

文章更新时间:2023-09-25 14:30

com.clearspring.analytics:stream

组件简介

维护者addthis 组织许可证类型Apache-2.0
首次发布2012 年 6 月 14 日最新发布时间2019 年 8 月 28 日
GitHub Star2248GitHub Fork581
依赖包217依赖存储库4,361

stream-lib是一个开源的Java流式计算库,里面有很多大数据估值算法的实现,也包括HyperLogLog算法。

官方仓库:https://github.com/addthis/stream-lib

参考链接:

https://packages.ecosyste.ms/registries/repo1.maven.org/packages/com.clearspring.analytics:stream

https://mvnrepository.com/artifact/com.clearspring.analytics/stream

组件健康度

技术健康度该组件是一个用于处理数据流的库,提供了一些高效的算法,如 HyperLogLog,CountMinSketch等,用于计算数据流的基数,频率,重复度等统计量。该组件的技术健康度较高,因为它实现了一些先进的数据结构和算法,具有良好的性能和准确性。
社区健康度该组件的社区健康度较低,因为它的 GitHub 仓库 已经有两年没有更新过了,也没有收到新的 issue 或 pull request。该组件的 star 数只有 2.2k,fork 数只有 500 多,表明它的关注度和贡献度都不高。
更新和维护频率该组件的更新和维护频率较低,因为它的最新版本是在 2018 年 11 月发布的,之后就没有再发布过新版本。该组件也没有明确的更新计划或路线图,不清楚它是否还在继续开发或维护。
兼容性该组件的兼容性较好,因为它支持 Java 7 及以上版本,并且可以与其他流处理框架如 Apache Storm,Apache Spark 等集成使用。该组件也没有太多的依赖项,只需要引入一个 jar 包即可使用。
文档和支持该组件的文档和支持较差,因为它没有提供详细的用户指南或 API 文档,只有一些简单的示例代码和测试用例。该组件也没有提供任何社区支持或交流渠道,如论坛,邮件列表,QQ 群等。

com.clearspring.analytics:stream 该组件是一个技术上优秀但社区活跃度低下的数据流处理库。它可以帮助用户快速实现一些复杂的数据流分析功能,但也存在一些风险和不确定性,如缺乏更新和维护,缺乏文档和支持等。用户在使用该组件时应该谨慎评估其适用性和可靠性,并尽量避免依赖其未来的发展或改进。

参考链接:

https://github.com/addthis/stream-lib/blob/master/src/main/java/com/clearspring/analytics/stream/cardinality/HyperLogLogPlus.java

https://github.com/addthis/stream-lib/blob/master/src/main/java/com/clearspring/analytics/stream/cardinality/HyperLogLog.java

https://github.com/addthis/stream-lib/blob/master/src/main/java/com/clearspring/analytics/stream/frequency/CountMinSketch.java

组件许可证解读

Apache License 2.0 是一种开源软件许可证,广泛用于授权开源项目和代码。Apache License 2.0 允许用户自由地使用、修改和分发受许可的软件,而无需支付版权费用或专利费用。它鼓励开发者共享他们的代码,并保护用户的权利。以下是该许可证的一些重要特点:

  1. 代码使用权:用户可以自由地使用、复制、修改、合并、发布、分发和销售受许可软件。
  2. 版权声明:用户必须在所有源代码副本中保留原始的版权声明、许可证声明和免责声明。
  3. 修改代码:如果用户对代码进行了修改,需要清楚标明哪些部分发生了变化,并不能暗示原作者同意这些修改。
  4. 商标使用:Apache License 2.0 并未授予使用原软件的任何商标或名称的权利。
  5. 专利许可:该许可证授予了在使用、修改或分发受许可软件时相关专利的非独占许可。这意味着如果用户授权其他人使用该软件,相关专利许可也会传递给接收方。
  6. 再许可:用户可以将受 Apache License 2.0 许可的代码作为一部分整合到其它开源项目中,并使用不同的许可证授权整个项目。但是,需要在代码中显式地说明使用了 Apache License 2.0 许可的部分。

需要注意的是,Apache License 2.0 并不保证软件没有缺陷或不稳定性,使用该软件的风险由用户自行承担。

许可证原文链接:https://github.com/addthis/stream-lib/blob/master/LICENSE.txt

组件漏洞版本及修复方案

暂无

同类型可替代组件

  • Apache Flink:一个分布式的流处理和批处理框架,支持高吞吐量,低延迟,精确一次语义,动态扩缩容等特性。它提供了 Java 和 Scala 的 API,以及 SQL,Python 和 R 的支持。官网:https://flink.apache.org/
  • Apache Spark:一个统一的大数据处理平台,支持流处理,批处理,机器学习,图计算等多种场景。它提供了 Java,Scala,Python 和 R 的 API,以及 SQL 和 MLlib 等库。官网:https://spark.apache.org/
  • Apache Storm:一个实时的流处理框架,支持高可靠性,容错性,水平扩展性等特性。它提供了 Java 和 Clojure 的 API,以及 Trident 等抽象层。官网:https://storm.apache.org/
  • Kafka Streams:一个轻量级的流处理库,基于 Apache Kafka 作为数据源和目标。它提供了 Java 和 Scala 的 API,以及 DSL 和 Processor API 等接口。官网:https://kafka.apache.org/

组件SBOM

组件名称版本是否直接依赖仓库
org.slf4j:slf4j-api1.7.10maven
it.unimi.dsi:fastutil8.1.1maven

该SBOM清单仅展示部分内容

完整SBOM清单及检测报告:

https://www.murphysec.com/console/report/1706145074894389248/1706145074969886720?allow=1

(0)
上一篇 2023年9月25日 下午2:04
下一篇 2023年9月25日 下午3:01

相关推荐