Comments (4)
Can you try setting --download-threads=1
and see if it completes with no issues, or any lower number than 4
?
from go-pmtiles.
1 thread worked, though the last percent was painful to watch, with transfer speed dropping to 300-350 B/s for the last minute or so.
» z:\tools\bin\pmtiles extract https://build.protomaps.com/20231113.pmtiles --region=yt_aoi_1000k_wgs84.geojson yt_protomaps-20231113.pmtiles --download-threads=1
fetching 118 dirs, 118 chunks, 16 requests
Region tiles 19366132, result tile entries 4146674
fetching 4146674 tiles, 3159 chunks, 738 requests
fetching chunks 100% |████████████████████████████████████████████████████████████████████| (1.6/1.6 GB, 4.6 MB/s)
Completed in 6m16.4022314s with 1 download threads (11016.603128458499 tiles/s).
Extract required 757 total requests.
Extract transferred 1.8 GB (overfetch 0.05) for an archive size of 1.7 GB
5 threads started at about 20 MB/s, peaked at 25, dropped to 10 at 97% and steadily decreased from there. It was successful first try.
Completed in 2m23.2003127s with 5 download threads (28957.157437827296 tiles/s).
Today no threads parameter showed similar pattern to 5, steadily decreasing speed after 97%, and today completed on first attempt. Only 7 seconds longer than 5 threads (2m30s).
10 threads peaked at 32 MB/s, averaging 20, finishing successfully in 1m55s.
I don' t know if any of this is useful, but am happy to do more tests.
from go-pmtiles.
Thanks for the detailed report. Are you able to reproduce the original problem? Maybe it was an intermittent thing related to the network or cloudflare storage (I didn't see CF report any downtime though)
Yes, at the end of the extract it will get slower because it fetches chunks from largest to smallest. The small chunks have more overhead of waiting for a request relative to the bytes downloaded. If you have 2 or more threads, the 2nd thread will work from the end of the queue to speed it up.
from go-pmtiles.
not reproduced, though I only tried a couple more times. closing until such a time as it becomes relevant again.
from go-pmtiles.
Related Issues (20)
- CLI tool to concatenate or merge pmtiles HOT 13
- s3-like compatibility HOT 8
- /health endpoint when serving HOT 10
- Add quiet mode HOT 4
- Slow query for totalTiles in MBTiles -> PMTiles conversion HOT 14
- convert Error parsing mbtiles HOT 4
- arm64 docker images HOT 3
- Corrupted file HOT 8
- SIGSEGV in `pmtiles serve` HOT 3
- dockerfile improvements
- Fails to convert world map due to /tmp space limitations HOT 2
- Invalid help comment for download command HOT 1
- change tmp file location HOT 2
- 404 when trying to serve local PMTiles using the pmtiles CLI HOT 3
- Add ability to get a subset of layers using pmtiles extract HOT 1
- Serving from public s3 bucket HOT 4
- Intergration as a library HOT 3
- CLI: `pmtiles convert INPUT.mbtiles OUTPUT.pmtiles` fails silently for MBTiles v 1.0 HOT 4
- Docker image cannot `convert` HOT 7
- server always sends 404 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from go-pmtiles.