Skip to main content

CFIHOS standard processor for NEAT

Project description

CFIHOS Handler Plugin

Overview

The CFIHOS Handler is a flexible framework that supports multiple processor implementations for handling CFIHOS industrial standard data. This plugin integrates with Cognite NEAT to process and transform CFIHOS data models.

Installation

Install the package from PyPI using pip:

pip install cognite-neat-cfihos-handler

Architecture

The CFIHOS Handler plugin supports multiple processor implementations. Each processor_type maintains a specific CFIHOS data model in Cognite Data Fusion (CDF), allowing you to choose the processing approach that best fits your use case.

Available Processors

Sparse Properties Processor

The sparse_properties_processor is the currently available processor. It is based on two processing concepts:

  1. Containers: Processes the complete CFIHOS model into denormalized container structures.
  2. Views: Processes scoped subsets of the CFIHOS model into CFIHOS view structures based on configured scopes that fit different use cases.

Users select which concept to process by passing the model_type parameter:

  • model_type="containers" - for container-based processing
  • model_type="views" - for view-based processing (requires a scope parameter)

Configuration

The processor type is specified in the configuration file using the processor_type field:

processor_type: sparse  # or other available processor types

The framework will automatically load the corresponding processor based on this configuration.

Example configuration file (config.yaml):

processor_type: sparse
data_model_name: "Your CFIHOS Model"
data_model_external_id: "YOUR_CFIHOS_MODEL_1"
data_model_description: "Generated NEAT Domain Model based on CFIHOS"
container_data_model_space: "sp_your_cfihos_containers"
views_data_model_space: "sp_your_cfihos_views"
model_version: "1"
model_creator: "Your Name"
dms_identifire: "cfihos_name"  # or "cfihos_code"
model_processors_config:
  # ... processor-specific configuration

Usage Examples

Processing Containers

from cognite.neat import NeatSession, get_cognite_client

client = get_cognite_client(".env")
neat = NeatSession(client)

# Read and process the CFIHOS containers model
neat.plugins.data_model.read(
    "cfihos",
    model_type="containers",
    configurationDir="configuration/config.yaml"
)

# Deploy to CDF
neat.to.cdf.data_model()

Processing Views

from cognite.neat import NeatSession, get_cognite_client

client = get_cognite_client(".env")
neat_views = NeatSession(client)

# Read and process the CFIHOS views model
# NOTE: Always deploy containers before deploying views
neat_views.plugins.data_model.read(
    "cfihos",
    model_type="views",
    scope="Example Centrifugal Pump",  # Required for views
    configurationDir="configuration/config.yaml",
)

# Deploy to CDF
neat_views.to.cdf.data_model()

Requirements

  • Python >= 3.10
  • cognite-neat >= 0.123.33

License

Apache-2.0

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

cognite_neat_cfihos_handler-0.0.1.tar.gz (57.1 kB view details)

Uploaded Source

Built Distribution

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

cognite_neat_cfihos_handler-0.0.1-py3-none-any.whl (56.1 kB view details)

Uploaded Python 3

File details

Details for the file cognite_neat_cfihos_handler-0.0.1.tar.gz.

File metadata

File hashes

Hashes for cognite_neat_cfihos_handler-0.0.1.tar.gz
Algorithm Hash digest
SHA256 0935f80a33a6f3a2ca06c072d113c615e32272a89cc1293ed16615555a37700b
MD5 46f315e1b06b443da3f3f17de056360e
BLAKE2b-256 6007cc05333cda5f189a6f8ac66bcb4b2988717140cb722a42ce84b5c2055d09

See more details on using hashes here.

File details

Details for the file cognite_neat_cfihos_handler-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for cognite_neat_cfihos_handler-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dc98b1838c62f8acaa29eadb008d1b4f6d8f4e715180ed56f6efe5165235e853
MD5 56287494b5dbe687a1ee510cccc96bec
BLAKE2b-256 2110126682ea52f5e5970e89d8da98dc9c14ab6a188bdb1e688b730ec632e46a

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