小编Sur*_*aja的帖子

Hadoop客户端节点配置

假设有一个Hadoop集群有20台机器.在这20台机器中,18台机器是从机,机器19用于NameNode,机器20用于JobTracker.

现在我知道必须在所有这20台机器上安装hadoop软件.

但我的问题是将文件xyz.txt加载到Hadoop集群中涉及哪台机器.该客户机是否是一台单独的机器.我们是否也需要在该clinet机器中安装Hadoop软件.客户端机器如何识别Hadoop集群?

hadoop

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

如何在hive中同时删除所有分区?

Hive 1.1版

我有一个蜂巢外部表如下

 CREATE EXTERNAL TABLE `schedule_events`(
  `schedule_id` string COMMENT 'from deserializer',
  `service_key` string COMMENT 'from deserializer',
  `event_start_date_time` string COMMENT 'from deserializer',
  `event_id` string COMMENT 'from deserializer',
  `event_type` string COMMENT 'from deserializer',
  `transitional_key` string COMMENT 'from deserializer',
  `created_date_time` string COMMENT 'from deserializer',
  `bus_date` string COMMENT 'from deserializer')
    PARTITIONED BY (
                    `year` string,
                    `month` string,
                    `day` string)
   ROW FORMAT SERDE
   'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
   STORED AS INPUTFORMAT
   'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat'
   OUTPUTFORMAT
   'org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat'
   LOCATION
   'hdfs://nameservice1/hadoop/raw/omega/scheduled_events'
  TBLPROPERTIES (
    'avro.schema.url'='hdfs:////hadoop/raw/omega/schema/schedule_events.avsc',
   'transient_lastDdlTime'='1505742141')
Run Code Online (Sandbox Code Playgroud)

现在要删除一个特定的分区,我可以运行ALTER命令,如下所示

 ALTER TABLE schedule_events DROP IF EXISTS PARTITION …
Run Code Online (Sandbox Code Playgroud)

hive hive-partitions

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

为什么在scala中创建List时我们需要Nil?

我在List上有一个基本问题

当我尝试使用cons运算符创建List时,我收到以下错误

scala> val someList = 1::2
<console>:10: error: value :: is not a member of Int
   val someList = 1::2
                   ^
Run Code Online (Sandbox Code Playgroud)

但是如果你看下面的话,一旦我添加了Nil,它就会起作用..

    scala> val someList = 1::2::Nil
    someList: List[Int] = List(1, 2)
Run Code Online (Sandbox Code Playgroud)

我想知道为什么在创建列表时至少需要Nil一次

Nil是数据类型吗?还是空元素?

scala list

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

在java中获取一周的第一个日期

我想获取一周的第一个日期.

我的输入将是像2014年7月26日的字符串类型".

我需要获得上述日期(2014年7月26日)的第一周日期.

我需要MM/dd/YYYY格式的输出日期.

基本上我需要输出为07/21/2014.

请给我java程序.我已经做到了这一点

SimpleDateFormat formatter1 = new SimpleDateFormat("MM/dd/yy");
String date ="07/26/2014";
    Date Currentdate = formatter1.parse(date);
    int currentday=Currentdate.getDay();


        Calendar calendar = Calendar.getInstance();
        calendar.setTime(Currentdate);
        int startDay=currentday-calendar.getFirstDayOfWeek();
        Currentdate.setDate(contacteddate.getDate()-startDay);
        System.out.println(contacteddate.getDate());
    }
Run Code Online (Sandbox Code Playgroud)

上面的代码只给我一个日期..我需要在"MM/dd/YYYY"中的日期和月份和年份请帮助

java datetime calendar date simpledateformat

7
推荐指数
2
解决办法
2281
查看次数

什么是hive命令来查看hive.exec.dynamic.partition的值

我们知道set命令用于设置属性的某些值

 hive> SET hive.exec.dynamic.partition=true;
 hive> SET hive.exec.dynamic.partition.mode=non-strict;
Run Code Online (Sandbox Code Playgroud)

但是我们如何读取上述属性的当前值

