小编lef*_*oin的帖子

-hivevar和-hiveconf有什么区别?

来自hive -h:

--hiveconf <property=value>   Use value for given property
--hivevar <key=value>         Variable subsitution to apply to hive
                                  commands. e.g. --hivevar A=B
Run Code Online (Sandbox Code Playgroud)

hadoop hive hiveql

23
推荐指数
3
解决办法
2万
查看次数

如何在hive sql中将数组转换为字符串?

我想在hive中将数组转换为字符串.我想collect_set数组值转换为字符串而不用[[""]].

select actor, collect_set(date) as grpdate from actor_table group by actor;
Run Code Online (Sandbox Code Playgroud)

[["2016-07-01", "2016-07-02"]]将成为2016-07-01, 2016-07-02

arrays string hive hiveql

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

气流随机向任务发送sigterms

我遇到了气流 1.10.1 的问题。SIGTERMdag中的一些任务来自 helpers.py,据我所知,这是为工作人员执行关闭并终止所有子进程,但我只在 10 个 dag taks 中的大约 2-3 个任务中看到了这一点,并且再次运行 dag 时,接收信号的任务会发生变化。是否有一定的标准来发送这些SIGTERM信号。收到 SIGTERM 的任务的日志:

[2019-12-10 11:13:44,530] {base_task_runner.py:101} INFO - Job 25404: Subtask BS_PMU2 [2019-12-10 11:13:44,520] {settings.py:174} INFO - setting.configure_orm(): Using pool settings. pool_size=5, pool_recycle=3600
[2019-12-10 11:13:45,489] {base_task_runner.py:101} INFO - Job 25404: Subtask BS_PMU2 [2019-12-10 11:13:45,488] {__init__.py:51} INFO - Using executor CeleryExecutor
[2019-12-10 11:13:45,934] {base_task_runner.py:101} INFO - Job 25404: Subtask BS_PMU2 [2019-12-10 11:13:45,933] {models.py:271} INFO - Filling up the DagBag from /home/centos/airflow/dags/61b6c300e82643b0f294df6f.py
[2019-12-10 11:13:46,580] {base_task_runner.py:101} INFO …
Run Code Online (Sandbox Code Playgroud)

python apache celery airflow

13
推荐指数
1
解决办法
2491
查看次数

flutter pub run build_runner 构建不起作用

运行 flutter pub run build_runner build 时出现此错误。

Failed to build build_runner:build_runner:
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/analyzer-0.41.2/lib/src/error/best_practices_verifier.dart:258:50: Error: The property 'displayString' is defined in multiple extensions for 'TargetKind' and neither is more specific.
 - 'TargetKind' is from 'package:meta/meta_meta.dart' ('../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/meta-1.7.0/lib/meta_meta.dart').
