README.rst 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. .. image:: docs/images/hue_logo.png
  2. Welcome to the repository for Hue
  3. =================================
  4. Hue is an open source Web interface for analyzing data with any Apache Hadoop: `gethue.com
  5. <http://gethue.com>`_
  6. .. image:: docs/images/hue-screen.png
  7. It features:
  8. * SQL Editors for Hive, Impala, MySql, PostGres, Sqlite and Oracle
  9. * Dynamic search dashboards for Solr
  10. * Spark Notebooks
  11. * Browsers for YARN, HDFS, Hive table Metastore, HBase, ZooKeeper
  12. * Pig Editor, Sqoop2, Oozie workflows Editors and Dashboards
  13. * Wizards to import data into Hadoop
  14. On top of that, a SDK is available for creating new apps integrated with Hadoop.
  15. More user and developer documentation is available at http://gethue.com.
  16. Getting Started
  17. ===============
  18. To build and get the development server running::
  19. $ git clone https://github.com/cloudera/hue.git
  20. $ cd hue
  21. $ make apps
  22. $ build/env/bin/hue runserver
  23. Now Hue should be running on http://localhost:8000 !
  24. The configuration in development mode is ``desktop/conf/pseudo-distributed.ini``.
  25. Note: to start the production server (but lose the automatic reloading after source modification)::
  26. $ build/env/bin/supervisor
  27. To run the tests::
  28. Install the mini cluster (only once):
  29. $ ./tools/jenkins/jenkins.sh slow
  30. Run all the tests:
  31. $ build/env/bin/hue test all
  32. Or just some parts of the tests, e.g.:
  33. $ build/env/bin/hue test specific impala
  34. $ build/env/bin/hue test specific impala.tests:TestMockedImpala
  35. $ build/env/bin/hue test specific impala.tests:TestMockedImpala.test_basic_flow
  36. Development Prerequisites
  37. ===========================
  38. You'll need these library development packages and tools installed on
  39. your system:
  40. Ubuntu:
  41. * ant
  42. * gcc
  43. * g++
  44. * libkrb5-dev
  45. * libmysqlclient-dev
  46. * libssl-dev
  47. * libsasl2-dev
  48. * libsasl2-modules-gssapi-mit
  49. * libsqlite3-dev
  50. * libtidy-0.99-0 (for unit tests only)
  51. * libxml2-dev
  52. * libxslt-dev
  53. * make
  54. * mvn (from ``maven`` package or maven3 tarball)
  55. * openldap-dev / libldap2-dev
  56. * python-dev
  57. * python-setuptools
  58. * libgmp3-dev
  59. CentOS/RHEL:
  60. * ant
  61. * asciidoc
  62. * cyrus-sasl-devel
  63. * cyrus-sasl-gssapi
  64. * gcc
  65. * gcc-c++
  66. * krb5-devel
  67. * libtidy (for unit tests only)
  68. * libxml2-devel
  69. * libxslt-devel
  70. * make
  71. * mvn (from ``maven`` package or maven3 tarball)
  72. * mysql
  73. * mysql-devel
  74. * openldap-devel
  75. * python-devel
  76. * sqlite-devel
  77. * openssl-devel (for version 7+)
  78. * gmp-devel
  79. MacOS:
  80. * Xcode command line tools
  81. * Oracle's JDK 1.7+
  82. * maven (Homebrew)
  83. * mysql (Homebrew)
  84. * gmp (Homebrew)
  85. File Layout
  86. ===========
  87. The Hue "framework" is in ``desktop/core/`` and contains the Web components.
  88. ``desktop/libs/`` is the API for talking to various Hadoop services.
  89. The installable apps live in ``apps/``. Please place third-party dependencies in the app's ext-py/
  90. directory.
  91. The typical directory structure for inside an application includes:
  92. src/
  93. for Python/Django code
  94. models.py
  95. urls.py
  96. views.py
  97. forms.py
  98. settings.py
  99. conf/
  100. for configuration (``.ini``) files to be installed
  101. static/
  102. for static HTML/js resources and help doc
  103. templates/
  104. for data to be put through a template engine
  105. locales/
  106. for localizations in multiple languages
  107. For the URLs within your application, you should make your own ``urls.py``
  108. which will be automatically rooted at ``/yourappname/`` in the global
  109. namespace. See ``apps/about/src/about/urls.py`` for an example.
  110. Main Stack
  111. ==========
  112. Hue would not be possible without:
  113. * Python 2.6.5 - 2.7
  114. * Django 1.6 (https://docs.djangoproject.com/en/1.6/)
  115. * Knockout.js (http://knockoutjs.com/)
  116. * jQuery (http://jquery.com/)
  117. * Bootstrap (http://getbootstrap.com/)
  118. Community
  119. =========
  120. * User group: http://groups.google.com/a/cloudera.org/group/hue-user
  121. * Jira: https://issues.cloudera.org/browse/HUE
  122. * Reviews: https://review.cloudera.org/dashboard/?view=to-group&group=hue (repo 'hue-rw')
  123. License
  124. =======
  125. Apache License, Version 2.0
  126. http://www.apache.org/licenses/LICENSE-2.0