主頁 >  其他 > 數倉中指標-標簽,維度-度量,自然鍵-代理鍵等各名詞深度決議

數倉中指標-標簽,維度-度量,自然鍵-代理鍵等各名詞深度決議

2021-09-10 07:16:50 其他

作為一個資料人,是不是經常被各種名詞圍繞,是不是對其中很多概念認知模糊,有些詞雖然只有一字之差,但是它們意思完全不同,今天我們就來了解下數倉建設及資料分析時常見的一些概念含義及它們之間的關系,

本文首發于公眾號【五分鐘學大資料

本文結構如下圖所示:

一、數倉中常見概念決議

1. 物體

物體是指依附的主體,就是我們分析的一個物件,比如我們分析商品的銷售情況,如華為手機近半年的銷售量是多少,那華為手機就是一個物體;我們分析用戶的活躍度,用戶就是一個物體,當然物體也可以現實中不存在的,比如虛擬的業務物件,活動,會員等都可看做一個物體,

物體的存在是為了業務分析,作為分析的一個篩選的維度,擁有描述自己的屬性,本身具有可分析的價值

2. 維度

維度就是看待問題的角度,分析業務資料,從什么角度分析,就建立什么樣的維度,所以維度就是要對資料進行分析時所用的一個量,比如你要分析產品銷售情況,你可以選擇按商品類別來進行分析,這就構成一個維度,把所有商品類別集合在一起,就構成了維度表,

3. 度量

度量是業務流程節點上的一個數值,比如銷量,價格,成本等等,

事實表中的度量可分為三類:完全可加,半可加,不可加

  1. 完全可加的度量是最靈活,最有用的,比如說銷量,銷售額等,可進行任意維度匯總;

  2. 半可加的度量可以對某些維度匯總,但不能對所有維度匯總,差額是常見的半可加度量,它除了時間維度外,可以跨所有維度進行加法操作;

  3. 還有一種是完全不可加的,例如:比率,對于這類非可加度量,一種好的方法是,盡可能存盤非可加度量的完全可加分量,并在計算出最終的非可加事實前,將這些分量匯總到最終的結果集中,

4. 粒度

粒度就是業務流程中對度量的單位,比如商品是按件記錄度量,還是按批記錄度量,

在數倉建設中,我們說這是用戶粒度的事實表,那么表中每行資料都是一個用戶,無重復用戶;例如還有銷售粒度的表,那么表中每行都是一條銷售記錄,

選擇合適的粒度級別是資料倉庫建設好壞的重要關鍵內容,在設計資料粒度時,通常需重點考慮以下因素:

  1. 要接受的分析型別、可接受的資料最低粒度和能存盤的資料量;

  2. 粒度的層次定義越高,就越不能在該倉庫中進行更細致的分析;

  3. 如果存盤資源有一定的限制,就只能采用較高的資料粒度劃分;

  4. 資料粒度劃分策略一定要保證:資料的粒度確實能夠滿足用戶的決策分析需要,這是資料粒度劃分策略中最重要的一個準則

5. 口徑

口徑就是取數邏輯(如何取數的),比如要取的數是10歲以下兒童中男孩的平均身高,這就是統計的口徑,

6. 指標

指標是口徑的衡量值,也就是最后的結果,比如最近七天的訂單量,一個促銷活動的購買轉化率等,

一個指標具體到計算實施,主要有以下幾部分組成:

  • 指標加工邏輯,比如count ,sum, avg

  • 維度,比如按部門、地域進行指標統計,對應sql中的group by

  • 業務限定/修飾詞,比如以不同的支付渠道來算對應的指標,微信支付的訂單退款率,支付寶支付的訂單退款率 ,對應sql中的where,

除此之外,指標本身還可以衍生、派生出更多的指標,基于這些特點,可以將指標進行分類:

  • 原子指標:基本業務事實,沒有業務限定、沒有維度,比如訂單表中的訂單量、訂單總金額都算原子指標;

