Let’s Big Data. Hue is an open source Web interface for analyzing data with Hadoop and Spark.
Python HTML JavaScript Mako C Java Other
Permalink
Failed to load latest commit information.
apps HUE-4942 [metadata] Default set of objects for each panel of assist Sep 30, 2016
desktop HUE-4983 [notebook] Notebook pages can list objects on two rows Sep 30, 2016
dist [doc] Friendler tarball install README May 4, 2015
docs HUE-4658 [doc] Update release 3.11 Aug 17, 2016
ext/thirdparty HUE-2523 [core] Convert tests to the new generator Oct 19, 2015
maven HUE-4658 [core] Bump version to 3.11 Aug 17, 2016
tools HUE-4981 [editor] Add SQL parser support for NOT in front of RLIKE an… Sep 30, 2016
.gitattributes hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad851… Jun 28, 2010
.gitignore HUE-3232 [Infra] run jasmine tests on build May 9, 2016
LICENSE.txt hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad851… Jun 28, 2010
Makefile HUE-4556 [core] Fix coverage failure due to missing source files Aug 9, 2016
Makefile.sdk HUE-758 [core] Internationalization Jul 31, 2012
Makefile.tarball HUE-2943 [core] Manually exclude boto from the pruning to fix packaging Sep 2, 2015
Makefile.vars PR405 [build] Avoid make failure when default python is python3 Aug 1, 2016
Makefile.vars.priv hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad851… Jun 28, 2010
NOTICE.txt [core] Add third-party dependency references Mar 25, 2014
README.md HUE-4022 [doc] Promote docker image to get ramped up quicker Jun 3, 2016
VERSION HUE-4658 [core] Bump version to 3.11 Aug 17, 2016
data Make app registry location configurable May 9, 2013

README.md

alt text

Welcome to the repository for Hue

Hue is an open source Web interface for analyzing data with any Apache Hadoop: gethue.com

alt text

It features:

  • SQL editors for Hive, Impala, MySQL, Oracle, PostgreSQL, SparkSQL, Solr SQL, Phoenix...
  • Dynamic Search dashboards with Solr
  • Spark and Hadoop notebooks
  • Scheduling of jobs and workflows through an Oozie Editor and Dashboard

More user and developer documentation is available at gethue.com.

Getting Started

To build and get the development server running:

$ git clone https://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

Docker

Start Hue in a single click with the Docker Guide or the video blog post.

Development Prerequisites

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

Ubuntu:

  • Oracle's JDK (read more here)
  • ant
  • gcc
  • g++
  • libffi-dev
  • libkrb5-dev
  • libmysqlclient-dev
  • libsasl2-dev
  • libsasl2-modules-gssapi-mit
  • libsqlite3-dev
  • libssl-dev
  • libtidy-0.99-0 (for unit tests only)
  • libxml2-dev
  • libxslt-dev
  • make
  • mvn (from maven package or maven3 tarball)
  • openldap-dev / libldap2-dev
  • python-dev
  • python-setuptools
  • libgmp3-dev
  • libz-dev

CentOS/RHEL:

  • Oracle's JDK (read more here)
  • ant
  • asciidoc
  • cyrus-sasl-devel
  • cyrus-sasl-gssapi
  • cyrus-sasl-plain
  • gcc
  • gcc-c++
  • krb5-devel
  • libffi-devel
  • libtidy (for unit tests only)
  • libxml2-devel
  • libxslt-devel
  • make
  • mvn (from apache-maven package or maven3 tarball)
  • mysql
  • mysql-devel
  • openldap-devel
  • python-devel
  • sqlite-devel
  • openssl-devel (for version 7+)
  • gmp-devel

MacOS:

  • Xcode command line tools
  • Oracle's JDK 1.7+
  • maven (Homebrew)
  • mysql (Homebrew)
  • gmp (Homebrew)
  • openssl (Homebrew)
  • Required for Mac OS X 10.11+ (El Capitan), after brew install openssl, run: export LDFLAGS=-L/usr/local/opt/openssl/lib && export CPPFLAGS=-I/usr/local/opt/openssl/include

All, just in case you want to run the Jasmine tests:

File Layout

The Hue "framework" is in desktop/core/ and contains the Web components. desktop/libs/ is the API for talking to various Hadoop services. 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

Hue would not be possible without:

Community

License

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