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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pdm_datareader-2.5.4.tar.gz
Algorithm Hash digest
SHA256 c99cd21045dfc204193244ab83920e8dfeeaaa1ce29651706907de968e739245
MD5 a2374ca5aa37582aec195ff25fad26cd
BLAKE2b-256 f6ce1c69aa523bf34ea669a811cde59d1430a2c8a92ed142e260b6ba80e9c03e

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for pdm_datareader-2.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 63c8ffde348dbda4e860572c2e681cee78241cf4279922acc04aaec8b0ebdddc
MD5 6c946536ff2f39c2f014acf92755c42f
BLAKE2b-256 e9660811904976459e2397187fef99421c3b773f20d77d0860ddccf6fb07479a

See more details on using hashes here.

Provenance

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