Skip to content
This repository

Hue is a Web application for interacting with Apache Hadoop. It supports a file and job browser, Hive, Pig, Impala, Spark, Oozie, HBase, Solr, Sqoop2, ZooKeeper and more.

Octocat-spinner-32 apps [core] Fix LDAP and useradmin group list tests April 18, 2014
Octocat-spinner-32 desktop [core] Fix LDAP and useradmin group list tests April 18, 2014
Octocat-spinner-32 dist [core] Remove some Java dependencies August 14, 2013
Octocat-spinner-32 docs [doc] Update screenshot and app descriptions March 06, 2014
Octocat-spinner-32 ext [core] add parquet-python library April 16, 2014
Octocat-spinner-32 maven [core] Remove parent definition in root pom November 26, 2013
Octocat-spinner-32 tools [oozie] Upload test sharelib with the Oozie command December 06, 2013
Octocat-spinner-32 .gitattributes hue (formerly Cloudera Desktop) from internal commit 4694ac0 June 27, 2010
Octocat-spinner-32 .gitignore [core] Ignore all the mo files except the ones from third parties in … January 24, 2014
Octocat-spinner-32 .jslintrc hue (formerly Cloudera Desktop) from internal commit 4694ac0 June 27, 2010
Octocat-spinner-32 LICENSE.txt hue (formerly Cloudera Desktop) from internal commit 4694ac0 June 27, 2010
Octocat-spinner-32 Makefile [core] i18n of the desktop libs November 08, 2012
Octocat-spinner-32 Makefile.sdk HUE-758 [core] Internationalization July 31, 2012
Octocat-spinner-32 Makefile.tarball HUE-2068 [infra] Third-party dependencies manifest is excluded from b… April 11, 2014
Octocat-spinner-32 Makefile.vars [core] Remove python 2.4 and 2.5 from python selection April 09, 2014
Octocat-spinner-32 Makefile.vars.priv hue (formerly Cloudera Desktop) from internal commit 4694ac0 June 27, 2010
Octocat-spinner-32 NOTICE.txt [core] Add third-party dependency references March 25, 2014
Octocat-spinner-32 README.rst [core] make snappy a first class citizen April 16, 2014
Octocat-spinner-32 VERSION [core] Bump version to 3.5 October 23, 2013
Octocat-spinner-32 data Make app registry location configurable May 09, 2013
README.rst
docs/images/hue_logo.png

Welcome to the repository for Hue

Hue is an open source Web UI for doing big data with Hadoop.

docs/images/hue-screen.png

It features:

  • File Browser for accessing HDFS
  • Hive Editor for developing and running Hive queries
  • Impala App for executing Impala queries
  • Search App for querying and exploring data with Solr
  • Spark Editor and Dashboard
  • Pig Editor for submitting Pig scripts
  • Oozie App for submitting and monitoring workflows, coordinators and bundles
  • HBase Browser for visualizing and modifying HBase tables
  • Metastore Browser for accessing Hive metadata and HCatalog
  • Job Browser for accessing MapReduce jobs (MR1/MR2-YARN)
  • Job Designer for creating MapReduce/Streaming/Java jobs
  • A Sqoop 2 Editor and Dashboard
  • A ZooKeeper Browser and Editor
  • A DB Query Editor for MySql, PostGres, Sqlite and Oracle

On top of that, a SDK is available for creating new apps integrated with Hadoop.

More user and developer documentation is available at http://gethue.com.

Getting Started

To build and get the development server running:

$ git clone http://github.com/cloudera/hue.git
$ cd hue
$ make apps
$ build/env/bin/hue runserver

Now Hue should be running on http://localhost:8000 !

The configuration in development mode is desktop/conf/pseudo-distributed.ini.

Note: to start the production server (but lose the automatic reloading after source modification):

$ build/env/bin/supervisor

To run the tests:

Install the mini cluster (only once):
$ ./tools/jenkins/jenkins.sh slow

Run all the tests:
$ build/env/bin/hue test all

Or just some parts of the tests, e.g.:
$ build/env/bin/hue test specific impala
$ build/env/bin/hue test specific impala.tests:TestMockedImpala
$ build/env/bin/hue test specific impala.tests:TestMockedImpala.test_basic_flow

Development Prerequisites

You'll need these library development packages and tools installed on your system:

Ubuntu:
  • ant
  • gcc
  • g++
  • libkrb5-dev
  • libmysqlclient-dev
  • libssl-dev
  • libsasl2-dev
  • libsasl2-modules-gssapi-mit
  • libsqlite3-dev
  • libtidy-0.99-0 (for unit tests only)
  • libxml2-dev
  • libxslt-dev
  • mvn (from maven2 package or tarball)
  • openldap-dev / libldap2-dev
  • python-dev
  • python-simplejson
  • python-setuptools
  • libsnappy-dev
CentOS:
  • ant
  • asciidoc
  • cyrus-sasl-devel
  • cyrus-sasl-gssapi
  • gcc
  • gcc-c++
  • krb5-devel
  • libtidy (for unit tests only)
  • libxml2-devel
  • libxslt-devel
  • mvn (from maven2 package or tarball)
  • mysql
  • mysql-devel
  • openldap-devel
  • python-devel
  • python-simplejson
  • sqlite-devel
  • snappy-devel
MacOS (mac port):
  • liblxml
  • libxml2
  • libxslt
  • mysql5-devel
  • simplejson (easy_install)
  • sqlite3
  • snappy

File Layout

The Hue "framework" is in desktop. /core/ contains the Web components and desktop/libs/ the API for talking to Hadoop. The installable apps live in apps/. Please place third-party dependencies in the app's ext-py/ directory.

The typical directory structure for inside an application includes:

src/
for Python/Django code
models.py urls.py views.py forms.py settings.py
conf/
for configuration (.ini) files to be installed
static/
for static HTML/js resources and help doc
templates/
for data to be put through a template engine
locales/
for localizations in multiple languages

For the URLs within your application, you should make your own urls.py which will be automatically rooted at /yourappname/ in the global namespace. See apps/about/src/about/urls.py for an example.

Main Stack

Community

License

Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0

Something went wrong with that request. Please try again.