ApacheDrill-通过CTAS创建自己的表

ApacheDrill-通过CTAS创建自己的表,apache,apache-drill,Apache,Apache Drill,CTAS命令是:创建新表\u表\u名称为; 然而,在创建表之前,我必须创建模式。我不能这样做,而且我不能使用现有模式,因为对于每个已安装的模式,我都会得到错误: 模式cp是不可变的。因此,解决方案是创建新模式。问题是我找不到这个命令的任何示例 根据,使用CTA只能在工作区中创建新表。不能在其他存储插件(如Hive和HBase)中创建表 可以使用以下三种格式之一存储表数据: csv 拼花地板 json 使用CTA创建表的步骤: Set store.format: 设置创建更好地调用文件的表的位置:

CTAS命令是:创建新表\u表\u名称为; 然而,在创建表之前,我必须创建模式。我不能这样做,而且我不能使用现有模式,因为对于每个已安装的模式,我都会得到错误: 模式cp是不可变的。因此,解决方案是创建新模式。问题是我找不到这个命令的任何示例

根据,使用CTA只能在工作区中创建新表。不能在其他存储插件(如Hive和HBase)中创建表

可以使用以下三种格式之一存储表数据:

csv 拼花地板 json 使用CTA创建表的步骤:

Set store.format:

设置创建更好地调用文件的表的位置:

转到dfs插件:

在工作区中,添加可写可变工作区。例如:

 "tmp": {
     "location": "/tmp",
      "writable": true,
       } 
do notice可写:true

使用工作区:

use dfs.tmp;
发射CTAS指挥部。例如:

CREATE TABLE new_table_name AS (SELECT * FROM hive.mytable);

检查/tmp/abc目录,您将找到JSON文件。

您需要使用dfs或任何其他使用本地文件系统的存储插件。
例如:创建表dfs.test.temp_count user_count作为从S3设备选择t1.data作为userParams。t1限制1

该钻非常简单,并且有示例。你检查了吗?是的,但首先我必须创建模式。在你的链接中没有它。你这里所说的模式是什么意思?他们明确提到-您只能在工作区中创建新表。不能在其他存储插件(如Hive和HBase)中创建表。这里的table表示您可以创建json、csv或拼花文件,您要在哪个数据库上查询,以及在哪里创建table?创建table new_table_name作为SELECT*FROM hive.mytable。它返回一个错误,即cp是不可变的,并且对于每个现有模式都是相同的。您能告诉我:为了提高性能,是否可以将整个配置单元表缓存到内存中。现在,它太慢了。
CREATE TABLE new_table_name AS (SELECT * FROM hive.mytable);