加载数据
适用于:砖运行时
将数据加载到一个蜂巢SerDe表从用户指定的目录或文件。如果指定一个目录然后从目录中所有的文件被加载。如果指定一个文件只有单一文件加载。此外,负载数据
声明需要一个可选的分区规范。当指定一个分区,数据文件(当输入源目录)或单个文件(当输入源文件)加载到目标表的分区。
如果缓存表,表的命令清除缓存数据及其家属,引用它。缓存会懒洋洋地填在表或家属下次访问。
参数
路径
路径的文件系统。它可以是一个绝对或相对路径。
标识表插入。必须不包含一个名称时间规范。如果表不能发现砖了TABLE_OR_VIEW_NOT_FOUND错误。
一个可选参数,指明目标分区的插入。你也只是部分指定分区。
当地的
如果指定,它导致
INPATH
对本地文件系统得到解决,而不是默认的文件系统,这是典型的分布式存储。覆盖
默认情况下,新数据添加到表中。如果
覆盖
使用,与新的数据表,而不是覆盖。
例子
——例子没有分区规范。——假设学生已经创建并填充表。>选择*从学生;的名字地址student_id- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -艾米史密斯123年公园大街,圣穆111111年>创建表test_load(的名字VARCHAR(64年),地址VARCHAR(64年),student_idINT)使用蜂巢;——假设学生表的蜂巢/ user / /仓库/>负载数据当地的INPATH/用户/蜂巢/仓库/学生覆盖成表test_load;>选择*从test_load;的名字地址student_id- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -艾米史密斯123年公园大街,圣穆111111年——与分区规范的例子。>创建表test_partition(c1INT,c2INT,c3INT)分区通过(c2,c3);>插入成test_partition分区(c2=2,c3=3)值(1);>插入成test_partition分区(c2=5,c3=6)值(4);>插入成test_partition分区(c2=8,c3=9)值(7);>选择*从test_partition;c1c2c3推荐- - - - - - - - - - - - - - -123456789>创建表test_load_partition(c1INT,c2INT,c3INT)使用蜂巢分区通过(c2,c3);——假设test_partition表是在“蜂巢/ user / /仓库/”>负载数据当地的INPATH' /用户/蜂巢/仓库/ test_partition / c2 = 2 / c3 = 3 '覆盖成表test_load_partition分区(c2=2,c3=3);>选择*从test_load_partition;c1c2c3推荐- - - - - - - - - - - - - - -123