NLP项目数据仓库

架构图

外源数据

  • 外源数据的来源有:人工录入、购买、爬虫、日志、历史数据…
  • 数据类型:关系型数据库(MySQL…)、文本文件(txt、xlsx、pdf、doc…)、图片、音频、邮件、非关系型数据库(ElasticSearch…)、接口传输(json)…

原始层

  • 将外源数据迁移至统一的数据库(如Oracle),按照该库的储存方式(如关系数据库)进行储存。
  • 字段名尽量要不变,数据要全量保留,对于特殊结构如json等可整块写入CLOB。
# 不规则数据示例(json)
{'province': '44', 'city': ['4406', '4401']}

标准层

字段筛选

筛选业务所需的字段

字段统一

将 student_id 和 StudentId 统一成 student_id

数据统一

西红柿 --> 番茄
番茄 --> 番茄
tomato --> 番茄

枚举转换

0 --> 生果
1 --> 电气
2 --> 女装

设置增量标识

时间标识:202005091204

清洗层

  • 数据清洗:空值丢弃、空值填补…
  • 数据转换:取对数、离散化、上采样…
  • 文本清洗:字符串拼接、切割、替换、正则表达式…
  • 工人清洗:处理机器不能处理的数据

算法层

批量写入算法结果,并对算法进行可视化和评估,从而高频迭代算法。
常有删库重跑操作。

应用层

根据不同的业务需求做轻度汇总(筛选+联表->短期表);
借个图from 51CTO

前端

数据交互(对外:面向客户;对内:模型评估)
结果呈现(数据可视化、即席查询、报表系统…)

相关知识补充

数据库

按照数据结构来组织、存储和管理数据的仓库

  • 以一定方式储存(以提高增删查改的效率)
  • 能与多个用户共享
  • 具有尽可能小的冗余度(使数据存放量更大)
  • 与应用程序彼此独立

数据仓库

  • 海量的数据蕴含商业价值,而企业所关注的通常只是总量的一小部分。数据仓库是把数据转换为知识的一种主要技术手段。
  • 数据仓库是一个面向主题的、集成的、随时间变化的、但信息本身相对稳定的数据集合,用于对管理决策过程的支持。
  • 特点
    1 面向主题
    2 集成的:把不同源的数据集成到一起
    3 相对稳定的:所涉及的数据操作主要是数据查询,单个的删除操作较少
    4 存储较冗余但查询效率较高:典型的空间换时间思想
    5 数据存储单位按照日、周、月、季度、年等各种级别划分,能反映历史变化

数据库和数据仓库的区别

区别 数据库 数据仓库
性质 软件技术 数据集合
用途 事务处理 数据分析
存储方式 紧致 冗余
数据操作 增删查改 查询为主
查询 简单查询 复杂查询
数据粒度 细致的 集成的
时间敏感度 实时的 允许延时
单次处理量

元数据(metadata)

又称中介数据、中继数据,是描述数据的数据
功能有:指示存储位置、历史数据、资源查找、文件记录等…

猜你喜欢

转载自blog.csdn.net/Yellow_python/article/details/105813171