J'ai une table avec 2 colonnes, DATETIME et MESSAGE. La colonne de message contient environ 60 caractères.
La table contient environ 3 millions de lignes, avec de nombreuses lignes en double, car il s'agit d'une concaténation de nombreux fichiers contenant certaines des mêmes données. J'essaie de supprimer le plus rapidement possible les lignes en double, ce qui a bien fonctionné dans JMP 12.2.0.
Dans JMP 12.2.0, le résumé dure environ 8 secondes.
Dans JMP 14.3.0, le résumé prend un temps inconnu, car j’ai tué le processus> 30 minutes.
dt2 = dt << Summary( Group( :DATETIME, :MESSAGE ), Invisible, Link to original Data Table( 0 ), Table Name( "MessageTable" ) );
J'ai trouvé une solution de contournement, prend environ 16 secondes, ce qui est beaucoup mieux.
Il semble que le résumé fonctionne correctement avec un seul groupe. Lorsque vous utilisez plusieurs groupes, les performances se dégradent gravement.
J'ai donc fait le tableau en 1 colonne, puis analysé les colonnes après le résumé.
Assez moche mais ça marche.
dt << New Column( "KEY", Character, Formula( Char( :DATETIME ) || "@" || :MESSAGE ) );
dt2 = dt << Summary( Group( :KEY ), Invisible, Link to original Data Table( 0 ), TableName( "MessageTable" ) );
dt2 << New Column( "DateTime", Numeric, Format( "y/m/d h:m:s" ), Formula( Num( Words( :KEY, "@" )[1] ) ) );
dt2 << New Column( "Message", Character, Formula( Words( :KEY, "@" )[2] ) );
dt2:DateTime << Delete Formula;
dt2:Message << Delete Formula;
dt2 << Delete Columns( {"KEY", "N Rows"} );