不会提问不打紧,不敢提问才要命

最近在星球里回答了球友提出来的一些问题,我都给了回复,不经过在明确问题、探索问题的过程,对我启发挺大,特此来记录下感受和感悟。

缘起

最近新加入球友提的问题,有几次,我第一时间没看懂,甚至觉得有点奇怪。

怎么描述这种感觉呢,打个不恰当方便大家理解的比方,经过培训,我学会了做咖啡和做豆浆,并能解答如何制作这两款饮品的提问。

在我的视角里,球友的某次提问是:请问怎么用咖啡机做豆浆

比如,当被问到如何构建用户画像、标签体系,我会从经营分析的指标讲解到数据洞察需求,然后再讲解到标签,再往下拆解标签和指标的关系。

如果问,怎么做数据仓库/怎么给数仓分层,那就可以讲解事实表、维度,构建数据仓库的四个步骤,数仓分层的原因,任务调度,血缘依赖等。

经过长期学习和实践,我所掌握的知识和术语体系算是体系化的,不同场景的问题,可以用对应的术语体系结合案例讲解方法论。

而当不按我所理解的常理出牌的问题出现,一下子就把我给整蒙了,啊?这是怎么搭配到一起的?

不过,回答这样的问题反而能发现大家对于知识理解和学习的状态,或许,这才是大多数人刚进入新领域的常态。

通过沟通和交流,我收获了不少,分享给你们~

01 提问和解答的纪实案例

案例1

球友提问:

主数据和事实表的标签怎么打

听到这个问题我的反应是,嗯?主数据和事实表这俩好像不是同一个维度。这到底是要干嘛?问题描述所用的词和概念都错配了。这位球友加入星球时,有聊过自己所处的行业背景、工作经历、工作内容,正在做数据资产管理。但是我还是得回到问题现场,通过沟通确认:引发提问的真实问题是什么以及提问的原因。我问,这个问题的背景是啥?球友回复到:

1、是在做资产管理,用标签,所以才问的ODS,事实表,主数据我们是存在不同的库里面,ODS就会有来源业务系统、数据库类型这种标签,事实表就是多级业务域这种标签
2、现状问题怎么用这些标签已经设计了,无非就是淘宝那种多级目录筛选。但目前考虑只在后台表存,不做标签管理系统
3、遇到的问题目前开发没做过标签管理,觉得这种关系挺复杂的。我又想以后考虑设计标签管理产品,所以想提前把这个标签的模型想清楚,也就是标签怎么存储、后面管理标签怎么设计

经过沟通我才明白了,球友考虑的问题是多个领域结合的。更重要的是,这段的表述和我脑子里的概念、术语体系,没匹配上。如果我来描述,我可能会用【表的元数据】去描述,而不是【主数据、事实表的标签】我做了一些回复,如下:

挺有意思的问题。主数据,事实数据,好像不能 MECE。我们来捋清楚这两个维度的概念。

先说事实表。

数据仓库里的事实表是指各个主体发生的行为事实记录。用户注册,用户登录,用户浏览,用户收藏,用户加购,用户下单,用户支付(更多的就不列举了),全都是用户这个主体发生的行为动作,都是事实
我们可以对一些事实进行度量,也就是定义一些指标。用户登录次数、下单次数,这是行为层面的度量。还可以从时间、金钱进行度量,比如,用户浏览时间,用户下单金额。当然,你也可以把度量换成另一个词,指标。主体和主体发生的行为,以及对行为的度量,就构成了所谓的事实表。

再说主数据。

主数据的概念,是基于信息交换保证数据的一致性而提出来的,可以理解为,向谁对齐,以谁为准。
比如,一排人,站的前后位置,向右看的时候,跟最右边的人对齐,那么最右边的人所站的位置,就是其他人所有人的参考和标准。那万一,另排的标准定的定的是向左看呢?整个方阵,就可能对不齐了。主数据,是大家协商以后,选定出来的。比如,用户信息,商品信息,订单信息,这些数据对不齐,不一致,公司连最基本的账都没法算了。

大家一致觉得,用户信息表、商品表、订单表是很重要,要对齐的,就把它们定为主数据,确保数据的一致性,所有的系统用到这块数据,都要向主数据对齐。
可以看出来,事实表和主数据是有概念交集的,比如,用户注册事实表可能是一个主数据,各个系统都要使用用户最基础的信息,比如,手机号,性别,年龄,注册时间等。

