我从MySQL导入了一个表,该表有1000万行到Hive,现在在Impala中执行一些操作来检查功能和性能。现在,当我发出以下查询时,我得到了一个错误argument of type 'NoneType' is not iterable。
select count(id) from my_table_name;
在导入数据来修复这个问题之后,我需要做些什么呢?我打算使用黑斑羚主要是为了分析的目的,所以它涉及大量的和函数。
我使用mysql将hdfs表复制到sqoop中,然后使用"create external table“命令在impala中创建同名表。
现在,我有更多的数据要插入到impala表中,使用java api of Impala,即ImpalaService.jar。请帮助我在表中使用java api插入数据。
谢谢。
我使用sqoop将数据从MySQL导入到hdfs,并将其作为片材文件,在该文件中由Impala使用。将MySQL日期类型转换为Impala时间戳存在问题。
执行compute stats table或select *时的Impala错误消息是:
File 'hdfs://....parquet'
has an incompatible type with the table schema for column 'day'.
Expected type: INT32. Actual type: INT64
将日期列的数据类型更改为BIGINT或STRING将使错
我知道在Impala (和其他数据库)中,我可以运行以下两种方式:
SHOW DATABASES
SHOW TABLES
我还知道可以添加可选的LIKE或IN参数,例如,向我展示数据库中的所有表--、香蕉、--我可以编写:
SHOW TABLES IN Bananas
我真正想知道的是一种不用递归地返回数据库中所有表的方法(也可以在单独的字段中显示数据库名和表名)。
我将通过impala shell运行这个程序,所以我必须首先返回所有的数据库名称,然后为每个数据库生成一个脚本行来给出表。
这样做并不是什么问题,我只是不由自主地想,一定有更好的方式来结束:
在Impala中,是否有一种方法可以检查数据库中哪些表包含特定的列名?
类似于:
select tablename, columnname
from dbc.columns
where databasename = 'mydatabasename'
and columnname like '%findthis%'
order by tablename
上面的查询在teradata环境中工作,但是在Impala中抛出一个错误。
谢谢,
我在Impala中创建了一个外部表。我正在编写一个shell脚本,它检查该表中是否存在特定的列。
我们可以使用以下查询在MySql中执行此操作。
SELECT *
FROM information_schema.COLUMNS
WHERE
TABLE_SCHEMA = 'db_name'
AND TABLE_NAME = 'table_name'
AND COLUMN_NAME = 'column_name'
但是,在黑斑羚,我们如何才能做到这一点?
我正在使用Imapala上的一些表,并使用jdbc配置单元驱动程序进行查询。在提取数据之前,我需要在某些表上运行刷新(或配置Impala以自动运行)。当我尝试通过jdbc驱动程序运行refresh tablename时,我做不到(因为在HIVE中这个命令不存在--我想)。我试着写了一个简单的impala-shell脚本(refresh tablename),然后像这样用curl运行,curl -i -L "http://<server>:50070/webhdfs/v1/<path to sh file>?op=OPEN"也不起作用。有人能帮我吗?谢谢!
我在hive table1有一张桌子。我正在使用impala从表中获取数据
table1
------
name, amount
其中表的值是
test1, 10
test1, 15
test1, 30
test2, 30
test2, 40
test2, 50
test3, 30
test3, 40
test3, 50
现在,我必须从table1中获取数据,这样,它才能获取所有name (test1, test2, test3) but gives only top 2 records based on amount for each name的数据。
Can it possible i
我有一个snappy.parquet文件,我想通过impala或beeline将它完整地移动到一个表中,通过以下方式创建表
CREATE EXTERNAL TABLE IF NOT EXISTS first_test LIKE PARQUET '/user/my_user/my_table/part-00000-c0544fc8-b709-4408-8e90-f0f9e4050691-c000.snappy.parquet'
由于某种原因无法工作,因为当我通过spark.read.parquet在spark中读取这个文件时,它显示为Fetched 0 row(s) in 0.3
我想在running total中实现Impala示例,如下所示:
DATE | DAY | COUNT | Total
2014-11-12 | 1 | 12 | 12
2014-11-13 | 2 | 32 | 44
2014-11-14 | 3 | 50 | 94
To solve this problem using Impala, we might need temp variable like in MySql, which Impala does not suppo