scio-parquet/src/main/java/com/spotify/scio/parquet/WriterUtils.java [32:72]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      ParquetWriter.Builder<T, SELF> builder, Configuration conf, CompressionCodecName compression)
      throws IOException {
    // https://github.com/apache/parquet-mr/tree/master/parquet-hadoop#class-parquetoutputformat
    long rowGroupSize =
        conf.getLong(ParquetOutputFormat.BLOCK_SIZE, ParquetWriter.DEFAULT_BLOCK_SIZE);

    for (Map.Entry<String, Boolean> entry :
        getColumnarConfig(conf, ParquetOutputFormat.BLOOM_FILTER_ENABLED, Boolean::parseBoolean)
            .entrySet()) {
      builder = builder.withBloomFilterEnabled(entry.getKey(), entry.getValue());
    }

    for (Map.Entry<String, Boolean> entry :
        getColumnarConfig(conf, ParquetOutputFormat.ENABLE_DICTIONARY, Boolean::parseBoolean)
            .entrySet()) {
      builder = builder.withDictionaryEncoding(entry.getKey(), entry.getValue());
    }

    for (Map.Entry<String, Long> entry :
        getColumnarConfig(conf, ParquetOutputFormat.BLOOM_FILTER_EXPECTED_NDV, Long::parseLong)
            .entrySet()) {
      builder = builder.withBloomFilterNDV(entry.getKey(), entry.getValue());
    }

    return builder
        .withConf(conf)
        .withCompressionCodec(compression)
        .withPageSize(ParquetOutputFormat.getPageSize(conf))
        .withPageRowCountLimit(
            conf.getInt(
                ParquetOutputFormat.PAGE_ROW_COUNT_LIMIT,
                ParquetProperties.DEFAULT_PAGE_ROW_COUNT_LIMIT))
        .withPageWriteChecksumEnabled(ParquetOutputFormat.getPageWriteChecksumEnabled(conf))
        .withWriterVersion(ParquetOutputFormat.getWriterVersion(conf))
        .withBloomFilterEnabled(ParquetOutputFormat.getBloomFilterEnabled(conf))
        .withDictionaryEncoding(ParquetOutputFormat.getEnableDictionary(conf))
        .withDictionaryPageSize(ParquetOutputFormat.getDictionaryPageSize(conf))
        .withMaxRowCountForPageSizeCheck(ParquetOutputFormat.getMaxRowCountForPageSizeCheck(conf))
        .withMinRowCountForPageSizeCheck(ParquetOutputFormat.getMinRowCountForPageSizeCheck(conf))
        .withValidation(ParquetOutputFormat.getValidation(conf))
        .withRowGroupSize(rowGroupSize)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



scio-smb/src/main/java/org/apache/beam/sdk/extensions/smb/ParquetUtils.java [32:72]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      ParquetWriter.Builder<T, SELF> builder, Configuration conf, CompressionCodecName compression)
      throws IOException {
    // https://github.com/apache/parquet-mr/tree/master/parquet-hadoop#class-parquetoutputformat
    long rowGroupSize =
        conf.getLong(ParquetOutputFormat.BLOCK_SIZE, ParquetWriter.DEFAULT_BLOCK_SIZE);

    for (Map.Entry<String, Boolean> entry :
        getColumnarConfig(conf, ParquetOutputFormat.BLOOM_FILTER_ENABLED, Boolean::parseBoolean)
            .entrySet()) {
      builder = builder.withBloomFilterEnabled(entry.getKey(), entry.getValue());
    }

    for (Map.Entry<String, Boolean> entry :
        getColumnarConfig(conf, ParquetOutputFormat.ENABLE_DICTIONARY, Boolean::parseBoolean)
            .entrySet()) {
      builder = builder.withDictionaryEncoding(entry.getKey(), entry.getValue());
    }

    for (Map.Entry<String, Long> entry :
        getColumnarConfig(conf, ParquetOutputFormat.BLOOM_FILTER_EXPECTED_NDV, Long::parseLong)
            .entrySet()) {
      builder = builder.withBloomFilterNDV(entry.getKey(), entry.getValue());
    }

    return builder
        .withConf(conf)
        .withCompressionCodec(compression)
        .withPageSize(ParquetOutputFormat.getPageSize(conf))
        .withPageRowCountLimit(
            conf.getInt(
                ParquetOutputFormat.PAGE_ROW_COUNT_LIMIT,
                ParquetProperties.DEFAULT_PAGE_ROW_COUNT_LIMIT))
        .withPageWriteChecksumEnabled(ParquetOutputFormat.getPageWriteChecksumEnabled(conf))
        .withWriterVersion(ParquetOutputFormat.getWriterVersion(conf))
        .withBloomFilterEnabled(ParquetOutputFormat.getBloomFilterEnabled(conf))
        .withDictionaryEncoding(ParquetOutputFormat.getEnableDictionary(conf))
        .withDictionaryPageSize(ParquetOutputFormat.getDictionaryPageSize(conf))
        .withMaxRowCountForPageSizeCheck(ParquetOutputFormat.getMaxRowCountForPageSizeCheck(conf))
        .withMinRowCountForPageSizeCheck(ParquetOutputFormat.getMinRowCountForPageSizeCheck(conf))
        .withValidation(ParquetOutputFormat.getValidation(conf))
        .withRowGroupSize(rowGroupSize)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



