/** * Method to check whether there exists any block which does not contain the blocklet info * * @param splitList * @return */ public static boolean isBlockWithoutBlockletInfoExists(List<CarbonInputSplit> splitList) { for (CarbonInputSplit inputSplit : splitList) { if (null == inputSplit.getDetailInfo().getBlockletInfo()) { return true; } } return false; }
@Override public int getPageRowCount(int pageNumber) { return blockInfos.get(index).getDetailInfo().getBlockletInfo() .getNumberOfRowsPerPage()[pageNumber]; }
@Override public byte[][] getColumnsMinValue() { BlockletIndex blockletIndex = blockInfos.get(index).getDetailInfo().getBlockletInfo().getBlockletIndex(); // In case of blocklet distribution this will be null if (null != blockletIndex) { return blockletIndex.getMinMaxIndex().getMinValues(); } return null; }
@Override public byte[][] getColumnsMaxValue() { BlockletIndex blockletIndex = blockInfos.get(index).getDetailInfo().getBlockletInfo().getBlockletIndex(); // In case of blocklet distribution this will be null if (null != blockletIndex) { return blockletIndex.getMinMaxIndex().getMaxValues(); } return null; }
@Override public boolean[] minMaxFlagArray() { BlockletIndex blockletIndex = blockInfos.get(index).getDetailInfo().getBlockletInfo().getBlockletIndex(); boolean[] isMinMaxSet = null; if (null != blockletIndex) { isMinMaxSet = blockletIndex.getMinMaxIndex().getIsMinMaxSet(); } return isMinMaxSet; }
private DimensionColumnChunkReader getDimensionColumnChunkReader(FileReader fileReader) { ColumnarFormatVersion version = ColumnarFormatVersion.valueOf(blockInfos.get(index).getDetailInfo().getVersionNumber()); if (fileReader.isReadPageByPage()) { return CarbonDataReaderFactory.getInstance().getDimensionColumnChunkReader(version, blockInfos.get(index).getDetailInfo().getBlockletInfo(), dimensionLens, blockInfos.get(index).getFilePath(), true); } else { return CarbonDataReaderFactory.getInstance().getDimensionColumnChunkReader(version, blockInfos.get(index).getDetailInfo().getBlockletInfo(), dimensionLens, blockInfos.get(index).getFilePath(), false); } }
private MeasureColumnChunkReader getMeasureColumnChunkReader(FileReader fileReader) { ColumnarFormatVersion version = ColumnarFormatVersion.valueOf(blockInfos.get(index).getDetailInfo().getVersionNumber()); if (fileReader.isReadPageByPage()) { return CarbonDataReaderFactory.getInstance().getMeasureColumnChunkReader(version, blockInfos.get(index).getDetailInfo().getBlockletInfo(), blockInfos.get(index).getFilePath(), true); } else { return CarbonDataReaderFactory.getInstance().getMeasureColumnChunkReader(version, blockInfos.get(index).getDetailInfo().getBlockletInfo(), blockInfos.get(index).getFilePath(), false); } }
detailInfo.getBlockletInfo().setNumberOfRows(detailInfo.getRowCount()); detailInfo.getBlockletInfo().setNumberOfPages(detailInfo.getPagesCount()); detailInfo.setBlockletId(blockInfo.getDetailInfo().getBlockletId()); int[] pageRowCount = new int[detailInfo.getPagesCount()]; pageRowCount[pageRowCount.length - 1] = lastPageRowCount; detailInfo.getBlockletInfo().setNumberOfRowsPerPage(pageRowCount);
if (blockletDetailInfo.getBlockletInfo() == null || blockletDetailInfo .isUseMinMaxForPruning()) { blockInfo.setBlockOffset(blockletDetailInfo.getBlockFooterOffset());