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.2.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.2-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pdm_datareader-2.5.2.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.2.tar.gz
Algorithm Hash digest
SHA256 a3a229879beddc614d2604bfa2efa1b26001d0deaea6e1d20df4052d4597bc44
MD5 8aedb1ed88a761b82429a156127ab993
BLAKE2b-256 500a6b3dd98f955716262b2b60b73d008016f79a428f9b06f6e9e174b3ff45ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for pdm_datareader-2.5.2.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.2-py3-none-any.whl.

File metadata

  • Download URL: pdm_datareader-2.5.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3c8a77c10948d05ef7d1d52f41a7e2cf99cb9d9285eee663390625a49741b2a8
MD5 f368e4263cd0f67e215897c01bce48c1
BLAKE2b-256 9e1a251be9d734b514cfb3af8ca7b584d4654964a2b35144228910682e5448db

See more details on using hashes here.

Provenance

The following attestation bundles were made for pdm_datareader-2.5.2-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