我尝试了以下命令,它不起作用

 get hive.exec.dynamic.partition
 show hive.exec.dynamic.partition
Run Code Online (Sandbox Code Playgroud)

有人可以帮助获取正确的hive命令来读取上述属性的当前值.

hive beeline hivecli

7
推荐指数
1
解决办法
4238
查看次数

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

我正在使用蜂巢 1.1

 hive> select country from releases limit 1;
 OK
 ["us","ca","fr"]
Run Code Online (Sandbox Code Playgroud)

现在 country 是 hive 中的 string 类型。如何将其转换为 Array[String]?

我试过下面的,但它抛出错误

 hive> select country, cast(country as Array[String]) from releases limit 1;
 FAILED: ParseException line 1:48 cannot recognize input near 'Array' '[' 'String' in primitive type specification
Run Code Online (Sandbox Code Playgroud)

有人可以帮我做类型转换吗?

hadoop hive

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

hadoop datacopy中的getmerge命令

我的目的是读取目录中所有以“ trans”开头的文件,并将其转换为单个文件,然后将该单个文件加载到HDFS位置

我的源目录是/ user / cloudera / inputfiles /

假设在上面的目录中,有很多文件,但是我需要所有以“ trans”开头的文件

我的目标目录是/ user / cloudera / transfiles /

所以我在下面尝试了这个命令

hadoop dfs - getmerge /user/cloudera/inputfiles/trans* /user/cloudera/transfiles/records.txt
Run Code Online (Sandbox Code Playgroud)

但以上命令不起作用。

如果我尝试下面的命令,那就可以了

hadoop dfs - getmerge /user/cloudera/inputfiles   /user/cloudera/transfiles/records.txt
Run Code Online (Sandbox Code Playgroud)

关于如何合并来自hdfs位置的某些文件并将合并的单个文件存储在另一个hdfs位置的任何建议

hadoop

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

使用命令提示符杀死 Spark 作业

从终端终止 spark 作业的命令是什么。我不想通过 spark UI 终止正在运行的 spark 作业

apache-spark

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

Spark sql 抛出 UTF8 字符串转换错误

Spark sql 窗口功能似乎无法正常工作。我正在 Hadoop 集群中运行 Spark 作业,其中 HDFS 块大小为 128 MB,Spark 版本 1.5 CDH 5.5

我正在读取 avro 文件并执行以下操作

我的要求:

如果有多条记录具有相同的 data_rfe_id,则根据最大 seq_id 和最大 service_id 取单个记录

我看到在原始数据中有些记录具有相同的 data_rfe_id 和相同的 seq_id 因此,我使用 Window 函数应用 row_number ,以便我可以使用 row_num === 1 过滤记录

我只想使用窗口函数来实现这一点。

为什么会出现这样的情况呢?

在数据框上应用窗口函数之前是否需要重新洗牌?

它仅针对某些任务抛出以下异常,并且在 4 次重复失败的任务后作业失败?

我们什么时候会遇到这种异常。

 import org.apache.spark.sql.expressions.Window
 import org.apache.spark.sql.functions.rowNumber
 .....

scala> df.printSchema
root
 |-- transitional_key: string (nullable = true)
 |-- seq_id: string (nullable = true)
 |-- data_rfe_id: string (nullable = true)
 |-- service_id: string (nullable = true)
 |-- event_start_date_time: string …
Run Code Online (Sandbox Code Playgroud)

apache-spark apache-spark-sql

5
推荐指数
1
解决办法
4712
查看次数

如何检查databricks中是否已存在目录

如何检查databricks中是否已经存在

dir = "/mnt/published/omega/omega_output"
if(dbutils.fs.exists(dir)):
 print("dir exists")
else:
 print("dir does not exists")
Run Code Online (Sandbox Code Playgroud)

这段代码向我抛出错误

'FSHandler' object has no attribute 'exists'
Run Code Online (Sandbox Code Playgroud)

azure databricks azure-databricks

5
推荐指数
1
解决办法
7657
查看次数