@Override
  public void append(ExtendedCell cell) throws IOException {
    Map.Entry<Long, StoreFileWriter> entry = lowerBoundary2Writer.floorEntry(cell.getTimestamp());
    StoreFileWriter writer = entry.getValue();
    if (writer == null) {
      String lowerBoundaryStoragePolicy = lowerBoundariesPolicies.get(entry.getKey());
      if (lowerBoundaryStoragePolicy != null) {
        writer = writerFactory.createWriterWithStoragePolicy(lowerBoundaryStoragePolicy);
      } else {
        writer = writerFactory.createWriter();
      }
      lowerBoundary2Writer.put(entry.getKey(), writer);
    }
    writer.append(cell);
  }
@param lowerBoundariesPolicies each window to storage policy map.
@param needEmptyFile           whether need to create an empty store file if we haven't written
                               out anything.
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/DateTieredMultiFileWriter.java