大數據測試/ETL開發,如何造測試數據

相信很多的小伙伴,有些是大數據測試崗位,有些是ETL開發,都面臨著如何要造數據的情況。

1,造數背景

【大數據測試崗位】,比較出名的就是寧波銀行,如果你在寧波銀行做大數據開發,對著需求開發完代碼之后,可能需要把代碼提交給測試人員,那么測試人員會根據這個業務需求,他們會自己造一批數據,然后看看你的sql腳本,是不是有一些明顯的sql錯誤,以及開發規范的問題。當然,還有最重要的一點是,他們會拿著你的腳本取跑數,看看的出來的數據是不是符合業務的邏輯與需求。

如果是【ETL開發崗位】,那么在你連通了HIVE和其他的數據庫(比如說,Oracle,mysql,kingbases等等),接著你把代碼也開發好了,那么怎么判斷你的數據是不是ETL到目標數據庫里面了呢?當然是自己先在源數據庫里造一批數據,然后走調度跑腳本,如果不報錯的情況下,我們再到目標數據庫里查看一下,我們之前造的數據是不是ETL過去了。

如果是【大數據開發崗位】,那基本不咋造數據,因為在測試環境,就是有測試數據,還有生產上來的脫敏數據。這些都是可以拿來借鑒參考開發的。

2,造數階段

那么如何造數呢??直接上 HUE 摸魚兒展示一下

一張圖拿捏:

3,造數代碼

--如果是分區表(直接建立分區,同時往該分區插入數據)insert into  table xxxx partiton ( dt = '2024-05-27' )(字段1,字段2,字段3......)values (值1,值2,值3.......)  , (值4,值5,值6.......)--如果不是分區表insert into  table xxxx (字段1,字段2,字段3......)values (值1,值2,值3.......), (值4,值5,值6.......)

4,造數邏輯

當然,造數代碼不難,但是數據可不是瞎造的,其中還是有一定的講究。

1,首先,你得先了解整個需求文檔,它的數據的最細粒度是什么??

比如說一個客戶對應多個資金賬號,那么你就按照最細粒度來造數。

可以造3條數據,一個客戶對應3個不同的資金賬號。

2,其次,根據需求文檔的某些特殊字段進行窮舉

比如說,客戶類型字段,總共分為3個,個人客戶,機構客戶,產品客戶。

這個時候,你可以發散出3條數據,窮舉出來。

3,也可以根據數據的低概率可能性造數

比如,非主鍵字段,可以故意設置一些null值。

比如,要算一個完成率,你可以設置分母為0的情況。

比如,一般一個員工,只能歸屬于一個營業部,但是你清楚這個業務,你可以把某個客戶,分別放在2個不同的營業部下面。

4,最后,我想說,測試人員得要對業務需求文檔要有一定的理解。

清楚哪些是開發重點,哪些是爭議點,在重點之處下文章,才能取得好的效果。

只有這樣子,跑出來的數據才是全面的。你無需造數太多,但一定要麻雀雖小五臟俱全。才能叫校驗出開發代碼人員的代碼有沒有漏洞,能不能良好的實現業務需求。

==========================================================

好了,這個知識點就分享到這里。

之后看看給大家分享一下測試數據的崗位的小伙伴是怎么測試你的腳本的,有空也會分享一下ETL開發的流程。

歡迎大家點贊收藏關注,不一定很難,但都是經驗之談。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/20815.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/20815.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/20815.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數學建模 —— 層次分析法(2)

目錄 一、層次分析法(AHP) 二、構造比較判斷矩陣 2.1 兩兩比較法 三、單準則下的排序及一致檢驗 3.1 單準則下的排序 3.2 一致性檢驗 四、層次總排序 4.1 層次總排序的步驟 4.2 總排序一致性檢驗 一、層次分析法(AHP) 方…

xdp、dpdk、rdma能在同一網卡上同時使用嗎?

文心一言 XDP、DPDK和RDMA是三種不同的技術,它們各自在Linux網絡性能優化中扮演了不同的角色。關于它們能否在同一網卡上同時使用,我們需要考慮以下幾個方面: XDP(eXpress Data Path): XDP是Linux內核提供…

SVM算法-非線性分類背后技術詳解

引言 支持向量機(SVM)是一種強大的監督學習算法,廣泛應用于分類和回歸任務中。本文將詳細介紹SVM算法在非線性分類任務中的應用,并通過代碼示例來展示其背后的技術精髓。我們將分三大部分來展開,本部分將重點介紹SVM算…

銀行批量支付業務功能測試點詳細介紹

銀行批量支付業務是一種銀行業務處理方式,它允許銀行將多個支付交易合并為一個批次,然后一次性進行處理。這種方式通常用于處理大量、重復性高或定期發生的支付交易,如工資發放、定期賬單支付等。 主要作用: 提高效率&#xff1…

【C++面試50題】

以下是針對C程序員面試可能遇到的一些問題,涵蓋了從基礎語法、面向對象、STL、內存管理、模板、異常處理、并發編程等多個方面。 ### 基礎概念與語法 1. C與C的主要區別是什么? 2. 什么是構造函數和析構函數?它們何時被調用? 3. 什…

51單片機C語言編程網盤:深度探索與實用指南

51單片機C語言編程網盤:深度探索與實用指南 在嵌入式系統領域,51單片機以其廣泛的應用和穩定的性能而備受青睞。而C語言,作為一種高效且靈活的編程語言,更是單片機編程的首選工具。今天,我們將通過分享一個51單片機C語…

