Funzioni condivisione dati

L'API (Application Programming Interface) di Python Data Studio per le funzioni di condivisione dei dati fornisce la sintassi e le descrizioni delle classi, dei metodi, degli attributi e dei parametri dell'interfaccia di programmazione dell'applicazione allo strumento di condivisione dei dati della suite di strumenti Data Studio.

Funzioni API condivisione dati Data Studio

La classe Adp.Share viene utilizzata per l'utilizzo delle condivisioni dati. Questa classe contiene un set di funzioni di condivisione dei dati che consente di gestire condivisioni di dati, destinatari e così via.

Prerequisiti

È innanzitutto necessario creare un'istanza ADP.

Le funzioni hanno valore restituito stringa e parametri stringa.

Crea procedura di condivisione

Questa funzione crea la condivisione dei dati in base alla data di storage degli oggetti e li associa ai destinatari.

Sintassi

Share.create_share(name, objects, storage_link_name, publish_job_details, owner, type,
      storage_link_owner, description)
Di seguito sono riportati i parametri e le descrizioni.
  • nome: il nome della condivisione dati. Questo campo è obbligatorio.
  • oggetti: il dizionario degli oggetti Condivisione dati è costituito dai campi riportati di seguito.
    • [{"schemaName" : "schemaNameValue", "objectName": [{"objectName": "objectNameValue", "objectOwnerValue": "objectOwnerValue", "shareObjectName" : "shareObjectNameValue"}, ...]}, ...]

    Questo campo è obbligatorio.

  • nome_collegamento_storage: questo campo visualizza il nome del collegamento di memorizzazione cloud Condivisione dati.
  • publish_job_details: questo campo visualizza il dizionario dei dettagli del job di pubblicazione Condivisione dati. Se questo campo manca, viene utilizzato {"enabled": False}.
  • Proprietario: questo campo visualizza il proprietario della condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.
  • tipo: il tipo di condivisione dati. Se manca questo campo, lo strumento utilizza il campo VERSIONED.
  • storage_link_owner: proprietario del collegamento Storage cloud condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.
  • descrizione: questo campo visualizza la descrizione della condivisione dati. Se manca questo campo, lo strumento utilizza una stringa vuota.

Esempio
In questo esempio è possibile creare una condivisione dati:
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"}

Procedura Aggiorna oggetti condivisione dati

Questa funzione aggiorna gli oggetti di condivisione dati.

Sintassi

Share.update_share_objects(name, objects, publish_job_details, owner,
    description) 
Di seguito sono riportati i parametri e le descrizioni.
  • nome: il nome della condivisione dati. Questo campo è obbligatorio.
  • oggetti: il dizionario degli oggetti Condivisione dati è costituito dai campi riportati di seguito.
    • [{"schemaName" : "schemaNameValue", "objectName": [{"objectName": "objectNameValue", "objectOwnerValue": "objectOwnerValue", "shareObjectName" : "shareObjectNameValue"}, ...]}, ...]

    Questo campo è obbligatorio.

  • publish_job_details: questo campo visualizza il dizionario dei dettagli del job di pubblicazione Condivisione dati. Se questo campo manca, viene utilizzato {"enabled": False}.
  • Proprietario: questo campo visualizza il proprietario della condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.
  • descrizione: questo campo visualizza la descrizione della condivisione dati. Se manca questo campo, lo strumento utilizza una stringa vuota.

Esempio
In questo esempio è possibile aggiornare un oggetto Condivisione dati:
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"}'

Elimina procedura di condivisione dati

Questa funzione elimina la condivisione dati.

Sintassi

Share.delete_share(name, owner)
Di seguito sono riportati i parametri e le descrizioni.
  • nome: il nome della condivisione dati. Questo campo è obbligatorio.
  • Proprietario: questo campo visualizza il proprietario della condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio
In questo esempio è possibile eliminare un oggetto Condivisione dati:
adp.Share.delete_share('share_py_api_7_1')

//Output:
'{"deletedShare":true}'

Rinomina procedura condivisione dati

Questa funzione rinomina la condivisione dati.

Sintassi

Share.rename_share(name, new_name, owner)
Di seguito sono riportati i parametri e le descrizioni.
  • nome: il nome della condivisione dati. Questo campo è obbligatorio.
  • nuovo_nome: il nuovo nome che si desidera per la condivisione dati. Questo campo è obbligatorio.
  • Proprietario: questo campo visualizza il proprietario della condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio
In questo esempio è possibile rinominare una condivisione dati:
adp.Share.rename_share (name = 'share_py_api_7', new_name = 'share_py_api_7_1')

'{ "status": true }'

Pubblica procedura di condivisione dati

Questa funzione pubblica Condivisione dati.

Sintassi

Share.publish_share(name, owner)
Di seguito sono riportati i parametri e le descrizioni.
  • nome: il nome della condivisione dati. Questo campo è obbligatorio.
  • Proprietario: questo campo visualizza il proprietario della condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio
In questo esempio è possibile pubblicare una condivisione dati:
adp.Share.publish_share(name='share_py_api_7_1')
//Output:
'{"publishShare":true}'

Annulla pubblicazione condivisione dati

Questa funzione pubblica Condivisione dati.

Sintassi

Share.unpublish_share(name, owner)
Di seguito sono riportati i parametri e le descrizioni.
  • nome: il nome della condivisione dati. Questo campo è obbligatorio.
  • Proprietario: questo campo visualizza il proprietario della condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio
In questo esempio è possibile annullare la pubblicazione di una condivisione dati:
adp.Share.unpublish_share(name ='share_py_api_7_1')

//Output:
'{"unpublishShare":true}'

Recupera procedura di condivisione

Questa funzione riceve i dettagli di condivisione dati.

Sintassi

Share.get_share(name, owner)
Di seguito sono riportati i parametri e le descrizioni.
  • nome: il nome della condivisione dati. Questo campo è obbligatorio.
  • Proprietario: questo campo visualizza il proprietario della condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio
In questo esempio è possibile ricevere i dettagli di condivisione dati:
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}}

Procedura di recupero delle quote

Questa funzione riceve l'elenco Condivisione dati in base al proprietario della condivisione dati.

Sintassi

Share.get_shares(owner)
Di seguito sono riportati i parametri e le descrizioni.
  • Proprietario: questo campo visualizza il proprietario della condivisione dati. Se manca questo campo, lo strumento utilizza il proprietario dello schema corrente.

Esempio
In questo esempio è possibile ricevere l'elenco Condivisione dati:
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}]
È inoltre possibile visualizzare gli argomenti relativi alle procedure elencate di seguito.