

字节跳动嵌入式数据分析最佳实践_字节跳动数据平台的技术博客_51CTO博客
source link: https://blog.51cto.com/bytedata/5586523
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

字节跳动嵌入式数据分析最佳实践
精选 原创更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群
商业智能 (BI) 已经广泛被应用到用户实际业务过程中,如果BI作为独立应用平台应用,那么用户在日常使用业务系统(比如CRM/ERP/OA等)时,就需要经常切换不同系统,繁杂登录过程与应用系统的切换,会导致业务思考的中断,降低效率。这不利于BI在企业内做推广,也难实现IT应用管理平台的统一。
因此将低门槛数据分析操作功能,和已完成的看板结果直接放置在业务系统程序的UI中,就会保证业务用户数据洞察的连续性和可用性。
该篇文章以字节跳动内部应用的实操案例,来完成如下业务场景。
张小明同学希望在自己的运营平台上接入BI的可视化分析能力,能够在运营平台上通过点击、拖拽等页面交互方式便可以快速生成可视化图形,获取数据洞见。
经过调研后决定集成Datawind平台,将自己的数据源通过数据准备导入到Datawind中作为数据集,并在运营平台上嵌入该数据集的可视化查询页面。之后可以直接在运营平台上直接做数据拖拽分析,极大地提高了数据分析效率。

王小红同学想要建立运营数据看板并分享给不同的地区经理,希望不同的地区经理只看到本地区数据。并且这些数据看板可以集成到地区经理最常用的CRM系统之中。
小红发现Datawind能够满足制作数据看板的诉求,并且Datawind的行权限、自定义筛选器也能满足平台对数据权限控制的需要,也可以快速集成到自己的CRM系统中,最后决定使用嵌入Datawind仪表盘的方式搭建运营数据看板。

李小华同学需要对海量的商品交易记录进行查询。他希望使用这样一款查询工具:具备对海量明细数据的查询能力、支持丰富的筛选操作、能够配置表格和单元格样式、必要时可以对表格列的字段公式进行改写。确认Datawind满足需要后,李小华在Datawind上建立了明细数据报表并将其嵌入到商品交易管理系统中,让每个相关运营同学都能快速查询获得想要的数据结果。

Iframe集成方案
为了最方便快捷实现集成,可以通过Iframe的方式对接,操作方式如下。
该操作需要开发人员完成,主要操作步骤如下所示:
Step 1. 获得目标仪表盘/图表的URL链接
Step 2. 链接修改
Step 3. 生成代码
该开发人员建议在需要操作的项目中赋予项目管理员权限,完成后再根据实际情况赋予权限。
Step 1.获得目标仪表盘/图表的URL链接
- 如下两种方式均可获得目标仪表盘/图表/大屏的链接,得到的结果是一致的
- 仪表盘移动端则只能按照第二种方式获得
1. 直接在产品中获得
(1)仪表盘/图表
- 图表
进入到仪表盘预览状态
点击需嵌入图表右侧,选择「嵌出图表」

显示「复制成功」,之后可以鼠标右键复制,或者键盘crtl+V即可
- 仪表盘
进入到仪表盘预览状态
点击需嵌入图表右侧,选择「嵌出仪表盘」

显示「复制成功」,之后可以鼠标右键复制,或者键盘crtl+V即可。
(2)大屏
如图在列表页选择查看,打开之后复制浏览器URL即可