17、Spring系列-SpringMVC-請求源碼流程

前言 Spring官網的MVC模塊介紹: Spring Web MVC是基于Servlet API構建的原始Web框架,從一開始就已包含在Spring框架中。正式名稱“ Spring Web MVC”來自其源模塊的名稱(spring-webmvc),但它通常被稱為“ Spring MVC…

Linux 軟件安裝:從源碼編譯到包管理器安裝

Linux 軟件安裝:從源碼編譯到包管理器安裝 在 Linux 操作系統中,軟件安裝是一個非常重要的任務。不同的軟件安裝方式有不同的優缺點,本篇博客將介紹 Linux 軟件安裝的幾種方式,包括從源碼編譯安裝、使用包管理器安裝和使用第三方…

【Redis】什么是緩存雪崩 ? 怎么解決

緩存雪崩(Cache Avalanche)是指在某個時刻,大量的緩存同時失效或過期,導致大量的請求直接打到數據庫,使數據庫壓力劇增,甚至崩潰。與緩存穿透和緩存擊穿不同,緩存雪崩是多個緩存同時失效或過期引…

[AI Google] 三種新方法利用 Gemini 提高 Google Workspace 的生產力

Workspace 側邊欄中的 Gemini 現在將使用 Gemini 1.5 Pro,新的 Gemini for Workspace 功能即將登陸 Gmail 移動應用,等等。 Gemini for Google Workspace 幫助個人和企業更好地利用 Google 應用——從在 Gmail 中撰寫郵件到在 Sheets 中組織項目計劃。過…

glpi 安裝與使用

1、環境介紹 操作系統:龍蜥os 8.9 nginx:1.26.1 php:8.2.19 mysql:MarinaDB 10.3.9 glpi:10.0.6 fusioninventory:fusioninventory-10.0.61.1 2、安裝epel源 dnf install epel-release -y dnf install htt…

Mongodb安裝和簡單操作

文章目錄 1.安裝服務端1.1 官網下載,解壓安裝1.2 配置啟動 2.安裝客戶端2.1 MongoDB Shell下載安裝2.2 連接服務3.操作3.1 創建數據庫 Create a New Database and Collection3.1 Insert Documents3.2 Query Documents3.3 Update Documents3.4 Delete Documents 1.安…

Python | Leetcode Python題解之第125題驗證回文串

題目&#xff1a; 題解&#xff1a; class Solution:def isPalindrome(self, s: str) -> bool:n len(s)left, right 0, n - 1while left < right:while left < right and not s[left].isalnum():left 1while left < right and not s[right].isalnum():right - …

2010-2015 年阿拉斯加北坡苔原植物功能類型連續覆蓋圖

ABoVE: Tundra Plant Functional Type Continuous-Cover, North Slope, Alaska, 2010-2015 2010-2015 年阿拉斯加北坡苔原植物功能類型連續覆蓋圖 簡介 文件修訂日期&#xff1a;2021-08-27 數據集版本: 1 摘要 該數據集以 30 米的分辨率提供了阿拉斯加北坡約 12.5 萬平方…

UTF-64設想之排列組合

現有的UTF-8和UTF-16&#xff0c;用不同語言表示相同意思時&#xff0c;字節數相差很多。所以&#xff0c;就有了UTF-64的設想。它的設計目標是&#xff1a;不同語言表示相同意思&#xff0c;需要的字節數相差不多。 運行以下程序&#xff0c;得出所有排列組合。 import itert…

【深度學習的未來:探索無監督學習的潛力】

文章目錄 前言無監督學習的基本概念簡單的無監督學習示例&#xff1a;K-Means聚類分析代碼結論 前言 隨著深度學習技術的不斷進步&#xff0c;我們正逐漸從依賴大量標注數據的有監督學習轉向更加高效和自主的無監督學習。無監督學習旨在讓機器從數據中自行發現模式和結構&…

【RuoYi】實現文件的上傳與下載

一、前言 首先&#xff0c;最近在做一個管理系統&#xff0c;里面剛好需要用到echarts圖和富文本編輯器&#xff0c;然后我自己去看了官網覺得有點不好懂&#xff0c;于是去B站看來很多視頻&#xff0c;然后看到了up主【程序員青戈】的視頻&#xff0c;看了他講的echarts圖和富…

k8s 部署 Dashboard

Dashboard 是官方提供的一個UI&#xff0c;可用于基本管理K8s資源。 # 在master節點執行# wget \ https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.0/aio/deploy/recommended.yaml vi recommended.yaml 增加 nodePort: 30001 和 type: NodePort ...... spec:p…

一步一步寫線程之十四并行編程和并行庫

一、并行編程 多線程和多進程編程&#xff0c;在早期一般是并發編程&#xff0c;現在基本是并行編程的基礎。或者干脆就叫并行編程也沒有什么可糾結的。但實際上并發編程和并行編程還是有著很大的不同。在前面的“多核和多CPU編程”系列中&#xff0c;已經對并發和并行的概念以…

利用Python處理DAX多條件替換

小A&#xff1a;白茶&#xff0c;救命啊~~~ 白茶&#xff1a;什么情況&#xff1f; 小A&#xff1a;是這樣的&#xff0c;最近不是臨近項目上線嘛&#xff0c;有一大波度量值需要進行類似的調整&#xff0c;一個兩個倒沒啥&#xff0c;600多個&#xff0c;兄弟&#xff0c;救命…