大数据中的常见数据问题:独断脏

想象你刚刚入职一家声称正在进行"数字化转型"的大型企业,担任大数据开发工程师。在入职的第一周,你满怀热情,迫不及待地想要大展拳脚,用你的技能来推动公司的数据驱动决策。
image.png

目录

  • 大数据中的常见数据问题
    • 1. 独 - 数据孤岛
    • 2. 断 - 数据价值链断层
    • 3. 缺 - 标准、治理、数据等缺失
    • 4. 难 - 数据难以获取、理解和追溯
    • 5. 脏 - 数据质量差
    • 6. 安全 - 数据泄露风险
    • 总结

然而,随着你开始深入了解公司的数据基础设施和流程,你逐渐意识到面前的挑战比你预想的要大得多:

  • 你试图获取一些历史销售数据进行分析,但发现销售部门的数据存储在一个与公司主系统完全隔离的老旧数据库中。
  • 当你尝试整合来自不同部门的客户数据时,你发现每个部门都使用不同的客户ID格式,使得数据匹配变得极其困难。
  • 你编写了一个数据处理脚本,但在运行时发现大量的数据质量问题,包括缺失值、异常值和明显的错误输入。
  • 当你询问某些数据字段的含义时,没有人能给你一个明确的答案,而且你找不到任何相关的数据字典或文档。
  • 你提出要将一些敏感数据传输到云端进行处理,但IT安全团队表示严重担忧,认为这可能会带来数据泄露的风险。
  • 你开发的一个预测模型表现良好,但当你向业务部门展示时,他们表示看不懂这些数据意味着什么。

面对这些挑战,你意识到在这家公司实现真正的数据驱动决策还有很长的路要走。你决定系统地梳理这些问题,以便更好地理解和解决它们。

大数据中的常见数据问题

1. 独 - 数据孤岛

image.png

数据孤岛是指信息系统或组织单元之间无法有效共享数据的情况。这导致了重复开发和资源浪费。

例子:

  • 一家大型零售公司的销售部门和库存管理部门使用不同的系统,无法实时共享数据。
  • 政府不同部门之间的信息系统不互通,导致公民需要重复提供相同信息。

代码示例(Python):

# 销售部门的数据库
sales_db = {"product_a": {"sales": 1000, "revenue": 50000},"product_b": {"sales": 800, "revenue": 40000}
}# 库存部门的数据库
inventory_db = {"product_a": {"stock": 500},"product_b": {"stock": 200}
}# 由于数据孤岛,我们无法直接获取销售和库存的综合信息
# 需要手动整合数据
def get_product_info(product):if product in sales_db and product in inventory_db:return {"sales": sales_db[product]["sales"],"revenue": sales_db[product]["revenue"],"stock": inventory_db[product]["stock"]}return Noneprint(get_product_info("product_a"))

2. 断 - 数据价值链断层

image.png

数据价值链断层指的是数据从收集到最终利用的过程中出现断裂,导致数据价值无法充分发挥。

例子:

  • 一家电商平台收集了大量用户浏览数据,但分析团队缺乏相应的技能来解读这些数据。
  • 医疗机构收集了患者的基因数据,但缺乏将这些数据转化为个性化治疗方案的能力。

代码示例(Python):

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression# 假设我们有用户浏览数据
df = pd.DataFrame({'user_id': range(1000),'page_views': np.random.randint(1, 100, 1000),'time_spent': np.random.randint(10, 3600, 1000),'purchases': np.random.randint(0, 5, 1000)
})# 尝试建立一个预测模型
X = df[['page_views', 'time_spent']]
y = df['purchases']X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)model = LinearRegression()
model.fit(X_train, y_train)# 模型评分
print(f"Model Score: {model.score(X_test, y_test)}")# 但是,如果分析团队不理解这个模型或不知道如何解释结果,
# 那么这个模型就无法为业务决策提供有价值的指导

3. 缺 - 标准、治理、数据等缺失

这个问题涉及到数据管理的多个方面,包括缺乏统一标准、数据治理机制、必要数据、规范流程、专门组织和管理制度等。

image.png

例子:

  • 一家跨国公司在不同国家的分支机构使用不同的客户信息格式,导致数据整合困难。
  • 一个研究项目缺少关键的人口统计数据,影响了分析的准确性。

代码示例(Python):

