Skip to main content

HiveQL Kernel

Project description

# HiveQL Kernel

### Requirements

If you are going to connect using kerberos:

` sudo apt-get install python3-dev libsasl2-dev libsasl2-2 libsasl2-modules-gssapi-mit `

### Installation

To install the kernel:

` pip install --upgrade hiveqlKernel jupyter hiveql install --user `

### Connection configuration

Two methods are available to connect to a Hive server:

  • Directly inside the notebook

  • Using a configuration file

If the configuration file is present, everytime you run a new HiveQL kernel it uses it, else you must configure your connection inside the notebook. The configuration in the notebook overwrites the one in the configuration file if present.

#### Configure directly in the notebook cells

Inside a Notebook cell, copy&paste this, change the configuration to match your needs, and run it.

` $$ url=hive://<kerberos-username>@<hive-host>:<hive-port>/<db-name> $$ connect_args={"auth": "KERBEROS", "kerberos_service_name": "hive", "configuration": {"tez.queue.name": "myqueue"}} $$ pool_size=5 $$ max_overflow=10 `

These args are passed to sqlalchemy, who registered pyHive as the ‘hive’ SQL back-end. See [github.com/dropbox/PyHive](https://github.com/dropbox/PyHive/#sqlalchemy).

#### Configure using a configuration file

The HiveQL kernel is looking for the configuration file at ~/.hiveql_kernel.conf by default. You can specify another path using HIVE_KERNEL_CONF_FILE.

The contents must be like this (in json format):

` { "url": "hive://<kerberos-username>@<hive-host>:<hive-port>/<db-name>", "connect_args" : { "auth": "KERBEROS", "kerberos_service_name":"hive", "configuration": {"tez.queue.name": "myqueue"}}, "pool_size": 5, "max_overflow": 10, "default_limit": 20, "display_mode": "be" } `

### Usage

Inside a HiveQL kernel you can type HiveQL directly in the cells and it displays a HTML table with the results.

You also have other options, like changing the default display limit (=20) like this :

` $$ default_limit=50 `

Some hive functions are extended. They allow to filter with some patterns.

` SHOW TABLES <pattern> SHOW DATABASES <pattern> `

### Run tests

` python -m pytest `

Have fun!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hiveqlKernel-1.0.20.tar.gz (24.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hiveqlKernel-1.0.20-py3-none-any.whl (28.5 kB view details)

Uploaded Python 3

File details

Details for the file hiveqlKernel-1.0.20.tar.gz.

File metadata

  • Download URL: hiveqlKernel-1.0.20.tar.gz
  • Upload date:
  • Size: 24.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.9

File hashes

Hashes for hiveqlKernel-1.0.20.tar.gz
Algorithm Hash digest
SHA256 4d4d21d27ee7e8385c194408cd86c054bc03b3edd2b8b02177c72cc30be0abed
MD5 73500af591370fa2263a77d684e6efa5
BLAKE2b-256 d5909ae1c1861f667021c6a7959cda69558f869239ae68c5f0664eb5633670c5

See more details on using hashes here.

File details

Details for the file hiveqlKernel-1.0.20-py3-none-any.whl.

File metadata

  • Download URL: hiveqlKernel-1.0.20-py3-none-any.whl
  • Upload date:
  • Size: 28.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.9

File hashes

Hashes for hiveqlKernel-1.0.20-py3-none-any.whl
Algorithm Hash digest
SHA256 179cb0a8758eec655db86a9d1686e1042aebbc2b5570ee0e140a32458e612e13
MD5 c40b2f2d6d3a7fe9e811a4b0367e39a3
BLAKE2b-256 16d3226396faf605bcfd5f02eba9b6d8094228fdb1d085f98bac9661890f8223

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page