当前位置: 首页 > news >正文

Google Store 如何利用 glTF 3D 模型改变产品教育

Google 为全球广大用户提供种类繁多、持续改进的硬件产品。Google 的智能手机、智能手表、耳机、平板电脑、智能家居设备等产品均通过 Google Store(谷歌商店) 以及遍布全球的实体和数字第三方零售商销售。作为一个以在人工智能、智能家居和个人设备体验方面不断开拓创新而闻名的全球品牌,Google 面临着一项重大挑战:打造引人入胜、行之有效的产品培训和营销材料,并使其在世界各地都能有效发挥作用。可以去glbxz.com官方下载模型glb和gltf格式模型   http://glbxz.com

Google Store 如何利用 glTF 3D 模型改变产品教育

2021 年,Google 开始在谷歌商店中利用 glTF ™ 3D 产品模型,同时支持图片和视频等传统媒体。当时,我领导着 Google 硬件营销客户体验团队。我们着手采用并优化低多边形 3D 资源管道和 WebGL 框架,以提升 Pixel 和 Nest 产品在谷歌商店和第三方电商渠道的用户体验。将交互式 3D 技术引入谷歌商店是顺理成章的一步:作为网络上最受欢迎的开源 3D 查看器之一<model-viewer>的开发者,我们拥有深厚的内部专业知识,能够为各种目标用户提供高质量的基于浏览器的 3D 和 AR 体验。此外,作为 Khronos Group 的积极参与者,Google 直接参与了 glTF 3D 格式的持续演进,确保这一开放标准能够满足像我们这样的用例的需求。

Google 的产品教育和营销材料中更多地使用 3D 模型,这一转变产生了重大影响,不仅促进了公司自身目标的实现,也为 glTF 生态系统带来了重要的补充。本案例研究探讨了 Google 如何利用 glTF 改进产品教育、降低成本、简化工作流程,同时提升 3D 内容创作的水平。

挑战

2021 年之前,Google 依靠静态图片和视频等传统媒体进行产品培训和营销。制作这些素材,并用合适的语言和文化符号将其呈现给全球不同的受众,既耗时又耗资。这是一个永无止境的挑战:一套产品培训材料完成后,新功能发布或产品更新可能又需要团队重新开始。

理论上,使用数字产品模型可以让我们更高效地创建新材料,并轻松更新,以跟上产品发展的步伐。然而,在 Google 产品培训和电商体验中采用 3D 模型仍存在一些已知的挑战需要克服。

  1. 视觉保真度:Google 的产品,尤其是 Pixel 手机,以其独特的品牌色彩和时尚的设计而闻名。因此,数字模型必须与这些产品的真实颜色和纹理相匹配。
  2. 兼容性: 我的目标不仅仅是打造更好的 Google Store,更是一个更美好的网络。因此,我的团队并非只想在我们自己的网站上添加 3D 素材,而是希望能够轻松地将这些素材部署到第三方零售商网站、社交媒体平台以及其他服务(例如 Google 搜索和 AR 体验)上。
  3. 文件大小和性能:我们在 Google Store中实现的任何零售体验都必须面向全球所有客户群。商店中的模型需要进行优化,以便在不同设备(包括手机和较慢的互联网连接)上实现良好的运行。
  4. 面向未来:尽管最终比传统媒体更高效,但开发逼真的 3D 产品模型需要大量投资。确保我们创建的模型能够随着新技术、新设备或新 Web 标准的出现而持续发挥作用至关重要。

解决方案与实施

在应对这些挑战的同时,我们致力于提升产品教育和客户参与度,其方法以 <model-viewer> 和 glTF 为中心。通过这些基于标准的方法,我们能够实现更高效的工作流程、更快的内容创建速度和更佳的用户体验,从而彻底改变我们产品在网络上的呈现方式。

glTF 是创建轻量级且视觉上引人入胜的 3D 模型的理想解决方案。为了给 Google Store 打造互动体验,我们将高保真模型压缩成针对网页优化的低多边形 GLB 文件。这种方法使我们能够应对全球范围内扩展 3D 资源的挑战,确保模型能够在跨平台和设备快速加载,同时保持高水平的细节。我们使用 <model-viewer> 将 3D 模型直接嵌入 Google 商店商品页面,让顾客能够以传统图片或视频无法比拟的方式旋转、缩放和浏览商品。

