---
order: 3
navTitle: 数据连接
indexTitle: 连接数据
---
# 连接数据

数据加工和分析需要连接已存在的数据，通常是业务系统的数据或文件数据，业务系统数据一般存储在关系型数据库中。对于存储在json文件中的，也可以通过[脚本数据加工](../data-process/transform/script.md)的方式获取数据。

在数据模块下，点击**新建**，可以选择不同的连接方式：

1. [数据库连接](#连接关系型数据库)
2. [上传数据文件](#上传数据文件)

![连接业务数据](./images/2020-04-10-14-17-12.png)

## 连接关系型数据库{#connect-database}

数据存储在关系型数据库时，用此方式连接关系型数据库，即先在系统中建立一个到数据库的数据源配置，建立之后可随时对该数据库中的物理表进行加工处理。

切换至**数据**页，点击**新建**>**数据库连接**，在弹出框中新建数据库连接，详见[数据源管理](./datasources.md)。连接建立后，可在数据源列表中选中该数据库，用户可查看库中的物理表，并对其进行加工或导入等操作。详见[引入待加工数据](../data-process/add-data.md)。

若之前已建立过该数据库连接（可在**项目设置**中查看，详见[数据源管理](./datasources.md)），则无需重复建立，只需要在项目设置中设置项目可以使用该数据源即可，设置方式详见[项目数据管理设置](../project-manage/data-mgr-setting.md#data-sources)。

![连接关系型数据库](./images/2020-04-10-14-19-57.png)

## 上传数据文件{#upload-data-file}

用于将本地的excel/csv等存储的数据文件上传到系统中作为数据源，如果文件较大还可以压缩成zip或rar格式上传。

1. **数据**>**新建**>**上传数据文件**，点击**上传**按钮选择文件或者直接把文件拖入。
2. 上传完成的文件存储在文件数据源目录下，用户可对其进行加工。详见[引入待加工数据](../data-process/add-data.md)

![上传数据文件](./images/2020-04-10-14-20-50.png)

## 连接任意位置的数据或文件{#connect-any-data}

对于存储在非关系型数据库的数据，比如存储nosql数据、ldap数据、json数据或者在互联网网页上的数据，可以编写脚本代码获取这些数据（详见[数据加工脚本组件](../dev/script/backend/etl-script-node.md)）。以下两种方式最为常见：

[解析json数据](#解析json数据)
[爬取网页数据](#爬取网页数据)

### 解析json数据{#parsing-json}

数据是json格式的，可以使用[脚本](../data-process/transform/script.md)的方式解析json数据用于可视化分析。例如文件中电影的男女主角姓名、演员姓名等信息就是以json的形式储存的，通过脚本解析后就可以输出为易于分析的数据。

![](./images/2020-04-23-18-17-43.png)

示例地址：[脚本组件](https://demo.succbi.com/v5/DEMO/data?:open=YuDsNh6mhFIA7ol1XHXuUD&:expandIds=KRSzynxUulEotgoUevK4sB%3BIqAQaqJPUmKsDd2XUtHtJE)

### 爬取网页数据{#crawling-web-data}

需要定时从互联网网页上获取数据，可以使用脚本的方式爬取。例如从丁香医生网页上每天爬取最新的疫情数据，并存储到本地数据库中。

![](./images/2020-04-23-16-48-14.png)

示例地址：[爬取全球疫情数据](https://demo.succbi.com/v5/DEMO/data?:open=Cc5RIVUAw8BJdBAeQSePF&:expandIds=IqAQaqJPUmKsDd2XUtHtJE)
