hadoop下的存储在hdfs中的视频文件怎么播放?

问题描述

hadoop下的存储在hdfs中的视频文件怎么播放?

hadoop下的存储在hdfs中的视频文件怎么播放?可以直接拿到视频文件的http路径吗,我现在想实现的是像百度云这样的可以在线播放,但是不知道怎么得到文件的路径,而hdfs提供的API只有上传下载文件这些,对于这样的问题要怎么解决呢??

解决方案

你需要用HDFS API来获取

 package org.myorg.hdfsdemo;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

public class HdfsDemo {

    public static void main(String[] args) throws IOException {

        Configuration conf = new Configuration();
        conf.addResource(new Path("/Users/miqbal1/hadoop-eco/hadoop-1.1.2/conf/core-site.xml"));
        conf.addResource(new Path("/Users/miqbal1/hadoop-eco/hadoop-1.1.2/conf/hdfs-site.xml"));
        FileSystem fs = FileSystem.get(conf);
        System.out.println("Enter the directory name :");
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        Path path = new Path(br.readLine());
        displayDirectoryContents(fs, path);
    }

    private static void displayDirectoryContents(FileSystem fs, Path rootDir) {
        // TODO Auto-generated method stub
        try {

            FileStatus[] status = fs.listStatus(rootDir);
            for (FileStatus file : status) {
                if (file.isDir()) {
                    System.out.println("This is a directory:" + file.getPath());
                    displayDirectoryContents(fs, file.getPath());
                } else {
                    System.out.println("This is a file:" + file.getPath());
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

解决方案二:

hdfs支持随机读文件
http://blog.csdn.net/xhh198781/article/details/6944516
http://shiyanjun.cn/archives/962.html

解决方案三:

hadoop存储视频文件

时间: 2024-10-31 00:56:24

hadoop下的存储在hdfs中的视频文件怎么播放?的相关文章

win7电脑中的视频无法缓冲播放怎么办?

  win7电脑中的视频无法缓冲播放怎么办?那么遇到这样的问题,我们要怎么办呢? 第一种情况:视频无法缓冲,可能是因为视频对应的写入磁盘空间不足造成的,所以,咱们遇到这样的问题,首先就可以去检查一下,视频对应的目录或者是磁盘空间是否存在红色告急的状态.如果是这样的话,咱们可以选择一个比较大的目录作为缓存空间. 第二种情况:网络限制.大家应该遇到这样的情况,比如说在公司,开启其他的程序就很快,但是遇到这种视频网站的时候就会很慢,其实,这便是因为有人设置了网络限制的原因,这个就需要修改设置了,不然的

在网页页面中嵌入视频文件

网页|页面 <object id="MediaPlayer" width="478" height="300" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf. cab#Version=6,1,5,217" type="application/x-oleobject" standby="L

在PowerPoint2013中插入视频文件

  ①启动PowerPoint2013,单击菜单栏--插入--媒体--PC上的视频. ②弹出本地对话框,选取一个视频文件打开. ③主页面显示视频文件,单击播放按钮. ④视频开始播放,这样就实现了视频的插入.

暴风影音播放列表中的视频不按顺序播放怎么办

请调整播放列表的循环模式为"顺序播放".(播放列表区域点击鼠标右键)   如果调整为顺序了话还是不可以我们可以尝试一下把暴风影音播放器重启一下,也就是退出再进入看看.

Hadoop中使用FileStatus类来查看HDFS中文件或目录的元信息

Hadoop中的FileStatus类可以用来查看HDFS中文件或者目录的元信息,任意的文件或者目录都可以拿到对应的FileStatus, 我们这里简单的演示下这个类的相关API: /* */ package com.charles.hadoop.fs; import java.net.URI; import java.sql.Timestamp; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.F

《Hadoop MapReduce实战手册》一2.11 在HDFS中合并文件

2.11 在HDFS中合并文件 Hadoop MapReduce实战手册本节将传授如何合并HDFS中的若干文件,以创建一个单独的文件.对于获取有多个输出部分结果的reducer的MapReduce作业的计算结果来说,这招非常有用. 操作步骤HDFS的getMerge命令可以将HDFS中给定路径下的文件,复制到本地文件系统的单个合并后的文件中. >bin/hadoopfs -getmerge /user/foo/demofiles merged.txt 工作原理getmerge命令的语法如下: h

hadoop-mysqldump之后的文件直接放入hdfs中

问题描述 mysqldump之后的文件直接放入hdfs中 我现在使用的是一种曲线办法,先把mysqldump的文件放在tmp中,然后用命令hadoop fs -put 放入hdfs中. 现在想问下大家有没有办法可以直接把dump的文件放入hdfs中

hive数据批量导入hbase过程中遇到分区文件不存在异常

问题描述 hive数据批量导入hbase过程中遇到分区文件不存在异常 在做一个hive数据批量导入hbase的方法,根据官方文档一步一步的做下来,但是在生成HFILE文件时却报了一个比较让人纠结的错误,在网上找了很长时间,都木有合适的答案,在hive命令行中执行的代码如下: SET mapred.reduce.tasks=5; SET hive.mapred.partitioner=org.apache.hadoop.mapred.lib.TotalOrderPartitioner; SET t

《Hadoop MapReduce实战手册》一2.7 设置文件冗余因子

2.7 设置文件冗余因子 Hadoop MapReduce实战手册HDFS跨集群存储文件时,会把文件切分成粗粒度的.大小固定的块.出于容错的目的,这些粗粒度的数据块会被复制到不同的DataNode中.数据块的冗余有助于增加数据本地化MapReduce计算的能力,同时也可以增加总的数据访问带宽.减少冗余因子则有助于节省HDFS上的存储空间. HDFS冗余因子(HDFS replication factor)是文件级属性,可以基于每个文件进行单独配置.本节将展示如何通过改变HDFS部署的默认冗余因子