Hadoop URI utility
Project description
LindexURI
BigData URI utility
The idea is that every information stored is addressable using a URI, in this case we like to work with HDFS and HIVE. There
LindexURI.isValid( uri ) : returns true if the URI is valid, it's a static method and can be used in a quick way.
luri = LindexURI(uri)
luri.isPartitioned()
returns true if the HIVE uri is defining a partitioned table
if uri == "hive://databasename/tablename?dt=201212" luri.isPartitioned returns True.
luri.getPartitions()
returns a dictionary that describes the HIVE partition
if uri == "hive://databasename/tablename?dt=201212" luri.getPartitions() returns
OrderedDict( 'dt': '201212' )
luri.getDatabase()
gets the database name from the HIVE uri ( this can be modified to work also with HDFS paths )
if uri == "hive://databasename/tablename?dt=201212" luri.getDatabase() returns 'databasename'
luri.getTable()
gets the table name from HIVE uri, can be modified to work also with HDFS paths
if uri == "hive://databasename/tablename?dt=201212" luri.getDatabase() returns 'tablename'
luri.getHDFSHostName()
gets the HDFS hostname
if uri == "hdfs://hdfs-prod/warehouse/databasename.db/tablename.db/dt=201212" luri.getHDFSHostName returns 'hdfs-prod'
luri.getHDFSPath()
gets the path from the HDFS uri
if uri == "hdfs://hdfs-prod/warehouse/databasename.db/tablename.db/dt=201212" luri.getHDFSPath() returns 'warehouse/databasename.db/tablename.db/dt=201212'
luri.getSchema()
gets the schema
if uri == "hdfs://hdfs-prod/warehouse/databasename.db/tablename.db/dt=201212" luri.getSchema() returns 'hdfs'
luri.getPartitionsAsHDFSPath()
converts the partition coordinates into an HDFS path
p = OrderedDict( 'dt' : '201212', 'country': 'AU' ) dt=201212&country=AU
luri.getHDFSPathAsPartition()
converts the HDFS path into a partition coordinates dictionary
'hdfs://hdfs-production/Vault/Docomodigital/Production/Newton/events/prod/year=2018/month=08/day=07/hour=09'
root path : "/Vault/Docomodigital/Production/Newton/events/prod/"
partitions : {
"year" : "2018",
"month" : "08",
"day" : "07",
"hour" : "09"
}
luri.looksPartitioned()
returns true if the HDFS path can define a partition
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file LindexURI-0.1.2.tar.gz.
File metadata
- Download URL: LindexURI-0.1.2.tar.gz
- Upload date:
- Size: 3.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/2.7.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
952c79e8d69ce75c194b0b601e88e168a5bdfdb5b0b75b4fd51681b9dec759f3
|
|
| MD5 |
c8eb259278a91f9ab97af3432e5f7a0c
|
|
| BLAKE2b-256 |
35bb140610d000b66468356dfd247e1ee75b2ee68a81222b7b3b0f3e60e3514c
|
File details
Details for the file LindexURI-0.1.2-py2.py3-none-any.whl.
File metadata
- Download URL: LindexURI-0.1.2-py2.py3-none-any.whl
- Upload date:
- Size: 4.5 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/2.7.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c97baf5ad18903117a493f6c68780e220bb69a0ceca8036ebce24052f0b9dfaf
|
|
| MD5 |
a7c61011c9a3b7345e62dcd75a2e1c8c
|
|
| BLAKE2b-256 |
c3c82c6bef75a562576a08593a2f1337e334525926a021c835182cbf897b48d9
|