예제 #1
0
    def execute(self, context: "Context"):
        hook = DataprocMetastoreHook(
            gcp_conn_id=self.gcp_conn_id,
            impersonation_chain=self.impersonation_chain)
        self.log.info("Exporting metadata from Dataproc Metastore service: %s",
                      self.service_id)
        hook.export_metadata(
            destination_gcs_folder=self.destination_gcs_folder,
            project_id=self.project_id,
            region=self.region,
            service_id=self.service_id,
            request_id=self.request_id,
            database_dump_type=self.database_dump_type,
            retry=self.retry,
            timeout=self.timeout,
            metadata=self.metadata,
        )
        metadata_export = self._wait_for_export_metadata(hook)
        self.log.info("Metadata from service %s exported successfully",
                      self.service_id)

        DataprocMetastoreLink.persist(context=context,
                                      task_instance=self,
                                      url=METASTORE_EXPORT_LINK)
        uri = self._get_uri_from_destination(
            MetadataExport.to_dict(metadata_export)["destination_gcs_uri"])
        StorageLink.persist(context=context, task_instance=self, uri=uri)
        return MetadataExport.to_dict(metadata_export)
예제 #2
0
 def execute(self, context: 'Context'):
     hook = DataprocMetastoreHook(
         gcp_conn_id=self.gcp_conn_id, impersonation_chain=self.impersonation_chain
     )
     self.log.info("Exporting metadata from Dataproc Metastore service: %s", self.service_id)
     hook.export_metadata(
         destination_gcs_folder=self.destination_gcs_folder,
         project_id=self.project_id,
         region=self.region,
         service_id=self.service_id,
         request_id=self.request_id,
         database_dump_type=self.database_dump_type,
         retry=self.retry,
         timeout=self.timeout,
         metadata=self.metadata,
     )
     metadata_export = self._wait_for_export_metadata(hook)
     self.log.info("Metadata from service %s exported successfully", self.service_id)
     return MetadataExport.to_dict(metadata_export)