最后,再说打标签。

打标签,是在一定程度上减少信息,用非常简单的标签词,来进行代指。

比如,小红书上很火热的 MBTI ,I 人和 E 人,代指的内容很多,但是只要大家亮出自己的标签,那么能够快速给人一个感觉,你是性格开朗,还是性格内向。但是,如果细究,你会发现,怎么量化这个开朗,有多开朗,就需要更加细致的事实案例来证明,比如,参加了多少次陌生人社交活动,主动加过多少人,主动发言的次数。

对表进行打标签,也是一样的。核心是要看,标签用在什么场景,大家现在习惯用什么标签来定义表,以及找到这些表。如果说是对表进行标签类目管理,可以考虑两个标签,是否主数据,是否事实表。业务域、业务过程、主题、所属分层,是可以给事实表的标签。主体类型,重要程度,是可以给主数据打的标签

我以为讲解完主数据、事实表的概念和区别问题就结束了,不过球友继续问如何打标签,然后我们继续探讨如何打标签。案例2球友继续补充问题:

针对最后两句中,提到的主数据和事实表的标签。这两类标签,相当于通过2个标签的取值来判定是否添加,这两类标签相当于跟这一个标签之间有关系了,这个关系算作标签树吗?还是仅仅是标签关系,或者是标签模型?在做标签定义的时候,要每个都单独定义,还是做成分叉树呢

其实蒙了,问这干啥?怎么还提出来分叉树了...好在,我反问了下:对于标签关系,和标签树,你的理解是怎么样的?球友回复:

标签树,我理解就是一级标签、二级标签这种,比如,一级标签是表分层,值如果是事实表,二级标签就是业务域,三级标签是子业务域,但这个好像不太对;标签关系就是,标签只有一级,都是并列的,但业务域这种标签会跟表分层这个标签绑定关系,关系要单独建

我回复到:

如果标签不多,没有逻辑层面的层级分类关系,直接打平、打散,就好了。如果标签很多,可以按照维度去拆解和细分,构建标签体系树。

标签的分层、分级,跟组织架构类似,是有逻辑关系的。比如:事业部、归属事业部的一级部门、归属一级部门的二级部门

这个跟数仓里面的业务域、子业务域其实也是类似的。关键是,怎么划分业务、子业务呢?仁者见仁智者见智了

球友提问:

结构化标签体系树 跟 标签类目 应该是两个概念吧
类目,应该是这个标签属于哪个分类,比如地址信息,下面会有国家、省份、城市,他们都属于地址信息这个分类下,但同时,国家-省份-信息 构建的时候是一个结构化的标签树

听到这个问题,我又蒙了,这说了个啥问题呀,我怎么又没听懂?但我还是回复了,还给了建议(甚至还洋洋得意地举了微信标签作为案例)

标签体系树、标签类目,在我个人看来,差不多。

我觉得,你不必过多纠结这些概念了,带入场景案例去思考才比较好,以及通过真实的案例去解释这些概念,才是比较好的学习模式。就好比,我问你,什么是标签。你能列举出来N个案例,那你大概理解标签了。但是,如果你说,标签有3种,属性标签、规则标签、算法标签。

那可能还是在套概念,那如果继续追问,什么是属性标签?如果你回答很抽象,给我举例并不是你在项目里经历过、在生活里经历过的标签,那就是没实战,还停留在概念套概念阶段

举个例子,微信好友是可以打标签的吧~这种标签,是扁平化的标签,没啥逻辑关系的,对吧。抛开标签,设置朋友圈权限的时候,是否对她可见、是否看他,是不是标签?其实也是。为什么要设置是否可见?因为有的人不想被其他人看到,或者不想看到别人的发。为什么要设置标签?因为可以批量地对这些标签里的人进行设置。发朋友圈,直接勾标签。

球友回复:

嗯,就是在想一个问题,比如,我拿到一个表,如果我定义2个标签 业务域和业务子域,我知道它两个标签的值,我未必知道这两个之间的关系。

还是蒙的,因为不太知道这个问题的场景是什么?我让 ta 继续展开说说(后面我才明白)球友回复了一张图:

比如这个,在类目基础属性下,有国家、省份、城市、县区标签,是平的,没有结构。标签存储的时候,就是四个标签。有另一个地方,才会存这四类值的关系-这个关系,我在创建标签的时候,可以不考虑,只要说明是从哪个值来就可以,在检索的时候,才会调用这个关系,去查

