MAAP-Project / Community

Issue for MAAP (Zenhub)
2 stars 1 forks source link

Slow Tile Loading #1135

Open wildintellect opened 3 weeks ago

wildintellect commented 3 weeks ago

Describe the bug @lduncanson @pahbs are reporting that visualizations using MAAP titiler seem to be much slower than a couple of months ago

To Reproduce Load up the map in this notebook. https://notebooksharing.space/view/68349c623d52dea574975392ac86b9772c2f375f7883d33bf8a4865b9b9e6f46#displayOptions=hide-inputs

Expected behavior Faster tile loading

Additional context @pahbs can you provide the full source code for the notebook and embedded functions so we can more easily debug?

wildintellect commented 3 weeks ago

Things to check:

  1. The age of this mosaic (how recently was it created)
  2. The formatting of the tiles in the mosaic
  3. Any performance configuration changes to the Titiler deployment with the recent upgrade

Note:

wildintellect commented 3 weeks ago

COGs seems ok - there is a known quirk around the custom projection slowing, but unless that changed in the recent update I don't see how that would cause this.

Driver: GTiff
File: s3://maap-ops-workspace/.../boreal_ht_2020_202407251721976367_0000357.tif
COG: True
Compression: DEFLATE
ColorSpace: None

Profile
    Width:            3000
    Height:           3000
    Bands:            2
    Tiled:            True
    Dtype:            float32
    NoData:           nan
    Alpha Band:       False
    Internal Mask:    False
    Interleave:       PIXEL
    ColorMap:         False
    ColorInterp:      ('gray', 'undefined')
    Scales:           (1.0, 1.0)
    Offsets:          (0.0, 0.0)

Geo
    Crs:              PROJCS["unnamed",GEOGCS["GRS 1980(IUGG, 1980)",DATUM["unknown",SPHEROID["GRS80",6378137,298.257222101],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["latitude_of_center",40],PARAMETER["longitude_of_center",180],PARAMETER["standard_parallel_1",50],PARAMETER["standard_parallel_2",70],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH]]
    Origin:           (-1791478.0000000047, 7623304.000000009)
    Resolution:       (30.0, -30.0)
    BoundingBox:      (-1791478.0000000047, 7533304.000000009, -1701478.0000000047, 7623304.000000009)
    MinZoom:          6
    MaxZoom:          11

Image Metadata
    AREA_OR_POINT: Area
    OVR_RESAMPLING_ALG: NEAREST

Image Structure
    COMPRESSION: DEFLATE
    INTERLEAVE: PIXEL
    LAYOUT: COG

Band 1
    Description: lyr1
    ColorInterp: gray

Band 2
    Description: sd
    ColorInterp: undefined

IFD
    Id      Size           BlockSize     Decimation           
    0       3000x3000      256x256       0
    1       1500x1500      256x256       2
    2       750x750        256x256       4
    3       375x375        256x256       8
    4       188x188        256x256       16
wildintellect commented 3 weeks ago

Here's the notebook https://github.com/lauraduncanson/icesat2_boreal/blob/master/notebooks/Review_maps.ipynb which uses lot of functions from https://github.com/lauraduncanson/icesat2_boreal/blob/master/lib/maplib_folium.py to build the maps.

wildintellect commented 3 weeks ago

5-6 seconds seems to be the fastest speed possible with this particular tile set that has a custom WKT defined CRS. If speed is important we can consider alternate methods of storing the data for visualization once a dataset is ready to move beyond initial results into something for distribution.

This could include:

hrodmn commented 2 weeks ago

It doesn't explain the change in performance, but these tifs are Float32 and in an Albers projection so the tiler has to do a fair bit of work and load a lot of data in order to render a tile. I will try converting one of these files to an Int data type to see what impact the data type might be having here.