Scalar Identity - kimjooyoon/meta-ontology-go GitHub Wiki

ํƒ€์ž…์˜ ์ด๋ฆ„์„ ๋ฐ”๊ฟ”๋„ ๊ฐ™์€ ๊ฐ’์œผ๋กœ ์กฐ๋ฆฝํ•˜๊ธฐ

๊ณต๊ฐœ PR 1418์„ ๊ฐœ๋ฐœ ๋ธŒ๋žœ์น˜์— ๋ณ‘ํ•ฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์†Œ์Šค 28b84915์˜ ๋กœ์ปฌ ๊ฒ€์‚ฌยท์‹ค์ œ ์‹คํ–‰๊ณผ ํ•„์ˆ˜ CI, ์›๋ณธ ๊ฒ€์ฆ ๊ธฐ๋ก์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณ‘ํ•ฉ dev 832dbf36์˜ ํŒŒ์ผ ํŠธ๋ฆฌ๋Š” ๊ฒ€์‚ฌํ•œ ํ›„๋ณด์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด ํƒ€์ž… ์ด๋ฆ„ ๊ธฐ๋Šฅ์€ ๊ณต๊ฐœ 0.6.21 ๊ฐœ๋ฐœํŒ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

0.6.21 ์ค€๋น„ PR 1419์€ ํ•œ๊ธ€ยท์˜๋ฌธ ์˜ˆ์ œ์™€ ๊ธฐ์กด ์ž์ฒด ๋ชจ๋ธ์˜ 446๋ฐ”์ดํŠธ ๊ฐ€์ค‘์น˜๋ฅผ ์†Œ์Šค์— ํ•จ๊ป˜ ๋‹ด์•˜์Šต๋‹ˆ๋‹ค. ๋กœ์ปฌ macOS ARM ๋ฐฐํฌ ๊ฒ€์‚ฌ๋Š” ํ†ต๊ณผํ–ˆ๊ณ , ์›๋ณธ GitHub ๋„ค ํ”Œ๋žซํผ ๊ฒ€์‚ฌ์—์„œ๋Š” Linux์™€ ๋‘ macOS๊ฐ€ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. Windows๋Š” ์‹ค์ œ ํ˜ธ์ถœ 1ํšŒ์™€ ํ•„๋“œ ๊ฒ€์‚ฌ 12/12 ๋’ค์— ์ถ”๋ก  ์‹œ๊ฐ„์ด 0ns๋กœ ๊ธฐ๋ก๋˜์–ด ์žฌ์ƒ ๊ฒ€์ฆ์—์„œ ๊ฑฐ์ ˆ๋์Šต๋‹ˆ๋‹ค. ์ด ๊ด€์ธก์„ ๋ณด์กดํ•˜๊ณ  ์‹œ๊ฐ„ ๊ฒ€์ฆ ์กฐ๊ฑด์„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฒซ ํ›„๋ณด PR 1419๋Š” ์›๋ณธ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•œ ๋’ค ๋‹ซ์•˜๊ณ  ์•„๋ž˜ ์ˆ˜์ • ํ›„๋ณด๋กœ ์ด์–ด๊ฐ”์Šต๋‹ˆ๋‹ค. ํ›„๋ณด ์‹คํ–‰ ์›๋ณธ๊ณผ Windows ์‹คํŒจ.

