标签: hive

有没有办法在Hive HQL中将两列相加到另一列?

我希望每天,每周和每月运行我发送的邮件数量.大约有500种不同的消息类型.

我有以下表格:

Table name: messages

int message_type
BIGINT num_sent
string date

Table name: stats

int message_type
BIGINT num_sent_today
BIGINT num_sent_week
BIGINT num_sent_month
Run Code Online (Sandbox Code Playgroud)

表消息每天更新,包含今天日期的新行.我可以每天运行一个单独的配置单元查询来更新stats表吗?注意我无法通过直接查询消息表来获取运行计数,WHERE date >= 30 days ago因为表太大了.我必须添加/减去表统计中的每日值.像这样的东西:

// pseudocode
// Get this table (call it table b) from table messages

   int message_type
   BIGINT num_sent_today
   BIGINT num_sent_seven_days_ago
   BIGINT num_sent_thirty_days_ago

// join b with table stats so that I can

// Set stats.num_sent_today = b.num_sent_today
// Set stats.num_sent_week = stats.num_sent_week + b.num_sent_today - b.num_sent_seven_days_ago
// Set stats.num_sent_month …
Run Code Online (Sandbox Code Playgroud)

hadoop hive mapreduce hiveql

0
推荐指数
1
解决办法
5797
查看次数

HIVE STRING到铸造日期

我在将字符串转换为日期类型时遇到问题.使用配置单元导入数据时,我有一个带有类型字符串的列activation_date(因为我无法将其作为日期类型导入),我想将其转换为日期类型.

Activation_date 7-MAR-13 12-APR-12

我想要它作为07-03-2013在蜂巢.

string hive casting date

0
推荐指数
1
解决办法
3万
查看次数

错误在LINUX COMMAND LINE运行HIVE .. java版本= 1.7,HADOOP 2.3.0,Apache HIVE 1.1.0

root@hadoop:~# hive
Run Code Online (Sandbox Code Playgroud)
Logging initialized using configuration in jar:file:/usr/lib/hive/apache-hive-1.1.0-bin/lib/hive-common-1.1.0.jar!/hive-log4j.properties
[ERROR] Terminal initialization failed; falling back to unsupported
java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
        at jline.TerminalFactory.create(TerminalFactory.java:101)
        at jline.TerminalFactory.get(TerminalFactory.java:158)
        at jline.console.ConsoleReader.<init>(ConsoleReader.java:229)
        at jline.console.ConsoleReader.<init>(ConsoleReader.java:221)
        at jline.console.ConsoleReader.<init>(ConsoleReader.java:209)
        at org.apache.hadoop.hive.cli.CliDriver.getConsoleReader(CliDriver.java:773)
        at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:715)
        at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675)
        at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:615)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:212)

Exception in thread "main" java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
        at jline.console.ConsoleReader.<init>(ConsoleReader.java:230)
        at jline.console.ConsoleReader.<init>(ConsoleReader.java:221)
        at jline.console.ConsoleReader.<init>(ConsoleReader.java:209)
        at org.apache.hadoop.hive.cli.CliDriver.getConsoleReader(CliDriver.java:773)
        at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:715)
        at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675)
        at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:615)
        at …
Run Code Online (Sandbox Code Playgroud)

hadoop hive

0
推荐指数
1
解决办法
4288
查看次数

在JDBC ResultSet元数据中获取不带表名的Hive列名

我正在尝试从a的元数据中ResultSet获取列的名称,但是在Hive中我得到列名称,如果形式table_name.column_name和我只想拥有column_name(类似于我从MySQL获得的例子).可能吗 ?

java hive jdbc

0
推荐指数
1
解决办法
3918
查看次数

了解HIVE数据库中的映射器和reducer

我正在学习班上的大数据,现在我们正在学习HIVE.我们今天了解了地图绘制器和减速器,但老实说它已经超越了我的脑海.有人可以向我解释映射器和减速器在每一步中的作用吗?或者至少指出一些好的读数?提前致谢

database hadoop hive bigdata

0
推荐指数
1
解决办法
4274
查看次数

如何让HIVE中的CREATE TABLE ... AS SELECT不填充数据?

当我在HIVE中运行CTAS时,数据也会同时填充.但我只想创建表,但不填充数据.我应该怎么做?谢谢.

hadoop hive hiveql

0
推荐指数
1
解决办法
5204
查看次数

Spark无法看到hive外部表

我是Spark和AWS的noobie.

我在AWS中有一个DynamoDB表.我在带有hive的EMR上创建了一个Spark集群.使用hive shell,我创建了外部表"RawData"以连接到DynamoDB.

现在,当我使用DynamoDB依赖jars启动spark-shell时,--jars /usr/share/aws/emr/ddb/lib/emr-ddb-hive.jar,/usr/share/aws/emr/ddb/lib/emr-ddb-hadoop.jar 我可以使用HiveContext 查询表"RawData"并获取结果.但是当我使用spark-submit提交我的Spark程序时,我在终端中看到一些spark异常,并在日志中发现:" org.apache.spark.sql.AnalysisException:没有这样的表RawData ".

这就是我创建集群的方式: aws emr create-cluster --name MyCluster --release-label emr-4.0.0 --applications Name=Spark Name=Hive ...

请告诉我我做错了什么.列夫

hadoop hive amazon-web-services emr apache-spark

0
推荐指数
1
解决办法
1402
查看次数

Oozie Java Action使用委托令牌访问Hive Server 2(Kerberized)

目前我遇到一个问题确实需要一些帮助.我们正在尝试对我们的hadoop集群进行kerberize,包括hive server2和oozie.我的oozie作业在数据节点中旋转了一个java动作,试图连接到kerberized hive服务器2.没有用户的kerberos keytab进行身份验证.所以我只能在java动作中使用oozie传递的委托令牌连接到hive服务器2.我的问题是:有没有办法在oozie java动作中使用委托令牌连接到hive服务器2?如果是这样,我怎么能通过hive JDBC做到这一点?谢谢贾里

hive delegation token oozie

0
推荐指数
1
解决办法
1218
查看次数

Hive DateTime Truncators(QUARTER,WEEK,DAYOFWEEK)?

是否有任何表达式QUARTER,WEEK以及DAYOFWEEKHive(v0.14.1)中的DateTime字段与MySql中的这些buildin函数做同样的事情?

这是我想要的规范(来自MySql doc):

季度 WEEK DAYOFWEEK

注意:1.函数quarter()是在Hive 1.3中引入的,但是我需要一个expr来支持更低版本.2.支持函数weekofyear()而不是week(),但是有一点不同.但没关系,所以请忽略这个.

sql datetime hive

0
推荐指数
1
解决办法
1万
查看次数

是否可以在SQL连接中引用数据框?

我想知道如何利用spark SQL利用内存处理.如果有的话,目前支持使用内存中对象运行spark SQL的方法是什么?

  • 是否可以将CREATE TABLE AS语句的目标作为内存中的表?

  • 是否可以在FROM子句中引用内存中的对象,如数据帧?

我目前对火花的理解是有限的,所以如果看起来太简单,请原谅我的问题.我将不胜感激任何建议或指导.

hive apache-spark apache-spark-sql spark-dataframe

0
推荐指数
1
解决办法
322
查看次数