数据通常可以分为 结构化数据(Structured Data) 和 非结构化数据(Unstructured Data),有时还会提到 半结构化数据(Semi-structured Data)。这个分类最初属于 数据库理论和数据管理 领域,如今在大数据、搜索引擎、数据仓库、机器学习、生成式 AI 等领域都被广泛使用。
结构化数据
指具有固定格式、固定字段、固定数据类型的数据。
特点:
- 数据有明确的 Schema(表结构)
- 可以直接存储在关系型数据库中
- 容易查询、统计和分析
- 通常以行和列组织
示例 — 用户表:
| id | name | age | |
|---|---|---|---|
| 1 | Tom | 18 | tom@test.com |
| 2 | Jack | 20 | jack@test.com |
SQL 查询:
SELECT * FROM user WHERE age > 18;
常见存储: MySQL、PostgreSQL、Oracle Database、Microsoft SQL Server
典型数据: 用户信息、订单数据、商品数据、财务数据、CRM 数据
半结构化数据
介于结构化和非结构化之间——没有严格表结构,但有一定组织形式。
示例 — JSON:
{
"id": 1,
"name": "Tom",
"skills": ["Java", "React"]
}
示例 — XML:
<user>
<name>Tom</name>
<age>18</age>
</user>
特点:
- 字段可以动态变化
- 有层级关系
- 比非结构化更容易解析
常见存储: MongoDB、Elasticsearch、Apache Kafka 消息体
非结构化数据
指没有固定格式的数据,无法直接用表格描述。
特点:
- 没有固定 Schema
- 内容形式丰富
- 难以直接用 SQL 查询
- 通常需要搜索、AI、NLP 等技术处理
典型数据:
- 文本: 邮件内容、聊天记录、Word 文档、PDF、网页内容
- 媒体: 图片、视频、音频
传统数据库无法直接理解非结构化数据:
SELECT * FROM photo WHERE age > 18 -- 图片本身没有 age 字段
三者对比
- 格式 — 结构化:固定 Schema / 半结构化:有结构但不固定 / 非结构化:无固定格式
- 查询 — 结构化:SQL 直接查询 / 半结构化:需解析后查询 / 非结构化:需搜索或 AI 理解
- 存储 — 结构化:关系型数据库 / 半结构化:MongoDB、ES 等 / 非结构化:文件系统、对象存储
- 示例 — 结构化:用户表、订单表 / 半结构化:JSON 日志、XML 配置 / 非结构化:图片、PDF、视频
在不同领域中的应用
数据库领域(最早、最核心)
数据库设计时的核心问题:数据是否有固定结构? 关系型数据库(MySQL、PostgreSQL)处理结构化数据;NoSQL 数据库(MongoDB)处理半结构化数据。
大数据领域
企业数据来源混合了三种类型:
| 类型 | 示例 |
|---|---|
| 结构化 | 订单表 |
| 半结构化 | JSON 日志 |
| 非结构化 | PDF、图片、视频 |
大数据平台(Hadoop、Spark、数据湖)需要统一处理这些数据。
AI / 机器学习领域
传统机器学习主要处理结构化特征(年龄、收入、学历),而大模型处理的是非结构化数据(文章、代码、图片、音频、视频)。OpenAI、Anthropic 的模型本质上都在解决 如何理解非结构化数据 的问题。
数据仓库与 BI 领域
BI 分析(Snowflake、Tableau、Power BI)偏好结构化数据(销售额、用户数、留存率),但企业大量数据(客服聊天记录、会议录音、用户评价)是非结构化的,需要先处理再分析。
搜索引擎领域
搜索引擎(Elasticsearch、Google)主要处理网页、文档、邮件、日志等非结构化数据。
AI 为什么特别擅长处理非结构化数据?
传统数据库擅长精确查询:
SELECT * FROM user WHERE age > 18;
但不擅长语义理解:
找出和"前端工程化"相关的所有文档
大模型可以把文本、图片、音频、视频转换成 向量(Embedding),从而理解内容。
例如用户上传 1000 份 PDF,传统数据库无法理解文档含义,而 AI 可以回答:
"哪些文档提到了微前端架构?"
如果你最近在接触 RAG、向量数据库、知识库、AI Agent,“非结构化数据”这个概念会频繁出现,因为这些技术的核心目标就是让机器能够理解和利用非结构化数据。
一句话理解
- 结构化数据:像 Excel 表格,列和字段固定。
- 半结构化数据:像 JSON,可以有结构但不固定。
- 非结构化数据:像图片、视频、文档、聊天记录,没有固定字段,需要搜索或 AI 理解内容。