์ˆ˜์ • ํ›„๋ณด PR 1420์€ ๊ด€์ธก๋œ 0ns๋ฅผ ๋ณด์กดํ•˜๋ฉฐ, ์‹ค์ œ ํ˜ธ์ถœยท์˜ˆ์ธกยท์„ ํƒ ์ˆœ์„œ๋ฅผ ํ™•์ธํ•˜๋„๋ก ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. 0ns ์žฌ์ƒ ํšŒ๊ท€ ๊ฒ€์‚ฌ, ์ž˜๋ชป๋œ ์ถ”๋ก  ๊ธฐ๋ก ๋‹ค์„ฏ ์ข…๋ฅ˜์˜ ๊ฑฐ์ ˆ, ์ „์ฒด ์ฝ”๋“œ ์ƒ์„ฑ ๋™์‹œ ์‹คํ–‰ ๊ฒ€์‚ฌ์™€ ๋กœ์ปฌ macOS ARM ๋ฐฐํฌ ๊ฒ€์‚ฌ๊ฐ€ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ • ํ›„๋ณด๋Š” Windows๋ฅผ ํฌํ•จํ•œ ๋„ค ํ”Œ๋žซํผ ์‹คํ–‰๊ณผ ๋ฐฐํฌ ๊ทผ๊ฑฐ 7/7์„ ํ†ต๊ณผํ–ˆ๊ณ , ์›๋ณธ ๊ฒฐ๊ณผ์˜ ์ง€๋ฌธ๊ณผ ์†Œ์Šค๋ฅผ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. Windows ์‹ค์ œ ๋ณด๊ณ ์„œ์—์„œ๋„ ์ถ”๋ก  0nsยทํ˜ธ์ถœ 1ํšŒยทํ•„๋“œ ๊ฒ€์‚ฌ 12/12๋ฅผ ๋ณด์กดํ•œ ์ฑ„ ์‹คํ–‰๊ณผ ์ €์žฅ ์žฌ์ƒ์ด 4/4๋กœ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•„์ˆ˜ CI์™€ ์›๋ณธ ๊ฒ€์ฆ์„ ํ™•์ธํ•œ ๋’ค dev d4d0966f์— ๋ณ‘ํ•ฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์†Œ์Šค์˜ ์›๋ณธ ๋„ค ํ”Œ๋žซํผ ๊ฒ€์‚ฌ๋ฅผ ๋‹ค์‹œ ํ™•์ธํ•ด 0.6.21์„ ๊ณต๊ฐœํ•˜๊ณ  ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฐœ ์„ค์น˜๋ณธ์—์„œ๋„ ํ•œ๊ธ€ยท์˜๋ฌธ ๊ณ ์ •/๋ชจ๋ธ ์กฐ๋ฆฝ๊ณผ ์ €์žฅ ์žฌ์ƒ์˜ ํ•„๋“œ 12/12ยท์‹คํ–‰ 4/4๋ฅผ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฐœยท์„ค์น˜ ์›๋ณธ. ์ˆ˜์ • ํ›„๋ณด ์›๋ณธ ํ™•์ธ.

ํ•จ์ˆ˜๋ฅผ ํ•œ๊ธ€๋กœ ์ ์„ ์ˆ˜ ์žˆ์–ด๋„ ์ž…๋ ฅ ํƒ€์ž…์„ ๊ผญ Integer๋กœ ์ ์–ด์•ผ ํ•œ๋‹ค๋ฉด ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋ถˆํŽธํ•ฉ๋‹ˆ๋‹ค. ์ •์ˆ˜๋กœ ์ด๋ฆ„์„ ๋ฐ”๊พธ๊ณ  ๊ฐ™์€ ํƒ€์ž… ID๋ฅผ ๋‚จ๊ฒผ๋Š”๋ฐ, ์˜๋ฏธ ๊ณ„ํš์€ ๊ฐ™๊ณ  ์ฝ”๋“œ ์ƒ์„ฑ์€ ๊ฑฐ์ ˆ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ›„๋ณด๋Š” ์•Œ๋ ค์ง„ ID๋กœ ๊ฐ’์˜ ํ‘œํ˜„์„ ์ฐพ์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„ํ‘œ์™€ ๊ทœ๊ฒฉ ๋ฒˆํ˜ธ๋ฅผ ํ•จ๊ป˜ ์ฝ๋Š” ์…ˆ์ž…๋‹ˆ๋‹ค.

entity ์ •์ˆ˜ id "urn:gooo:type:integer"
entity ๋…ผ๋ฆฌ id "urn:gooo:type:boolean"
entity ๋ฌธ์ž์—ด id "urn:gooo:type:string"

์„ธ ID๋Š” ๊ฐ๊ฐ 64๋น„ํŠธ ์ •์ˆ˜, ๋…ผ๋ฆฌ๊ฐ’, ๋ฌธ์ž์—ด๋กœ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ์†Œ์Šค์™€ ๊ณ„ํš์—๋Š” ์ž‘์„ฑํ•œ ์ด๋ฆ„์ด ๋‚จ์Šต๋‹ˆ๋‹ค. ๊ฐ€์ ธ์˜จ ํŒจํ‚ค์ง€์—์„œ๋„ ๊ฐ™์€ ID๋ฅผ ์ด์–ด ๋ณด๊ณ , ์ด๋ฆ„๋งŒ ๋ฐ”๊พผ ์˜ˆ์ œ์˜ ์ƒ์„ฑ ์ฝ”๋“œ ์ง€๋ฌธ์ด ๊ฐ™์€์ง€ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ID๋ฅผ ๊ฐ€์ง„ ํƒ€์ž…์—๋Š” ์ง€์›ํ•˜๋Š” ๊ฐ’ ๊ตฌ์กฐ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ ˆ์ฝ”๋“œ ์„ ์–ธ์€ ํ•„๋“œ ๊ตฌ์กฐ๋กœ ๋‹ค๋ฃจ๊ณ , ์†Œ์Šค๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด ์ƒˆ ์‹คํ–‰ ๊ธฐ๋ก์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์ž‘์€ ์ž์ฒด ๋ชจ๋ธ๋กœ ์„ธ ํ•„๋“œ ์กฐ๋ฆฝํ•˜๊ธฐ

์‹คํ–‰ ์˜ˆ์ œ๋Š” ์ •์ˆ˜ยท์‚ฌ์šฉ ์—ฌ๋ถ€ยท๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์Šต๋‹ˆ๋‹ค. Gooo์˜ ๋ณ€์ˆ˜์™€ ์กฐ๊ฑด๋ฌธ์ด ๋ฌธ์žฅ์„ ๊ณ„์‚ฐํ•˜๊ณ , ์กฐ๋ฆฝ ์„ ํƒ์ง€๋Š” text, active, count์— ๋„ฃ์„ ๊ฐ’์„ ๊ณ ๋ฆ…๋‹ˆ๋‹ค. ์„ธ ํ•„๋“œ์— ์„ ํƒ์ง€๊ฐ€ ๋‘ ๊ฐœ์”ฉ ์žˆ์–ด ์กฐํ•ฉ์€ ์—ฌ๋Ÿ ๊ฐœ์ž…๋‹ˆ๋‹ค. ํ•œ๊ธ€ยท์˜๋ฌธ ์˜๋„๋„ ์†Œ์Šค์— ํ•จ๊ป˜ ์ ์Šต๋‹ˆ๋‹ค.

๊ด€์ธก ๊ณ ์ • ์ˆœ์„œ ์ž์ฒด ๋ชจ๋ธ
์ฒซ ํ›„๋ณด์˜ ํ•„๋“œ ๊ฒ€์‚ฌ 4/12 7/12
ํ†ต๊ณผํ•œ ํ›„๋ณด๊นŒ์ง€ ์‹œ๋„ 8 6
์ตœ์ข… ํ•„๋“œ ๊ฒ€์‚ฌ, ์ž‘์„ฑ ์‚ฌ๋ก€ ๋„ค ๊ฐœ 12/12 12/12
๋‹ค๋ฅธ ์ž…๋ ฅ ๋„ค ๊ฐœ์˜ ์‹ค์ œ ์‹คํ–‰ 4/4 4/4
์กฐ๋ฆฝ ์ค‘ ์ƒˆ ๋ชจ๋ธ ํ˜ธ์ถœ 0 1
์ €์žฅ ์žฌ์ƒ์˜ ์ƒˆ ๋ชจ๋ธ ํ˜ธ์ถœ 0 0

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

