private static void configureBlobDBForSegment(
      final SegmentIdentifier segment,
      final RocksDBConfiguration configuration,
      final ColumnFamilyOptions options) {
    options
        .setEnableBlobFiles(true)
        .setEnableBlobGarbageCollection(
            isStaticDataGarbageCollectionEnabled(segment, configuration))
        .setMinBlobSize(100)
        .setBlobCompressionType(CompressionType.LZ4_COMPRESSION);
    if (configuration.getBlobGarbageCollectionAgeCutoff().isPresent()) {
      // fraction of file age to be considered eligible for GC;
      // 0.25 = oldest 25% of files eligible;
      // 1 = all files eligible
      options.setBlobGarbageCollectionAgeCutoff(
          configuration.getBlobGarbageCollectionAgeCutoff().get());
    }
    if (configuration.getBlobGarbageCollectionForceThreshold().isPresent()) {
      // fraction of garbage in eligible blob files to trigger GC;
      // 1 = trigger when eligible file contains 100% garbage;
      // 0 = trigger for all eligible files;
      options.setBlobGarbageCollectionForceThreshold(
          configuration.getBlobGarbageCollectionForceThreshold().get());
    }
  }
Create a Column Family Descriptor for a given segment It defines basically the different
options to apply to the corresponding Column Family

@param segment the segment identifier
@param configuration RocksDB configuration
@return a column family descriptor
plugins/rocksdb/src/main/java/org/hyperledger/besu/plugin/services/storage/rocksdb/segmented/RocksDBColumnarKeyValueStorage.java