内容创作流程由 Google 内部团队与外部供应商XYZ Agency共同协作完成。XYZ Agency 创建高保真 3D 模型,Google 团队将其用于营销材料以及 Google 商店中部署的低多边形 glTF 模型。所有模型都存储在一个集中式数字资产管理 (DAM) 平台中,确保全球营销团队能够轻松访问,并实现跨地区和平台的一致性。

在创建网页优化素材资源时,我们会从高保真基础文件中导出低多边形 GLB 模型:Google 商店中的模型包含 2 万到 9 万个三角形,具体取决于模型的复杂程度。然后,我们使用DRACO压缩几何网格。作为内部最佳实践,我们将网页优化素材资源的大小限制为 2 MB,以确保交互式 3D 体验能够快速渲染。

开发 PBR 中性色调映射器

随着 Google 对 glTF 的使用范围不断扩大,我们在呈现逼真色彩方面遇到了挑战。我们将问题归咎于素材色调映射:像 ACES 这样的电影色调映射器可达到的色彩范围有限,尤其是在输出到 sRGB 屏幕时。Google 的几款产品品牌颜色恰好落在 ACES 所衰减的色彩范围内,导致产品在最终渲染中显得褪色。线性色调映射(又称“未应用色调映射器”)可以提高饱和度,但也带来了新的问题,例如智能手机或智能手表等闪亮物体的色调倾斜或尺寸损失。

在埃米特·拉利什 (Emmett Lalish) 的带领下,谷歌团队通过创建全新的色调映射器解决了这个问题,该映射器专为在电子商务等场景中实现精准的色彩呈现而设计。这项工作于 2024 年 5 月作为 Khronos 官方规范发布,名为Khronos PBR 中性色调映射器 (Khronos PBR Neutral Tone Mapper )。内容创作者可以在纹理文件中验证 glTF 模型的色值,而 Khronos PBR 中性色调映射器可在灰阶照明下,在最终渲染中实现精确的 1:1 色彩呈现,并在阳光等彩色光线下呈现无偏差的色彩。

Khronos PBR 中性色调映射器的开发对 Google 和整个互联网的内容创作者来说都是一大利好。它缩短了 QA 周期,因为我们现在在最终渲染中遇到色彩问题的可能性大大降低。PBR 色调映射器还使更新资源文件变得更加容易,无需在新配色发布时进行大量的额外 QA。

资产的可重用性也得到了提升。我们的 3D 模型不仅用于 Google 商店,还用于创建视频、动画和其他营销材料。借助 Khronos PBR 中性色调映射器,我们的营销和图形设计团队可以改变场景中的光照,而无需调整基础模型以实现色彩保真度。此色调映射器现已成为 <model-viewer> 的默认设置。

结果

Google 推出的交互式3D 产品模型对客户体验和内部工作流程都产生了显著影响。通过从基于视频和照片的教育材料转向 3D 模型,Google 将产品教育材料的开发成本降低了 50% 以上。我们的产品信息发布速度也比以前快了四倍。

Google 正在持续拓展 3D 技术在产品教育中的应用。过去三年,Google 提供的交互式产品教育体验数量增长了四倍,受益于 3D 模型的产品数量也增长了两倍。例如,Pixel 7 的发布为每个 SKU 提供了三种交互式配色,从而提供了更具沉浸感的产品探索体验。

我们的零售合作伙伴也从中受益。Google 现已将这些模式扩展到超过 15 家第三方零售商,包括百思买 (Best Buy) 和 Telstra。无论顾客在哪里购买 Google 产品,都能获得引人入胜、最新的体验。

Google 和 Web 的未来

通过这个过程,Google 开发出了最佳实践,任何希望通过 3D 模型改善电子商务体验的品牌都可以应用这些最佳实践:

  1. 文件大小优化:将模型大小保持在 2MB 以下可确保快速加载时间和流畅的用户体验,尤其是在网速较慢的地区。
  2. 平衡保真度与性能:确保 3D 模型的视觉准确性至关重要。Google 使用 PBR 中性色调映射器是解决色彩问题的关键,而 DRACO 压缩等其他工具则可以在不增大文件大小的情况下呈现更丰富的细节。
  3. 跨平台一致性:通过在所有产品线上标准化 glTF 的使用,Google 能够确保在 Google Store、第三方零售商以及社交媒体和 AR 体验等其他平台中获得一致的体验。

