FEA从入门到精通系列 | 文本数据源加载与存储

前面已经讲过FEA原语的分类,今天将为大家讲解文本数据源的加载与存储,在讲解之前我们先总结一下FEA支持的数据源。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1

1、支持Hadoop架构的数据源,如HDFS、HBASE等。

2、支持传统关系型数据库,如Oracle、Postgres、Mysql等。使得一些不能迁入到大数据平台的数据同样可以使用FEA进行分析。

3、通过REST接口扩展,可以很好的支持第三方平台的数据,如阿里云的大数据开放处理平台ODPS和内存数据库ADS等。

4、各种格式的文本文件的加载与存储。

多种数据源的支持,使得FEA能够接入更多类型的数据来进行关联分析、碰撞比对等运算,而不要求用户一定要进行数据的大规模整合,既降低了用户的使用成本,又发挥了多数据关联分析的价值。

一、文本数据源加载与存储语句格式

FEA支持对CSV、EXCEL、PKL等数据文件进行分析处理,可以把每一项数据记录加载到FEA引擎中。同时,也可以将FEA引擎中的数据输出为CSV、EXCEL、PKL等数据文件。那么,加载与存储FEA语句的格式是什么呢?见下图:

115232_nrbs_3115904.png115459_9NPO_3115904.png

二、文本数据源加载详解

以下是FEA 文本格式加载原语的示例,见下图:

115232_Jpq8_3115904.png115520_32zf_3115904.png

在加载LOG\CSV等文件格式时,经常会加入参数sep=”$”,encoding=‘utf8’,header=-1

那么,这些参数到底表示什么意义呢?

听我娓娓道来。

1、encoding参数

一般来讲Windows操作系统的文件默认编码方式为gbk,而Linux操作系统的文件默认编码方式为utf8,FEA分析工具在读取用户上传的数据文件时默认的解码方式是gbk。用户上传编码方式为utf8的数据文件后,FEA分析工具在对该数据文件进行加载时,原语必须加上with (encoding=‘utf8’)子句,以方便FEA用uft8进行文件解码。

2、sep参数

FEA分析工具加载csv文件时,默认的分隔符为","(即 with (sep=','))。如果用户在加载csv文件时以’|’为分隔符,那么就是sep='|'。如果加载文本文件整一行,就用文本不存在的特殊字符。

3、 header参数

加载csv文件时,默认为header=0,即csv文件内容的第一行为列名;如果CSV文件第一行不是列名而是数据,这时可以设置为header=-1,此时生成的DF表将从0开始按顺序生成列名。

三、文本数据源存储详解

以下是FEA 文本格式存储原语的示例,见下图:

115616_lYfN_3115904.png115232_gtY4_3115904.png

在你存储完结果数据并下载查看时,你经常会发现文件会多出index列,那么我们怎么去除这一列呢?

技巧在Index参数这里,格式如下:

index=True 或者index=False

其中,默认设置为True,如果不想带index可设置为False。

注意index参数,只在store命令中生效。

四、其他

随着FEA的发展,对文件编码的识别将变的自动化,将来encoding参数会使用的比较少。如果你一定要强制设置文件编码格式,需要将encoding参数放置在最前面。

请同学们赶紧按照本武功心法,回家练习基础功,等你练到第三层,我们就可以出师征战大数据分析了。下次我们将讲NOSQL数据库的装载,请期待!

 

往期精彩文章:

FEA从入门到精通系列 | 基础原语分类

转载于:https://my.oschina.net/u/3115904/blog/819852

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值