ontolog


Nameontolog JSON
Version 0.0.1 PyPI version JSON
download
home_pageNone
SummaryOntolog indexer (pre-alpha)
upload_time2024-05-16 03:56:11
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseNone
keywords database disk
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Overview
`co3` is a lightweight Python ORM for hierarchical storage management. It implements a
general type system for defining database components like relations, schemas, engines,
etc. Objects inheriting from the `CO3` base class can then define data transformations
that connect to database components, and can be automatically collected for coordinated
database insertion.

`co3` attempts to provide a general interface for interacting with a storage media (e.g.,
database, pickled objects, VSS framework, in-memory key-value stores, etc). The following
top-level classes capture the bulk of the operational model:

- **Database**: reference to a storage medium, with an `Accessor` for accessing data,
  `Manager` for managing database state, and an `Engine` for managing connections and
  external operations.
- **Accessor**: provides access to stored items in a `Database`, typically via a supported
  `select` operation over known `Component` types
- **Manager**: manages database storage state (e.g., supported inserts or database sync
  operations)
- **Mapper**: associates `CO3` types with `Schema` components, and provides automatic
  collection and composition operations for supported items
- **Collector**: collects data from defined `CO3` type transformations and prepares for
  `Database` insert operations
- **Component**: atomic storage groups for databases (i.e., generalized notion of a
  "relation" in relational algebra).
- **Indexer**: automatic caching of supported access queries to a `Database`
- **Schema**: general schema analog for grouping related `Component` sets
- **Differ**: facilitates set operations on results from selectable resources (e.g.,
  automatic comparison between file data on disk and file rows in a SQL database)
- **Syncer**: generalized syncing procedure for items between data resources (e.g.,
  syncing new, modified, and deleted files from disk to a SQL database that stores file
  metadata).

The **CO3** an abstract base class then makes it easy to integrate this model with regular
Python object hierarchies that can be mapped to a storage schema.


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "ontolog",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": null,
    "keywords": "database, disk",
    "author": null,
    "author_email": "Sam Griesemer <samgriesemer+git@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/7b/9d/d5bedb871aab9254d28c71af94090142149e4914267aef1c6ca5918a4122/ontolog-0.0.1.tar.gz",
    "platform": null,
    "description": "# Overview\n`co3` is a lightweight Python ORM for hierarchical storage management. It implements a\ngeneral type system for defining database components like relations, schemas, engines,\netc. Objects inheriting from the `CO3` base class can then define data transformations\nthat connect to database components, and can be automatically collected for coordinated\ndatabase insertion.\n\n`co3` attempts to provide a general interface for interacting with a storage media (e.g.,\ndatabase, pickled objects, VSS framework, in-memory key-value stores, etc). The following\ntop-level classes capture the bulk of the operational model:\n\n- **Database**: reference to a storage medium, with an `Accessor` for accessing data,\n  `Manager` for managing database state, and an `Engine` for managing connections and\n  external operations.\n- **Accessor**: provides access to stored items in a `Database`, typically via a supported\n  `select` operation over known `Component` types\n- **Manager**: manages database storage state (e.g., supported inserts or database sync\n  operations)\n- **Mapper**: associates `CO3` types with `Schema` components, and provides automatic\n  collection and composition operations for supported items\n- **Collector**: collects data from defined `CO3` type transformations and prepares for\n  `Database` insert operations\n- **Component**: atomic storage groups for databases (i.e., generalized notion of a\n  \"relation\" in relational algebra).\n- **Indexer**: automatic caching of supported access queries to a `Database`\n- **Schema**: general schema analog for grouping related `Component` sets\n- **Differ**: facilitates set operations on results from selectable resources (e.g.,\n  automatic comparison between file data on disk and file rows in a SQL database)\n- **Syncer**: generalized syncing procedure for items between data resources (e.g.,\n  syncing new, modified, and deleted files from disk to a SQL database that stores file\n  metadata).\n\nThe **CO3** an abstract base class then makes it easy to integrate this model with regular\nPython object hierarchies that can be mapped to a storage schema.\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Ontolog indexer (pre-alpha)",
    "version": "0.0.1",
    "project_urls": {
        "Documentation": "https://doc.olog.io/ontolog",
        "Homepage": "https://doc.olog.io/ontolog",
        "Issues": "https://git.olog.io/olog/ontolog/issues",
        "Repository": "https://git.olog.io/olog/ontolog"
    },
    "split_keywords": [
        "database",
        " disk"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ed3d01f22fdc2ce4474f7b521c70ae30dc97ba5648c5ac3ec7a77067ba517bd0",
                "md5": "1cf867ed5f39b043a949904bfdbe81ae",
                "sha256": "030ba3b24e7a3d59d951f5c8e5f54ba66e4bc38eb61673586bed631177d74326"
            },
            "downloads": -1,
            "filename": "ontolog-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1cf867ed5f39b043a949904bfdbe81ae",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 4045,
            "upload_time": "2024-05-16T03:56:10",
            "upload_time_iso_8601": "2024-05-16T03:56:10.178754Z",
            "url": "https://files.pythonhosted.org/packages/ed/3d/01f22fdc2ce4474f7b521c70ae30dc97ba5648c5ac3ec7a77067ba517bd0/ontolog-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7b9dd5bedb871aab9254d28c71af94090142149e4914267aef1c6ca5918a4122",
                "md5": "080c36d291b3410a013acbfdf5975a71",
                "sha256": "a17ede31b90d22e3bbe5bf7235a8c283aef3800d1c7ecd54f22e0604b04c3387"
            },
            "downloads": -1,
            "filename": "ontolog-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "080c36d291b3410a013acbfdf5975a71",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 3967,
            "upload_time": "2024-05-16T03:56:11",
            "upload_time_iso_8601": "2024-05-16T03:56:11.585490Z",
            "url": "https://files.pythonhosted.org/packages/7b/9d/d5bedb871aab9254d28c71af94090142149e4914267aef1c6ca5918a4122/ontolog-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-16 03:56:11",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "ontolog"
}
        
Elapsed time: 0.24178s