标签: hdfs

有没有办法将节点添加到正在运行的Hadoop集群?

我一直在玩Cloudera,我在开始工作之前定义了簇的数量,然后使用cloudera管理器确保一切都在运行.

我正在开发一个新项目,而不是使用hadoop使用消息队列来分配工作,但工作结果存储在HBase中.我可能会启动10个服务器来处理作业并存储到Hbase但是我想知道我以后是否决定添加更多的工作节点我可以轻松(读取:可编程)使它们自动连接到正在运行的集群,以便它们可以在本地添加集群HBase/HDFS?

这有可能吗?为了做到这一点,我需要学习什么?

hadoop hbase cluster-computing hdfs cloudera

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

在将平面文件中的数据加载到配置单元表时获取空值

我将平面文件中的数据加载到配置单元表时获取空值.
我的表结构是这样的:

hive> create table test_hive (id int,value string);
Run Code Online (Sandbox Code Playgroud)

我的平面文件是这样的:input.txt

1   a
2   b
3   c
4   d
5   e
6   F
7   G
8   j
Run Code Online (Sandbox Code Playgroud)

当我运行以下命令时,我得到空值:

hive> LOAD DATA LOCAL INPATH '/home/hduser/input.txt' OVERWRITE INTO TABLE test_hive;
hive> select * from test_hive;
OK<br>
NULL    NULL
NULL    NULL
NULL    NULL
NULL    NULL
NULL    NULL
NULL    NULL
NULL    NULL
NULL    NULL
Run Code Online (Sandbox Code Playgroud)

屏幕截图:

hive> create table test_hive (id int,value string);
OK
Time taken: 4.97 seconds
hive> show tables;
OK
test_hive
Time taken: 0.124 …
Run Code Online (Sandbox Code Playgroud)

null hadoop hive flat-file hdfs

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

列出API调用的Hadoop文件系统中的通配符

tl;dr:为了能够在列出的路径中使用通配符(globs),只需使用globStatus(...)而不是listStatus(...).


上下文

我的HDFS集群上的文件按分区进行组织,日期为"根"分区.文件结构的简化示例如下所示:

/schemas_folder
??? date=20140101
?   ??? A-schema.avsc
?   ??? B-schema.avsc
??? date=20140102
?   ??? A-schema.avsc
?   ??? B-schema.avsc
?   ??? C-schema.avsc
??? date=20140103
    ??? B-schema.avsc
    ??? C-schema.avsc
Run Code Online (Sandbox Code Playgroud)

就我而言,该目录在不同日期存储不同类型数据(本例中A,B和C)的Avro模式.随着时间的推移,模​​式可能会开始存在,发展并停止存在.


目标

我需要能够尽快获得给定类型的所有模式.在我希望得到类型A存在的所有模式的示例中,我想执行以下操作:

hdfs dfs -ls /schemas_folder/date=*/A-schema.avsc
Run Code Online (Sandbox Code Playgroud)

那会给我

Found 1 items
-rw-r--r--   3 user group 1234 2014-01-01 12:34 /schemas_folder/date=20140101/A-schema.avsc
Found 1 items
-rw-r--r--   3 user group 2345 2014-01-02 23:45 /schemas_folder/date=20140102/A-schema.avsc
Run Code Online (Sandbox Code Playgroud)

问题

我不想使用shell命令,似乎无法在Java API中找到与上面的命令等效的东西.当我尝试自己实现循环时,我的表现非常糟糕.我至少想要命令行的性能(在我的情况下大约3秒)......


到目前为止我发现了什么

人们可以注意到它 …

java hadoop wildcard hdfs

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

如何将数据从一个HDFS复制到另一个HDFS?

我有两个HDFS设置,并希望将一些表从HDFS1复制(不迁移或移动)到HDFS2.如何将数据从一个HDFS复制到另一个HDFS?是否可以通过Sqoop或其他命令行?

hadoop bigdata hdfs sqoop

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

SparkSQL - 直接读取镶木地板文件

我正在从Impala迁移到SparkSQL,使用以下代码读取表:

my_data = sqlContext.read.parquet('hdfs://my_hdfs_path/my_db.db/my_table')
Run Code Online (Sandbox Code Playgroud)

我如何调用上面的SparkSQL,因此它可以返回如下内容:

'select col_A, col_B from my_table'
Run Code Online (Sandbox Code Playgroud)

hive scala hdfs apache-spark apache-spark-sql

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