์ฒ˜์Œ ํ•œ ํ•„๋“œ๋งŒ ์„ ์–ธํ•œ ์˜ˆ์ œ๋Š” ๋ชจ๋ธ์ด ์š”๊ตฌํ•˜๋Š” ์„ธ ํ•„๋“œ ํ˜•์‹์— ๋งž์ง€ ์•Š์•„ ๊ณ ์ • ์ˆœ์„œ๋กœ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋ธ์„ ์ฝ์—ˆ์ง€๋งŒ ํ˜ธ์ถœ์€ 0ํšŒ์˜€์Šต๋‹ˆ๋‹ค. ๊ทธ ๊ธฐ๋ก์„ ๋ณด์กดํ•˜๊ณ , ์„ธ ์ข…๋ฅ˜์˜ ๊ฐ’์„ ํ•จ๊ป˜ ์กฐ๋ฆฝํ•˜๋Š” ์œ„ ์˜ˆ์ œ์—์„œ ์‹ค์ œ ํ˜ธ์ถœ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

์‹œ๊ฐ„๊ณผ ๋ฉ”๋ชจ๋ฆฌ ๊ด€์ธก

์ด๋ฒˆ ๋‹จ์ผ ๊ด€์ธก์˜ ๋ชจ๋ธ ๋กœ๋”ฉ์€ 0.45ms, ์ถ”๋ก ์€ 0.068ms์˜€์Šต๋‹ˆ๋‹ค. ๋ชจ๋ธ์ด ์œ ์ง€ํ•œ ํ…์„œ๋Š” 2,096๋ฐ”์ดํŠธ์ด๋ฉฐ, ์ถ”๋ก ยท๊ฒ€์‚ฌยท๋„ค์ดํ‹ฐ๋ธŒ ๋นŒ๋“œยท์‹คํ–‰์„ ํฌํ•จํ•œ ๋ช…๋ น ์ „์ฒด์˜ ์ตœ๋Œ€ RSS๋Š” ์•ฝ 82.1MiB์˜€์Šต๋‹ˆ๋‹ค. ์ „์ฒด ๋ช…๋ น์€ ๊ณ ์ • ์ˆœ์„œ 0.50์ดˆ, ๋ชจ๋ธ 0.32์ดˆ์˜€๊ณ  ํ”„๋กœ์„ธ์Šค CPU ์‹œ๊ฐ„์€ ๊ฐ๊ฐ ์•ฝ 0.25์ดˆ์˜€์Šต๋‹ˆ๋‹ค. ์‹คํ–‰ ์ˆœ์„œ์™€ ๋นŒ๋“œ ์บ์‹œ๊ฐ€ ๋‹ค๋ฅด๋ฏ€๋กœ ์†๋„ยทCPU ์‚ฌ์šฉ๋Ÿ‰์˜ ์šฐ์œ„๋กœ ์ผ๋ฐ˜ํ™”ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ ์ „์ฒด CPU ์ฆ๊ฐ€์œจ์€ ์ธก์ •ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

์‹คํ–‰ ์›๋ณธยท์„ ํƒ ๊ฑฐ์ ˆยทํšŒ๊ท€ ๊ฒ€์‚ฌ์™€ ๋ช…๋ น ์•ˆ๋‚ด๋ฅผ ํ•จ๊ป˜ ๊ณต๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๋ฅผ ๋ฐ”๊พธ๊ฑฐ๋‚˜ ์ƒˆ๋กœ ๋‚ด๋ ค๋ฐ›์ง€ ์•Š๊ณ  ๊ธฐ์กด ์ž์ฒด QAT ๋ชจ๋ธ์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.