Skip to Content
IoT ์•ฑ ๊ฐœ๋ฐœํŒŒ์ผ ์ €์žฅ์†Œ

ํŒŒ์ผ ์ €์žฅ์†Œ

๋ชจ๋“  ์•ฑ ๋ฐ์ดํ„ฐ ๋ฐฑ์—”๋“œ๋Š” ํ…Œ์ด๋ธ”๊ณผ ํ•จ๊ป˜ ๋น„๊ณต๊ฐœ ๊ฐ์ฒด ์ €์žฅ์†Œ๋ฅผ ์ œ๊ณต๋ฐ›์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋ฐฑ์—”๋“œ๊ฐ€ ์‹œ๊ณ„์—ด ํ–‰์„ ๋‹ด๋Š”๋‹ค๋ฉด, ํŒŒ์ผ ์ €์žฅ์†Œ๋Š” ํ–‰์— ๋‹ด์„ ์ˆ˜ ์—†๋Š” ๋ชจ๋“  ๊ฒƒ์„ ๋‹ด์Šต๋‹ˆ๋‹ค: ์นด๋ฉ”๋ผ ํ”„๋ ˆ์ž„, PDF ๋ฆฌํฌํŠธ, ํŽŒ์›จ์–ด ๋ฐ”์ด๋„ˆ๋ฆฌ, ์˜ค๋””์˜ค ํด๋ฆฝ, ๋‚ด๋ณด๋‚ด๊ธฐ.

์ด ๋‘˜์€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŒŒ์ผ์„ ์ €์žฅํ•˜๋ฉด ๊ทธ ์ฆ‰์‹œ ์˜๊ตฌ URL์„ ๋Œ๋ ค๋ฐ›์œผ๋ฉฐ, ์˜๋„๋œ ํŒจํ„ด์€ ๊ทธ URL์„ ๊ณง๋ฐ”๋กœ ํ…Œ์ด๋ธ” ์ปฌ๋Ÿผ์— ๊ธฐ๋กํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค โ€” ๊ทธ๋Ÿฌ๋ฉด ๋Œ€์‹œ๋ณด๋“œ ์œ„์ ฏ์ด ์ถ”๊ฐ€ ์ž‘์—… ์—†์ด ์ด๋ฏธ์ง€๋ฅผ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค:

info = await ironflock.files.put("part-1.jpg", jpeg_bytes, content_type="image/jpeg") await ironflock.publish_to_table("inspections", part_id="1", photo_url=info.url)

์ „์ฒด ํด๋ผ์ด์–ธํŠธ API โ€” ์ฝ๊ธฐ, ๋ชฉ๋ก ์กฐํšŒ, ์‚ฌ์šฉ๋Ÿ‰, ๊ณต์œ  ๋งํฌ, ๋Œ€์šฉ๋Ÿ‰ ๊ฐ์ฒด, ์˜ค๋ฅ˜ ์ฝ”๋“œ โ€” ๋Š” SDK ์ฐธ์กฐ์— ๋ฌธ์„œํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํŽ˜์ด์ง€๋Š” ํ”Œ๋žซํผ ์ธก๋ฉด์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค: ์ €์žฅ์†Œ๊ฐ€ ์–ด๋–ป๊ฒŒ ์„ ์–ธ๋˜๊ณ , ๊ด€๋ฆฌ๋˜๊ณ , ๊ณต์œ ๋˜๊ณ , ์šด์˜๋˜๋Š”์ง€.

์ž‘๋™ ๋ฐฉ์‹

  1. ์„ ํƒ์ ์œผ๋กœ .ironflock/data-template.yml์— files: ์„น์…˜์„ ์„ ์–ธํ•ฉ๋‹ˆ๋‹ค.
  2. ์‚ฌ์šฉ์ž๊ฐ€ ํ”„๋กœ์ ํŠธ์— ์•ฑ์„ ์„ค์น˜ํ•˜๋ฉด, IronFlock์ด ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํ”„๋กœ๋น„์ €๋‹ํ•˜๋Š” ๊ฒƒ๊ณผ ๋˜‘๊ฐ™์ด ์•ฑ์„ ์œ„ํ•œ ๋น„๊ณต๊ฐœ ์ €์žฅ ์˜์—ญ์„ ํ”„๋กœ๋น„์ €๋‹ํ•ฉ๋‹ˆ๋‹ค.
  3. ์—ฃ์ง€ ์ฝ”๋“œ๋Š” SDK์˜ files API๋ฅผ ํ†ตํ•ด ๊ฐ์ฒด๋ฅผ ์ €์žฅํ•˜๊ณ  ์ฝ์Šต๋‹ˆ๋‹ค.
  4. ์•ฑ์„ ์ œ๊ฑฐํ•˜๋ฉด ์ €์žฅ์†Œ๊ฐ€ ์™„์ „ํžˆ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ๊ฐ€ ์‚ญ์ œ๋˜๋Š” ๊ฒƒ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ชจ๋“  ๊ฐ์ฒด์™€ ๋ชจ๋“  ์ž๊ฒฉ ์ฆ๋ช…์ด ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ €์žฅ์†Œ๋Š” ํ”„๋กœ์ ํŠธ๋ณ„์ž…๋‹ˆ๋‹ค. ๊ฐ™์€ ์•ฑ์„ ๋‘ ํ”„๋กœ์ ํŠธ์— ์„ค์น˜ํ•˜๋ฉด ์™„์ „ํžˆ ๋ถ„๋ฆฌ๋œ ๋‘ ๊ฐœ์˜ ์ €์žฅ ์˜์—ญ์ด ์ƒ๊ธฐ๋ฉฐ, ์•ฑ ๊ฐœ๋ฐœ์ž์ธ ์—ฌ๋Ÿฌ๋ถ„์€ ๋‘˜ ์ค‘ ์–ด๋А ๊ฒƒ์—๋„ ์ ‘๊ทผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค โ€” ๋ฐ์ดํ„ฐ๋Š” ์•ฑ์„ ์‹คํ–‰ํ•˜๋Š” ์‚ฌ์šฉ์ž์˜ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์„ค์ •์ด ์ „ํ˜€ ์—†์–ด๋„ ์œ ํšจํ•œ ๊ตฌ์„ฑ์ž…๋‹ˆ๋‹ค: files: ์„น์…˜์ด ์—†๋Š” ์•ฑ๋„ default๋ผ๋Š” ์ด๋ฆ„์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ํ•˜๋‚˜ ๊ฐ–๊ฒŒ ๋˜๋ฏ€๋กœ, ๋ชจ๋“  ์•ฑ์—์„œ files.put(...)์ด ๋ณ„๋„์˜ ์„ค์ • ์—†์ด ๋ฐ”๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ํ…œํ”Œ๋ฆฟ์—์„œ ์ €์žฅ์†Œ ์„ ์–ธ