# 假设我们有来自不同国家的客户数据,格式不统一
us_customers = [{"name": "John Doe", "phone": "1234567890"},{"name": "Jane Smith", "phone": "0987654321"}
]uk_customers = [{"full_name": "David Brown", "tel": "+44 1234567890"},{"full_name": "Emma Wilson", "tel": "+44 0987654321"}
]# 由于缺乏统一标准,我们需要手动处理数据
def standardize_customer(customer, country):if country == "US":return {"full_name": customer["name"],"phone_number": "+1 " + customer["phone"]}elif country == "UK":return {"full_name": customer["full_name"],"phone_number": customer["tel"]}# 标准化数据
standardized_customers = ([standardize_customer(c, "US") for c in us_customers] +[standardize_customer(c, "UK") for c in uk_customers]
)print(standardized_customers)

4. 难 - 数据难以获取、理解和追溯

这个问题涉及到数据的可访问性、可理解性和可追溯性。

例子:

  • 一家公司的历史数据存储在旧系统中,新员工难以访问和理解这些数据。
  • 一个数据分析项目中的某些结果无法追溯到原始数据源,影响了结果的可信度。
    image.png

代码示例(Python):

import hashlib
import json
from datetime import datetimeclass DataRecord:def __init__(self, data, source):self.data = dataself.source = sourceself.timestamp = datetime.now().isoformat()self.hash = self._calculate_hash()def _calculate_hash(self):record = json.dumps({"data": self.data, "source": self.source, "timestamp": self.timestamp})return hashlib.sha256(record.encode()).hexdigest()def __str__(self):return f"Data: {self.data}, Source: {self.source}, Timestamp: {self.timestamp}, Hash: {self.hash}"# 创建一些数据记录
record1 = DataRecord("User A purchased Product X", "Sales System")
record2 = DataRecord("Product X inventory decreased by 1", "Inventory System")print(record1)
print(record2)# 这种方法可以帮助追踪数据的来源和变化,但仍然需要额外的系统来管理这些记录

5. 脏 - 数据质量差

数据质量问题包括不准确、不完整、不一致、重复等情况。

image.png

例子:

  • 客户数据库中存在大量重复或过时的联系信息。
  • 传感器数据中包含异常值,影响了数据分析的准确性。

代码示例(Python):

import pandas as pd
import numpy as np# 创建一个包含一些"脏"数据的DataFrame
df = pd.DataFrame({'name': ['John', 'Jane', 'John', 'Bob', 'Alice', np.nan],'age': [30, 25, 30, -5, 200, 35],'email': ['john@example.com', 'jane@example', 'john@example.com', 'bob@example.com', 'alice@example.com', 'invalid']
})print("Original data:")
print(df)# 数据清洗
def clean_data(df):# 删除重复行df = df.drop_duplicates()# 处理缺失值df['name'] = df['name'].fillna('Unknown')# 修正异常值df.loc[df['age'] < 0, 'age'] = np.nandf.loc[df['age'] > 120, 'age'] = np.nan# 验证邮箱格式df['valid_email'] = df['email'].str.contains(r'[^@]+@[^@]+\.[^@]+')return dfcleaned_df = clean_data(df)
print("\nCleaned data:")
print(cleaned_df)

6. 安全 - 数据泄露风险

数据安全问题涉及未经授权的访问、数据泄露、隐私保护等方面。

image.png

例子:

  • 一家公司的客户信息数据库被黑客入侵,导致敏感信息泄露。
  • 医疗机构的患者记录在未经适当加密的情况下通过不安全的网络传输。

代码示例(Python):

import bcrypt
import os
from cryptography.fernet import Fernet# 模拟用户数据
user_data = {"username": "john_doe","password": "password123","email": "john@example.com","credit_card": "1234-5678-9012-3456"
}# 1. 安全存储密码
def hash_password(password):salt = bcrypt.gensalt()return bcrypt.hashpw(password.encode(), salt)user_data["password"] = hash_password(user_data["password"])# 2. 加密敏感信息
def encrypt_data(data):key = Fernet.generate_key()fernet = Fernet(key)return fernet.encrypt(data.encode()), keyuser_data["credit_card"], encryption_key = encrypt_data(user_data["credit_card"])print("Secured user data:")
print(user_data)
print(f"Encryption key: {encryption_key}")# 注意: 在实际应用中,加密密钥应该安全存储,而不是打印出来

总结