2. 自行拼接
选择自行拼接,则按照如下方式进行,划下划线内容是变量,在如下参数详解要解释的,其他为固定内容
- 仪表盘
$HOST/#/external/dashboard/$DASHBOARD_ID?appId=$APP_ID&inline=true
- 移动端仪表盘
注意:移动端链接只能移动端设备访问,如果该链接在PC端打开,则默认跳转为PC端链接。
- 图表
$HOST/#/external/dashboard/$DASHBOARD_ID/$REPORT_ID?appId=$APP_ID&inline=true
- 可视化查询
$HOST/#/dataQuery?appId=$APP_ID&inline=true
- 大屏
$HOST/vScreen/preview?appId=$APP_ID&id=$VSCREEN_ID&resizeMode=auto
- 参数详解
$HOST
- SaaS环境设置为https://console.volcengine.com/bi
- 私有化部署环境替换为产品部署的域名
$HOST-h5
移动端的域名
- SaaS环境设置为https://console.volcengine.com/bi-h5
- 私有化部署环境替换为产品移动端部署的域名
$APP_ID
- 项目id。在项目下任意打开地址均可获得,如图所示,任意打开一个项目下的链接,URL如下所示,app_Id值为1010681
$DASHBOARD_ID
- 在列表页面打开需要外嵌的仪表盘,获得浏览器的URL链接如下,则dashboardId值为47610
https://console.volcengine.com/bi#/dashboard/47610?appId=1010681
- $REPORT_ID
- 图表id,标识唯一的图表。可视化查询页面URL的 rid 表示图表id。在如下可视化查询链接中,reportId值为306828
- $VSCREEN_ID
- 大屏id。在如下仪表盘链接中,vscreenId值为4750
Step2.加入特性,修改链接
在iframe的url中传入 feature
参数来配置通用特性,以下是该特性的解释说明,可以根据实际情况选择需要的特性。
"dashboard": { // --- 仪表盘模块特性 ---
"showHeader": true, // 显示Header
"showFavor": true, // 显示收藏
"showOwner": true, // 显示owner
"actions": [ // 仪表盘操作,数组类型
"refresh", // 刷新
"fullscreen", // 全屏
"share", // 分享
"subscribe", // 订阅
"snapshot", // 书签
"auth", // 授权
"edit", // 编辑
"setAsDefaultDashboard", // 设为默认仪表盘
"exportImage", // 导出图片
"embed", // 嵌出
"accessStatistics" // 访问统计
],
"report": { // --- 仪表盘图表特性 ---
"showHeader": true, // 显示header
"actions": [ // 仪表盘图表操作,数组类型
"imgExport", // 导出图片
"excelExport", // 导出excel
"pivotExport", // 导出透视表
"copyToDashboard", // 复制图表
"embed", // 嵌出图表
"createMonitor" // 新建监控
],
},
"sheet": { // --- 仪表盘sheet特性 ---
"tabPosition": "top" // tab页显示位置,可选top/left
},
}
}
- 特性说明

Step3.生成代码
根据上述获得的信息来拼接代码,比如以获得的仪表盘链接举例:
1. 生成HTML代码
比如如下代码指的是隐藏仪表盘header
2. 使用实例
- 如果在使用 React 框架,参考如下实例
- 在iframe的url中传入
feature
参数来配置通用特性。feature
的类型为JSON.stringify
后的特性配置对象。可以参考如下的iframe 嵌入代码隐藏仪表盘header
import ReactDOM from 'react-dom'
class EmbedComponent extends React.Component {
render() {
return (
<iframe
allowFullScreen
src={`https://console.volcengine.com/bi#/external/dashboard/47610?appId=1010681&inline=true&feature=${
JSON.stringify(
{
dashboard: {
showHeader: false
}
}
)
}`}
/>
)
}
}
ReactDOM.render(<AeolusComponent />, document.querySelector('body'))
立即跳转 火山引擎智能数据洞察DataWind官网了解详情,并参与30天免费试用!
Recommend
-
37
本文选自“字节跳动基础架构实践”系列文章。 “字节跳动基础架构实践”系列文章是由字节跳动基础架构部门各技术团队及专家倾力打造的技术干货内容,和大家分享团队在基础架构发展和演进过程中的实践经验与教训,与各位技...
-
11
从 ClickHouse 到 ByteHouse:字节跳动实时数据分析场景下的优化实践 | Q推荐2021-09-13 15:28 InfoQ 近日,
-
4
近日,字节跳动旗下的企业级技术服务平台火山引擎正式对外发布「ByteHouse」,作为 ClickHouse 企业版,解决开源技术上手难 & 试错成本高的痛点,同时提供商业产品和技术支持服务。作为国内规模最大的 ClickHouse 用户,目前字节跳动内部的 ClickHou...
-
9
本文是字节跳动发布工程团队的高磊讲师在2021 GOPS 全球运维大会中「字节跳动亿级DAU客户端发布最佳实践」的分享全文。 首先做一下自我介绍:我是字节跳动发布工程团队的工程师高磊。从事软件开发工作有10多年的时间,在...
-
0
本文是字节跳动发布工程团队的高磊讲师在 2021 GOPS 全球运维大会中「字节跳动亿级 DAU 客户端发布最佳实践」的分享全文。首先做一下自我介绍:我是字节跳动发布工程团队的工程师高磊。从事软件开发工...
-
7
字节跳动 Service Mesh 数据面编译优化实践 2022年04月07日 10:37 · 阅读 667 字节跳动在内部大...
-
6
导读:今天的分享主要分四个部分:机遇与挑战、数据治理思路、技术架构演进以及未来展望 1. 机遇与挑战
-
5
随着字节跳动旗下业务的快速发展,数据急剧膨胀,原有的大数据架构在面临日趋复杂的业务需求时逐渐显现疲态。...
-
8
字节跳动提出高性能 transformer 推理库,获 IPDPS 2023 最佳论文奖 2023年06月15日 11:58 · 阅读 71...
-
6
导读 本文将分享聚水潭云原生 OLAP 架构的最佳实践。 内容分为五部分: OLAP 最佳实践-物流预警 分享嘉宾|溪竹、星毛 上海聚水潭网络科技有限公司 高级大数据开发专家 编辑整理|刘金辉...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK