GithubHelp home page GithubHelp logo

classicvalues / hdfs-mount Goto Github PK

View Code? Open in Web Editor NEW

This project forked from microsoft/hdfs-mount

1.0 1.0 0.0 123 KB

A tool to mount HDFS as a local Linux file system

License: Other

Go 98.50% Makefile 1.50%

hdfs-mount's Introduction

hdfs-mount

Build Status

Allows to mount remote HDFS as a local Linux filesystem and allow arbitrary applications / shell scripts to access HDFS as normal files and directories in efficient and secure way.

Features (Planned)

  • High performance
    • directly interfacing Linux kernel for FUSE and HDFS using protocol buffers (requires no JavaVM)
    • designed and optimized for throughput-intensive workloads (throughput is traded for latency whenever possible)
    • full streaming and automatic read-ahead support
    • concurrent operations
    • In-memory metadata caching (very fast ls!)
  • High stability and robust failure-handling behavior
    • automatic retries and failover, all configurable
    • optional lazy mounting, before HDFS becomes available
  • Support for both reads and writes
    • support for random writes [slow, but functionally correct]
    • support for file truncations
  • Optionally expands ZIP archives with extracting content on demand
    • this provides an effective solution to "millions of small files on HDFS" problem
  • CoreOS and Docker-friendly
    • optionally packagable as a statically-linked self-contained executable

Current state

"Alpha", under active development. Basic R/O scenarios, key R/O throughout optimizations and ZIP support are implemented and outperform existing HDFS/FUSE solutions. If you want to use the component - come back in few weeks If you want to help - contact authors

Building

Ensure that you cloned the git repository recursively, since it contains submodules. Run 'make' to build and 'make test' to run unit test. Please use Go version at least 1.6beta2. This version contains bugfix for handling zip64 archives necessary for hdfs-mount to operate normally.

Other Platforms

It should be relatively easy to enable this working on MacOS and FreeBSD, since all underlying dependencies are MacOS and FreeBSD-ready. Very few changes are needed to the code to get it working on those platforms, but it is currently not a priority for authors. Contact authors if you want to help.

hdfs-mount's People

Contributors

vlivan-microsoft avatar junjieqian avatar mradmila avatar msftgits avatar pareshverma91 avatar wangdfgithub avatar wrouesnel avatar ccl0326 avatar

Stargazers

Classic Values avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.