{ "info": { "author": "BDA TEAM", "author_email": "datadriver@octo.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6" ], "description": "[![Anaconda-Server Badge](https://anaconda.org/octo/pyddapi/badges/installer/conda.svg)](https://conda.anaconda.org/octo)\n[![Anaconda-Server Badge](https://anaconda.org/octo/pyddapi/badges/platforms.svg)](https://anaconda.org/octo/pyddapi)\n[![Anaconda-Server Badge](https://anaconda.org/octo/pyddapi/badges/latest_release_date.svg)](https://anaconda.org/octo/pyddapi)\n[![Anaconda-Server Badge](https://anaconda.org/octo/pyddapi/badges/version.svg)](https://anaconda.org/octo/pyddapi)\n\n# DDAPI introduction \n- [What is it](#what-is-it) \n- [Install](#install) \n- [Contributing](#contributing) \n\n## What is it? \n\nThe following section describes the main concepts used in the Data Driver environment. \n\n### Workflow \nA Data Driver workflow is a network of tasks (python function) linked together. This workflow is typically described as a DAG (Direct Acyclic Graph). The jobs can execute all kind of Python code like data loading, feature engineering, model fitting, alerting, etc. \n\nA workflow can be scheduled and monitored in the Data Driver architecture with the tool Airflow. The Data Driver API adds data science capabilities to Airflow and the capacity to audit the input / output of each task. \n\n### Data Driver API or ddapi \n\nddapi is a Python library. It is the access layer to Data Driver and you can use it to manipulated datasets and workflows. Some main usages are described below, for more informations and tutorials you can access to the OCTO notebook tutorials repository. \n\n```python \nimport dd \n``` \n\nDdapi is composed of several modules. \n\n#### DB module \n\n import dd.db \n\nDB is an easier way to interact with your databases. You can use it to explore your databases or import new data. \n\n#### Context module \n\n from dd.api.contexts.distributed import AirflowContext \n from dd.api.contexts.local import LocalContext \n\nThe context is an object which will allow you to communicate with your environment during your exploration. As such, it needs to be able to communicate with your database. This is done by creating a DB object and passing it to the context constructor. \n\n#### Dataset module \n\n import dd.api.workflow.dataset \n\nYou may consider datasets as wrappers around Pandas DataFrames. It gives you access to some methods you may recognise if you are familiar with this awesome library. \n\n\n### Disclaimer \n\n#### It does not / it is not for : \n\n - Code versionning \n - Enforce good code quality \n - Data quality tool \n - ETL \n - Data Catalog & Data Lineage \n - Data visualisation \n - Datalake \n - Magical stuffs \n - Coffee \n\n#### It is a set of tools unified into a unique platform to accelerate data science : \n\n - we have made an API that lets DataScientists use the same technologies they use in exploration to do industrialisation, because we saw it was the most impactfull parameter on the success of the project. (DDAPI) \n - monitore Machine Learning models (your code + DDAPI + Airflow) \n - schedule builds of datascience's pipeline (your code + DDAPI + Airflow) \n - datascience feature engineering functions (your code + BDACore) \n - metrics and datascience helpers to study model shifting (BDACore) \n - integration of open source standards Jupyterhub, Airflow and PostgreSQL together (Lab and Factory machine roles) \n\n\n## Install \n\n**last release** \n\n pip install pyddapi\n\n\n**last build from master** \n\n pip install -i https://pypi.anaconda.org/octo/label/dev/simple pyddapi\n\n### Developer setup\n\n#### Setup your virtual env\n\n virtualenv venv\n source venv/bin/activate\n pip install -e .\n pip install -r ci/tests_requirements.txt\n\n_ddapi_ only supports python versions 2.7 and 3.6/ Running _ddapi_ with other versions is not advised, so avoid it if possible, or do it at your own risk.\n\nYou can find the package in [anaconda cloud repository](https://anaconda.org/octo/pyddapi) \n\n## Contributing \nIn case you want to contribute to the code, do not forget to check our \n[Developer Guidelines](DEVGUIDE.md)\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://datadriver-doc-ddapi.s3-website-eu-west-1.amazonaws.com/", "keywords": "", "license": "Apache 2", "maintainer": "", "maintainer_email": "", "name": "pyddapi", "package_url": "https://pypi.org/project/pyddapi/", "platform": "", "project_url": "https://pypi.org/project/pyddapi/", "project_urls": { "Homepage": "http://datadriver-doc-ddapi.s3-website-eu-west-1.amazonaws.com/" }, "release_url": "https://pypi.org/project/pyddapi/3.0.3/", "requires_dist": [ "pandas (>=0.23.4)", "scikit-learn (==0.19.*)", "scikit-learn[alldeps] (==0.19.*)", "scipy", "six (>=1.10.*)", "apache-airflow (==1.10.*)", "apache-airflow[s3,postgres] (==1.10.*)", "ipython", "odo-fixpandas20 (==0.5.3)", "dask (>=0.15.0)", "db.py (>=0.5.2)", "pybars3 (==0.9.*)", "sqlalchemy (==1.2.*)", "psycopg2-binary (>=2.6.*)", "pyarrow (==0.12.*)", "minio (==4.0.4)", "boto3", "mock ; extra == 'test'", "pytest ; extra == 'test'", "coverage ; extra == 'test'", "pytest-cov ; extra == 'test'", "jupyter ; extra == 'test'", "jupyterlab ; extra == 'test'", "m2r ; extra == 'test'", "nbformat ; extra == 'test'", "nbconvert (<=5.4.*) ; extra == 'test'", "sphinx (>=1.5.*) ; extra == 'test'", "sphinx-bootstrap-theme (>=0.4.*) ; extra == 'test'", "nbsphinx (>=0.2.*) ; extra == 'test'", "sphinx-gallery (>=0.1.*) ; extra == 'test'", "sphinx-rtd-theme ; extra == 'test'", "twine ; extra == 'test'", "ipykernel ; extra == 'test'", "zest.releaser ; extra == 'test'", "matplotlib ; extra == 'test'" ], "requires_python": "", "summary": "DataDriver API package", "version": "3.0.3" }, "last_serial": 5321747, "releases": { "3.0.2": [ { "comment_text": "", "digests": { "md5": "a7f2c090f729fd1cd571870ece149f9f", "sha256": "b015471d5594f86c02ade0684d35332eee8c15fa88483f95efc04d21ad71ff3d" }, "downloads": -1, "filename": "pyddapi-3.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a7f2c090f729fd1cd571870ece149f9f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 107465, "upload_time": "2019-02-19T15:13:03", "url": "https://files.pythonhosted.org/packages/f8/5e/0f17992486515c3b84d01c4bebfe320fcf73233b2f59f86fd88ff5b4d2ee/pyddapi-3.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ada9da49daf235355b14fe6d2032e270", "sha256": "68219f85ee9c2aba82e67a16f33c277c988896121d24fd4c8524ebc9a8317dfa" }, "downloads": -1, "filename": "pyddapi-3.0.2.tar.gz", "has_sig": false, "md5_digest": "ada9da49daf235355b14fe6d2032e270", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 86191, "upload_time": "2019-02-19T15:13:05", "url": "https://files.pythonhosted.org/packages/0f/c2/e2ea280a109cfc6e7239b84dfa6eb0597c658bf4e551f6d87141740ae9f4/pyddapi-3.0.2.tar.gz" } ], "3.0.3": [ { "comment_text": "", "digests": { "md5": "ac73cf829252b52798ed807906adf214", "sha256": "9fccebb962407d5ab5d81afcc500049568e478939a3d82d10b2eaac6953a1426" }, "downloads": -1, "filename": "pyddapi-3.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ac73cf829252b52798ed807906adf214", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 74240, "upload_time": "2019-05-27T10:28:19", "url": "https://files.pythonhosted.org/packages/7b/38/72851a1968ea4da4483905c84673b246b5f8118be97f8c1e09cf8f01a140/pyddapi-3.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0fa0a0ac369ca8642a6fd11f2140a68a", "sha256": "e8ea4ffe95719d9bbe16ecd8478b7d2514c22933c537ea85d5395db03f0455cd" }, "downloads": -1, "filename": "pyddapi-3.0.3.tar.gz", "has_sig": false, "md5_digest": "0fa0a0ac369ca8642a6fd11f2140a68a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54103, "upload_time": "2019-05-27T10:28:21", "url": "https://files.pythonhosted.org/packages/ee/42/4429ea6261179b25ab291599ee7f71c217b123a9ac72ffee357fbb061d55/pyddapi-3.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ac73cf829252b52798ed807906adf214", "sha256": "9fccebb962407d5ab5d81afcc500049568e478939a3d82d10b2eaac6953a1426" }, "downloads": -1, "filename": "pyddapi-3.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ac73cf829252b52798ed807906adf214", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 74240, "upload_time": "2019-05-27T10:28:19", "url": "https://files.pythonhosted.org/packages/7b/38/72851a1968ea4da4483905c84673b246b5f8118be97f8c1e09cf8f01a140/pyddapi-3.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0fa0a0ac369ca8642a6fd11f2140a68a", "sha256": "e8ea4ffe95719d9bbe16ecd8478b7d2514c22933c537ea85d5395db03f0455cd" }, "downloads": -1, "filename": "pyddapi-3.0.3.tar.gz", "has_sig": false, "md5_digest": "0fa0a0ac369ca8642a6fd11f2140a68a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54103, "upload_time": "2019-05-27T10:28:21", "url": "https://files.pythonhosted.org/packages/ee/42/4429ea6261179b25ab291599ee7f71c217b123a9ac72ffee357fbb061d55/pyddapi-3.0.3.tar.gz" } ] }