glTF 将成为未来沉浸式体验的基础,无论是在网页上,还是通过下一代 AR 和 VR 体验。我的目标始终是创造一个更美好、更实用、更易访问的网络。下一步,我预计将超越交互式产品教育,拓展到虚拟试穿和完全沉浸式的虚拟环境。随着 AR 和 VR 技术的不断发展,谷歌在 3D 领域的投资以及对 Khronos Group 的参与,使我们能够在网页上提供更丰富、更具互动性的体验。

3D 技术彻底改变了 Google 引导和吸引客户的方式。借助 glTF,Google 打造了一套可扩展且高效的解决方案,不仅提升了客户体验,还简化了内部工作流程并降低了成本。Google 在 3D 模型方面的经验教训,可以为任何希望通过互动式沉浸式内容增强电商战略的品牌提供蓝图。

相关文章:

Google Store 如何利用 glTF 3D 模型改变产品教育

Google 为全球广大用户提供种类繁多、持续改进的硬件产品。Google 的智能手机、智能手表、耳机、平板电脑、智能家居设备等产品均通过 Google Store(谷歌商店) 以及遍布全球的实体和数字第三方零售商销售。作为一个以在人工智能、智能家居和个人设备体验方面不断开拓创新而闻名…...

Flutter 状态管理 Riverpod

Android Studio版本 Flutter SDK 版本 将依赖项添加到您的应用 flutter pub add flutter_riverpod flutter pub add riverpod_annotation flutter pub add dev:riverpod_generator flutter pub add dev:build_runner flutter pub add dev:custom_lint flutter pub add dev:riv…...

flutter 专题 六十六 Flutter Dio包网络请求抓包解决方案

在Flutter中进行网络请求时&#xff0c;我们可以使用的库有3个&#xff0c;即Http请求库、HttpClient请求库和Dio请求库&#xff08;详细介绍请参考&#xff1a;Flutter开发之Http网络请求&#xff09;&#xff0c;使用得最多的就是Dio请求库。因为相比Http请求库和HttpClient请…...

DSL(Domain Specific Language,领域特定语言)

DSL的定义和作用 DSL是为特定业务领域设计的专门语言&#xff0c;这里特指为欺诈检测场景设计的规则描述语言通过DSL&#xff0c;业务人员可以用接近自然语言的方式定义欺诈检测规则&#xff0c;而不需要编写复杂的代码DSL的具体实现&#xff1a;使用ANTLR4作为语法解析工具支…...

基于SpringBoot的心情疗愈平台-项目分享

基于SpringBoot的心情疗愈平台-项目分享 项目介绍项目摘要管理员功能图用户实体图心理咨询师功能图系统功能图项目预览情感树洞发布帖子讲座信息心理医生心理医生管理 最后 项目介绍 使用者&#xff1a;管理员、用户、心理咨询师 开发技术&#xff1a;MySQLJavaSpringBootVue …...

富文本图片过大问题

在做若依的项目&#xff0c;碰到了若依自带的公告功能的图片上传后&#xff0c;再显示会出现图片过大的问题。在修改若依代码无果后&#xff0c;退而求其次修改展示页面的代码。 问题描述&#xff1a; 在若依框架的打卡系统中&#xff0c;公告使用富文本上传图片后&#xff0…...

Python-Django系列—部件

部件是 Django 对 HTML 输入元素的表示。部件处理 HTML 的渲染&#xff0c;以及从对应于部件的 GET&#xff0f;POST 字典中提取数据。 内置部件生成的 HTML 使用 HTML5 语法&#xff0c;目标是 <!DOCTYPE html>。例如&#xff0c;它使用布尔属性&#xff0c;如 checked…...

开发者视角:轻量便捷的AI视觉训推一体机如何实现AI模型快速开发

一、行业背景 1&#xff09;数据与算力基础夯实&#xff1a;互联网、物联网和移动互联网的普及使得视觉数据呈爆发式增长&#xff0c;为AI视觉训推技术提供了丰富的“燃料”。同时&#xff0c;GPU、TPU等计算芯片的广泛使用&#xff0c;以及云计算的兴起&#xff0c;让计算能力…...

基于Python(Django)+SQLite实现(Web)校园助手