image.png

  1. 独(数据孤岛):

    • 问题: 信息系统或部门间数据无法有效共享
    • 后果: 重复开发,资源浪费
    • 解决思路: 建立统一的数据平台,打破部门壁垒
  2. 断(数据价值链断层):

    • 问题: 数据收集到利用过程中出现断裂
    • 后果: 数据价值无法充分发挥
    • 解决思路: 建立完整的数据分析流程,提升数据分析能力
  3. 缺(标准、治理等缺失):

    • 问题: 缺乏统一标准、治理机制、必要数据等
    • 后果: 数据管理混乱,难以整合和利用
    • 解决思路: 制定数据标准,建立数据治理体系
  4. 难(数据难以获取、理解和追溯):

    • 问题: 数据访问困难,缺乏文档,来源不明
    • 后果: 数据使用效率低,结果可信度受质疑
    • 解决思路: 改善数据访问机制,完善元数据管理
  5. 脏(数据质量差):

    • 问题: 数据不准确、不完整、不一致、重复等
    • 后果: 影响分析结果的准确性和可靠性
    • 解决思路: 建立数据质量管理体系,定期清洗和验证数据
  6. 安全(数据泄露风险):

    • 问题: 数据面临未授权访问、泄露等安全威胁
    • 后果: 可能导致隐私泄露,造成经济和声誉损失
    • 解决思路: 实施严格的数据安全措施,如加密、访问控制等

这些问题往往是相互关联的,需要从技术、管理、政策等多个角度综合考虑,建立完善的数据治理体系来解决。有效的数据管理不仅可以提高数据质量和可用性,还能显著提升组织的决策能力和竞争力。

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

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

相关文章

如何搜索查找ICLR论文

记录有几个查找顶级会议文章的网址&#xff0c;不止ICLR ICLR 2024 还会有visualization模式&#xff1a; ICLR 2024 virtual 这个网站也很棒 Paper Copilot ICLR 2024 当然还有一个用图表示各论文相关关系的网站&#xff1a; connected papers

WACV2023论文速览Attention注意力机制相关

Paper1 ScoreNet: Learning Non-Uniform Attention and Augmentation for Transformer-Based Histopathological Image Classification 摘要原文: Progress in digital pathology is hindered by high-resolution images and the prohibitive cost of exhaustive localized an…

2、图形验证码

1、图形验证码设计 1.1思路 现今&#xff0c;市面上的图形验证码付费的&#xff0c;免费的多种多样&#xff0c;主要形式有滑动拼图、文字点选、语序点选、字体识别、空间推理、智能随机等。 而处理也分为web端和sever端两部分 此处以免费的kaptcha 为例&#xff0c;进行数字图…

电机控制杂谈——增量式的预测电流控制的优势在哪?

1.前言 前几天看到这么个问题。“模型预测控制如何消除静态误差” 评论说用增量式的预测控制。 这个回答让我想起来我大四下看的这篇论文。现在都一百多被引用了。 但是苦于当时能力有限&#xff0c;没办法复现这个文章。 所以现在想重新验证一下。 2.静态误差和电机磁链有…

BulingBuling - 作息安排 [Reset Your Routine] - 1

The Blinkist Team: [ Reset Your Routine ] 如果你发现自己很难按部就班&#xff0c;或者陷入工作效率低的困境&#xff0c;那么你可能需要重新调整一下作息时间&#xff01;从睡眠和营养&#xff0c;到待办事项和井井有条--本指南为你提供了各种技巧和策略&#xff0c;让你的…

自然之美无需雕琢

《自然之美&#xff0c;无需雕琢 ”》在这个颜值至上的时代&#xff0c;但在温馨氛围中&#xff0c;单依纯以一种意想不到的方式&#xff0c;为我们诠释了自然之美的真谛。而医生的回答&#xff0c;如同一股清流耳目一新。“我说医生你看我这张脸&#xff0c;有没有哪里要动的。…

【数据结构(邓俊辉)学习笔记】高级搜索树01——伸展树

文章目录 1. 逐层伸展1. 1 宽松平衡1. 2 局部性1. 3 自适应调整1. 4 逐层伸展1. 5 实例1. 6 一步一步往上爬1. 7 最坏情况 2. 双层伸展2.1 双层伸展2.2 子孙异侧2.3 子孙同侧2.4 点睛之笔2.5 折叠效果2.6 分摊性能2.7 最后一步 3 算法实现3.1 功能接口3.2 伸展算法3.3 四种情况…

linux下的网络编程

网络编程 1. 网络基础编程知识1.1网络字节序问题1.2 常用socket编程接口1.2.1 sockaddr1.2.2 ip地址转换函数1.2.4 socket()1.2.3 bind()1.2.4 listen()1.2.5 accept()1.2.6 connect() 1.3 以udp为基础的客户端连接服务器的demo1.4 以udp为基础的的服务器聊天室功能demo1.5 基于…

Apispec,一个用于生成 OpenAPI(Swagger)规范的 Python 库

