-
Notifications
You must be signed in to change notification settings - Fork 25.2k
[ML] Prepare parsing phase_progress from DFA process #55580
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ML] Prepare parsing phase_progress from DFA process #55580
Conversation
Pinging @elastic/ml-core (:ml) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Looks good, just two minor remarks.
@@ -58,6 +62,8 @@ | |||
} | |||
|
|||
private final RowResults rowResults; | |||
// TODO remove after process is writing out phase_progress |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't this TODO be for line 67?
@@ -164,11 +165,18 @@ private void processResult(AnalyticsResult result, DataFrameRowsJoiner resultsJo | |||
if (rowResults != null) { | |||
resultsJoiner.processRowResults(rowResults); | |||
} | |||
PhaseProgress phaseProgress = result.getPhaseProgress(); | |||
if (phaseProgress != null) { | |||
LOGGER.debug("[{}] Analyzing progress updated to [{}]", analytics.getId(), phaseProgress.getProgressPercent()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we also print the phase?
Data frame analytics process currently reports progress as an integer `progress_percent`. We parse that and report it from the _stats API as the progress of the `analyzing` phase. However, we want to allow the DFA process to report progress for more than one phase. This commit prepares for this by parsing `phase_progress` from the process, an object that contains the `phase` name plus the `progress_percent` for that phase.
8138f15
to
a69f355
Compare
…55587) Data frame analytics process currently reports progress as an integer `progress_percent`. We parse that and report it from the _stats API as the progress of the `analyzing` phase. However, we want to allow the DFA process to report progress for more than one phase. This commit prepares for this by parsing `phase_progress` from the process, an object that contains the `phase` name plus the `progress_percent` for that phase. Backport of #55580
Since elastic#55580 we've introduced a new format for parsing progress from the data frame analytics process. As the process is now writing out progress in this new way, we can remove the parsing of the old format.
Since #55580 we've introduced a new format for parsing progress from the data frame analytics process. As the process is now writing out progress in this new way, we can remove the parsing of the old format.
This is a continuation from elastic#55580. Now that we're parsing phase progresses from the analytics process we change `ProgressTracker` to allow for custom phases between the `loading_data` and `writing_results` phases. Each `DataFrameAnalysis` may declare its own phases. This commit sets things in place for the analytics process to start reporting different phases per analysis type. However, this is still preserving existing behaviour as all analyses currently declare a single `analyzing` phase.
This is a continuation from #55580. Now that we're parsing phase progresses from the analytics process we change `ProgressTracker` to allow for custom phases between the `loading_data` and `writing_results` phases. Each `DataFrameAnalysis` may declare its own phases. This commit sets things in place for the analytics process to start reporting different phases per analysis type. However, this is still preserving existing behaviour as all analyses currently declare a single `analyzing` phase.
) (#55791) This is a continuation from #55580. Now that we're parsing phase progresses from the analytics process we change `ProgressTracker` to allow for custom phases between the `loading_data` and `writing_results` phases. Each `DataFrameAnalysis` may declare its own phases. This commit sets things in place for the analytics process to start reporting different phases per analysis type. However, this is still preserving existing behaviour as all analyses currently declare a single `analyzing` phase. Backport of #55763
Data frame analytics process currently reports progress as
an integer
progress_percent
. We parse that and report itfrom the _stats API as the progress of the
analyzing
phase.However, we want to allow the DFA process to report progress
for more than one phase. This commit prepares for this by
parsing
phase_progress
from the process, an object thatcontains the
phase
name plus theprogress_percent
for thatphase.