zenodo์ ๋ํ ๊ธฐ๋ฅ ์์ฒญ์ด ํ๋ ์์ต๋๋ค. zenodo ์๋ฒ๊ฐ HTTP/1.1 ๋ฐ์ดํธ ๋ฒ์ ์์ฒญ https://tools.ietf.org/html/rfc7233์ ์ง์ํ ์ ์์ต๋๊น?
Zenodo ํ๋ซํผ์ ์ด๋ฏธ ๋๋์ต๋๋ค. ์ผ๋ถ ์ ํ๋ฆฌ์ผ์ด์ ์ด ํนํ ๋์ฉ๋ ํ์ผ์ ์ฒ๋ฆฌํ ๋ ๋ฐ์ดํธ ๋ฒ์ ์์ฒญ์ ์์กดํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํธ ๋ฒ์ ์์ฒญ์ ์ง์ํ๋ฉด ๊ธฐํ๋ ๋ฐ์ดํฐ์ ๊ฐ์น๊ฐ ๋์ฑ ๋์์ง๋๋ค.
๋ด ์์ ์ ๋ช ํํ ํ๊ธฐ ์ํด ๋ฐ์ดํธ ๋ฒ์ ์์ฒญ์ด ์๋ํ๋ ๋ฐฉ์์ ๋ํ ์๋ฅผ ์ถ๊ฐํ๊ณ ์ถ์ต๋๋ค. ์๋ฅผ ๋ค์ด github(raw.githubusercontent.com)์ ์๋์ ๊ฐ์ด ๋ฐ์ดํธ ๋ฒ์ ์์ฒญ์ ์ง์ํฉ๋๋ค.
###
### The entire part of the README file is retrieved, and processed locally
###
$ curl https://raw.githubusercontent.com/zenodo/zenodo/master/README.rst |head -5 | tail -1
Zenodo is free software; you can redistribute it
###
### Only the specified bytes specified in the file is retrieved, which does not require local processing
###
$ curl -H "range: bytes=72-125" https://raw.githubusercontent.com/zenodo/zenodo/master/README.rst
Zenodo is free software; you can redistribute it
๊ทธ๋ฌ๋ zenodo.org์์๋ ๋ฐ์ดํธ ๋ฒ์ ์์ฒญ์ด ๋ฌด์๋ฉ๋๋ค.
###
### the entire part of the file is retrieved
###
$ curl https://zenodo.org/record/1407145/files/DOI_Test.txt
This is a test of the Zenodo DOI functionality for GitLab.
###
### Only small bytes are requested, but the entire part is retrieved
###
$ curl -H "range: bytes=6-7" https://zenodo.org/record/1407145/files/DOI_Test.txt
This is a test of the Zenodo DOI functionality for GitLab.
๋๋ ์ด๊ฒ์ ๋ ๋ฒ์งธ๋ก ํ ๊ฒ์ด๋ค. ์๋ฅผ ๋ค์ด ์ ์ ํ ๋ฐ์ดํฐ ์ธํธ์ tabix๋ฅผ ์ฌ์ฉ ํ์ฌ ์ง์ ์ก์ธ์คํ๋ ๊ฒ์ ๋งค์ฐ ์ ์ฉํฉ๋๋ค. zenodo ์น์๋ฒ ์ค์ 'max_ranges' ์์ ์์๋ก ์ค์ ๋ณ๊ฒฝ์ด ํ์ํ ๊ฒ ๊ฐ์ต๋๋ค.
๊ทธ๋ ๊ฒ ํ์ง ์๋ ๊ธฐ์ ์ ์ธ ์ด์ ๊ฐ ์์ต๋๊น?
ํ์ฌ ์ฐ๋ฆฌ์ ํ์ผ ์คํ ๋ฆฌ์ง ๋ฐฑ์๋๋ HTTP ๋ฒ์ ์์ฒญ์ ์ฒ๋ฆฌํ๋๋ก ์ต์ ํ๋์ด ์์ง ์์ต๋๋ค(์ด ๊ธฐ๋ฅ์ ํ์ฑํํ๋ฉด ์ ์ฌ์ ์ผ๋ก ํ์ผ ์ ๋ก๋/๋ค์ด๋ก๋ API์ ์๋๊ฐ ํฌ๊ฒ ๋๋ ค์ง ์ ์์์ ์๋ฏธํฉ๋๋ค). ๋ฌผ๋ก , ๊ทธ๊ฒ์ ๊ฐ๋ฅํ๊ฒ ํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๋ ์ฌ๋๋ค์ด ์์ง๋ง ์ ํํ ETA๋ฅผ ๋งํ ์๋ ์์ต๋๋ค...
๋ฒ์ ์์ฒญ์ ํ์ฑํํ๋ฉด ์ง๋ฆฌ ๊ณต๊ฐ ๋ฐ์ดํฐ ํ์์ ๋งค์ฐ ์ ์ฉํ ๊ฒ์ด๋ผ๊ณ ๋ช ์ํ๊ธฐ ์ํด ๋ด :+1:์ ์ถ๊ฐํ๊ณ ์ถ์์ต๋๋ค. ํนํ Cloud Optimized GeoTIFF ๋ ์ด๋ฅผ ํตํด ๋ง์ ์ด์ ์ ์ป์ ์ ์์ต๋๋ค. ๋ฒ์ ์์ฒญ์ ํ์ฉํ๋ฉด zenodo์์ ํ์ํ ๋์ญํญ์ ์ค์ ๋ก ์ค์ผ ์ ์์ต๋๋ค.
ํ์ฌ ์ฐ๋ฆฌ์ ํ์ผ ์คํ ๋ฆฌ์ง ๋ฐฑ์๋๋ HTTP ๋ฒ์ ์์ฒญ์ ์ฒ๋ฆฌํ๋๋ก ์ต์ ํ๋์ด ์์ง ์์ต๋๋ค(์ด ๊ธฐ๋ฅ์ ํ์ฑํํ๋ฉด ์ ์ฌ์ ์ผ๋ก ํ์ผ ์ ๋ก๋/๋ค์ด๋ก๋ API์ ์๋๊ฐ ํฌ๊ฒ ๋๋ ค์ง ์ ์์์ ์๋ฏธํฉ๋๋ค). ๋ฌผ๋ก , ๊ทธ๊ฒ์ ๊ฐ๋ฅํ๊ฒ ํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๋ ์ฌ๋๋ค์ด ์์ง๋ง ์ ํํ ETA๋ฅผ ๋งํ ์๋ ์์ต๋๋ค...
๋ง์ ์ฌ๋๋ค์ด ๋์ฉ๋ ์ ์ ์ ํ์ผ(์ GB)์ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค. ์,
https://github.com/zenodo/zenodo/issues/460#issuecomment -546623751
์ผ๋ถ๋ ์ฌ๋ฌ ๋ฒ ๋ค์ ์๋ํด์ผ ํ๋ฉฐ ์ด๋ ์ค์ ๋ก ๋์ญํญ์ ๋ญ๋นํ๊ณ ์์ต๋๋ค...
์ฐ๋ฆฌ ํ๋ก์ ํธ์ ๊ฒฝ์ฐ Zenodo์์ ์ง์ Cloud-Optimized GeoTIFF(์: https://zenodo.org/record/4483227 ์ฐธ์กฐ)๋ฅผ ์ฌ์ฉํ ์ ์๋ค๋ ์ ๋ ์ค์ํฉ๋๋ค. Figshare๋ ๋ถ๋ช ํ COG์ ํจ๊ป ์๋ํ์ง๋ง zenodo๋ ์๋ํ์ง ์์ต๋๊น? ์ฐ๋ฆฌ๋ COG ํ์ผ์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ์ ์์ ์ฒญํฌ๋ฅผ ์ป๋ ๋ฐฉ๋ฒ์ ๋ํ ํํ ๋ฆฌ์ผ์ ์์ฑํ์ต๋๋ค.
์ด๊ฒ์ ์ง์ํด ์ฃผ์๊ฒ ์ต๋๊น?
ํฐ ์ด๋ฏธ์ง ํ์ผ(Zarr ํ์)์ ์ฒญํฌ๋ก ์ ๊ณตํ๋ ๋ฐ ํ์ํ๋ฏ๋ก ๋ธ๋ผ์ฐ์ ์์ ์ฆ์ ํ์ผ์ ์๊ฐํํ ์ ์์ต๋๋ค. ๋ธ๋ผ์ฐ์ ์์ ์๋ฅผ ๋ค์ด 10GB, ํ์ผ ๋ฐ ํ์๋ฅผ ๋ค์ด๋ก๋ํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
Zarr ์ฌ์ฉ ์ฌ๋ก์ ๋ํ ๊ฐ๋ง ๊ธฐ๋กํด ๋์ญ์์ค. Zenodo์ ๋ํ ๋ชจ๋ ์์ ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค!
Zarr์ ๊ฒฝ์ฐ ๋ณ๊ฒฝ ์ฌํญ ์์ด ์ค๋๋ ๊ฐ์์ผ๋ก zenodo๋ฅผ ์๋์ํฌ ์ ์์ต๋๋ค. Zenodo๋ ๋๋ ํ ๋ฆฌ๋ฅผ ์ง์ํ์ง ์์ง๋ง ์ผ๋ฐ zarr ๋๋ ํ ๋ฆฌ ์ ์ฅ์๋ฅผ ํน์ ๋ฌธ์๋ฅผ ํตํด ์ผ์ข
์ ํ๋ฉด ๊ณ์ธต ๊ตฌ์กฐ์ ๋งคํํ ์ ์๋ค๋ฉด ์๋ํ๊ฒ ๋ง๋ค ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ํน์ ๋ฌธ์๊ฐ __
.zgroup
foo__.zarray
foo__.zattrs
foo__0.0
foo__0.1
๋ฑ.
์ฌ๊ธฐ( https://github.com/zarr-developers/zarr-specs/issues )์์ ๋ฌธ์ ๋ฅผ ์ ๊ธฐํด ์ฃผ์๊ฒ ์ต๋๊น?
@rabernat Zenodo ๋ ์ต๋ 100๊ฐ์ ํ์ผ๋ง ํ์ฉํ๊ธฐ ๋๋ฌธ์ ํ์ฅ๋์ง ์์ ๊ฒ ๊ฐ์ต๋๋ค.
๋ ์ฝ๋๋น ์ด ํ์ผ ํฌ๊ธฐ ์ ํ์ 50GB(์ต๋ 100๊ฐ ํ์ผ)์ ๋๋ค. ์ผํ์ฑ 100GB ํ ๋น๋์ ์ฌ๋ก๋ณ๋ก ์์ฒญ ๋ฐ ๋ถ์ฌํ ์ ์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋ฒ์ ์์ฒญ์ ํ์ฑํํ๋ฉด ์ง๋ฆฌ ๊ณต๊ฐ ๋ฐ์ดํฐ ํ์์ ๋งค์ฐ ์ ์ฉํ ๊ฒ์ด๋ผ๊ณ ๋ช ์ํ๊ธฐ ์ํด ๋ด :+1:์ ์ถ๊ฐํ๊ณ ์ถ์์ต๋๋ค. ํนํ Cloud Optimized GeoTIFF ๋ ์ด๋ฅผ ํตํด ๋ง์ ์ด์ ์ ์ป์ ์ ์์ต๋๋ค. ๋ฒ์ ์์ฒญ์ ํ์ฉํ๋ฉด zenodo์์ ํ์ํ ๋์ญํญ์ ์ค์ ๋ก ์ค์ผ ์ ์์ต๋๋ค.