Skip to Content
数据管道速查手册
book

数据管道速查手册

by James Densmore
May 2025
Intermediate to advanced
276 pages
2h 34m
Chinese
O'Reilly Media, Inc.
Book available
Content preview from 数据管道速查手册

第 4 章 数据导入 数据导入:提取数据

本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com

第 3 章所述,ELT 模式是为数据分析、数据科学和数据产品而构建的数据管道的理想设计。 ELT 模式的前两个步骤,即提取和加载,统称为数据摄取。本章将讨论如何为这两个步骤设置开发环境和基础架构,并介绍从各种源系统中提取数据的具体方法。第 5 章讨论将生成的数据集加载到数据仓库中。

备注

本章中的提取和加载代码示例是完全相互分离的。第 7 章将讨论如何协调这两个步骤以完成数据摄取。

第 2 章所述,有许多类型的源系统需要提取数据,也有许多目的地需要加载数据。此外,数据的形式多种多样,所有这些都给数据采集带来了不同的挑战。

本章和下一章包括从常用系统导出和导入数据的代码示例。代码经过高度简化,只包含最低限度的错误处理。每个示例都旨在为数据摄取提供一个易于理解的起点,但功能齐全,可扩展至更多可扩展解决方案。

备注

本章的代码示例将提取的数据写入 CSV 文件,然后加载到目标数据仓库中。 有时,在加载之前以另一种格式(如 JSON)存储提取的数据更有意义。在适用的情况下,我会指出您可能需要考虑进行这种调整的地方。

第 5 章还讨论了一些可以利用的开源框架,以及为数据工程师和分析师提供 "低代码 "数据摄取选项的商业替代方案。

设置 Python 环境

接下来的所有代码示例都是用 Python 和 SQL 编写的,并使用了当今数据工程领域常见的开源框架。 为简单起见,源和目的地的数量有限。不过,在适用的情况下,我会提供如何修改类似系统的说明。

要运行示例代码,您需要一台运行 Python 3.x 的物理机或虚拟机。

如果您的机器上没有安装 Python,您可以直接从他们那里获取适用于您操作系统的发行版和安装程序。

备注

以下命令是为 Linux 或 Macintosh 命令行编写的。在 Windows 上,可能需要将 Python 3 可执行文件添加到 PATH。

在安装本章使用的库之前,最好先创建一个虚拟环境来安装它们。 为此,您可以使用一个名为virtualenv 的工具。virtualenv 对于管理不同项目和应用程序的 Python 库很有帮助。它允许您在项目的特定范围内安装 Python 库,而不是全局安装。首先,创建一个名为env 的虚拟环境。

$ python -m venv env

虚拟环境已创建,请使用以下命令激活它:

$ source env/bin/activate

您可以通过两种方式验证虚拟环境是否已激活。首先,您会注意到命令提示符现在以环境名称为前缀:

(env) $

您还可以使用which python 命令来验证 Python 在哪里寻找库。您应该会看到类似下面的内容,它显示了虚拟环境目录的路径:

(env) $ which python
env/bin/python

现在可以安全地安装后续代码示例所需的库了。

备注

在某些操作系统 (OS) 上,必须使用python3 而不是python 才能运行 Python 3.x 可执行文件。旧版本的操作系统可能默认使用 Python 2.x。您可以通过键入python --version 查找您的操作系统使用的 Python 版本。

在本章中,您将使用pip 安装代码示例中使用的库。 pip是大多数 Python 发行版随附的工具。

使用pip 安装的第一个库是configparser ,它将用于读取稍后添加到文件中的配置信息。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

What Employees Want Most in Uncertain Times

What Employees Want Most in Uncertain Times

Kristine W. Powers, Jessica B.B. Diaz
What Successful Project Managers Do

What Successful Project Managers Do

W. Scott Cameron, Jeffrey S. Russell, Edward J. Hoffman, Alexander Laufer

Publisher Resources

ISBN: 9798341657809