目录 01什么是 Apispec&#xff1f; 为什么选择 Apispec&#xff1f; 安装与配置 02Apispec 的基本用法 生成简单的 API 文档 1、创建 Apispec 实例 2、定义 API 路由和视图 3、添加路径到 Apispec 集成 Flask 和 Apispec 1、安装…

FreeU: Free Lunch in Diffusion U-Net——【代码复现】

这篇文章发表于CVPR 2024&#xff0c;官网地址&#xff1a;ChenyangSi/FreeU: FreeU: Free Lunch in Diffusion U-Net (CVPR2024 Oral) (github.com) 一、环境准备 提前准备好python、pytorch环境 二、下载项目依赖 demo下有一个requirements.txt文件&#xff0c; pip inst…

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第55课-芝麻开门(语音 识别 控制3D纪念馆开门 和 关门)

【WEB前端2024】3D智体编程&#xff1a;乔布斯3D纪念馆-第55课-芝麻开门&#xff08;语音识别控制3D纪念馆开门和关门&#xff09; 使用dtns.network德塔世界&#xff08;开源的智体世界引擎&#xff09;&#xff0c;策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtn…

2.pwn的linux基础(计算机内部数据结构存储形式)

linux基础 保护层级: 分为四个ring0-ring3 一般来说就两个&#xff0c;0和3 0为内核 3为用户 权限: 用户分为多个组 文件和目录等等的权限一般都是三个&#xff0c;即可读可写可执行。 读:R&#xff0c;写:W&#xff0c;执行:X 赋予一个可执行文件执行权限就是chmod x file…

qt 如何添加子项目

首先我们正常流程创建一个项目文件&#xff1a; 这是我已经创建好的&#xff0c;请无视红线 然后找到该项目的文件夹&#xff0c;在文件夹下创建一个文件夹&#xff0c;再到创建好的文件夹下面创建一个 .pri 文件&#xff1a; &#xff08;创建文件夹&#xff09; &#xff08…

字节跳动与南开联合开源 StoryDiffusion:一键生成漫画和视频故事的神器!完全免费!

大家好&#xff0c;我是程序员X小鹿&#xff0c;前互联网大厂程序员&#xff0c;自由职业2年&#xff0c;也一名 AIGC 爱好者&#xff0c;持续分享更多前沿的「AI 工具」和「AI副业玩法」&#xff0c;欢迎一起交流~ 漫画&#xff0c;是多少人童年的回忆啊&#xff01; 记得小学…

#数据结构 链式栈

1. 概念 链式栈LinkStack 逻辑结构&#xff1a;线性结构物理结构&#xff1a;链式存储栈的特点&#xff1a;后进先出 栈具有后进先出的特点&#xff0c;我们使用链表来实现栈&#xff0c;即链式栈。那么栈顶是入栈和出栈的地方&#xff0c;单向链表有头有尾&#xff0c;那我…

Http中get与post的区别,99%的人都理解错了吧

Get和Post是HTTP请求的两种基本方法&#xff0c;要说它们的区别&#xff0c;接触过WEB开发的人都能说出一二。 最直观的区别 就是Get把参数包含在URL中&#xff0c;Post通过request body传递参数。 你可能自己写过无数个Get和Post请求&#xff0c;或者已经看过很多权威网站总…

容器:stack

以下是关于stack容器的一些总结&#xff1a; stack容器比较简单&#xff0c;主要包括&#xff1a; 1、构造函数&#xff1a;stack [staName] 2、添加、删除元素: push() 、pop() 3、获取栈顶元素&#xff1a;top() 4、获取栈的大小&#xff1a;size() 5、判断栈是否为空&#x…

Linux运维之管道符、重定向与环境变量

前言&#xff1a;本博客仅作记录学习使用&#xff0c;部分图片出自网络&#xff0c;如有侵犯您的权益&#xff0c;请联系删除 目录 一、输入输出重定向 二、管道命令符 三、命令行的通配符 四、常用的转义字符 五、重要的环境变量 致谢 一、输入输出重定向 输入重定向是…

Python统计实战:时间序列分析之一元线性回归预测和指数曲线预测

为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能&#xff0c;从而更快地掌握解决问题所需的能力。 &#xff08;以下练习题来源于《统计学—基于Python》。请在Q群455547227下载原始数据。&#xff09; 练习题 下表是某只股票…

Mysql数据库基础操作

Mysql数据库 基本概念 内核的作用&#xff1a;调用硬件资源 数据库的作用 使用数据库可以高效且条理分明地存储数据&#xff0c;使人们能够更加迅速、方便的管理数据。 数据、表、数据库 数据 描述事物的符号记录&#xff0c;包括数字&#xff0c;文字&#xff0c;图形&…