
# 从OBS获取csv文件进行数据富化
本文档介绍如何通过资源函数和映射富化函数从OBS中获取数据对日志数据进行富化。
#### 前提条件
已上传csv文件到OBS。
#### 背景信息
OBS是华为云提供的一个高可靠、高性能、高安全的基于对象的海量存储云服务。针对更新不频繁的数据，建议您存储在OBS上，只需要支付少量的存储费用即可。当您分散存储数据，面临日志数据不完善时，您可以从OBS中获取数据。日志服务数据加工支持使用**res_obs_file** 函数从OBS中获取数据，再使用**tab_parse_csv** 函数构建表格，最后使用**e_table_map**函数进行字段匹配，返回指定字段和字段值，生成新的日志数据。
#### 实践案例
- 原始日志
  ```
  {
      "account":"Sf24asc4ladDS"
  }
  ```
  
- OBS Bucket中的CSV文件数据
  表1CSV文件数据 
  | **id** | **account**   | **nickname** |
  |:---|:---|:---|
  | 1      | Sf24asc4ladDS | 多弗朗明哥        |
  | 2      | Sf24asc4ladSA | 凯多           |
  | 3      | Sf24asc4ladCD | 罗杰           |
     
  ![](https://support.huaweicloud.com/bestpractice-lts/public_sys-resources/note_3.0-zh-cn.png)
  CSV文件需要是UNIX文件格式，windows文件格式暂不支持。
  
- 加工规则 通过原始日志中的account字段和OBS CSV文件中的account字段进行匹配，只有account字段的值完全相同，才能匹配成功。匹配成功后，返回OBS CSV文件中的nickname字段和字段值，与原始日志中的数据拼接，生成新的数据。
  ```
  e_table_map(tab_parse_csv(res_obs_file("https://obs.xxx.myhuaweicloud.com","dsl-test-xx","data.csv")),"account","nickname")
  ```
  res_obs_file函数重要字段说明如下表所示，更多参数说明请参见[资源函数](https://support.huaweicloud.com/usermanual-lts/lts_07_0147.html)。
  
  | **字段**   | **说明**                                  |
  |:---|:---|
  | endpoint | obs访问域名，详情请参见res_obs_file。              |
  | bucket   | 用于存储CSV文件的OBS Bucket。                   |
  | file     | 目标OBS文件的路径。例如test/data.txt，不能以正斜线（/）开头。 |
     
  
- 加工结果
  ```
  {
  "nickname": "多弗朗明哥",
  "account": "Sf24asc4ladDS"
  }
  ```
  
 
