Search in sources :

Example 1 with HiveRegister

use of org.apache.gobblin.hive.HiveRegister in project incubator-gobblin by apache.

the class CompactionHiveRegistrationAction method onCompactionJobComplete.

public void onCompactionJobComplete(FileSystemDataset dataset) throws IOException {
    if (state.contains(ConfigurationKeys.HIVE_REGISTRATION_POLICY)) {
        HiveRegister hiveRegister = HiveRegister.get(state);
        HiveRegistrationPolicy hiveRegistrationPolicy = HiveRegistrationPolicyBase.getPolicy(state);
        CompactionPathParser.CompactionParserResult result = new CompactionPathParser(state).parse(dataset);
        List<String> paths = new ArrayList<>();
        for (HiveSpec spec : hiveRegistrationPolicy.getHiveSpecs(new Path(result.getDstAbsoluteDir()))) {
            hiveRegister.register(spec);
            paths.add(spec.getPath().toUri().toASCIIString());
            log.info("Hive registration is done for {}", result.getDstAbsoluteDir());
        }
        // submit events for hive registration
        if (eventSubmitter != null) {
            Map<String, String> eventMetadataMap = ImmutableMap.of(CompactionSlaEventHelper.DATASET_URN, dataset.datasetURN(), CompactionSlaEventHelper.HIVE_REGISTRATION_PATHS, Joiner.on(',').join(paths));
            this.eventSubmitter.submit(CompactionSlaEventHelper.COMPACTION_HIVE_REGISTRATION_EVENT, eventMetadataMap);
        }
    }
}
Also used : Path(org.apache.hadoop.fs.Path) HiveRegister(org.apache.gobblin.hive.HiveRegister) ArrayList(java.util.ArrayList) CompactionPathParser(org.apache.gobblin.compaction.parser.CompactionPathParser) HiveRegistrationPolicy(org.apache.gobblin.hive.policy.HiveRegistrationPolicy) HiveSpec(org.apache.gobblin.hive.spec.HiveSpec)

Aggregations

ArrayList (java.util.ArrayList)1 CompactionPathParser (org.apache.gobblin.compaction.parser.CompactionPathParser)1 HiveRegister (org.apache.gobblin.hive.HiveRegister)1 HiveRegistrationPolicy (org.apache.gobblin.hive.policy.HiveRegistrationPolicy)1 HiveSpec (org.apache.gobblin.hive.spec.HiveSpec)1 Path (org.apache.hadoop.fs.Path)1