用 LOAD DATA INFILE 批量导入数据
功能讲解
GBase 8a 的 LOAD DATA INFILE 是数据入库的核心方式,比逐行 INSERT 快几十倍。支持从 FTP、SFTP、HTTP、HDFS 等多种协议直接读取数据文件并加载到表中,同时可以指定分隔符、字符集、空值标识等。
使用示例
-- 1. 从 FTP 加载管道符分隔的文本文件
LOAD DATA INFILE 'ftp://gbase:password@192.168.1.100/data/sales.dat'
INTO TABLE test.sales
DATA_FORMAT 3
FIELDS TERMINATED BY '|'
CHARACTER SET utf8
NULL_VALUE 'null';
-- 2. 从 SFTP 加载,自定义行分隔符和空值
LOAD DATA INFILE 'sftp://gbase:pwd123@10.133.151.118/data/order.txt'
INTO TABLE test.orders
DATA_FORMAT 3
FIELDS TERMINATED BY '|,@'
LINES TERMINATED BY '|@n'
NULL_VALUE 'gbasenull'
CHARACTER SET utf8;
-- 3. 从本地文件加载(需在每台节点上放置同名文件)
LOAD DATA INFILE 'file:///home/gbase/data/user_info.txt'
INTO TABLE test.user_info
DATA_FORMAT 3
FIELDS TERMINATED BY ','
DATETIME FORMAT '%Y-%m-%d %H:%i:%s';
参数说明
参数 含义
DATA_FORMAT 3 表示带分隔符的文本格式
FIELDS TERMINATED BY 字段分隔符
NULL_VALUE 文件中用什么字符串代表 NULL
DATETIME FORMAT 日期时间列的解析格式
评论
热门帖子
- 12025-12-01浏览数:182759
- 22023-05-09浏览数:25044
- 42023-09-25浏览数:18519
- 52020-05-11浏览数:17526