Skip to main content

A small python package to execute queries to PDM without having to re-authenticate every time

Project description

PDM Reader

pdm-datareader logo

Runs on Windows Runs on MacOS Runs on RHEL7 SCM Compliance PyPI - Version

pdm-datareader is a python package for querying Production Data Mart tables using SQL. The package handles authentication for end users with user impersonation, but also allows for inserting your own token. It must be run from Equinor managed environments connected to Equinor network.

Pull requests, feature requests and issues are welcomed using the GitHub Project Repository or as a ServiceNow ticket directed to Production Data Mart.

Install

  1. Ensure that ODBC Driver for SQL Server is installed. Currently supports both v18 and v17.
    This driver is bundled with the Microsoft SQL Client package in AccessIT, and should be pre installed on linux environments. Instructions for installing on MacOS can be found here..
  2. MacOS users must install unixodbc. See https://pypi.org/project/pyodbc/ for current instructions.
  3. Linux users must apply for Linux compliant device exclusion to get multifactor authentication to work.
  4. Finally install the latest version of the python package using:
    pip install pdm-datareader

Usage

See examples/demo.py or try the code below that queries PDM and retrieves data:

import datetime as dt
from pdm_datareader import query

# Example with parameter bindings to avoid SQL injection issues (recommended)
sql = '''
SELECT top(100) * 
FROM PDMVW.WELL_PROD_DAY 
WHERE COUNTRY = :countrycode 
AND PROD_DAY = :startdate"
'''
df = query(sql, params={'countrycode': 'NO',
                 'startdate': dt.datetime(2022, 1, 1)})
print(df)

# Example without parameters (not recommended)
sql = 'SELECT TOP(1) * FROM PDMVW.WELL_PROD_DAY'
df = query(sql)
print(df)

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

pdm_datareader-2.5.1.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

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

pdm_datareader-2.5.1-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file pdm_datareader-2.5.1.tar.gz.

File metadata

  • Download URL: pdm_datareader-2.5.1.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pdm_datareader-2.5.1.tar.gz
Algorithm Hash digest
SHA256 be6310200240eb0ecbfdd4165cb3f0a828a08005d1a04fe78db7ea550f6d280a
MD5 f1b225d13405b9b7af461ec46e2b4823
BLAKE2b-256 915ecf9572304338dddfacb7e814bfdf412a331981beba486a37252cce17cc4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pdm_datareader-2.5.1.tar.gz:

Publisher: cd.yml on equinor/pdm-datareader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pdm_datareader-2.5.1-py3-none-any.whl.

File metadata

  • Download URL: pdm_datareader-2.5.1-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pdm_datareader-2.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d356e0cf00adcc13afad8dbc23f2cf811594cae9b8a00652468a267fc520e175
MD5 583ab7582d828ccc534220820488992a
BLAKE2b-256 09cc10ea1374d299e14644836d9fb9295c2fc38d265dabaa28217b116d84eb0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pdm_datareader-2.5.1-py3-none-any.whl:

Publisher: cd.yml on equinor/pdm-datareader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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