Puoi convertire un argomento di importazione in uno standard o viceversa, oppure un argomento standard in uno di importazione.
Convertire un argomento di importazione in un argomento standard
Per convertire un argomento di importazione in uno standard, cancella le impostazioni di importazione. Procedi nel seguente modo:
Console
Nella console Google Cloud, vai alla pagina Topic.
Fai clic sull'argomento di importazione.
Nella pagina dei dettagli dell'argomento, fai clic su Modifica.
Deseleziona l'opzione Attiva importazione.
Fai clic su Aggiorna.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Esegui il comando
gcloud pubsub topics update
:gcloud pubsub topics update TOPIC_ID \ --clear-ingestion-data-source-settings
Sostituisci TOPIC_ID con l'ID argomento.
Convertire un argomento standard in un argomento di importazione di Amazon Kinesis Data Streams
Per convertire un argomento standard in un argomento di importazione di Amazon Kinesis Data Streams, innanzitutto verifica di soddisfare tutti i prerequisiti.
Console
-
Nella console Google Cloud, vai alla pagina Topic.
-
Fai clic sull'argomento che vuoi convertire in un argomento di importazione.
-
Nella pagina dei dettagli dell'argomento, fai clic su Modifica.
-
Seleziona l'opzione Attiva l'importazione.
-
Per l'origine di importazione, seleziona Amazon Kinesis Data Streams.
-
Inserisci i seguenti dettagli:
-
ARN del flusso Kinesis: l'ARN del flusso di dati Kinesis che prevedi di importare in Pub/Sub. Il formato dell'ARN è il seguente:
arn:${Partition}:kinesis:${Region}:${Account}:stream/${StreamName}
. -
ARN del consumer Kinesis: l'ARN della risorsa consumer registrata al flusso di dati AWS Kinesis. Il formato dell'ARN è il seguente:
arn:${Partition}:kinesis:${Region}:${Account}:${StreamType}/${StreamName}/consumer/${ConsumerName}:${ConsumerCreationTimpstamp}
. -
ARN del ruolo AWS: l'ARN del ruolo AWS. Il formato ARN del ruolo è il seguente:
arn:aws:iam:${Account}:role/${RoleName}
. -
Account di servizio: l'account di servizio che hai creato in Creare un account di servizio in Google Cloud.
-
-
Fai clic su Aggiorna.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Esegui il comando
gcloud pubsub topics update
con tutti i flag menzionati nel seguente esempio:gcloud pubsub topics update TOPIC_ID \ --kinesis-ingestion-stream-arn KINESIS_STREAM_ARN\ --kinesis-ingestion-consumer-arn KINESIS_CONSUMER_ARN\ --kinesis-ingestion-role-arn KINESIS_ROLE_ARN\ --kinesis-ingestion-service-account PUBSUB_SERVICE_ACCOUNT
Sostituisci quanto segue:
-
TOPIC_ID è l'ID o il nome dell'argomento. Questo campo non può essere aggiornato.
-
KINESIS_STREAM_ARN è l'ARN dei flussi di dati Kinesis che prevedi di importare in Pub/Sub. Il formato dell'ARN è il seguente:
arn:${Partition}:kinesis:${Region}:${Account}:stream/${StreamName}
. -
KINESIS_CONSUMER_ARN è l'ARN della risorsa consumer registrata in AWS Kinesis Data Streams. Il formato dell'ARN è il seguente:
arn:${Partition}:kinesis:${Region}:${Account}:${StreamType}/${StreamName}/consumer/${ConsumerName}:${ConsumerCreationTimpstamp}
. -
KINESIS_ROLE_ARN è l'ARN del ruolo AWS. Il formato ARN del ruolo è il seguente:
arn:aws:iam:${Account}:role/${RoleName}
. -
PUBSUB_SERVICE_ACCOUNT è l'account di servizio che hai creato nell'articolo Creare un account di servizio in Google Cloud.
-
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go riportate nella guida rapida di Pub/Sub che utilizza le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Per autenticarti a Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java riportate nella guida rapida di Pub/Sub che utilizza le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub Java.
Per autenticarti a Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js riportate nella guida rapida di Pub/Sub che utilizza le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Per autenticarti a Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python riportate nella guida rapida di Pub/Sub che utilizza le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub Python.
Per autenticarti a Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
C++
Prima di provare questo esempio, segui le istruzioni di configurazione di C++ riportate nella guida rapida di Pub/Sub che utilizza le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub C++.
Per autenticarti a Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js (TypeScript)
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js riportate nella guida rapida di Pub/Sub che utilizza le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Per autenticarti a Pub/Sub, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Per ulteriori informazioni sugli ARN, consulta Amazon Resource Names (ARN) e Identificatori IAM.
Convertire un argomento standard in un argomento di importazione di Cloud Storage
Per convertire un argomento standard in un argomento di importazione di Cloud Storage, innanzitutto verifica di soddisfare tutti i prerequisiti.
Console
-
Nella console Google Cloud, vai alla pagina Topic.
-
Fai clic sull'argomento che vuoi convertire in un argomento di importazione di Cloud Storage.
-
Nella pagina dei dettagli dell'argomento, fai clic su Modifica.
-
Seleziona l'opzione Attiva l'importazione.
-
Per l'origine di importazione, seleziona Google Cloud Storage.
-
Per il bucket Cloud Storage, fai clic su Sfoglia.
Viene visualizzata la pagina Seleziona bucket. Seleziona una delle seguenti opzioni:
-
Seleziona un bucket esistente da qualsiasi progetto appropriato.
-
Fai clic sull'icona Crea e segui le istruzioni sullo schermo per creare un nuovo bucket. Dopo aver creato il bucket, selezionalo per l'argomento sull'importazione da Cloud Storage.
-
-
Quando specifichi il bucket, Pub/Sub controlla se sono presenti le autorizzazioni appropriate per l'account di servizio Pub/Sub. In caso di problemi di autorizzazione, viene visualizzato un messaggio di errore correlato alle autorizzazioni.
Se si verificano problemi di autorizzazione, fai clic su Imposta autorizzazioni. Per ulteriori informazioni, consulta Concedi le autorizzazioni Cloud Storage all'account di servizio Pub/Sub.
-
Per Formato oggetto, seleziona Testo, Avro o Pub/Sub Avro.
Se selezioni Testo, facoltativamente puoi specificare un Delimitatore con cui suddividere gli oggetti in messaggi.
Per ulteriori informazioni su queste opzioni, vedi Formato di input.
- Facoltativo. Puoi specificare un tempo minimo di creazione dell'oggetto per il tuo argomento. Se impostato, vengono importati solo gli oggetti creati dopo il tempo minimo di creazione dell'oggetto.
Per ulteriori informazioni, consulta Tempo minimo di creazione dell'oggetto.
- Devi specificare un pattern glob. Per importare tutti gli oggetti nel bucket,
utilizza
**
come pattern glob. Verranno importati solo gli oggetti che corrispondono al pattern specificato.Per ulteriori informazioni, consulta Abbinare un pattern glob.
- Mantieni le altre impostazioni predefinite.
- Fai clic su Aggiorna argomento.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Per evitare di perdere le impostazioni per l'argomento di importazione, assicurati di includerle tutte ogni volta che aggiorni l'argomento. Se ometti qualcosa, Pub/Sub reimposta l'impostazione sul valore predefinito originale.
Esegui il comando
gcloud pubsub topics update
con tutti i flag menzionati nel seguente esempio:gcloud pubsub topics update TOPIC_ID \ --cloud-storage-ingestion-bucket=BUCKET_NAME\ --cloud-storage-ingestion-input-format=INPUT_FORMAT\ --cloud-storage-ingestion-text-delimiter=TEXT_DELIMITER\ --cloud-storage-ingestion-minimum-object-create-time=MINIMUM_OBJECT_CREATE_TIME\ --cloud-storage-ingestion-match-glob=MATCH_GLOB
Sostituisci quanto segue:
-
TOPIC_ID è l'ID o il nome dell'argomento. Questo campo non può essere aggiornato.
-
BUCKET_NAME: specifica il nome di un bucket esistente. Ad esempio,
prod_bucket
. Il nome del bucket non deve includere l'ID progetto. Per creare un bucket, consulta la sezione Creare bucket. -
INPUT_FORMAT: specifica il formato degli oggetti importati. Può essere
text
,avro
opubsub_avro
. Per ulteriori informazioni su queste opzioni, consulta Formato di input. -
TEXT_DELIMITER: specifica il delimitatore con cui suddividere gli oggetti di testo in messaggi Pub/Sub. Deve essere costituito da un solo carattere e deve essere impostato solo quando
INPUT_FORMAT
ètext
. Il valore predefinito è il carattere di nuova riga (\n
).Quando utilizzi gcloud CLI per specificare il delimitatore, presta molta attenzione alla gestione dei caratteri speciali come il nuovo riga
\n
. Utilizza il formato'\n'
per assicurarti che il delimitatore venga interpretato correttamente. Se utilizzi semplicemente\n
senza virgolette o sfugge, il delimitatore sarà"n"
. -
MINIMUM_OBJECT_CREATE_TIME: specifica il tempo minimo in cui è stato creato un oggetto affinché possa essere importato. Deve essere in UTC nel formato
YYYY-MM-DDThh:mm:ssZ
. Ad esempio:2024-10-14T08:30:30Z
.È valida qualsiasi data, passata o futura, compresa tra
0001-01-01T00:00:00Z
e9999-12-31T23:59:59Z
. -
MATCH_GLOB: specifica il pattern glob da associare per consentire l'importazione di un oggetto. Quando utilizzi gcloud CLI, un pattern di corrispondenza con caratteri
*
deve avere il carattere*
formattato come carattere di escape nel formato\*\*.txt
o l'intero pattern di corrispondenza deve essere tra virgolette"**.txt"
o'**.txt'
. Per informazioni sulla sintassi supportata per i pattern glob, consulta la documentazione di Cloud Storage.
-