校园助手 本校园助手采用 B/S 架构。并已将其部署到服务器上。在网址上输入 db.uplei.com 即可访问。 使用说明 可使用如下账号体验&#xff1a; 学生界面: 账号1&#xff1a;123 密码1&#xff1a;123 账户2&#xff1a;201805301348 密码2&#xff1a;1 # --------------…...

Django 入门指南:构建强大的 Web 应用程序

什么是 Django&#xff1f; Django 是一个开源的高层次 Python Web 框架&#xff0c;旨在快速开发安全且可维护的网站。它通过简化常见的 Web 开发任务&#xff0c;帮助开发者专注于开发应用的核心功能。Django 实现了“快速开发”和“尽量少的重复”的理念&#xff0c;提供了…...

一文了解相位阵列天线中的真时延

本文要点 真时延是宽带带相位阵列天线的关键元素之一。 真时延透过在整个信号频谱上应用可变相移来消除波束斜视现象。 在相位阵列中使用时延单元或电路板&#xff0c;以提供波束控制和相移。 市场越来越需要更快、更可靠的通讯网络&#xff0c;而宽带通信系统正在努力满…...

LangChain实现PDF中图表文本多模态数据向量化及RAG应用实战指南

如何用LangChain实现PDF多模态数据向量化及RAG应用实战指南 在大模型应用中&#xff0c;PDF文档因包含文本、表格、图片等异构数据&#xff0c;成为RAG&#xff08;检索增强生成&#xff09;系统的核心挑战。本文基于LangChain框架&#xff0c;结合多模态处理技术&#xff0c;…...

OkHttp入门

OkHttp 简介与使用示例 OkHttp 是一个高效的 HTTP 客户端&#xff0c;用于 Android、Java 应用程序以及 Kotlin 应用程序。它支持同步阻塞调用和异步调用&#xff0c;同时提供了强大的拦截器和重定向处理功能。OkHttp 由 Square 公司开发&#xff0c;因其高性能和易用性而广受…...

在ARM Linux应用层下驱动MFRC522

文章目录 1、前言2、IC卡 和 IC卡读卡器3、MFRC5223.1、寄存器集3.2、命令集3.3、数据操作3.4、基础函数编写3.4.1、MFRC522接线3.4.2、编写SPI操作函数3.4.3、编写MFRC522基础函数3.4.3.1、完整的mfrc522.h3.4.3.2、写寄存器和读寄存器3.4.3.3、复位引脚操作3.4.3.4、天线操作…...

力扣第446场周赛

有事没赶上, 赛后模拟了一下, 分享一下我的解题思路和做题感受 1.执行指令后的得分 题目链接如下&#xff1a;力扣 给你两个数组&#xff1a;instructions 和 values&#xff0c;数组的长度均为 n。 你需要根据以下规则模拟一个过程&#xff1a; 从下标 i 0 的第一个指令开始…...

close和shutdown

1.shutdown() 控制 TCP 连接的读写方向&#xff0c;不会关闭文件描述符&#xff0c;也不会触发四次挥手。 shutdown(sockfd, SHUT_RD): 关闭套接字的读方向。套接字不能再接收数据。 shutdown(sockfd, SHUT_WR): 关闭套接字的写方向。套接字不能再发送数据。 shutdown(sockfd…...

LeetCode算法题(Go语言实现)_54

题目 给你两个正整数数组 spells 和 potions &#xff0c;长度分别为 n 和 m &#xff0c;其中 spells[i] 表示第 i 个咒语的能量强度&#xff0c;potions[j] 表示第 j 瓶药水的能量强度。 同时给你一个整数 success 。一个咒语和药水的能量强度 相乘 如果 大于等于 success &a…...

.NET应用UI框架DevExpress XAF v24.2新版亮点:支持.NET 9

DevExpress XAF是一款强大的现代应用程序框架&#xff0c;允许同时开发ASP.NET和WinForms。DevExpress XAF采用模块化设计&#xff0c;开发人员可以选择内建模块&#xff0c;也可以自行创建&#xff0c;从而以更快的速度和比开发人员当前更强有力的方式创建应用程序。 在DevEx…...

前端通过jenkins和docker打包部署流程

通过jenkins实现镜像打包和上传 1.在jenkins上创建流水线任务 点击新建任务 填写任务名称 选多分支流水线 增加分支源 选git 添加并选择凭据&#xff08;有项目权限的git账号密码&#xff09; 填写分支的正则表达式&#xff0c;多分支使用^(分支名|分支名)$ 保存 …...

