| :py:mod:`airflow.providers.microsoft.azure.hooks.cosmos` |
| ======================================================== |
| |
| .. py:module:: airflow.providers.microsoft.azure.hooks.cosmos |
| |
| .. autoapi-nested-parse:: |
| |
| This module contains integration with Azure CosmosDB. |
| |
| AzureCosmosDBHook communicates via the Azure Cosmos library. Make sure that a |
| Airflow connection of type `azure_cosmos` exists. Authorization can be done by supplying a |
| login (=Endpoint uri), password (=secret key) and extra fields database_name and collection_name to specify |
| the default database and collection to use (see connection `azure_cosmos_default` for an example). |
| |
| |
| |
| Module Contents |
| --------------- |
| |
| Classes |
| ~~~~~~~ |
| |
| .. autoapisummary:: |
| |
| airflow.providers.microsoft.azure.hooks.cosmos.AzureCosmosDBHook |
| |
| |
| |
| Functions |
| ~~~~~~~~~ |
| |
| .. autoapisummary:: |
| |
| airflow.providers.microsoft.azure.hooks.cosmos.get_database_link |
| airflow.providers.microsoft.azure.hooks.cosmos.get_collection_link |
| airflow.providers.microsoft.azure.hooks.cosmos.get_document_link |
| |
| |
| |
| .. py:class:: AzureCosmosDBHook(azure_cosmos_conn_id = default_conn_name) |
| |
| Bases: :py:obj:`airflow.hooks.base.BaseHook` |
| |
| Interacts with Azure CosmosDB. |
| |
| login should be the endpoint uri, password should be the master key |
| optionally, you can use the following extras to default these values |
| {"database_name": "<DATABASE_NAME>", "collection_name": "COLLECTION_NAME"}. |
| |
| :param azure_cosmos_conn_id: Reference to the |
| :ref:`Azure CosmosDB connection<howto/connection:azure_cosmos>`. |
| |
| .. py:attribute:: conn_name_attr |
| :annotation: = azure_cosmos_conn_id |
| |
| |
| |
| .. py:attribute:: default_conn_name |
| :annotation: = azure_cosmos_default |
| |
| |
| |
| .. py:attribute:: conn_type |
| :annotation: = azure_cosmos |
| |
| |
| |
| .. py:attribute:: hook_name |
| :annotation: = Azure CosmosDB |
| |
| |
| |
| .. py:method:: get_connection_form_widgets() |
| :staticmethod: |
| |
| Returns connection widgets to add to connection form |
| |
| |
| .. py:method:: get_ui_field_behaviour() |
| :staticmethod: |
| |
| Returns custom field behaviour |
| |
| |
| .. py:method:: get_conn(self) |
| |
| Return a cosmos db client. |
| |
| |
| .. py:method:: does_collection_exist(self, collection_name, database_name) |
| |
| Checks if a collection exists in CosmosDB. |
| |
| |
| .. py:method:: create_collection(self, collection_name, database_name = None) |
| |
| Creates a new collection in the CosmosDB database. |
| |
| |
| .. py:method:: does_database_exist(self, database_name) |
| |
| Checks if a database exists in CosmosDB. |
| |
| |
| .. py:method:: create_database(self, database_name) |
| |
| Creates a new database in CosmosDB. |
| |
| |
| .. py:method:: delete_database(self, database_name) |
| |
| Deletes an existing database in CosmosDB. |
| |
| |
| .. py:method:: delete_collection(self, collection_name, database_name = None) |
| |
| Deletes an existing collection in the CosmosDB database. |
| |
| |
| .. py:method:: upsert_document(self, document, database_name=None, collection_name=None, document_id=None) |
| |
| Inserts a new document (or updates an existing one) into an existing |
| collection in the CosmosDB database. |
| |
| |
| .. py:method:: insert_documents(self, documents, database_name = None, collection_name = None) |
| |
| Insert a list of new documents into an existing collection in the CosmosDB database. |
| |
| |
| .. py:method:: delete_document(self, document_id, database_name = None, collection_name = None) |
| |
| Delete an existing document out of a collection in the CosmosDB database. |
| |
| |
| .. py:method:: get_document(self, document_id, database_name = None, collection_name = None) |
| |
| Get a document from an existing collection in the CosmosDB database. |
| |
| |
| .. py:method:: get_documents(self, sql_string, database_name = None, collection_name = None, partition_key = None) |
| |
| Get a list of documents from an existing collection in the CosmosDB database via SQL query. |
| |
| |
| |
| .. py:function:: get_database_link(database_id) |
| |
| Get Azure CosmosDB database link |
| |
| |
| .. py:function:: get_collection_link(database_id, collection_id) |
| |
| Get Azure CosmosDB collection link |
| |
| |
| .. py:function:: get_document_link(database_id, collection_id, document_id) |
| |
| Get Azure CosmosDB document link |
| |
| |