@Override public Type getType(int field) { return getPrestoType(getTpchColumn(field)); }
@Override public ConnectorRecordSetProvider getRecordSetProvider() { return new TpchRecordSetProvider(); }
@Override public ConnectorMetadata getMetadata(ConnectorTransactionHandle transaction) { return new TpchMetadata(catalogName, columnNaming, predicatePushdownEnabled, partitioningEnabled); }
@Override public RecordSet getRecordSet(ConnectorTransactionHandle transaction, ConnectorSession session, ConnectorSplit split, List<? extends ColumnHandle> columns) { TpchSplit tpchSplit = (TpchSplit) split; String tableName = tpchSplit.getTableHandle().getTableName(); TpchTable<?> tpchTable = TpchTable.getTable(tableName); return getRecordSet(tpchTable, columns, tpchSplit.getTableHandle().getScaleFactor(), tpchSplit.getPartNumber(), tpchSplit.getTotalParts(), tpchSplit.getPredicate()); }
@Override public ConnectorTableMetadata getTableMetadata(ConnectorSession session, ConnectorTableHandle tableHandle) { TpchTableHandle tpchTableHandle = (TpchTableHandle) tableHandle; TpchTable<?> tpchTable = TpchTable.getTable(tpchTableHandle.getTableName()); String schemaName = scaleFactorSchemaName(tpchTableHandle.getScaleFactor()); return getTableMetadata(schemaName, tpchTable, columnNaming); }
private void insertRows(TpchMetadata tpchMetadata, TpchTable tpchTable) { TpchTableHandle tableHandle = tpchMetadata.getTableHandle(null, new SchemaTableName(TINY_SCHEMA_NAME, tpchTable.getTableName())); insertRows(tpchMetadata.getTableMetadata(null, tableHandle), handle, createTpchRecordSet(tpchTable, tableHandle.getScaleFactor())); }
@VisibleForTesting TpchColumnHandle toColumnHandle(TpchColumn<?> column) { return new TpchColumnHandle(columnNaming.getName(column), getPrestoType(column)); }
private ColumnHandle getColumnHandle(TpchTableHandle tpchTableHandle, Map<String, ColumnHandle> columnHandles, String columnName) { TpchTable<?> table = TpchTable.getTable(tpchTableHandle.getTableName()); return columnHandles.get(columnNaming.getName(table.getColumn(columnName))); }
@Override public ConnectorSplitManager getSplitManager() { return new TpchSplitManager(nodeManager, splitsPerNode); }
@Override public ConnectorHandleResolver getHandleResolver() { return new TpchHandleResolver(); }
@Override public ConnectorNodePartitioningProvider getNodePartitioningProvider() { return new TpchNodePartitioningProvider(nodeManager, splitsPerNode); } };
@Override public String toString() { return table.toString(); } }
@Override public ToIntFunction<ConnectorSplit> getSplitBucketFunction(ConnectorTransactionHandle transactionHandle, ConnectorSession session, ConnectorPartitioningHandle partitioningHandle) { return value -> ((TpchSplit) value).getPartNumber(); }
@Override public double getDouble(int field) { checkState(row != null, "No current row"); return getDouble(getTpchColumn(field)); }
public void assertClose(Estimate actual, Estimate expected, String comparedValue) { assertClose(toOptional(actual), toOptional(expected), comparedValue); }
@Override public ConnectorRecordSetProvider getRecordSetProvider() { return new TpchRecordSetProvider(); }
@Override public ConnectorSplitManager getSplitManager() { return new TpchSplitManager(nodeManager, splitsPerNode); }
@Override public ConnectorHandleResolver getHandleResolver() { return new TpchHandleResolver(); }
@Override public ConnectorNodePartitioningProvider getNodePartitioningProvider() { return new TpchNodePartitioningProvider(nodeManager, splitsPerNode); } };
@Override public ConnectorRecordSetProvider getRecordSetProvider() { return new TpchRecordSetProvider(); }