在HDFS上删除超过10天的文件

有没有办法在HDFS上删除超过10天的文件?

在Linux中我会使用:

find /path/to/directory/ -type f -mtime +10 -name '*.txt' -execdir rm -- {} \;
Run Code Online (Sandbox Code Playgroud)

有没有办法在HDFS上执行此操作?(根据文件创建日期删除)

hadoop hdfs

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

端口9000拒绝hadoop连接

我想在伪分布式模式下设置一个hadoop-cluster进行开发.由于端口9000上的连接被拒绝,尝试启动hadoop集群失败.

这些是我的配置(非常标准):

网站core.xml:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value>
  </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>~/hacking/hd-data/tmp</value>
  </property>
  <property>
    <name>fs.checkpoint.dir</name>
    <value>~/hacking/hd-data/snn</value>
  </property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

HDFS-site.xml中

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <property>
    <name>dfs.name.dir</name>
    <value>~/hacking/hd-data/nn</value>
  </property>
  <property>
    <name>dfs.data.dir</name>
    <value>~/hacking/hd-data/dn</value>
  </property>
  <property>
    <name>dfs.permissions.supergroup</name>
    <value>hadoop</value>
  </property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

haddop-env.sh - 这里我只将配置更改为IPv4模式(参见最后一行):

# Set Hadoop-specific environment variables here.

# The only required environment variable is JAVA_HOME.  All others are
# optional.  When running a distributed configuration it is best to
# set JAVA_HOME …
Run Code Online (Sandbox Code Playgroud)

java ubuntu hadoop hdfs

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

在执行BufferedReader.close()时Hadoop FileSystem关闭了异常

在Reduce设置方法中,我试图关闭一个BufferedReader对象并获得一个FileSystem封闭的异常.它不会一直发生.这是我用来创建的代码片段BufferedReader.

    String fileName = <some HDFS file path>
    Configuration conf = new Configuration();
    FileSystem fs = FileSystem.get(conf);
    Path hdfsPath = new Path(filename);
    FSDataInputStream in = fs.open(hdfsPath);
    InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
    BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
Run Code Online (Sandbox Code Playgroud)

我从bufferedReader读取内容,一旦完成所有读取,我就关闭它.

这是读取它的代码段

String line;
while ((line = reader.readLine()) != null) {
    // Do something
}
Run Code Online (Sandbox Code Playgroud)

这段关闭读者的代码.

    if (bufferedReader != null) {
        bufferedReader.close();
    }
Run Code Online (Sandbox Code Playgroud)

这是我执行时发生的异常的堆栈跟踪bufferedReader.close().

我,[2013-11-18T04:56:51.601135#25683]信息 - :attempt_201310111840_142285_r_000009_0:at org.apache.hadoop.hdfs.DFSClient.checkOpen(DFSClient.java:565)

我,[2013-11-18T04:56:51.601168#25683]信息 - :attempt_201310111840_142285_r_000009_0:at org.apache.hadoop.hdfs.DFSInputStream.close(DFSInputStream.java:522)

I,[2013-11-18T04:56:51.601199#25683] INFO - :attempt_201310111840_142285_r_000009_0:at …

java hadoop mapreduce hdfs

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

Hadoop 2.2.0中HDFS的配置文件在哪里?

我正在研究Hadoop,目前我正在尝试建立一个Hadoop 2.2.0单节点.我下载了最新的发行版,未压缩它,现在我正在尝试设置Hadoop分布式文件系统(HDFS).

现在,我正在尝试遵循这里提供的Hadoop指令,但我很遗憾.

在左侧栏中,您会看到对以下文件的引用:

  • 核心default.xml中
  • HDFS-default.xml中
  • mapred-default.xml中
  • 纱default.xml中

但这些文件是怎样的?

我找到了/etc/hadoop/hdfs-site.xml,但它是空的!

我找到了/share/doc/hadoop/hadoop-project-dist/hadoop-common/core-default.xml,但它只是一个文档!

那么,我需要修改哪些文件才能配置HDFS?从哪里读取deaults值?

在此先感谢您的帮助.

configuration hadoop configuration-files hdfs

14
推荐指数
3
解决办法
5万
查看次数

使用Python3与HDFS交互的最佳模块是什么?

我看到有hdfs3,snakebite和其他一些.哪一个是最好的支持和全面的?

hdfs python-3.x python-hdfs

14
推荐指数
3
解决办法
8562
查看次数