org.apache.hive.hcatalog.data.transfer.DataTransferFactory Java Examples
The following examples show how to use
org.apache.hive.hcatalog.data.transfer.DataTransferFactory.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: HiveTableReader.java From kylin-on-parquet-v2 with Apache License 2.0 | 6 votes |
private static ReaderContext getHiveReaderContext(String database, String table, Map<String, String> partitionKV) throws Exception { HiveConf hiveConf = new HiveConf(HiveTableReader.class); Iterator<Entry<String, String>> itr = hiveConf.iterator(); Map<String, String> map = new HashMap<String, String>(); while (itr.hasNext()) { Entry<String, String> kv = itr.next(); map.put(kv.getKey(), kv.getValue()); } ReadEntity entity; if (partitionKV == null || partitionKV.size() == 0) { entity = new ReadEntity.Builder().withDatabase(database).withTable(table).build(); } else { entity = new ReadEntity.Builder().withDatabase(database).withTable(table).withPartition(partitionKV).build(); } HCatReader reader = DataTransferFactory.getHCatReader(entity, map); ReaderContext cntxt = reader.prepareRead(); return cntxt; }
Example #2
Source File: HiveTableReader.java From kylin with Apache License 2.0 | 6 votes |
private static ReaderContext getHiveReaderContext(String database, String table, Map<String, String> partitionKV) throws Exception { HiveConf hiveConf = new HiveConf(HiveTableReader.class); Iterator<Entry<String, String>> itr = hiveConf.iterator(); Map<String, String> map = new HashMap<String, String>(); while (itr.hasNext()) { Entry<String, String> kv = itr.next(); map.put(kv.getKey(), kv.getValue()); } ReadEntity entity; if (partitionKV == null || partitionKV.size() == 0) { entity = new ReadEntity.Builder().withDatabase(database).withTable(table).build(); } else { entity = new ReadEntity.Builder().withDatabase(database).withTable(table).withPartition(partitionKV).build(); } HCatReader reader = DataTransferFactory.getHCatReader(entity, map); ReaderContext cntxt = reader.prepareRead(); return cntxt; }
Example #3
Source File: HiveTableReader.java From Kylin with Apache License 2.0 | 6 votes |
private static ReaderContext getHiveReaderContext(String database, String table, Map<String, String> partitionKV) throws Exception { HiveConf hiveConf = new HiveConf(HiveTableReader.class); Iterator<Entry<String, String>> itr = hiveConf.iterator(); Map<String, String> map = new HashMap<String, String>(); while (itr.hasNext()) { Entry<String, String> kv = itr.next(); map.put(kv.getKey(), kv.getValue()); } ReadEntity entity; if (partitionKV == null || partitionKV.size() == 0) { entity = new ReadEntity.Builder().withDatabase(database).withTable(table).build(); } else { entity = new ReadEntity.Builder().withDatabase(database).withTable(table).withPartition(partitionKV).build(); } HCatReader reader = DataTransferFactory.getHCatReader(entity, map); ReaderContext cntxt = reader.prepareRead(); return cntxt; }
Example #4
Source File: TableDataInserter.java From HiveRunner with Apache License 2.0 | 6 votes |
private void insert(Map<String, String> partitionSpec, Iterable<HCatRecord> rows) { WriteEntity entity = new WriteEntity.Builder() .withDatabase(databaseName) .withTable(tableName) .withPartition(partitionSpec) .build(); try { HCatWriter master = DataTransferFactory.getHCatWriter(entity, config); WriterContext context = master.prepareWrite(); HCatWriter writer = DataTransferFactory.getHCatWriter(context); writer.write(rows.iterator()); master.commit(context); } catch (HCatException e) { throw new RuntimeException("An error occurred while inserting data to " + databaseName + "." + tableName, e); } }
Example #5
Source File: PartitionReaderFn.java From beam with Apache License 2.0 | 5 votes |
private ReaderContext getReaderContext(Read readRequest, Integer partitionIndexToRead) throws Exception { final List<Partition> partitions = metaStoreClient.listPartitions( readRequest.getDatabase(), readRequest.getTable(), Short.MAX_VALUE); final Partition partition = partitions.get(partitionIndexToRead); checkArgument( partition != null, "Unable to find a partition to read at index " + partitionIndexToRead); final int desiredSplitCount = HCatalogUtils.getSplitCount(readRequest, partition); final List<String> values = partition.getValues(); final List<String> partitionCols = readRequest.getPartitionCols(); checkArgument( values.size() == partitionCols.size(), "Number of input partitions should be equal to the values of list partition values."); List<String> filter = new ArrayList<>(); for (int i = 0; i < partitionCols.size(); i++) { filter.add(partitionCols.get(i) + "=" + "'" + values.get(i) + "'"); } final String filterString = String.join(" and ", filter); ReadEntity entity = new ReadEntity.Builder() .withDatabase(readRequest.getDatabase()) .withFilter(filterString) .withTable(readRequest.getTable()) .build(); // pass the 'desired' split count as an hint to the API Map<String, String> configProps = new HashMap<>(readRequest.getConfigProperties()); configProps.put( HCatConstants.HCAT_DESIRED_PARTITION_NUM_SPLITS, String.valueOf(desiredSplitCount)); return DataTransferFactory.getHCatReader(entity, configProps).prepareRead(); }
Example #6
Source File: PartitionReaderFn.java From beam with Apache License 2.0 | 5 votes |
@ProcessElement public void processElement(ProcessContext c) throws Exception { final Read readRequest = c.element().getKey(); final Integer partitionIndexToRead = c.element().getValue(); ReaderContext readerContext = getReaderContext(readRequest, partitionIndexToRead); for (int i = 0; i < readerContext.numSplits(); i++) { HCatReader reader = DataTransferFactory.getHCatReader(readerContext, i); Iterator<HCatRecord> hcatIterator = reader.read(); while (hcatIterator.hasNext()) { final HCatRecord record = hcatIterator.next(); c.output(record); } } }
Example #7
Source File: HCatalogIO.java From beam with Apache License 2.0 | 5 votes |
private ReaderContext getReaderContext(long desiredSplitCount) throws HCatException { ReadEntity entity = new ReadEntity.Builder() .withDatabase(spec.getDatabase()) .withTable(spec.getTable()) .withFilter(spec.getFilter()) .build(); // pass the 'desired' split count as an hint to the API Map<String, String> configProps = new HashMap<>(spec.getConfigProperties()); configProps.put( HCatConstants.HCAT_DESIRED_PARTITION_NUM_SPLITS, String.valueOf(desiredSplitCount)); return DataTransferFactory.getHCatReader(entity, configProps).prepareRead(); }
Example #8
Source File: HCatalogIO.java From beam with Apache License 2.0 | 5 votes |
@Override public boolean start() throws HCatException { HCatReader reader = DataTransferFactory.getHCatReader(source.spec.getContext(), source.spec.getSplitId()); hcatIterator = reader.read(); return advance(); }
Example #9
Source File: HCatalogIO.java From beam with Apache License 2.0 | 5 votes |
@Setup public void initiateWrite() throws HCatException { WriteEntity entity = new WriteEntity.Builder() .withDatabase(spec.getDatabase()) .withTable(spec.getTable()) .withPartition(spec.getPartition()) .build(); masterWriter = DataTransferFactory.getHCatWriter(entity, spec.getConfigProperties()); writerContext = masterWriter.prepareWrite(); slaveWriter = DataTransferFactory.getHCatWriter(writerContext); }
Example #10
Source File: HiveTableReader.java From kylin-on-parquet-v2 with Apache License 2.0 | 4 votes |
private static Iterator<HCatRecord> loadHCatRecordItr(ReaderContext readCntxt, int dataSplit) throws HCatException { HCatReader currentHCatReader = DataTransferFactory.getHCatReader(readCntxt, dataSplit); return currentHCatReader.read(); }
Example #11
Source File: HCatalogIOTestUtils.java From beam with Apache License 2.0 | 4 votes |
/** Returns a ReaderContext instance for the passed datastore config params. */ public static ReaderContext getReaderContext(Map<String, String> config) throws HCatException { return DataTransferFactory.getHCatReader(READ_ENTITY, config).prepareRead(); }
Example #12
Source File: HCatalogIOTestUtils.java From beam with Apache License 2.0 | 4 votes |
/** Returns a WriterContext instance for the passed datastore config params. */ private static WriterContext getWriterContext(Map<String, String> config) throws HCatException { return DataTransferFactory.getHCatWriter(WRITE_ENTITY, config).prepareWrite(); }
Example #13
Source File: HCatalogIOTestUtils.java From beam with Apache License 2.0 | 4 votes |
/** Writes records to the table using the passed WriterContext. */ private static void writeRecords(WriterContext context) throws HCatException { DataTransferFactory.getHCatWriter(context) .write(buildHCatRecords(TEST_RECORDS_COUNT).iterator()); }
Example #14
Source File: HCatalogIOTestUtils.java From beam with Apache License 2.0 | 4 votes |
/** Commits the pending writes to the database. */ private static void commitRecords(Map<String, String> config, WriterContext context) throws IOException { DataTransferFactory.getHCatWriter(WRITE_ENTITY, config).commit(context); }
Example #15
Source File: HiveTableReader.java From kylin with Apache License 2.0 | 4 votes |
private static Iterator<HCatRecord> loadHCatRecordItr(ReaderContext readCntxt, int dataSplit) throws HCatException { HCatReader currentHCatReader = DataTransferFactory.getHCatReader(readCntxt, dataSplit); return currentHCatReader.read(); }
Example #16
Source File: HiveTableReader.java From Kylin with Apache License 2.0 | 4 votes |
private static Iterator<HCatRecord> loadHCatRecordItr(ReaderContext readCntxt, int dataSplit) throws HCatException { HCatReader currentHCatReader = DataTransferFactory.getHCatReader(readCntxt, dataSplit); return currentHCatReader.read(); }