我当时看了下,没细想然后回复了:是的。你可以去了解下层次维度。后来,又重新看了下问题,又捋了捋,举例说明了下。

之前让你看层次维度。层次维度里,典型的案例有两个。地区维度,时间维度。在创建标签,是可以不管标签的值是怎么来的,以及标签之间的逻辑关系是什么。

但是,如果要按照国家、省份、城市进行汇总统计的时候,必然要知道,国家-省份、省份-城市、城市-县区之间的层次逻辑关系,不然没办法判断标签值是否录入错误了。

比如,有个人的这四个标签值是:中国、北京、北京市、海淀区,这个逻辑是对的。如果他的标签是:中国、河北省、北京、海淀区,那就不对了。那么按照省份/直辖市汇总北京、河北省这两个地区的指标(比如,人数)时,就会汇总错误。

02 我的感受和感悟

这么长的问题沟通过程能看下来,看下来不容易,感谢~!

不知道看完你的感受如何?喜欢的话记得点赞喔,欢迎留言~

复盘来看,我觉得球友提出的这些问题,提得很好。在解答问题的过程里,也启发我不少,细讲一下。

1、没有绝对的好问题,敢于提问就很好

如果你也是数据行业从业者,回顾下自己的学习过程,就能理解提问的难。在数据领域,抽象概念和术语体系本就很多,想提问都不知道怎么提。

我刚接触数据产品的时候就是这样,弄个元数据、元元数据/元模型、元元模型结果被弄得怀疑人生。我当时也是问了很多人,用各种方式提问,看了很多资料和案例,才稍微明白一点。看了《学会提问》,我学会的不是提问的方法,而是批判性思考,面对问题要多思考,多探究,探究不下去了,就及时提问。没有傻问题,胎死腹中的问题才是最大的问题。萦绕在你脑子里的问题,因为不敢提出来,所以并没有得到很好的解决,你对世界的感知依然是抽象的、模糊的,而不是一个一个具体的案例。

2、不知道怎么说,那就带着别人一起看"现场"

从上面的案例里,你也可以看到,当我不知道球友到底在表达什么的时候,我都让ta展开说说,举例说明。当ta列举了案例和背景之后,我就大致明白到底说的是啥了。语言是抽象的,而且,很多人在被专业的术语、概念、流程教育、甚至是驯化以后,反而不知道怎么用最简单、最接地气、人人都能理解的方式进行表达了。

肚子饿了要吃饭怎么表达?用英文呢?I am hungry。如果用西班牙语、俄罗斯语呢?况且,英语要吃饭,还可以说 I need food,还可以说 I am starving(我快饿死了),不会用语言表达的时候,就用身体语言(Body Language)或许很高效。用手指指着嘴巴,或者做个往嘴里扒饭的动作,别人或许就懂了。

当我们还没有娴熟地掌握最贴切的名词、形容词来进行表达,对方不懂我们说的、理解不了是很正常的。作为咨询者,听不懂别人说的也很正常,既然听不懂,咱们可以直接到问题现场观察,反而能快速诊断发现问题。

3、人生而不同,本不存在什么放之四海而皆准的话术体系

每个人都有属于自己的观察、理解、思考、表达习惯,只有通过学习、沟通和碰撞之后,才会矛盾、冲突之后,慢慢和其他人达成一致。

有的人能力超群且德高望重,则可以引流潮流,制定术语标准,但这毕竟是少数。多数人则跟随标准和潮流,为的是对齐,核心是提高沟通效率。

我也逐渐知道,当我没了解问题时就胡乱回答,大概率是答非所问,想要回答清楚,必须帮忙先捋清问题背景

4、少扯虚头巴脑的概念,概念套概念,多讲案例,这才是真的懂了

在我不了解元数据,不了解标签之前,这些概念对我来说,就像是考试背的知识点。元数据是解释数据的数据,标签是从业务角度对数据进行的描述。

嗯,多看几次,然后呢?能解决实际问题吗?并不能。只有当你把这些概念用起来,结合工作、生活的案例理解清楚,你甚至可以不用知道这些概念的标准定义,直接上手解决问题,你就是牛的。

5、面对提问,多点耐心,教人是重新学习的机会

教是更好的学,在这么多年的学习、教学过程里,我接触到不同行业的人,发过的内容也被不同的人Diss、Challenge(有很多人吐槽内容不行、很虚了,哈哈哈)