Try using an explicit extension application of the wanted extension or hiding unwanted extensions from scope.
        var kindNames = kinds.map((kind) => kind.displayString).toList()
                                                 ^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/analyzer-0.41.2/lib/src/error/best_practices_verifier.dart:1950:14: Context: This is one of the extension members.
  String get displayString {
             ^^^^^^^^^^^^^
../../snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/meta-1.7.0/lib/meta_meta.dart:91:14: Context: This is one of the extension members. …
Run Code Online (Sandbox Code Playgroud)

dart dart-pub flutter dart-null-safety flutter-hive

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

如何在 hive 中创建一个空的结构数组?

我有一个视图Hive 1.1.0,基于条件,它应该返回一个空数组或一个数组struct<name: string, jobslots: int>

这是我的代码:

select
      case when <condition> 
             then array()
           else array(struct(t1.name, t1.jobslots))
       end
from table t1;
Run Code Online (Sandbox Code Playgroud)

这里的问题是,空数组array()的类型是array<string>。因此,当我尝试将其插入表中时,它会引发错误。

如何更改它以返回类型为空的数组,array<struct<name: string, jobslots:int>>以便Hive's size()函数在该数组上返回 0?

sql arrays struct hive hiveql

11
推荐指数
1
解决办法
3545
查看次数

HIVE - INSERT OVERWRITE vs DROP TABLE + CREATE TABLE + INSERT INTO

我正在hive中做一些自动脚本的几个查询,我们发现我们需要时间清理表中的数据并插入新的数据.我们在想什么可能更快?

INSERT OVERWRITE TABLE SOME_TABLE
    SELECT * FROM OTHER_TABLE;
Run Code Online (Sandbox Code Playgroud)

或者更快这样做:

DROP TABLE SOME_TABLE;
CREATE TABLE SOME_TABLE (STUFFS);
INSERT INTO TABLE
    SELECT * FROM OTHER_TABLE;
Run Code Online (Sandbox Code Playgroud)

运行查询的开销不是问题.由于我们也有创建脚本o.问题是,INSERT OVERWRITE十亿行的速度比DROP + CREATE + INSERT INTO

hive create-table

10
推荐指数
2
解决办法
2万
查看次数

Flutter hivebox HiveError:框已关闭

我正在使用此功能来确保正确打开和关闭盒子,但我仍然收到HiveError: Box has already been closed.错误

static Future<Box<dynamic>> openIt() async {
    var connectionBox = await Hive.openBox(hiveBox);
    if (Hive.isBoxOpen(hiveBox) == false) {
      await Hive.openBox(hiveBox);
     
    } else {
      await connectionBox.close();
      connectionBox = await Hive.openBox(hiveBox);
      
    }

    return connectionBox;
  } 
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题。

flutter flutter-hive

10
推荐指数
1
解决办法
2228
查看次数

HIVE使用json格式插入覆盖目录

如何使用json架构插入覆盖目录?

有生蜂巢avro表; (这实际上有很多领域)

tb_test--------
name string
kickname string
-----------------
Run Code Online (Sandbox Code Playgroud)

然后我想通过jsonserde将查询结果保存到hdfs中的某个目录中.

我试过这个.

insert overwrite directory '/json/'
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
WITH SERDEPROPERTIES (
 "stat_name"="$._col0",
 "stat_interval"="$._col1"
)
STORED AS TEXTFILE 
select name, nickname
from tb_test limit 100
Run Code Online (Sandbox Code Playgroud)

但在/ json /中写入json有_colXX字段名而不是原始字段名.

{"_col0":"basic_qv"," _col1":"h"}
{"_col0":"basic_qv","_col1 ":"h"}
{"_col0":"basic_qv","_col1 ":"h"}
{"_col0":"basic_qv"," _col1":"h"}
{"_col0":"basic_qv","_col1 ":"h"}
Run Code Online (Sandbox Code Playgroud)

我期望

{"name":"basic_qv","nickname":"h"}
{"name":"basic_qv","nickname":"h"}
{"name":"basic_qv","nickname":"h"}
{"name":"basic_qv","nickname":"h"}
{"name":"basic_qv","nickname":"h"}
Run Code Online (Sandbox Code Playgroud)

有什么用呢?

谢谢!!

json hadoop hive hiveql

9
推荐指数
1
解决办法
1448
查看次数

HIVE 中的 TIMESTAMP 格式问题

我有从 JSON 文件创建的 Hive 表。

CREATE external TABLE logan_test.t1 (
   name string,
   start_time timestamp
   )
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
WITH SERDEPROPERTIES (
  "timestamp.formats" = "yyyy-MM-dd'T'HH:mm:ss.SSSSSS"
)
LOCATION 's3://t1/';
Run Code Online (Sandbox Code Playgroud)

我的时间戳数据的格式为yyyy-MM-dd'T'HH:mm:ss.SSSSSS.

我为页面中给出的时间戳格式指定了 SERDEPROPERTIES。 https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types#LanguageManualTypes-TimestampstimestampTimestamps

创建语句成功执行但select *失败并出现以下错误。

HIVE_BAD_DATA:解析字段 1 的字段值 '2017-06-01T17:51:15.180400' 时出错:时间戳格式必须为 yyyy-mm-dd hh:mm:ss[.ffffffffff]

hadoop hive create-table cloudera hiveql

9
推荐指数
1
解决办法
3078
查看次数

“无法从空字符串创建路径”使用 S3 路径在 hive 中出现“CREATE TABLE AS”错误

我正在尝试使用 hive 在 EMR 中运行的 Spark 中使用来自 Spark 的 s3 路径位置在 Glue 目录中创建一个表。我已尝试以下命令,但出现错误:

pyspark.sql.utils.AnalysisException:u'java.lang.IllegalArgumentException:无法从空字符串创建路径;'

sparksession.sql("CREATE TABLE IF NOT EXISTS abc LOCATION 's3://my-bucket/test/' as (SELECT * from my_table)")

sparksession.sql("CREATE TABLE abcSTORED AS PARQUET LOCATION 's3://my-bucket/test/' AS select * from my_table")

sparksession.sql("CREATE TABLE abcas SELECT * from my_table USING PARQUET LOCATION 's3://my-bucket/test/'")

有人可以建议我缺少的参数吗?

hive amazon-web-services pyspark aws-glue-data-catalog aws-glue-spark

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