Flat files upload(本地文件数据上载)(二)

通常步骤:(不一定必须按照此步骤执行,可以调换部分步骤顺序)

1.准备CSV文件

2.写control file(CTL文件)

语法:

IMPORT DATA

INTO TABLE <schema>.<tablename> [(<field specs>)]

FROM <os_data_filename>

[RECORD DELIMITED BY '<eor>']

[FIELDS [DELIMITED BY '<eoc>']

[OPTIONALLY ENCLOSED BY '<moq>']]

[ERROR LOG <os_bad_filename>]

例子:(创建一个CTL文件带有如下代码,成为native SQL,可用文本文档然后修改文件格式即可)

IMPORT DATA

INTO TABLE S0004108322.USERS

FROM '/dropbox/S0004108322/USERS.CSV'

ERROR LOG '/dropbox/S0004108322/USERS.ERR'

此处可以省略一些不必要的参数设置(例如RECORD DELIMITED BY,FIELD DELIMITED BY 和OPTIONALLY ENCLOSED BY)因为它们默认值是:数据记录之间用逗号分开,每条记录占一行。还有一点需要注意,在LINUX操作系统中,区分大小写,所以CSV文件目录以文件名一定要注意大小写。

3.将CSV文件、CTL文件导入HANA server,可自定义文件目录。我们可以选择直接在HANA server端创建这两个文件,或者在本地创建完在导入到HANA server,导入方式可以通过FTP、SFTP或者其他方式(像远程连接桌面)导入到HANA server。(获取连接SAP HANA服务器的FTP账号的相关信息: SELECT * FROM SYSTEM.FTP_SERVER)

4.在HANA studio创建target table,当然可以通过图形化界面操作也可以通过SQL editor创建

CREATE COLUMN TABLE S0004108322.USERS (

 UID INTEGER PRIMARY KEY,

 LAST NVARCHAR(20) NOT NULL,

 FIRST NVARCHAR(20) NOT NULL,

 GENDER VARCHAR(1) NOT NULL,

 COUNTRY VARCHAR(2) NOT NULL);

5.执行import,

IMPORT FROM '/dropbox/S0004108322/USERS.CTL'

或:IMPORT FROM '/dropbox/S0004108322/USERS.CTL' WITH THREADS 10 BATCH 50000 

UPDATE S0004108322.USERS MERGE DELTA INDEX;

6.检查导入结果,可以检查target table内容,也可以检查导入日志,第2步中的文件目录,如果导入成功,日志为空,如果有错误,请查看

http://wiki.sdn.sap.com/wiki/display/inmemory/Common+Import+Errors

转载于:https://www.cnblogs.com/sap-BI/p/3151934.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值