modules/ml-ext/ml/spark-model-parser/src/main/java/org/apache/ignite/ml/sparkmodelparser/SparkModelParser.java [472:494]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        try (ParquetFileReader r = ParquetFileReader.open(HadoopInputFile.fromPath(new Path(pathToMdl), new Configuration()))) {
            PageReadStore pages;
            final MessageType schema = r.getFooter().getFileMetaData().getSchema();
            final MessageColumnIO colIO = new ColumnIOFactory().getColumnIO(schema);
            final Map<Integer, TreeMap<Integer, NodeData>> nodesByTreeId = new TreeMap<>();
            while (null != (pages = r.readNextRowGroup())) {
                final long rows = pages.getRowCount();
                final RecordReader recordReader = colIO.getRecordReader(pages, new GroupRecordConverter(schema));
                for (int i = 0; i < rows; i++) {
                    final SimpleGroup g = (SimpleGroup)recordReader.read();
                    final int treeID = g.getInteger(0, 0);

                    final SimpleGroup nodeDataGrp = (SimpleGroup)g.getGroup(1, 0);
                    NodeData nodeData = extractNodeDataFromParquetRow(nodeDataGrp);

                    if (nodesByTreeId.containsKey(treeID)) {
                        Map<Integer, NodeData> nodesByNodeId = nodesByTreeId.get(treeID);
                        nodesByNodeId.put(nodeData.id, nodeData);
                    }
                    else {
                        TreeMap<Integer, NodeData> nodesByNodeId = new TreeMap<>();
                        nodesByNodeId.put(nodeData.id, nodeData);
                        nodesByTreeId.put(treeID, nodesByNodeId);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



modules/ml-ext/ml/spark-model-parser/src/main/java/org/apache/ignite/ml/sparkmodelparser/SparkModelParser.java [534:559]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        try (ParquetFileReader r = ParquetFileReader.open(HadoopInputFile.fromPath(new Path(pathToMdl), new Configuration()))) {
            PageReadStore pages;

            final MessageType schema = r.getFooter().getFileMetaData().getSchema();
            final MessageColumnIO colIO = new ColumnIOFactory().getColumnIO(schema);
            final Map<Integer, TreeMap<Integer, NodeData>> nodesByTreeId = new TreeMap<>();

            while (null != (pages = r.readNextRowGroup())) {
                final long rows = pages.getRowCount();
                final RecordReader recordReader = colIO.getRecordReader(pages, new GroupRecordConverter(schema));

                for (int i = 0; i < rows; i++) {
                    final SimpleGroup g = (SimpleGroup)recordReader.read();
                    final int treeID = g.getInteger(0, 0);
                    final SimpleGroup nodeDataGrp = (SimpleGroup)g.getGroup(1, 0);

                    NodeData nodeData = extractNodeDataFromParquetRow(nodeDataGrp);

                    if (nodesByTreeId.containsKey(treeID)) {
                        Map<Integer, NodeData> nodesByNodeId = nodesByTreeId.get(treeID);
                        nodesByNodeId.put(nodeData.id, nodeData);
                    }
                    else {
                        TreeMap<Integer, NodeData> nodesByNodeId = new TreeMap<>();
                        nodesByNodeId.put(nodeData.id, nodeData);
                        nodesByTreeId.put(treeID, nodesByNodeId);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



