[ https://issues.apache.org/jira/browse/HDFS-8154?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14497038#comment-14497038 ]
Jakob Homan commented on HDFS-8154: ----------------------------------- Currently WebHDFS exists as a [human-readable specification|https://hadoop.apache.org/docs/r2.5.1/hadoop-project-dist/hadoop-hdfs/WebHDFS.html] and a single implementation, that provided by the NameNode and its DataNodes. We should extract WebHDFS out as a specification, which would allow easier implementation of both WebHDFS-backed servers and clients. Additionally, this would make it easier to generate documentation and verify correctness. The current human-readable spec makes it possible to implement WebHDFS clients (for example, [Perl|http://search.cpan.org/~afaris/Apache-Hadoop-WebHDFS-0.04/lib/Apache/Hadoop/WebHDFS.pm], [Python|https://pypi.python.org/pypi/pywebhdfs], [.NET|https://hadoopsdk.codeplex.com/wikipage?title=WebHDFS%20Client] , [non-Hadoop backed JVM|https://issues.apache.org/jira/browse/HADOOP-10741], etc.). However, each client must be built by someone parsing out that spec and writing up their own client implementation from scratch. There are frameworks, such as [Swagger|http://swagger.io/] and [RAML|http://raml.org/] that allow one to define a REST interface and then create documentation, generate client stubs and built tests against that framework. In addition to clients, an more programmatic WebHDFS specification would allow other backend systems to more easily implement the WebHDFS interface. Any Hadoop application would then be able to access that back end through the oah.WebHDFSFileSystem or through one of the non-JVM clients described above. This JIRA will cover specifying the WebHDFS spec in a framework like Swaggger or RAML, switching the WebHDFS documentation to be built from this so as to be authoritative, and verifying that the current implementation provided by the namenode and datanodes comports with this specification. > Extract WebHDFS protocol out as a specification to allow easier clients and > servers > ----------------------------------------------------------------------------------- > > Key: HDFS-8154 > URL: https://issues.apache.org/jira/browse/HDFS-8154 > Project: Hadoop HDFS > Issue Type: New Feature > Components: webhdfs > Reporter: Jakob Homan > Assignee: Jakob Homan > > WebHDFS would be more useful if there were a programmatic description of its > interface, which would allow one to more easily create servers and clients. -- This message was sent by Atlassian JIRA (v6.3.4#6332)