面对问题,不泛泛其谈,而是多积累问题和案例,多洞察自己同行解决问题时的情绪,时间久了,同理心也就出来了,玻璃心也少了,在咨询和帮助别人的过程里,我学到的知识就更多了。

当自己能把一个案例讲好,帮助一个具体的人弄懂一个非常具体的知识点(对方反馈,我终于听懂了),会非常开心。当然,如果这个提问能给我带来更多的价值回报,我会更有动力,人性趋利避害。

03 最后

不是你脑子很乱,而是你想解决的问题很多。

相对于信息爆炸的世界,语言所能表达出来的内容就像是沧海一粟,书到用时方恨少,尽力表达就好~

不是你提问不好,而是别人不懂你的提问。

没有蠢问题,而是没碰到对的人,或者对方没耐心了解你的真实问题。你是问题的负责人,不要因为被拒绝被否定就质疑自己,找到对的人提问~

不是你不行,而是你没有踩上风口。

这个世界是结果导向的,能抓到耗子的就是好猫,我们会面临很多问题,但是有这些疑问和问题并不是我们不行,而是没有合适的实践机会,保持好奇,等待机会~

-推荐阅读-

CDP体系化建设1-CDP综述

数仓分层能减少重复计算,为啥能减少?如何减少?这篇文章包懂!

-链接我-

微信:lemon05140902

一个人走得快,但是一群人走得更远。欢迎链接,请写明来源:公众号-岗位

非球友的微信私信问题不会回答,如果有问题,请加入星球提问

让我们彼此尊重,一起探索有价值的问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/173593.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于自然语言处理的地铁工程车辆故障智能诊断研究

源自:《兵器装备工程学报》 作者:严硕, 徐永能, 何文韬 “人工智能技术与咨询” 发布 摘要 针对地铁工程车辆故障文本数据未得到合理利用的现象,提出了一种基于自然语言处理的故障智能诊断方法。该方法对故障文本进…

交流回馈负载的主要工作方式

交流回馈负载是一种电力电子装置,其主要工作方式是将电能从交流电源转换为直流电,然后再将直流电转换为交流电。这种转换过程是可逆的,因此可以用于调节电网的电压和频率,提高能源利用效率,减少能源浪费。 交流回馈负载…

Java(八)(可变参数,Collections,小案例:斗地主游戏小案例:斗地主游戏,Map集合,Stream流)

目录 可变参数 Collections 小案例:斗地主游戏 Map集合 Map的常用方法 map集合的遍历 键找值 键值对 Lambda 表达式 HashMap底层原理 集合的嵌套 Stream流 获取集合或数组的Stream流 Stream流的方法 可变参数 就是一种特殊的形参,定义在方法和构造器的形参列表中,…

小吉和希亦内衣洗衣机选哪个好?小型洗衣机测评对比

在生活质量不断提高的今天,人们对健康、卫生的要求也日益提高。内衣是女性的贴身衣物,它的清洁和卫生是非常重要的。尤其是小孩的衣服,毛巾,袜子等要分开洗,这样就不会和大人的衣服一起洗了,更加的卫生和方…

Android 虚拟机与类加载机制

1、Dalvik 虚拟机 Android 应用程序运行在 Dalvik/Art 虚拟机上,并且每一个应用程序都有一个单独的 Dalvik/Art 虚拟机实例。 1.1 JVM 与 Dalvik Dalvik 虚拟机也算是一个 Java 虚拟机,它是按照 JVM 虚拟机规范实现的,二者的特性差不多&am…

机器人制作开源方案 | 网球自动拾取机

作者:柳文浩、李浩杰、苏伟男、贾思萌、张天芸 单位:西安外事学院 指导老师:胡宝权、陈小虎 1. 产品说明 1.1 设计目的 近年来,网球运动越来越受到老百姓的欢迎,各种规模的比赛层出不穷。然而由于网球运动极为激烈…

Python3基础

导包 在 python 用 import 或者 from...import 来导入相应的模块。 将整个模块(somemodule)导入,格式为: import somemodule 从某个模块中导入某个函数,格式为: from somemodule import somefunction 从某个模块中导入多个函数,格式为&#…

C++基础 -4- C/C++混合编程