SpringBoot自定义验证器:企业级参数校验架构设计与实践

一、需求分析与技术选型 在复杂业务场景中,标准校验注解(如@NotBlank、@Pattern)往往无法满足特殊业务规则验证需求。例如: 需要校验字段值在预定义的枚举范围内多字段之间存在关联性校验(如起始时间不能晚于结束时间)需要动态查询数据库进行业务规则校验架构设计原则:…...

4U带屏基于DSP/ARM+FPGA+AI的电力故障录波装置设计方案,支持全国产化

4U带屏DSP/ARMFPGAAI电力故障录波分析仪&#xff0c;支持国产化&#xff0c;含有CPU主控模块&#xff0c;96路模拟量采集&#xff0c;256路开关量&#xff0c;通讯扩展卡等#电力故障录波#4U带屏#新能源#电力监测 主要特点 1&#xff09;是采用嵌入式图形系统&#xff0c;以及…...

笔试题——第五周

目录 Day1 排序子序列 消减整数 最长上升子序列 Day2 爱吃素 相差不超过k的最多数 最长公共子序列(一) Day3 小红的口罩 春游 数位染色 Day4 素数回文 活动安排 合唱团 Day5 跳台阶扩展问题 包含不超过两种字符的最长子串 字符串的排列 Day6 ISBN号码 k…...

图论-Floyd算法

在搜索中bfs只适合无权图 若是碰到有权图最简单的方法就是用邻接矩阵-二维矩阵存储每个点对之间的权重,然后用floyd 并且邻接矩阵还可以处理重边的问题&#xff08;用min&#xff09; INFfloat(inf) ma[[INF]*n for _ in range(n)]for i in range(n):ma[i][i]0for i in rang…...

使用pyinstaller打包fastapi项目的问题记录

文章目录 PyInstaller 相关介绍作用使用方式Spec 文件介绍 FastAPI 相关介绍什么是 FastAPI&#xff1f;使用方式 使用 PyInstaller 打包 FastAPI 项目常见问题与解决方案 PyInstaller 相关介绍 作用 PyInstaller 是一个将 Python 程序打包成独立可执行文件的工具&#xff0c…...

Java秒杀功能-案例