files: ์„น์…˜์€ data-template.yml์—์„œ data: ์˜†์— ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค:

files: description: Camera frames and generated inspection reports. # ์•ฑ์ด ์Šค์Šค๋กœ ์ œ์•ˆํ•˜๋Š” ์ €์žฅ ์˜ˆ์‚ฐ, ๋ฐ”์ดํŠธ ๋‹จ์œ„ (์—ฌ๊ธฐ์„œ๋Š” 5 GiB). # ํ”„๋กœ์ ํŠธ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฅผ ์žฌ์ •์˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‚ฌ์šฉ์ž์˜ ์„ค์ •์ด ๊ฐ•์ œ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. quotaBytes: 5368709120 namespaces: - name: frames description: Raw camera frames, one JPEG per inspected part. contentTypes: ["image/jpeg"] maxObjectBytes: 20971520 retention: { deleteAfter: 30 days } - name: reports description: Generated PDF inspection reports. contentTypes: ["application/pdf"] private: true

๋„ค์ž„์ŠคํŽ˜์ด์Šค

๋„ค์ž„์ŠคํŽ˜์ด์Šค๋Š” ์ •์ฑ…์„ ๋‹ด๊ณ  ์žˆ๋Š” ํ‚ค ์ ‘๋‘์‚ฌ์ž…๋‹ˆ๋‹ค. ๋ณ„๋„์˜ ์ €์žฅ ๋ฒ„ํ‚ท์ด ์•„๋‹™๋‹ˆ๋‹ค โ€” ์•ฑ์˜ ๋ชจ๋“  ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋Š” ํ•ด๋‹น ์•ฑ์˜ ๋‹จ์ผ ์ €์žฅ ์˜์—ญ ์•ˆ์— ์กด์žฌํ•˜๋ฉฐ, ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ด๋ฆ„์€ ๋‹จ์ˆœํžˆ ๊ฐ ๊ฐ์ฒด ์ €์žฅ ๊ฒฝ๋กœ์˜ ์ฒซ ๋ฒˆ์งธ ์„ธ๊ทธ๋จผํŠธ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

์ด ๊ตฌ๋ถ„์ด ์–ธ์ œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์„ ์–ธํ•ด์•ผ ํ•˜๋Š”์ง€ ์•Œ๋ ค์ค๋‹ˆ๋‹ค:

  • ํŒŒ์ผ์„ ์ •๋ฆฌํ•˜๊ณ  ์‹ถ๋‚˜์š”? default ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์•ˆ์—์„œ ํ‚ค ๊ฒฝ๋กœ โ€” 2026/03/part-1.jpg โ€” ๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ํด๋” ์Šคํƒ€์ผ ํ‚ค๊ฐ€ ์ผ๋ฐ˜์ ์ธ ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค.
  • ์–ด๋–ค ๊ฐ์ฒด ์ง‘ํ•ฉ์— ๋‹ค๋ฅธ ๊ทœ์น™์ด ํ•„์š”ํ•œ๊ฐ€์š”? ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์„ ์–ธํ•˜์‹ญ์‹œ์˜ค. ๊ทœ์น™์ด ๋„ค์ž„์ŠคํŽ˜์ด์Šค๊ฐ€ ์ถ”๊ฐ€ํ•˜๋Š” ์œ ์ผํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋„ค์ž„์ŠคํŽ˜์ด์Šค๊ฐ€ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๊ทœ์น™:

ํ•„๋“œ์˜๋ฏธ
name์†Œ๋ฌธ์ž, ์ˆซ์ž, ํ•˜์ดํ”ˆ์œผ๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. sys, system, ironflock, ironflock-*๋Š” ์˜ˆ์•ฝ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค
description์‚ฌ์šฉ์ž์—๊ฒŒ ํ‘œ์‹œ๋˜๋ฉฐ AI ์—์ด์ „ํŠธ๊ฐ€ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
private๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ํฌ๋กœ์Šค ์•ฑ ์ ‘๊ทผ์—์„œ ์ œ์™ธํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ false(๊ณต์œ ) โ€” ํ…Œ์ด๋ธ”๊ณผ ์™„์ „ํžˆ ๋™์ผํ•ฉ๋‹ˆ๋‹ค
contentTypesํ—ˆ์šฉ๋˜๋Š” MIME ์œ ํ˜•์ด๋ฉฐ, ๊ธ€๋กญ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(image/*). ๊ธฐ๋ณธ๊ฐ’: ๋ชจ๋‘
maxObjectBytes๋‹จ์ผ ๊ฐ์ฒด์˜ ์ตœ๋Œ€ ํฌ๊ธฐ์ด๋ฉฐ, ์ตœ๋Œ€ 5 GiB๊นŒ์ง€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’ 100 MiB
retention.deleteAfter์ด ๊ธฐ๊ฐ„๋ณด๋‹ค ์˜ค๋ž˜๋œ ๊ฐ์ฒด๋Š” ์ž๋™์œผ๋กœ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค(30 days, 2 weeks, 1 year, โ€ฆ)

์ €์žฅ ์˜ˆ์‚ฐ

quotaBytes๋Š” ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ณ„์ด ์•„๋‹ˆ๋ผ ์•ฑ ์ „์ฒด์— ๋Œ€ํ•ด ํ•œ ๋ฒˆ๋งŒ ์„ ์–ธ๋ฉ๋‹ˆ๋‹ค. ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋Š” ํ‚ค ์ ‘๋‘์‚ฌ์ผ ๋ฟ์ด๋ฏ€๋กœ ์ ‘๋‘์‚ฌ๋ณ„ ์˜ˆ์‚ฐ์„ ๊ฐ•์ œํ•  ๋Œ€์ƒ ์ž์ฒด๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค โ€” ํ• ๋‹น๋Ÿ‰์€ ์•ฑ์˜ ๋‹จ์ผ ์ €์žฅ ์˜์—ญ์— ์ ์šฉ๋˜๋ฉฐ, ์ง์ ‘ ์—…๋กœ๋“œ๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  ์“ฐ๊ธฐ ๊ฒฝ๋กœ์—์„œ ๊ฐ์ฒด ์ €์žฅ์†Œ๊ฐ€ ์ง์ ‘ ์ด๋ฅผ ๊ฐ•์ œํ•ฉ๋‹ˆ๋‹ค.

๋‘ ๊ฐœ์˜ ์ˆซ์ž๊ฐ€ ์กด์žฌํ•˜๋ฉฐ, ๊ทธ ์ฐจ์ด๋Š” ์˜๋„์ ์ž…๋‹ˆ๋‹ค:

  • ์ œ์•ˆ๋œ ํ• ๋‹น๋Ÿ‰ โ€” ํ…œํ”Œ๋ฆฟ์ด ์š”์ฒญํ•˜๋Š” ๊ฐ’์ž…๋‹ˆ๋‹ค. ์•ฑ์ด ์ฒ˜์Œ ์„ค์น˜๋  ๋•Œ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • ๊ฐ•์ œ๋˜๋Š” ํ• ๋‹น๋Ÿ‰ โ€” ํ”„๋กœ์ ํŠธ ์‚ฌ์šฉ์ž๊ฐ€ ์„ค์ •ํ•œ ๊ฐ’์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์•ฑ์˜ ์ €์žฅ์†Œ ์„ค์ •์—์„œ ์˜ˆ์‚ฐ์„ ๋ณ€๊ฒฝํ•˜๋ฉด ์‚ฌ์šฉ์ž์˜ ๊ฐ’์ด ์šฐ์„ ํ•˜๋ฉฐ, ์•ฑ์„ ์žฌ๋ฐฐํฌํ•ด๋„ ์ด ๊ฐ’์€ ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ…œํ”Œ๋ฆฟ์— ์•„๋ฌด๊ฒƒ๋„ ๋ช…์‹œํ•˜์ง€ ์•Š์œผ๋ฉด ํ”Œ๋žซํผ ๊ธฐ๋ณธ๊ฐ’์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค(๊ฐœ๋ฐœ ๋ฐฑ์—”๋“œ๋Š” 1 GiB, ํ”„๋กœ๋•์…˜ ๋ฐฑ์—”๋“œ๋Š” 10 GiB).

๋ณด์กด ๊ธฐ๊ฐ„

๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ deleteAfter ๊ธฐ๊ฐ„์„ ๋„˜๊ธด ๊ฐ์ฒด๋Š” ์ž๋™์œผ๋กœ ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค โ€” ํ…Œ์ด๋ธ”์˜ dropAfter ์ •์ฑ…์— ํ•ด๋‹นํ•˜๋Š” ํŒŒ์ผ ์ธก ๋Œ€์‘๋ฌผ์ž…๋‹ˆ๋‹ค. ๋ณด์กด์€ ๊ฐ์ฒด ์ €์žฅ์†Œ๊ฐ€ ์ด๋ฅผ ์ง€์›ํ•˜๋Š” ๊ฒฝ์šฐ ์ €์žฅ์†Œ ๋‚ด๋ถ€์—์„œ ์‹คํ–‰๋˜๊ณ , ์ง€์›ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ(์˜จํ”„๋ ˆ๋ฏธ์Šค ์–ดํ”Œ๋ผ์ด์–ธ์Šค)์—๋Š” ๋งค์ผ ์‹คํ–‰๋˜๋Š” ํ”Œ๋žซํผ ์ž‘์—…์œผ๋กœ ์‹คํ–‰๋˜๋ฏ€๋กœ, ์„ ์–ธ๋œ ๋ณด์กด ๊ธฐ๊ฐ„์€ ์–ด๋””์„œ๋‚˜ ๋™์ผํ•˜๊ฒŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์˜๊ตฌ URL๊ณผ ๋Œ€์‹œ๋ณด๋“œ

์ €์žฅ๋œ ๋ชจ๋“  ๊ฐ์ฒด๋Š” https://files.ironflock.com/f/<backend>/<namespace>/<key> ํ˜•์‹์˜ ์•ˆ์ •์ ์ธ URL์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ์„ธ ๊ฐ€์ง€ ์†์„ฑ์ด ์ด๋ฅผ ํ…Œ์ด๋ธ” ์ปฌ๋Ÿผ์— ๊ธฐ๋กํ•˜๊ธฐ ์ ํ•ฉํ•œ ๊ฒƒ์œผ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค:

  • ์ ˆ๋Œ€ ๋งŒ๋ฃŒ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด URL์€ ์ˆœ์ˆ˜ํ•œ ์ฃผ์†Œ์ด๋ฉฐ, ๊ฐ์ฒด๊ฐ€ ์กด์žฌํ•˜๋Š” ๋™์•ˆ ๊ณ„์† ์œ ํšจํ•ฉ๋‹ˆ๋‹ค.
  • ๊ณต๊ฐœ ๋งํฌ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋ชจ๋“  ์š”์ฒญ์€ ์š”์ฒญ์ž๊ฐ€ ๋กœ๊ทธ์ธ๋˜์–ด ์žˆ๊ณ  ์ด ๋ฐ์ดํ„ฐ ๋ฐฑ์—”๋“œ์— ๋Œ€ํ•œ READ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์ธ์ฆ ํ”„๋ก์‹œ๋ฅผ ๊ฑฐ์นฉ๋‹ˆ๋‹ค โ€” ๋งค ์š”์ฒญ๋งˆ๋‹ค ๋‹ค์‹œ ํ™•์ธ๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์˜ ์ ‘๊ทผ ๊ถŒํ•œ์„ ์ฒ ํšŒํ•˜๋ฉด ๊ทธ ์ฆ‰์‹œ ๋ชจ๋“  ํŒŒ์ผ์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์ด ํ•จ๊ป˜ ์ฒ ํšŒ๋ฉ๋‹ˆ๋‹ค.
  • <img>์—์„œ ๋ Œ๋”๋ง๋ฉ๋‹ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์„ธ์…˜ ์ฟ ํ‚ค๋ฅผ ์ž๋™์œผ๋กœ ์ „์†กํ•˜๋ฏ€๋กœ, ๋Œ€์‹œ๋ณด๋“œ ์œ„์ ฏ์€ JavaScript ์—†์ด๋„ <img src>, <video src> ๋˜๋Š” ๋‹ค์šด๋กœ๋“œ ๋งํฌ์— ์ด URL์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ์™ธ๋ถ€์˜ ๋ˆ„๊ตฐ๊ฐ€์—๊ฒŒ ํŒŒ์ผ์„ ๊ฑด๋„ค์ฃผ๋ ค๋ฉด, SDK์˜ share_url์ด ๋Œ€์‹  ๋งŒ๋ฃŒ๋˜๋Š” ์†Œ์ง€์ž ๋งํฌ๋ฅผ ๋ฐœ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค โ€” ์–ด๋А ๊ฒƒ์„ ์–ธ์ œ ์‚ฌ์šฉํ• ์ง€๋Š” ๊ฐ์ฒด ๊ณต์œ ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

๋Œ€์šฉ๋Ÿ‰ ํŒŒ์ผ

6 MiB๊นŒ์ง€์˜ ์ „์†ก์€ ๋ฉ”์‹œ์ง• ์‹œ์Šคํ…œ์„ ํ†ตํ•ด ๋‹จ์ผ ํ˜ธ์ถœ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ณด๋‹ค ํฐ ๊ฒƒ์€ HTTPS๋ฅผ ํ†ตํ•ด ๋””๋ฐ”์ด์Šค์™€ ๊ฐ์ฒด ์ €์žฅ์†Œ ๊ฐ„์— ์ง์ ‘ ์ „์†ก๋ฉ๋‹ˆ๋‹ค โ€” SDK๊ฐ€ ์ž๋™์œผ๋กœ ์ „ํ™˜ํ•˜๊ณ , ๋””์Šคํฌ์—์„œ ์ŠคํŠธ๋ฆฌ๋ฐํ•˜๋ฉฐ, ์ˆ˜ ๊ธฐ๊ฐ€๋ฐ”์ดํŠธ์งœ๋ฆฌ ํŒŒ์ผ๋„ ๋ฉ”๋ชจ๋ฆฌ์— ๋‹ด๊ธธ ํ•„์š”๊ฐ€ ์ „ํ˜€ ์—†์Šต๋‹ˆ๋‹ค. ๋‹จ์ผ ์—…๋กœ๋“œ ์ƒํ•œ์€ 5 GiB์ž…๋‹ˆ๋‹ค.

์ง์ ‘ ๊ฒฝ๋กœ์—์„œ๋Š” ๋””๋ฐ”์ด์Šค๊ฐ€ ๋ฉ”์‹œ์ง• ๋ผ์šฐํ„ฐ๋ฟ ์•„๋‹ˆ๋ผ ๊ฐ์ฒด ์ €์žฅ์†Œ ํ˜ธ์ŠคํŠธ(s3.ironflock.com)์—๋„ ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ณต์žฅ ํ”„๋ก์‹œ๊ฐ€ ๋ผ์šฐํ„ฐ๋งŒ ํ—ˆ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ๋Œ€์šฉ๋Ÿ‰ ์ „์†ก์€ ์ผ๋ฐ˜์ ์ธ ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹ˆ๋ผ ๋ช…์‹œ์ ์ธ ์ฝ”๋“œ PRESIGN_UNREACHABLE์™€ ํ•จ๊ป˜ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค โ€” ๊ทธ๋ฆฌ๊ณ  ๋””๋ฐ”์ด์Šค ์‹œ๊ณ„๊ฐ€ 15๋ถ„ ๋„˜๊ฒŒ ์–ด๊ธ‹๋‚˜ ์žˆ์œผ๋ฉด CLOCK_SKEW์™€ ํ•จ๊ป˜ ์‹คํŒจํ•˜๋Š”๋ฐ, ์ด๋Š” ์ž๊ฒฉ ์ฆ๋ช…์ด ์•„๋‹ˆ๋ผ NTP๋ฅผ ํ™•์ธํ•˜๋ผ๋Š” ์‹ ํ˜ธ์ž…๋‹ˆ๋‹ค.

์•ฑ ๊ฐ„ ํŒŒ์ผ ๊ณต์œ 

ํฌ๋กœ์Šค ์•ฑ ํŒŒ์ผ ์ ‘๊ทผ์€ ํฌ๋กœ์Šค ์•ฑ ํ…Œ์ด๋ธ” ์ ‘๊ทผ๊ณผ ๋™์ผํ•œ ๋™์˜๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ์Šค์œ„์น˜๋Š” ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค: ํ”„๋กœ์ ํŠธ ์‚ฌ์šฉ์ž๊ฐ€ ์•ฑ B์— ์•ฑ A์˜ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋ฉด(์•ฑ ์„ค์ •์˜ data_access ๋™์˜), ๊ทธ ๊ถŒํ•œ ๋ถ€์—ฌ๋Š” A์˜ ํ…Œ์ด๋ธ” ๊ณผ A์˜ ๋น„๊ณต๊ฐœ๊ฐ€ ์•„๋‹Œ ํŒŒ์ผ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋ชจ๋‘ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์ฒ ํšŒํ•˜๋ฉด ๋‘˜ ๋‹ค ์ฒ ํšŒ๋ฉ๋‹ˆ๋‹ค.

์ œ๊ณต์ž๋กœ์„œ ์•ฑ์ด ์ œ์–ดํ•˜๋Š” ๊ฒƒ์€ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ณ„ private ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค:

  • private: false(๊ธฐ๋ณธ๊ฐ’) โ€” ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๊ฐ€์ง„ ์•ฑ์ด ์ด๋ฅผ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์“ฐ๊ธฐ๋Š” ์ ˆ๋Œ€ ๋ถˆ๊ฐ€).
  • private: true โ€” ๊ถŒํ•œ์ด ๋ถ€์—ฌ๋˜์–ด ์žˆ์–ด๋„ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋Š” ๋‹ค๋ฅธ ์•ฑ์— ์ „ํ˜€ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด๋Š” ๋‹ค๋ฅธ ์•ฑ์˜ ๋ฐ์ดํ„ฐ ์‚ฌ์šฉ๊ณผ ์ •ํ™•ํžˆ ๋™์ผํ•ฉ๋‹ˆ๋‹ค: ๋„ค์ž„์ŠคํŽ˜์ด์Šค์™€ ํ…Œ์ด๋ธ”์˜ ๊ธฐ๋ณธ๊ฐ’์€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ ๋ถ€์—ฌ ์—†์ด๋Š” ์•„๋ฌด๊ฒƒ๋„ ๊ณต์œ ๋˜์ง€ ์•Š์œผ๋ฉฐ, private:๋Š” ์ด๋ฏธ ๋™์˜๋ฅผ ๋ฐ›์€ ์ฝ๊ธฐ ์ฃผ์ฒด๊ฐ€ ๋ณด๋Š” ๋ฒ”์œ„๋ฅผ ์ขํž ๋ฟ ๋™์˜ ์ž์ฒด๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž์˜ ๊ด€์ 

ํ”„๋กœ์ ํŠธ ์‚ฌ์šฉ์ž๋Š” ๋‘ ๊ณณ์—์„œ ์•ฑ์˜ ์ €์žฅ์†Œ๋ฅผ ํ™•์ธํ•˜๊ณ  ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค:

  • ๋ฐ์ดํ„ฐ ๋ทฐ๋Š” ๋ชจ๋“  ์•ฑ์˜ ํ…Œ์ด๋ธ” ๋ฐ ๋ทฐ ์˜†์— ํŒŒ์ผ ํ•ญ๋ชฉ์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ํฌ๊ธฐ, ์œ ํ˜•, ์ˆ˜์ • ๋‚ ์งœ์™€ ํ•จ๊ป˜ ์ €์žฅ๋œ ๋ชจ๋“  ๊ฐ์ฒด๋ฅผ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•œ ๋ชฉ๋ก์œผ๋กœ ๋ณด์—ฌ์ฃผ๋ฉฐ, ํŒŒ์ผ๋ณ„ ๋‹ค์šด๋กœ๋“œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์•ฑ์˜ ์ €์žฅ์†Œ ์„ค์ •์€ ์‚ฌ์šฉ๋Ÿ‰(๋ฐ”์ดํŠธ ๋ฐ ๊ฐ์ฒด ๊ฐœ์ˆ˜), ์•ฑ์˜ ์ œ์•ˆ ์˜†์— ํ‘œ์‹œ๋˜๋Š” ๊ฐ•์ œ๋˜๋Š” ์˜ˆ์‚ฐ, ์˜ˆ์‚ฐ์„ ๋ณ€๊ฒฝํ•˜๋Š” ์ปจํŠธ๋กค, ๊ทธ๋ฆฌ๊ณ  ๋ชจ๋“  ํŒŒ์ผ ์‚ญ์ œ ์ž‘์—…์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค โ€” ๋ชจ๋“  ํ…Œ์ด๋ธ”์„ ๋น„์šฐ๋Š” ๊ฒƒ์˜ ํŒŒ์ผ ์ธก ์Œ๋‘ฅ์ด์ž…๋‹ˆ๋‹ค. ์‚ญ์ œ๋Š” ์•ฑ ์ด๋ฆ„์„ ์ž…๋ ฅํ•˜์—ฌ ํ™•์ธํ•˜๋ฉฐ ๋˜๋Œ๋ฆด ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • AI ์–ด์‹œ์Šคํ„ดํŠธ๋Š” ์‚ฌ์šฉ์ž๋ฅผ ๋Œ€์‹ ํ•ด ์ด ํŒŒ์ผ๋“ค์„ ๋‚˜์—ด, ๊ฒ€์ƒ‰, ์ฝ๊ธฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์ผํ•œ DATABACKEND/READ ๊ถŒํ•œ ๊ฒ€์‚ฌ๊ฐ€ ์ ์šฉ๋˜๋ฏ€๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ์—ด ์ˆ˜ ์—†๋Š” ํŒŒ์ผ์€ ์ ˆ๋Œ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํŒŒ์ผ ๋‚ด์šฉ์ด ์•„๋‹ˆ๋ผ ๊ฒฝ๋กœ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ฉฐ, ํ…์ŠคํŠธ ํŒŒ์ผ๊ณผ ์ด๋ฏธ์ง€, PDF๋ฅผ ์ฝ์Šต๋‹ˆ๋‹ค. ์••์ถ• ํŒŒ์ผ ๋“ฑ ๋‹ค๋ฅธ ๋ฐ”์ด๋„ˆ๋ฆฌ ํ˜•์‹์€ ์ฝ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

ํ…Œ์ด๋ธ”๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ด๊ฒƒ์€ ์‚ฌ์šฉ์ž์˜ ๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹ค: ์‚ฌ์šฉ์ž๋Š” ์—ฌ๋Ÿฌ๋ถ„์„ ๊ฑฐ์น˜์ง€ ์•Š๊ณ ๋„ ์ด๋ฅผ ์ ๊ฒ€ํ•˜๊ณ , ์ƒํ•œ์„ ๋‘๊ณ , ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง์ ‘ S3 ์ ‘๊ทผ

SDK๋ฅผ ๋ฒ—์–ด๋‚œ ๋ชจ๋“  ๊ฒฝ์šฐ โ€” DuckDB๋ฅผ ์“ฐ๋Š” ๋ถ„์„๊ฐ€, ์•ผ๊ฐ„ rclone ๋ฐฑ์—…, BI ํŒŒ์ดํ”„๋ผ์ธ โ€” ์— ๋Œ€ํ•ด, ํ”„๋กœ์ ํŠธ ์‚ฌ์šฉ์ž๋Š” ์•ฑ์˜ ์ €์žฅ์†Œ ์„ค์ •์—์„œ ์•ฑ๋ณ„ ์ฝ๊ธฐ ์ „์šฉ S3 ์ž๊ฒฉ ์ฆ๋ช…์„ ๋ฐœ๊ธ‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ ์ž๊ฒฉ ์ฆ๋ช…์€ ๊ทธ ํ•˜๋‚˜์˜ ์•ฑ ์ €์žฅ ์˜์—ญ์œผ๋กœ ๋ฒ”์œ„๊ฐ€ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค: ์•ฑ A์šฉ์œผ๋กœ ๋ฐœ๊ธ‰๋œ ์ž๊ฒฉ ์ฆ๋ช…์€ ๊ตฌ์กฐ์ ์œผ๋กœ ์•ฑ B์˜ ํŒŒ์ผ์—๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค โ€” B์˜ ์ €์žฅ์†Œ ์ •์ฑ…์ด ์• ์ดˆ์— ์ด๋ฅผ ์–ธ๊ธ‰ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ๋Š” ์•ฑ๋ณ„๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž๊ฒฉ ์ฆ๋ช…์„ ๋ณด์œ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ(์†Œ๋น„์ž๋‹น ํ•˜๋‚˜์”ฉ: CI ์ž‘์—…, ๋ฐฑ์—… ์Šคํฌ๋ฆฝํŠธ, ๋…ธํŠธ๋ถ), ํ•˜๋‚˜๋ฅผ ์ฒ ํšŒํ•ด๋„ ๋‚˜๋จธ์ง€๋Š” ๊ณ„์† ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๊ณง ํ‚ค ๊ต์ฒด ๋ฐฉ๋ฒ•์ด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค: ํ‚ค๊ฐ€ ์œ ์ถœ๋˜๋ฉด ๋‘ ๋ฒˆ์งธ ์ž๊ฒฉ ์ฆ๋ช…์„ ๋ฐœ๊ธ‰ํ•˜๊ณ , ์†Œ๋น„์ž๋ฅผ ๊ทธ์ชฝ์œผ๋กœ ์˜ฎ๊ธด ๋‹ค์Œ, ์ฒซ ๋ฒˆ์งธ๋ฅผ ์ฒ ํšŒํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค โ€” ๋‹ค๋ฅธ ์–ด๋–ค ์†Œ๋น„์ž๋„ ๋ฐฉํ•ด๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์‹œํฌ๋ฆฟ์€ ์ƒ์„ฑ ์‹œ์ ์— ํ•œ ๋ฒˆ๋งŒ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋ฐœ๊ธ‰ํ•˜๋ ค๋ฉด ํ•ด๋‹น ์•ฑ ๋ฐ์ดํ„ฐ ๋ฐฑ์—”๋“œ์— ๋Œ€ํ•œ ์ฝ๊ธฐ ๊ถŒํ•œ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค โ€” ์• ์ดˆ์— ํŒŒ์ผ์„ ์ฝ์„ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด ์ฃผ๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•œ ๊ถŒํ•œ์ด๋ฏ€๋กœ, ์ž๊ฒฉ ์ฆ๋ช…์ด ๋ˆ„๊ตฐ๊ฐ€์˜ ์ ‘๊ทผ ๋ฒ”์œ„๋ฅผ ๋„“ํžˆ๋Š” ์ผ์€ ๊ฒฐ์ฝ” ์—†์Šต๋‹ˆ๋‹ค.

# rclone rclone config create myapp s3 provider=Other \ endpoint=https://s3.ironflock.com \ access_key_id=ifs-key-3317-x7k2m secret_access_key=<shown once> rclone ls myapp:if-1042-3317
# DuckDB CREATE SECRET (TYPE S3, KEY_ID 'ifs-key-3317-x7k2m', SECRET '<shown once>', ENDPOINT 's3.ironflock.com'); SELECT * FROM read_parquet('s3://if-1042-3317/exports/*.parquet');

์ €์žฅ์†Œ ์„ค์ •์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๊ฐ€๋ฆฌํ‚ฌ ์—”๋“œํฌ์ธํŠธ์™€ ์ •ํ™•ํ•œ ๋ฒ„ํ‚ท ์ด๋ฆ„์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์ตœ์ƒ์œ„ ๋ฒ„ํ‚ท ๋ชฉ๋ก ์กฐํšŒ(์ธ์ˆ˜ ์—†๋Š” aws s3 ls)๋Š” ์„ค๊ณ„์ƒ ์•„๋ฌด๊ฒƒ๋„ ๋ฐ˜ํ™˜ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ ์— ์œ ์˜ํ•˜์‹ญ์‹œ์˜ค โ€” ์ž๊ฒฉ ์ฆ๋ช…์€ ์–ด๋–ค ๋ฒ„ํ‚ท๋„ ์†Œ์œ ํ•˜์ง€ ์•Š์œผ๋ฉฐ, ํ•˜๋‚˜์— ๋Œ€ํ•œ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ถ€์—ฌ๋ฐ›์„ ๋ฟ์ž…๋‹ˆ๋‹ค. ์œ„์™€ ๊ฐ™์ด ๋ฒ„ํ‚ท์„ ์ง์ ‘ ์ง€์ •ํ•˜์‹ญ์‹œ์˜ค.

์˜จํ”„๋ ˆ๋ฏธ์Šค ์–ดํ”Œ๋ผ์ด์–ธ์Šค

ํŒŒ์ผ ์ €์žฅ์†Œ๋Š” ์˜จํ”„๋ ˆ๋ฏธ์Šค ์–ดํ”Œ๋ผ์ด์–ธ์Šค์—์„œ๋„ ๋™์ผํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋ฉฐ, ์–ดํ”Œ๋ผ์ด์–ธ์Šค์˜ ์„ค๊ณ„์—์„œ ๋น„๋กฏ๋˜๋Š” ์„ธ ๊ฐ€์ง€ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค:

  • ํŒŒ์ผ์€ ์–ดํ”Œ๋ผ์ด์–ธ์Šค ์ž์ฒด ์ฃผ์†Œ(/files/...) ์•„๋ž˜์—์„œ **๋™์ผ ์ถœ์ฒ˜(same-origin)**๋กœ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค โ€” ์ถ”๊ฐ€ DNS ์ด๋ฆ„๋„, ์ถ”๊ฐ€ ์ธ์ฆ์„œ๋„ ํ•„์š” ์—†์œผ๋ฉฐ, ์ˆœ์ˆ˜ HTTP ์„ค์น˜์—์„œ๋„ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์˜๊ตฌ URL๊ณผ <img src>๋Š” ํด๋ผ์šฐ๋“œ์—์„œ์™€ ๋˜‘๊ฐ™์ด ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.
  • ์–ดํ”Œ๋ผ์ด์–ธ์Šค์˜ ์ €์žฅ์†Œ ๋ฐฑ์—”๋“œ๋Š” ๋ณ„๋„์˜ ์ €์žฅ์†Œ ํ˜ธ์ŠคํŠธ๋กœ ๋ฆฌ๋””๋ ‰์…˜ํ•˜๋Š” ๋Œ€์‹  ํ”Œ๋žซํผ์„ ํ†ตํ•ด ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ๋ฅผ ์ŠคํŠธ๋ฆฌ๋ฐํ•˜๋ฏ€๋กœ, ์ €์žฅ์†Œ ์„œ๋น„์Šค๊ฐ€ ๋‘ ๋ฒˆ์งธ ์ถœ์ฒ˜๋กœ ๋…ธ์ถœ๋˜๋Š” ์ผ์ด ์—†์Šต๋‹ˆ๋‹ค.
  • ์–ดํ”Œ๋ผ์ด์–ธ์Šค์—์„œ๋Š” ์ง์ ‘ S3 ์ž๊ฒฉ ์ฆ๋ช…์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค โ€” ๋‚ด์žฅ๋œ ๊ฐ์ฒด ์ €์žฅ์†Œ๊ฐ€ ์ž๊ฒฉ ์ฆ๋ช…๋ณ„ ์ ‘๊ทผ ๊ถŒํ•œ ๋ถ€์—ฌ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น ์„น์…˜์€ ๊ทธ๊ณณ์˜ ์ €์žฅ์†Œ ์„ค์ •์— ์•„์˜ˆ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. SDK๋ฅผ ํ†ตํ•œ ๋Œ€์šฉ๋Ÿ‰ ํŒŒ์ผ ๋™์ž‘๊ณผ ์„ ์–ธ๋œ ๋ณด์กด ๊ธฐ๊ฐ„์„ ํฌํ•จํ•œ ๊ทธ ๋ฐ–์˜ ๋ชจ๋“  ๊ฒƒ์€ ๋™์ผํ•˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๋ง ๋ถ„๋ฆฌ๋œ ์–ดํ”Œ๋ผ์ด์–ธ์Šค๋Š” ๋ชจ๋“  ํŒŒ์ผ ํŠธ๋ž˜ํ”ฝ์„ ๋กœ์ปฌ์—์„œ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค: ์•ฑ ๋กœ๊ณ , ๋Œ€์‹œ๋ณด๋“œ ์ด๋ฏธ์ง€, ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ์— ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ•œ๋ˆˆ์— ๋ณด๋Š” ์ œํ•œ

์ œํ•œ๊ฐ’์ถœ์ฒ˜
์ธ๋ผ์ธ ์ „์†ก(๋‹จ์ผ ํ˜ธ์ถœ)6 MiB๋Ÿฐํƒ€์ž„์— ๋ณด๊ณ ๋˜๋ฉฐ, ์„œ๋ฒ„ ์ธก์—์„œ ์ƒํ–ฅ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
๋‹จ์ผ ๊ฐ์ฒด๊ธฐ๋ณธ 100 MiB, ์ตœ๋Œ€ 5 GiB๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ณ„ maxObjectBytes
๋‹จ์ผ ์—…๋กœ๋“œ5 GiB๊ฐ์ฒด ์ €์žฅ์†Œ์˜ ๋‹จ์ผ PUT ์ƒํ•œ์ด๋ฉฐ, ๋ฉ€ํ‹ฐํŒŒํŠธ๋Š” ์•„์ง ์ œ๊ณต๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค
์ €์žฅ ์˜ˆ์‚ฐ๊ธฐ๋ณธ๊ฐ’ ๊ฐœ๋ฐœ 1 GiB / ํ”„๋กœ๋•์…˜ 10 GiBํ…œํ”Œ๋ฆฟ์ด ์ œ์•ˆํ•˜๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค
ํ‚ค ๊ธธ์ด ๋ฐ ๋ฌธ์žUTF-8, /๋กœ ๊ตฌ๋ถ„๋œ ๊ฒฝ๋กœ../, ์ œ์–ด ๋ฌธ์ž, ์˜ˆ์•ฝ๋œ ์ ‘๋‘์‚ฌ๋Š” ๊ฑฐ๋ถ€๋ฉ๋‹ˆ๋‹ค
Last updated on