Skip to content

Implement recursive type allowance in MapType & ListType#763

Merged
stloyd merged 2 commits intoflow-php:1.xfrom
stloyd:feature/logical-types-recursive
Nov 8, 2023
Merged

Implement recursive type allowance in MapType & ListType#763
stloyd merged 2 commits intoflow-php:1.xfrom
stloyd:feature/logical-types-recursive

Conversation

@stloyd
Copy link
Member

@stloyd stloyd commented Nov 7, 2023

Change Log

Added

  • Implement recursive type allowance in `MapType` & `ListType`

Fixed

Changed

Removed

Deprecated

Security


Description

@github-actions
Copy link
Contributor

github-actions bot commented Nov 7, 2023

Flow PHP - Benchmarks

Results of the benchmarks from this PR are compared with the results from 1.x branch.

Extractors
+-----------------------+-------------------+------+-----+------------------+-------------------+----------------+
| benchmark             | subject           | revs | its | mem_peak         | mode              | rstdev         |
+-----------------------+-------------------+------+-----+------------------+-------------------+----------------+
| AvroExtractorBench    | bench_extract_10k | 1    | 3   | 35.270mb +0.00%  | 363.514ms -34.31% | ±0.76% -71.86% |
| CSVExtractorBench     | bench_extract_10k | 1    | 3   | 4.838mb +0.01%   | 269.180ms -35.27% | ±0.26% -84.64% |
| JsonExtractorBench    | bench_extract_10k | 1    | 3   | 4.993mb +0.05%   | 577.254ms -36.42% | ±0.38% -43.67% |
| ParquetExtractorBench | bench_extract_10k | 1    | 3   | 233.582mb +0.00% | 806.056ms -30.89% | ±0.25% +45.60% |
| TextExtractorBench    | bench_extract_10k | 1    | 3   | 4.831mb +0.01%   | 19.395ms -31.46%  | ±0.63% -64.24% |
| XmlExtractorBench     | bench_extract_10k | 1    | 3   | 4.832mb +0.01%   | 402.829ms -42.50% | ±0.23% -64.41% |
+-----------------------+-------------------+------+-----+------------------+-------------------+----------------+
Transformers
+-----------------------------+--------------------------+------+-----+-----------------+------------------+----------------+
| benchmark                   | subject                  | revs | its | mem_peak        | mode             | rstdev         |
+-----------------------------+--------------------------+------+-----+-----------------+------------------+----------------+
| RenameEntryTransformerBench | bench_transform_10k_rows | 1    | 3   | 87.094mb +0.00% | 49.217ms -39.71% | ±0.96% +50.79% |
+-----------------------------+--------------------------+------+-----+-----------------+------------------+----------------+
Loaders
+--------------------+----------------+------+-----+------------------+-------------------+-----------------+
| benchmark          | subject        | revs | its | mem_peak         | mode              | rstdev          |
+--------------------+----------------+------+-----+------------------+-------------------+-----------------+
| AvroLoaderBench    | bench_load_10k | 1    | 3   | 94.466mb +0.00%  | 571.490ms -31.43% | ±2.05% +3.75%   |
| CSVLoaderBench     | bench_load_10k | 1    | 3   | 46.110mb +0.00%  | 69.286ms -16.30%  | ±0.81% -66.55%  |
| JsonLoaderBench    | bench_load_10k | 1    | 3   | 89.744mb +0.00%  | 63.513ms -31.00%  | ±0.98% +250.38% |
| ParquetLoaderBench | bench_load_10k | 1    | 3   | 285.215mb +0.00% | 1.327s -35.29%    | ±0.61% -43.20%  |
| TextLoaderBench    | bench_load_10k | 1    | 3   | 16.604mb +0.00%  | 41.081ms -8.40%   | ±1.91% +17.16%  |
+--------------------+----------------+------+-----+------------------+-------------------+-----------------+
Building Blocks
+-------------------------+----------------------------+------+-----+-----------------+-------------------+-----------------+
| benchmark               | subject                    | revs | its | mem_peak        | mode              | rstdev          |
+-------------------------+----------------------------+------+-----+-----------------+-------------------+-----------------+
| RowsBench               | bench_chunk_10_on_10k      | 2    | 3   | 60.703mb +0.00% | 2.615ms -51.39%   | ±2.13% +90.91%  |
| RowsBench               | bench_diff_left_1k_on_10k  | 2    | 3   | 80.496mb +0.00% | 154.060ms -29.98% | ±0.61% +1.39%   |
| RowsBench               | bench_diff_right_1k_on_10k | 2    | 3   | 59.021mb +0.00% | 15.688ms -27.03%  | ±1.33% +204.27% |
| RowsBench               | bench_drop_1k_on_10k       | 2    | 3   | 59.842mb +0.00% | 2.011ms -46.02%   | ±3.10% +234.79% |
| RowsBench               | bench_drop_right_1k_on_10k | 2    | 3   | 59.842mb +0.00% | 2.097ms -42.31%   | ±3.16% +185.02% |
| RowsBench               | bench_entries_on_10k       | 2    | 3   | 59.055mb +0.00% | 2.945ms -37.31%   | ±1.61% -43.62%  |
| RowsBench               | bench_filter_on_10k        | 2    | 3   | 59.584mb +0.00% | 14.788ms -44.08%  | ±0.30% -86.80%  |
| RowsBench               | bench_find_on_10k          | 2    | 3   | 59.584mb +0.00% | 15.090ms -44.75%  | ±2.10% -24.25%  |
| RowsBench               | bench_find_one_on_10k      | 10   | 3   | 57.655mb +0.00% | 1.906μs -23.75%   | ±2.44% -25.34%  |
| RowsBench               | bench_first_on_10k         | 10   | 3   | 57.655mb +0.00% | 0.400μs -20.00%   | ±0.00% +0.00%   |
| RowsBench               | bench_flat_map_on_1k       | 2    | 3   | 65.889mb +0.00% | 10.631ms -37.13%  | ±1.45% -26.95%  |
| RowsBench               | bench_map_on_10k           | 2    | 3   | 91.408mb +0.00% | 49.280ms -34.92%  | ±0.37% -84.74%  |
| RowsBench               | bench_merge_1k_on_10k      | 2    | 3   | 60.105mb +0.00% | 2.293ms -43.56%   | ±3.21% +3.30%   |
| RowsBench               | bench_partition_by_on_10k  | 2    | 3   | 62.375mb +0.00% | 34.528ms -41.70%  | ±1.00% +627.81% |
| RowsBench               | bench_remove_on_10k        | 2    | 3   | 62.205mb +0.00% | 5.188ms -45.34%   | ±0.77% -61.77%  |
| RowsBench               | bench_sort_asc_on_1k       | 2    | 3   | 57.655mb +0.00% | 37.916ms -40.11%  | ±0.15% -82.00%  |
| RowsBench               | bench_sort_by_on_1k        | 2    | 3   | 57.655mb +0.00% | 37.971ms -40.91%  | ±0.69% -69.53%  |
| RowsBench               | bench_sort_desc_on_1k      | 2    | 3   | 57.655mb +0.00% | 37.607ms -42.69%  | ±1.28% -6.60%   |
| RowsBench               | bench_sort_entries_on_1k   | 2    | 3   | 59.930mb +0.00% | 7.248ms -38.03%   | ±0.43% -62.61%  |
| RowsBench               | bench_sort_on_1k           | 2    | 3   | 57.655mb +0.00% | 28.533ms -39.29%  | ±0.89% +103.84% |
| RowsBench               | bench_take_1k_on_10k       | 10   | 3   | 57.655mb +0.00% | 13.221μs -47.46%  | ±0.95% -72.15%  |
| RowsBench               | bench_take_right_1k_on_10k | 10   | 3   | 57.655mb +0.00% | 15.899μs -49.30%  | ±2.21% +142.33% |
| RowsBench               | bench_unique_on_1k         | 2    | 3   | 80.496mb +0.00% | 157.004ms -30.93% | ±0.64% -16.25%  |
| NativeEntryFactoryBench | bench_entry_factory        | 1    | 3   | 92.913mb +0.01% | 126.148ms -34.59% | ±0.92% -60.04%  |
| NativeEntryFactoryBench | bench_entry_factory        | 1    | 3   | 48.222mb +0.00% | 63.158ms -34.90%  | ±2.04% +7.51%   |
| NativeEntryFactoryBench | bench_entry_factory        | 1    | 3   | 12.559mb -0.01% | 14.643ms -38.35%  | ±1.95% -6.75%   |
+-------------------------+----------------------------+------+-----+-----------------+-------------------+-----------------+

@stloyd stloyd merged commit 76b8d03 into flow-php:1.x Nov 8, 2023
@stloyd stloyd deleted the feature/logical-types-recursive branch November 8, 2023 10:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant