@adobe/rum-distiller

中文文档
1.24.0发布于 2026/10/30Apache-2.0ES Module零依赖构建来源已验证近 30 天下载 2728

RUM Distiller是一个用于Adobe RUM数据数据探索的JavaScript库. 它允许您先以"系列","组","花相"等形式定义数据的形状. 然后,您可以根据定义的方位过滤数据,并自定义

中文使用文档
文档目录9 节
  1. 估计“暗物质”URL(Chao1)
  2. 概念
  3. 套装
  4. 系列
  5. 组
  6. 面额
  7. 过滤
  8. 业绩
  9. 共计

RUM 抖动器

RUM Distiller是一个用于Adobe RUM数据数据探索的JavaScript库. 它允许您先定义数据形状, 在 "系列","群","面"的形式. 您可以根据定义的方块过滤数据, 并自动获取数据 该系列的汇总.

估计“暗物质”URL(Chao1)

当采样隐藏了低流量页面时, 您可以使用古典的“ 未知物种” 估计器(Chao1) , 加上95% CI , 估计访问的 URL 总数 .

  • 内置 API :

    • dc.estimators.plainURL.chao1 返回时 { sObs, sHat, sUnseen, f1, f2, ci, darkCI } 用于当前过滤/窗口.
    • 使用生包计数(独立观察),而不是加权总数.
  • 直接函数( 对于原始行或自定义流量):

    • import { chao1, chao1CI, inferSamplesFromCI, estimateDarkMatterFromCI, estimateDarkMatterFromCIWithCI } from './src/estimators/chao1.js'

见算法细节 弧度/估计器/README.md。 。 。 .

参考资料

概念

套装

RUM Distiller的基本构件是: Bundle。捆绑是属于同一页面视图的事件集。 每个捆绑有一个 weight,这是以捆绑为代表的页面浏览数.

由于采样和分样,捆绑的重量一般为100或100多.

后三个概念是描述数据形状的构件:系列,组和Facets.

系列

一个系列是从捆绑中提取出一个度量衡的方法. 一个系列的价值是: 总是数,并允许简单的计算, 像计数,平均, umming,百分数等.

在其核心,一个系列是一个需要捆绑并返回数字的函数. 单位 一个图,你会绘制一个序列的值 在y轴上.

还有很多 内置系列 包含在 RUM Distiller 中,但也可以执行自己的自定义系列.

一旦定义了序列,就可以添加到 DataChunks 对象使用 addSeries 方法.

组

一个组是将数据分组到一组桶的一种方式. 最常见的类型 分组是按时间分组的,但如果需要,也可以按其他维度分组.

在图表中,您会在y轴上绘制一组的值。 实际上, 许多图表,如派图,或大多数条图不需要组合.

在程序上, 组合是一个函数 这需要捆绑并返回一个字符串.

面额

一个面是过滤数据的方法. 对于每个面值类型,可以有多个面值,每个捆绑可以满足给定的多个面值 外观类型 。 大多数应用程序定义最多可达一打左右的面部类型.

在过滤时,不同的方面会使用逻辑和,意思是 必须满足所有方面的要求,才能将捆绑物纳入结果集.

当给一个面型提供了多个过滤值时, 面型是 组合器决定组合匹配是否足够 some 或者说 every 数值.

面额使用 addFacet 方法和 一个面值函数需要捆绑,然后返回一个字符串或一系列字符串.

通常,所有平面值都被视为离散值,但有可能 通过创建直方图将离散值转换成范围.

直方图

直方图是将数据分组为桶的一面,基于基面的值.

您可以使用 addHistogramFacet 方法.

直方图基于一个返回数值的现有面. 这个 然后将数据分组成桶,每个桶都有下限和上限。 每个桶的数值大致相同,所以 直方图分布均匀,在直方图上调取过滤器 将取好数据的一部分.

过滤

一旦定义了数据的形状,我们可以使用 filter, (中文(简体) ), totals,以及 facets 视图。 最基本的方法是 filter。 。 。 .

过滤定义是完全声明的, 这样您不需要写入 任何必须的代码, 因为它已经处理 通过创建你之前的方面.

过滤器声明是一个从平面名称映射到单个值或数组值的对象. 过滤器将返回所有捆绑 满足每个面值过滤器,使用组合器处理多值.

您可以将过滤器应用到一个 DataChunks 对象使用 filter 设置.

// set up the dataChunks
const data = new DataChunks();

// add some data
data.addData(bundles);

// filter the data
data.filter = {
  "device.type": ["desktop", "mobile"],
  "page.path": ["/home", "/about"],
};
// all subsequent calls to data will use this filter

业绩

Facet功能是纯的:它们的结果只取决于捆绑. 卢姆 抖动器对每个都进行评估 facet 函数精确于每捆( 之后) load编号 :addData编号 :addFacet)并存储结果 在已编码的词典中,列形布局(类型数组)。 更改过滤器不重运行任何 平面函数;过滤和计数平面值是这些列上的整数内核.

如果装入后将捆绑装好,请拨 resetData() 因此,面值为 复为相.

共计

还记得我们以前定义的衡量标准吗? 这个 totals 视图将计算 当前过滤器的参数。 这些总数的类型是 Aggregate 对象.

// calculate the totals
const totalPageViews = data.totals.pageViews.sum;

如果我们建立了 pageViews 序列,这是页面浏览总数。 除了拿到钱,我们还可以得到 mean (平均数), min, (中文(简体) ), max, (中文(简体) ), median, (中文(简体) ), stddev (标准偏差),和 percentiles (任意百分数,如第50、90、99分数).

版本与发布记录

@adobe/rum-distiller 共发布 49 个版本,首次发布于 2024/10/08;过去 12 个月发布了 10 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.24.0latest2026/10/308 天前
1.23.32026/10/0830 天前
1.23.22026/10/0830 天前
1.23.12026/09/111 个月前
1.24.0-prerelease.1prerelease2026/09/022 个月前
1.23.02026/01/289 个月前

关于 @adobe/rum-distiller 的常见问题

@adobe/rum-distiller 是什么?

RUM Distiller是一个用于Adobe RUM数据数据探索的JavaScript库. 它允许您先以"系列","组","花相"等形式定义数据的形状. 然后,您可以根据定义的方位过滤数据,并自定义

如何安装 @adobe/rum-distiller?

在项目目录运行 npm install @adobe/rum-distiller,或使用 pnpm add / yarn add / bun add。

@adobe/rum-distiller 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/adobe__rum-distiller 是否存在。

@adobe/rum-distiller 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@adobe/rum-distiller 可以商用吗?

@adobe/rum-distiller 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@adobe/rum-distiller 的下载量有多少?

根据 npm 官方下载统计,@adobe/rum-distiller 在 2026/10/05 – 2026/11/03 这 30 天内被下载 2,728 次,日均约 91 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@adobe/rum-distiller 还在维护吗?

最新版本 1.24.0 发布于 2026/10/30(8 天前);至今共发布 49 个版本,其中过去 12 个月发布了 10 个;首次发布于 2024/10/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。