Exemple #1
0
    def drop_table(config,
                   destination_system,
                   destination_database,
                   destination_environment,
                   destination_table,
                   emr_cluster_id=None):
        # create abstract table object to retrieve source technology
        abstract_table = Table(config, destination_system,
                               destination_database, destination_environment,
                               destination_table)
        destination_system_technology = abstract_table.get_destination_technology(
        )

        # hadoop
        if destination_system_technology == DataSystem.SystemTechnology.HIVE:
            if abstract_table.storage_type == DataSystem.StorageType.S3:
                from m3d.hadoop.emr.emr_system import EMRSystem
                emr_system = EMRSystem(config, destination_system,
                                       destination_database,
                                       destination_environment, emr_cluster_id)
                emr_system.add_cluster_tag(EMRSystem.EMRClusterTag.API_METHOD,
                                           M3D.drop_table.__name__)
                emr_system.drop_table(destination_table)
            else:
                raise m3d_exceptions.M3DUnsupportedStorageException(
                    abstract_table.storage_type)
        else:
            raise m3d_exceptions.M3DUnsupportedDestinationSystemException(
                destination_system_technology)
Exemple #2
0
    def drop_dataset(config,
                     destination_system,
                     destination_database,
                     destination_environment,
                     destination_dataset,
                     emr_cluster_id=None):
        from m3d.hadoop.emr.emr_system import EMRSystem
        emr_system = EMRSystem(config, destination_system,
                               destination_database, destination_environment,
                               emr_cluster_id)

        emr_system.add_cluster_tag(EMRSystem.EMRClusterTag.API_METHOD,
                                   M3D.drop_dataset.__name__)
        emr_system.drop_dataset(destination_dataset)