数据库表设计 CREATE TABLE user (id bigint(20) NOT NULL AUTO_INCREMENT,name varchar(100) NOT NULL,password varchar(100) NOT NULL,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8;CREATE TABLE order_info (id bigint(20) NOT NULL AUTO_INCREMENT,user_id bigi…...

Abp发布订阅

在 ABP&#xff08;AspNet Boilerplate&#xff09;框架里运用发布 - 订阅模式&#xff0c;有着多方面重要目的&#xff0c;以下为你详细阐述&#xff1a; 实现组件间的解耦 减少直接依赖&#xff1a;在传统的编程方式中&#xff0c;不同组件之间可能存在紧密的耦合关系&…...

docker部署ruoyi-vue-pro前后端详细笔记

docker部署ruoyi-vue-pro前后端详细笔记 参考&#xff1a;YuDaoCloud&#xff1a;Docker 部署 - 那个码农 1.准备工作 1.1 需要准备服务器&#xff0c;安装bt面板方便操作 if [ -f /usr/bin/curl ];then curl -sSO https://download.bt.cn/install/install_panel.sh;else wg…...

软考中级数据库系统工程师学习资料分享

软考中级数据库系统工程师考试对于很多 IT 从业者和计算机专业的大学生来说&#xff0c;是一个重要的职业资格认证。它不仅能够提升个人的专业技能&#xff0c;还能为职业发展增添有力的砝码。今天&#xff0c;我将为大家分享一套全面且实用的学习资料&#xff0c;帮助大家更好…...

RESTful学习笔记(一)

Web发展 一、API 程序硬件接口&#xff08;Application Programming Interface&#xff09;&#xff0c;是预先定义好的逻辑函数&#xff0c;软件系统不同组成部分衔接的约定&#xff0c;直接调用函数&#xff0c;无序访问代码细节&#xff0c;分为SDK和Web应用接口两类 SDK…...

基于 FFmpeg 的音视频处理基础原理与实验探究

目录 1 基本知识1.1 解封装1.2 AAC和ADTS说明 1.3 H2641.3.1 H264编码结构解析1.3.2 NALU1.3.2 分类 2 实验1 探究音视频信息2.1 重要结构体介绍2.2 相关的API 3 实验二 提取AAC数据4 实验三 提取h264 1 基本知识 1.1 解封装 封装的逆向操作&#xff1a;封装是把音频流、视频流…...

spark和hadoop的区别

一、核心定位与架构差异 Hadoop • 定位&#xff1a;分布式存储与计算的基础框架&#xff0c;核心解决海量数据的存储&#xff08;HDFS&#xff09;和离线批处理计算&#xff08;MapReduce&#xff09;问题&#xff0c;适合对实时性要求不高的大规模数据离线处理场景。 • 架构…...

vue使用语音识别

vue使用语音识别 使用 Web Speech API 实现语音识别功能 语音转换的原理可以简单概括为以下几个步骤&#xff1a; 声音捕捉&#xff1a;将声波转化为数字信号。特征提取&#xff1a;分析声音中的关键特征。声学模型&#xff1a;将声音特征与音素匹配。语言模型&#xff1a;根据…...

代码随想录算法训练营day8(栈与队列)

华子目录 用栈实现队列思路 用栈实现队列 https://leetcode.cn/problems/implement-queue-using-stacks/description/ push(x) -- 将一个元素放入队列的尾部。 pop() -- 从队列首部移除元素。 peek() -- 返回队列首部的元素。 empty() -- 返回队列是否为空。思路 初始化两个栈…...

GPT,Genini, Claude Llama, DeepSeek,Qwen,Grok,选对LLM大模型真的可以事半功倍!

选对大模型真的可以事半功倍&#xff01; 基于公开的技术报告、基准测试结果、在线反馈及用户使用情况&#xff0c;深入探讨各模型的特点、擅长领域及典型应用场景&#xff0c;为用户和开发者选择和应用合适的模型提供参考。 1. 引言 大型语言模型&#xff08;Large Language…...

Unocss 类名基操, tailwindcss 类名

这里只列出 unocss 的可实现类名&#xff0c;tailwindcss 可以拿去试试用 1. 父元素移入&#xff0c;子元素改样式 <!-- 必须是 group 类名 --> <div class"group"><div class"group-hover:color-red">Text</div> </div>2…...

Flowable7.x学习笔记(十)分页查询已部署 BPMN XML 流程

前言 上一篇文章我们已经完成了流程的部署功能&#xff0c;那么下一步就是要激活流程了&#xff0c;但是我们要需要明确的指定具体要激活部署后的哪一条流程&#xff0c;所以我们先把已部署的基础信息以及具体定义信息分页查询出来&#xff0c;本文先把基础代码生成以及完成分页…...

【阿里云大模型高级工程师ACP学习笔记】2.1 用大模型构建新人答疑机器人

学习目标 在备考阿里云大模型高级工程师ACP认证时,学习《2.1用大模型构建新人答疑机器人》这部分内容,主要是为了掌握利用大模型技术构建高效答疑机器人的方法,提升在大模型应用开发领域的专业能力。具体目标如下: 掌握大模型API调用:学会通过API调用通义千问大模型,熟悉…...

设计模式深度总结:概念、实现与框架中的应用

【全网最全】23种设计模式思维导图详解 | 含React/Vue/Spring实战案例 导图概述 本文通过高清思维导图系统梳理了23种设计模式&#xff0c;分为创建型、结构型、行为型三大类&#xff0c;并标注了各模式在主流框架&#xff08;如React、Vue、Spring&#xff09;中的典型应用场…...

2025 活体识别+人脸认证工具类【阿里云api,需要先申请试用】

&#xff08;1&#xff09;获取活体检测的人脸URL地址和Token。 &#xff08;2&#xff09;活体检测成功后&#xff0c;使用Token验证人脸检测结果的一致性。 &#xff08;3&#xff09;对于检测结果一致的人脸照片&#xff0c;进行姓名、身份证号和照片的认证流程。 一、活…...

【HDFS】verifyEC命令校验EC数据正确性

verifyEC命令是HDFS里用于验证EC文件正确性的一个工具。这是一个非常实用的工具,能帮助我们确定EC的数据内容是否正确,并且如果不正确的话,还有可能会触发reportBadBlock给NN,让NN进行块的重构。 本文先介绍一下verifyEC命令的使用方法,再描述其实现原理细节。 一、命令…...

【PCIE730】基于PCIe总线架构的4路10G光纤通道适配器

板卡简介 PCIE730是一款基于PCI Express总线架构的4路10G光纤通道适配器&#xff0c;板卡具有4通道SFP万兆光纤接口&#xff0c;x8 PCIE主机接口&#xff0c;具有1组64位DDR3 SDRAM作为高速缓存&#xff0c;可以实现4通道光纤网络数据的高速采集、实时记录和宽带回放。 该板卡还…...

蚂蚁全媒体总编刘鑫炜再添新职,出任共工新闻社新媒体研究院院长

2025年4月18日&#xff0c;共工新闻社正式宣布聘任蚂蚁全媒体总编刘鑫炜为新媒体研究院院长。此次任命标志着刘鑫炜在新媒体领域的专业能力与行业贡献再次获得权威机构认可。 刘鑫炜深耕新媒体领域多年&#xff0c;曾担任中国新闻传媒集团新媒体研究院院长、蚂蚁全媒体总编等职…...

C++11——可调用对象

目录 lambda 表达式语法 捕捉列表 function bind 调整参数个数 参数顺序 lambda 表达式语法 lambda表达式本质上是匿名函数对象&#xff0c;该表达式在语法使用层是没有类型的&#xff0c;一般用auto或模板参数定义的对象去接收它的对象&#xff08;模板参数定义的对象…...

【上位机——MFC】运行时类信息机制

运行时类信息机制的使用 类必须派生自CObject类内必须添加声明宏DECLARE_DYNAMIC(theClass)3.类外必须添加实现宏 IMPLEMENT_DYNAMIC(theClass,baseClass) 具备上述三个条件后&#xff0c;CObject::IsKindOf函数就可以正确判断对象是否属于某个类。 代码示例 #include <…...

数据中的知识产权问题

首席数据官高鹏律师团队编著 数据中的知识产权问题涉及法律、技术和社会多个层面&#xff0c;其复杂性随着数据价值的提升和数字化发展日益凸显。以下是核心要点的梳理和分析&#xff1a; 一、数据本身的知识产权属性 1. 原始数据&#xff08;Raw Data&#xff09; 通常不直…...

若依框架免登陆、页面全屏显示、打开新标签页(看板大屏)

1.免登陆&#xff1a;找到项目目录下src/permission.js&#xff0c;在白名单whiteList中添加上你的看板大屏路由地址&#xff0c;这样就不会校验该路由的token&#xff08;这里我添加的是/mesBoard/mesqualityboard&#xff09;&#xff1b; 要注意的是此时免登陆进来也会报404…...

算法-策略(递归,二叉搜索)

分而治之 一个大问题不断拆成各种小问题&#xff0c;大问题与小问题的方向要一致。 递归函数(递减) 分析时间函数的两种方法&#xff1a;递归树(跟踪树) &#xff0c;代换法。 例1 例2 这里的代换法注意&#xff0c;不要轻易的把常数加在一起&#xff0c;加在一起后看不出规…...

unity TEngine学习4

上一篇我们学习了UI部分&#xff0c;这一篇我们学习其他部分&#xff0c;按照老规矩还是先打开官方文档 ResourceModule 在官方文档里介绍了当前加载的设置&#xff0c;但是我们是小白看不懂&#xff0c;那就不管他内部怎么实现的&#xff0c;我们主要看下面的代码给的方法&am…...

掌握常见 HTTP 方法:GET、POST、PUT 到 CONNECT 全面梳理

今天面试还问了除了 get 和 post 方法还有其他请求方法吗&#xff0c;一个都不知道&#xff0c;这里记录下。 &#x1f310; 常见 HTTP 请求方法一览 方法作用描述是否幂等是否常用GET获取资源&#xff0c;参数一般拼接在 URL 中✅ 是✅ 常用POST创建资源 / 提交数据&#xff…...

在线查看【免费】 mp3,wav,mp4,flv 等音视频格式文件文件格式网站

可以免费在线查看 .docx/wps/Office/wmf/ psd/ psd/eml/epub/dwg, dxf/ txt/zip, rar/ jpg/mp3 m.gszh.xyz m.gszh.xyz 免费支持以下格式文件在线查看类型 支持 doc, docx, xls, xlsx, xlsm, ppt, pptx, csv, tsv, dotm, xlt, xltm, dot, dotx, xlam, xla, pages 等 Office 办…...