引用格式(图片代码段呈现) extern "C" {#include "string.h" }代码验证 (分别使用了C/C 的标准输出) #include "iostream"using namespace std;extern "C" { #include "stdio.h" #include "…

Win11修改用户名(超详细图文)

新买的电脑一般预装Windows11系统(家庭与学生版),新电脑初次开机使用微软邮箱账号登录,则系统将用户名自动设置成邮箱前5位字符。我的用户名便是一串数字【231xx】(qq邮箱前5位),看着很不舒服&a…

属性级情感分析

笔记为自我总结整理的学习笔记,若有错误欢迎指出哟~ 属性级情感分析 简介数据集介绍数据加载和预处理(data_utils.py)预训练模型(skep)模型定义模块(model.py)训练配置(config.py&am…

element 的 Notification 通知,自定义内容

通知事件: // 商户后台通知 MerchantBackgroundNotice() {// 禁止消息通知弹出多条if(this.notifyInstance) {this.notifyInstance.close();}const h this.$createElement; // 创建文本节点this.notifyInstance this.$notify({showClose: false, // 禁止关闭按钮…

vue随意置换页面元素位置

写在前面,博主是个在北京打拼的码农,从事前端工作5年了,做过十多个大大小小不同类型的项目,最近心血来潮在这儿写点东西,欢迎大家多多指教。 对于文章中出现的任何错误请大家批评指出,一定及时修改。有任何…

Redis Cluster主从模式详解

在软件的架构中,主从模式(Master-Slave)是使用较多的一种架构。主(Master)和从(Slave)分别部署在不同的服务器上,当主节点服务器写入数据时,同时也会将数据同步至从节点服…

图解算法数据结构-LeetBook-树03_层序遍历奇数偶数行方向不同

一棵圣诞树记作根节点为 root 的二叉树,节点值为该位置装饰彩灯的颜色编号。请按照如下规则记录彩灯装饰结果: 第一层按照从左到右的顺序记录 除第一层外每一层的记录顺序均与上一层相反。即第一层为从左到右,第二层为从右到左。 示例 1&…

自动化测试-Selenium

一. Selenium介绍 selenium 是用来做web自动化测试的框架,支持各种浏览器,各种,支持各种语言 原理: 二. 元素定位 2.1 XPath 定位 绝对路径: /html/head/title 相对路径以双斜杠开头,常见的相对路径定位有以下几种: <1>相对路径索引: 索引是从1开始的 <2>相…

探索深度学习:从理论到实践的全面指南

探索深度学习&#xff1a;从理论到实践的全面指南 摘要&#xff1a; 本文旨在提供一个关于深度学习的全面指南&#xff0c;带领读者从理论基础到实践应用全方位了解这一技术。我们将介绍深度学习的历史、基本原理、常用算法和应用场景&#xff0c;并通过Python代码示例和Tens…

讯飞星火知识库文档问答Web API的使用(二)

上一篇提到过星火spark大模型&#xff0c;现在有更新到3.0&#xff1a; 给ChuanhuChatGPT 配上讯飞星火spark大模型V2.0&#xff08;一&#xff09; 同时又看到有知识库问答的web api&#xff0c;于是就测试了一下。 下一篇是在ChuanhuChatGPT 中单独写一个基于星火知识库的内容…

【Android Jetpack】Navigation的使用

引入 单个Activity嵌套多个Fragment的UI架构模式&#xff0c;非常非常普遍。但是&#xff0c;对Fragment的管理一直是一件比较麻烦的事情。工程师需要通过FragmentManager和FragmentTransaction来管理Fragment之间的切换。页面的切换通常还包括对应用程序App bar的管理、Fragme…

[个人笔记] Zabbix实现Webhook推送markdown文本

系统工程 - 运维篇 第四章 Zabbix实现Webhook推送markdown文本 系统工程 - 运维篇系列文章回顾Zabbix实现Webhook推送markdown文本前言实施步骤 Zabbix新增报警媒介类型Zabbix给用户新增报警媒介Zabbix修改动作的执行操作和恢复操作验证&测试 参考来源 系列文章回顾 第一章…

探索RockPlus SECS/GEM平台 - 赋能半导体行业设备互联

SECS/GEM协议&#xff0c;全称为半导体设备通讯标准/通用设备模型&#xff08;SECS/Generic Equipment Model&#xff09;&#xff0c;是一种广泛应用于半导体制造行业的通信协议。它定义了半导体设备与工厂主控系统&#xff08;如MES&#xff09;之间的通信方式&#xff0c;使…