業務方更關心的指標,是有實際業務含義,可以直接取資料的指標,比如店鋪近1天訂單支付金額就是一個派生指標,會被直接在產品上展示給商家看,
但是這個指標卻不能直接從數倉的統一中間層里取數(因為沒有現成的事實欄位,數倉提供的一般都是大寬表),需要有一個橋梁連接數倉中間層和業務方的指標需求,于是便有了派生指標

  • 派生指標維度+修飾詞+原子指標, 店鋪近1天訂單支付金額中店鋪是維度,近1天是一個時間型別的修飾詞,支付金額是一個原子指標;

維度:觀察各項指標的角度;
修飾詞:維度的一個或某些值,比如維度性別下,男和女就是2種修飾詞,

  • 衍生指標:比如某一個促銷活動的轉化率就是衍生指標,因為需要促銷投放人數指標促銷訂單數指標進行計算得出,

7. 標簽

標簽是人為設定的、根據業務場景需求,對目標物件運用一定的演算法得到的高度精煉的特征標識,可見標簽是經過人為再加工后的結果,如網紅、白富美、蘿莉,對于有歧義的標簽,我們內部可進行標簽區分,比如:蘋果,我們可以定義蘋果指的是水果,蘋果手機才指的是手機,

8. 自然鍵

由現實中已經存在的屬性組成的鍵,它在業務概念中是唯一的,并具有一定的業務含義,比如商品ID,員工ID,

以數倉角度看,來自于業務系統的識別符號就是自然鍵,比如業務庫中員工的編號,

9. 持久鍵

保持永久性不會發生變化,有時也被叫做超自然持久鍵,比如身份證號屬于持久鍵,

自然鍵和持久鍵區別:舉個例子就明白了,比如說公司員工離職之后又重新入職,他的自然鍵也就是員工編號發生了變化,但是他的持久鍵身份證號是不變的,

10. 代理鍵

就是不具有業務含義的鍵,代理鍵有許多其他的稱呼:無意義鍵、整數鍵、非自然鍵、人工鍵、合成鍵等,

代理鍵就是簡單的以按照順序序列生產的整數表示,產品行的第1行代理鍵為1,則下一行的代理鍵為2,如此進行,代理鍵的作用僅僅是連接維度表和事實表

11. 退化維度

退化維度,就是那些看起來像是事實表的一個維度關鍵字,但實際上并沒有對應的維度表,就是維度屬性存盤到事實表中,這種存盤到事實表中的維度列被稱為退化維度,與其他存盤在維表中的維度一樣,退化維度也可以用來進行事實表的過濾查詢、實作聚合操作等,

那么究竟怎么定義退化維度呢?比如說訂單id,這種量級很大的維度,沒必要用一張維度表來進行存盤,而我們進行資料查詢或者資料過濾的時候又非常需要,所以這種就冗余在事實表里面,這種就叫退化維度,citycode這種我們也會冗余在事實表里面,但是它有對應的維度表,所以它不是退化維度

12. 下鉆

這是在資料分析中常見的概念,下鉆可以理解成增加維的層次,從而可以由粗粒度到細粒度來觀察資料,比如對產品銷售情況分析時,可以沿著時間維從年到月到日更細粒度的觀察資料,從年的維度可以下鉆到月的維度、日的維度等,

13. 上卷

知道了下鉆,上卷就容易理解了,它倆是相逆的操作,所以上卷可以理解為刪掉維的某些層,由細粒度到粗粒度觀察資料的操作或沿著維的層次向上聚合匯總資料,

二、數倉概念之間關系

1. 物體表,事實表,維度表之間的關系

