Datenfreigabefunktionen
Die Python Data Studio Application Programming Interface (API) für Data Share-Funktionen enthält die Syntax und Beschreibungen der Klassen, Methoden, Attribute und Parameter der Anwendungsprogrammierschnittstelle zum Data Share-Tool der Data Studio-Toolsuite.
Data Studio Data Share-API-Funktionen
Die Klasse Adp.Share wird für die Arbeit mit Datenfreigaben verwendet. Diese Klasse enthält eine Reihe von Datenfreigabefunktionen, mit denen Datenfreigaben, Empfänger usw. verwaltet werden können.
Voraussetzungen
Sie müssen zuerst eine ADP-Instanz erstellen.
Die Funktionen haben einen Zeichenfolgenrückgabewert und Zeichenfolgenparameter.
Freigabeprozedur erstellen
Diese Funktion erstellt die Datenfreigabe basierend auf dem Objektspeicherdatum und verknüpft sie mit Empfängern.
Syntax
Share.create_share(name, objects, storage_link_name, publish_job_details, owner, type,
storage_link_owner, description)- Name: Der Name der Datenfreigabe. Dieses Feld ist ein Pflichtfeld.
- Objekte: Das Data Share-Objekt-Dictionary besteht aus den folgenden Feldern:
- [{"schemaName" : "schemaNameValue", "objects": [{"objectName": "objectNameValue", "objectOwner": "objectOwnerValue", "shareObjectName": "shareObjectNameValue"}, ...]}, ...]
Dieses Feld ist ein Pflichtfeld.
- storage_link_name: In diesem Feld wird der Name des Cloud-Speicherlinks "Datenfreigabe" angezeigt.
- publish_job_details: In diesem Feld wird das Data Share Publish-Jobdetailverzeichnis angezeigt. Wenn dieses Feld fehlt, wird {
"enabled": False} verwendet. - Eigentümer: In diesem Feld wird der Eigentümer der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
- type: Der Typ der Datenfreigabe. Wenn dieses Feld fehlt, verwendet das Tool das Feld
VERSIONED. - storage_link_owner: Der Eigentümer des Links "Cloud-Speicher für Datenfreigabe". Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
- Beschreibung: In diesem Feld wird die Beschreibung der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool eine leere Zeichenfolge.
name = 'share_py_api_7'
desc = 'desc_share_py_api_7'
link = '"food_cred"'
share_objects = json.dumps([{"schemaName" : "ADMIN",
"objects" : [{"objectName" : "IRIS",
"objectOwner" : "ADMIN",
"shareObjectName" : "IRIS_SHARE"},
{"objectName" : "DEMO_FOOD_SAMPLE",
"objectOwner" : "ADMIN",
"shareObjectName" : "DEMO_FOOD_SAMPLE_SHARE"}
]}])
job = json.dumps({"enabled" : False})
adp.Share.create_share(
name = name,
description = desc,
storage_link_name = link,
objects = share_objects,
publish_job_details = job)//Output:
{"createdShare":true,"notifyRecipients":false,"shareId":40295,"sharetablename_":"DEMO_FOOD_SAMPLE_SHARE"}Datenfreigabeobjekte aktualisieren - Vorgehensweise
Diese Funktion aktualisiert die Datenfreigabeobjekte.
Syntax
Share.update_share_objects(name, objects, publish_job_details, owner,
description) - Name: Der Name der Datenfreigabe. Dieses Feld ist ein Pflichtfeld.
- Objekte: Das Data Share-Objekt-Dictionary besteht aus den folgenden Feldern:
- [{"schemaName" : "schemaNameValue", "objects": [{"objectName": "objectNameValue", "objectOwner": "objectOwnerValue", "shareObjectName": "shareObjectNameValue"}, ...]}, ...]
Dieses Feld ist ein Pflichtfeld.
- publish_job_details: In diesem Feld wird das Data Share Publish-Jobdetailverzeichnis angezeigt. Wenn dieses Feld fehlt, wird {
"enabled": False} verwendet. - Eigentümer: In diesem Feld wird der Eigentümer der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
- Beschreibung: In diesem Feld wird die Beschreibung der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool eine leere Zeichenfolge.
name = 'share_py_api_7'
objects = json.dumps([{"schemaName" : "ADMIN",
"objects" : [{"objectName" : "WINE",
"objectOwner" : "ADMIN",
"shareObjectName" : "WINE_SHARE"}
]}])
adp.Share.update_share_objects(name = name, objects = objects)//Output:
'{"sharetablename_":"WINE_SHARE"}'Datenfreigabeverfahren löschen
Diese Funktion löscht die Datenfreigabe.
Syntax
Share.delete_share(name, owner)- Name: Der Name der Datenfreigabe. Dieses Feld ist ein Pflichtfeld.
- Eigentümer: In diesem Feld wird der Eigentümer der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
adp.Share.delete_share('share_py_api_7_1')//Output:
'{"deletedShare":true}'Prozedur "Datenfreigabe umbenennen"
Diese Funktion benennt die Datenfreigabe um.
Syntax
Share.rename_share(name, new_name, owner)- Name: Der Name der Datenfreigabe. Dieses Feld ist ein Pflichtfeld.
- new_name: Der neue Name für die Datenfreigabe. Dieses Feld ist ein Pflichtfeld.
- Eigentümer: In diesem Feld wird der Eigentümer der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
adp.Share.rename_share (name = 'share_py_api_7', new_name = 'share_py_api_7_1')'{ "status": true }'Prozedur "Datenfreigabe veröffentlichen"
Diese Funktion veröffentlicht Data Share.
Syntax
Share.publish_share(name, owner)- Name: Der Name der Datenfreigabe. Dieses Feld ist ein Pflichtfeld.
- Eigentümer: In diesem Feld wird der Eigentümer der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
adp.Share.publish_share(name='share_py_api_7_1')//Output:
'{"publishShare":true}'Veröffentlichung der Datenfreigabe aufheben
Diese Funktion veröffentlicht Data Share.
Syntax
Share.unpublish_share(name, owner)- Name: Der Name der Datenfreigabe. Dieses Feld ist ein Pflichtfeld.
- Eigentümer: In diesem Feld wird der Eigentümer der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
adp.Share.unpublish_share(name ='share_py_api_7_1')//Output:
'{"unpublishShare":true}'Share-Prozedur abrufen
Diese Funktion erhält Datenfreigabedetails.
Syntax
Share.get_share(name, owner)- Name: Der Name der Datenfreigabe. Dieses Feld ist ein Pflichtfeld.
- Eigentümer: In diesem Feld wird der Eigentümer der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
s = adp.Share.get_share(name = 'share_py_api_7_1')
json.loads(s)//Output:
{'id': 40415,
'name': 'SHARE_PY_API_7_1',
'owner': 'ADMIN',
'description': 'desc_share_py_api_7',
'publicDescription': 'desc_share_py_api_7',
'type': 'VERSIONED',
'version': None,
'tablesCount': 3,
'recipientsCount': 0,
'lastExportTime': None,
'objects': [{'id': 40416,
'schemaName': 'ADMIN',
'objects': [{'id': 40435,
'shareObjectName': 'WINE_SHARE',
'objectName': 'WINE',
'objectOwner': 'ADMIN',
'objectType': 'TABLE'},
{'id': 40417,
'shareObjectName': 'IRIS_SHARE',
'objectName': 'IRIS',
'objectOwner': 'ADMIN',
'objectType': 'TABLE'},
{'id': 40418,
'shareObjectName': 'DEMO_FOOD_SAMPLE_SHARE',
'objectName': 'DEMO_FOOD_SAMPLE',
'objectOwner': 'ADMIN',
'objectType': 'TABLE'}]}],
'recipients': None,
'storageLinkName': 'food_cred',
'schedule': {'enabled': 'FALSE',
'startDate': None,
'endDate': None,
'repeatInterval': None}}Shares abrufen - Prozedur
Diese Funktion erhält die Datenfreigabeliste basierend auf dem Eigentümer der Datenfreigabe.
Syntax
Share.get_shares(owner)- Eigentümer: In diesem Feld wird der Eigentümer der Datenfreigabe angezeigt. Wenn dieses Feld fehlt, verwendet das Tool den aktuellen Schemaeigentümer.
s = adp.Share.get_shares()
json.loads(s)//Output:
[{'id': 40415,
'name': 'SHARE_PY_API_7_1',
'owner': 'ADMIN',
'description': 'desc_share_py_api_7',
'type': 'VERSIONED',
'tablesCount': 3,
'version': None}]- Funktionen für die gemeinsame Verwendung von Empfängerdaten
Die hier aufgeführten Verfahren umfassen alle Funktionen, die ein Empfänger einer Datenfreigabe benötigt. - Funktionen zur gemeinsamen Nutzung von Providerdaten
Die hier aufgeführten Verfahren decken alle Funktionen ab, die der Provider einer gemeinsamen Nutzung von Providerdaten benötigt.
Übergeordnetes Thema: Mit Python Data Studio-API für Autonomous Database arbeiten