在Kimball維度建模中有維度與事實,在Inmon范式建模中有物體與關系,如果我們分開兩種建模方式看這些概念比較容易理解,但是目前也出現了不少混合建模方式,兩種建模方式結合起來看,這些概念是不是容易記憶混亂,尤其事實表和物體表,它們之間到底有怎樣區別與聯系,先看下它們各自概念:

  1. 維度表:維度表可以看成是用戶用來分析一個事實的視窗,它里面的資料應該是對事實的各個方面描述,比如時間維度表,地域維度表,維度表是事實表的一個分析角度,

  2. 事實表:事實表其實就是通過各種維度和一些指標值的組合來確定一個事實的,比如通過時間維度,地域組織維度,指標值可以去確定在某時某地的一些指標值怎么樣的事實,事實表的每一條資料都是幾條維度表的資料和指標值交匯而得到的,

  3. 物體表:物體表就是一個實際物件的表,物體表放的資料一定是一條條客觀存在的事物資料,比如說各種商品,它就是客觀存在的,所以可以將其設計一個物體表,實時表只描述各個事物,并不存在具體的事實,所以也有人稱物體表是無事實的事實表,

舉個例子:比如說手機商場中有蘋果手機,華為手機等各品牌各型號的手機,這些資料可以組成一個手機物體表,但是表中沒有可度量的資料,某天蘋果手機賣了15臺,華為手機賣了20臺,這些手機銷售資料屬于事實,組成一個事實表,這樣就可以使用日期維度表地域維度表對這個事實表進行各種維度分析,

2. 指標與標簽的區別

  • 概念不同

指標是用來定義、評價和描述特定事物的一種標準或方式,比如:新增用戶數、累計用戶數、用戶活躍率等是衡量用戶發展情況的指標;

標簽是人為設定的、根據業務場景需求,對目標物件運用一定的演算法得到的高度精煉的特征標識,可見標簽是經過人為再加工后的結果,如網紅、白富美、蘿莉,

  • 構成不同

指標名稱是對事物質與量兩方面特點的命名;指標取值是指標在具體時間、地域、條件下的數量表現,如人的體重,指標名稱是體重,指標的取值就是120斤;

標簽名稱通常都是形容詞或形容詞+名詞的結構,標簽一般是不可量化的,通常是孤立的,除了基礎類標簽,通過一定演算法加工出來的標簽一般都沒有單位和量綱,如將超過200斤的稱為大胖子,

  • 分類不同

對指標的分類

按照指標計算邏輯,可以將指標分為原子指標、派生指標、衍生指標三種型別;

按照對事件描述內容的不同,分為程序性指標和結果性指標;

對標簽的分類

按照標簽的變化性分為靜態標簽和動態標簽;

按照標簽的指代和評估指標的不同,可分為定性標簽和定量標簽;

指標最擅長的應用是監測、分析、評價和建模,
標簽最擅長的應用是標注、刻畫、分類和特征提取,
特別需要指出的是,由于對結果的標注也是一種標簽,所以在自然語言處理和機器學習相關的演算法應用場景下,標簽對于監督式學習有重要價值,只是單純的指標難以做到的,而指標在任務分配、績效管理等領域的作用,也是標簽無法做到的,

3. 維度和指標區別與聯系

維度就是資料的觀察角度,即從哪個角度去分析問題,看待問題,

指標就是從維度的基礎上去衡算這個結果的值,

維度一般是一個離散的值,比如時間維度上每一個獨立的日期或地域,因此統計時,可以把維度相同記錄的聚合在一起,應用聚合函式做累加、均值、最大值、最小值等聚合計算,

指標就是被聚合的通計算,即聚合運算的結果,一般是一個連續的值,

4. 自然鍵與代理鍵在數倉的使用區別

數倉工具箱中說維度表的唯一主鍵應該是代理鍵而不應該是自然鍵,有時建模人員不愿意放棄使用自然鍵,因為他們希望與操作型代碼查詢事實表,而不希望與維度表做連接操作,然而,應該避免使用包含業務含義的多維鍵,因為不管我們做出任何假設最終都可能變得無效,因為我們控制不了業務庫的變動,

所以資料倉庫中維度表與事實表的每個連接應該基于無實際含義的整數代理鍵,避免使用自然鍵作為維度表的主鍵

文章都會首發在公眾號【五分鐘學大資料

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/298873.html

標籤:AI

上一篇:Python基礎學習(十)

下一篇:OpenAI 以 10 億美元出售「靈魂」,網友熱評不再「Open」

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more