์ธํ„ฐ์‹œ์Šคํ…œ์ฆˆ IRIS 2020.1 ์ถœ์‹œ

์ธํ„ฐ์‹œ์Šคํ…œ์ฆˆ IRIS 2020.1 ์ถœ์‹œ

3 ์›” ๋ง ๋‚˜์™”๋‹ค InterSystems IRIS 2020.1 ๋ฐ์ดํ„ฐ ํ”Œ๋žซํผ์˜ ์ƒˆ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ์ฝ”๋กœ๋‚˜ ๋ฐ”์ด๋Ÿฌ์Šค ์ „์—ผ๋ณ‘์กฐ์ฐจ๋„ ์ถœ์‹œ๋ฅผ ๋ง‰์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ ๋ฆด๋ฆฌ์Šค์—์„œ ์ค‘์š”ํ•œ ์‚ฌํ•ญ์œผ๋กœ๋Š” ํ–ฅ์ƒ๋œ ์ปค๋„ ์„ฑ๋Šฅ, OpenAPI 2.0 ์‚ฌ์–‘์— ๋”ฐ๋ฅธ REST ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒ์„ฑ, ๊ฐ์ฒด ์ƒค๋”ฉ, ์ƒˆ๋กœ์šด ์œ ํ˜•์˜ ๊ด€๋ฆฌ ํฌํ„ธ, MQTT ์ง€์›, ๋ฒ”์šฉ ์ฟผ๋ฆฌ ์บ์‹œ, ์ œํ’ˆ ์ƒ์„ฑ์„ ์œ„ํ•œ ์ƒˆ๋กœ์šด ํ”„๋ ˆ์ž„์›Œํฌ ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. Java ๋˜๋Š” .NET์˜ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ์ „์ฒด ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ชฉ๋ก๊ณผ ์˜์–ด๋กœ ๋œ ์—…๊ทธ๋ ˆ์ด๋“œ ์ฒดํฌ๋ฆฌ์ŠคํŠธ๋Š” ๋‹ค์Œ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งํฌ. ์ž์„ธํ•œ ๋‚ด์šฉ - ์ปท ์•„๋ž˜.

InterSystems IRIS 2020.1์€ ํ™•์žฅ ์ง€์› ๋ฆด๋ฆฌ์Šค์ž…๋‹ˆ๋‹ค. InterSystems๋Š” ๋‘ ๊ฐ€์ง€ ์œ ํ˜•์˜ InterSystems IRIS ๋ฆด๋ฆฌ์Šค๋ฅผ ์ƒ์‚ฐํ•ฉ๋‹ˆ๋‹ค.

  • ์ง€์†์  ์ „๋‹ฌ ๋ฆด๋ฆฌ์Šค. Docker ์ด๋ฏธ์ง€ ํ˜•ํƒœ๋กœ XNUMX๋…„์— XNUMX~XNUMXํšŒ ์ถœ์‹œ๋ฉ๋‹ˆ๋‹ค. ํด๋ผ์šฐ๋“œ ๋˜๋Š” Docker ์ปจํ…Œ์ด๋„ˆ์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ๋ฐ ๋ฐฐํฌ๋ฅผ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ํ™•์žฅ ์ง€์›์ด ํฌํ•จ๋œ ๋ฆด๋ฆฌ์Šค. ์ž์ฃผ ๋‚˜์˜ค์ง€๋Š” ์•Š์ง€๋งŒ ์ˆ˜์ • ์‚ฌํ•ญ์ด ํฌํ•จ๋œ ๋ฆด๋ฆฌ์Šค๊ฐ€ ๋ฐœํ–‰๋ฉ๋‹ˆ๋‹ค. InterSystems IRIS๊ฐ€ ์ง€์›ํ•˜๋Š” ๋ชจ๋“  ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ™•์žฅ ์ง€์› ๋ฆด๋ฆฌ์Šค 2019.1๊ณผ 2020.1 ์‚ฌ์ด์—์„œ ๋ฆด๋ฆฌ์Šค๋Š” Docker ์ด๋ฏธ์ง€(2019.2, 2019.3, 2019.4)๋กœ๋งŒ ๋ฆด๋ฆฌ์Šค๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆด๋ฆฌ์Šค์˜ ๋ชจ๋“  ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๊ณผ ์ˆ˜์ • ์‚ฌํ•ญ์€ 2020.1์— ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ๋‚˜์—ด๋œ ๊ธฐ๋Šฅ ์ค‘ ์ผ๋ถ€๋Š” 2019.2, 2019.3, 2019.4 ๋ฆด๋ฆฌ์Šค ์ค‘ ํ•˜๋‚˜์— ์ฒ˜์Œ ๋“ฑ์žฅํ–ˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ.

์‚ฌ์–‘์— ๋”ฐ๋ฅธ REST ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ

์ด์™ธ์— ์ธํ„ฐ์‹œ์Šคํ…œ์ฆˆ API ๊ด€๋ฆฌ์ž2019.1.1 ๋ฒ„์ „๋ถ€ํ„ฐ ์ง€์›๋˜๋˜ 2020.1 ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” OpenAPI 2.0 ํ˜•์‹์˜ ์‚ฌ์–‘์— ๋”ฐ๋ผ REST ์„œ๋น„์Šค์˜ ํ•ต์‹ฌ ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•ด์กŒ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์„ค๋ช…์„œ ์„น์…˜ "์„ ์ฐธ์กฐํ•˜์„ธ์š”.REST ์„œ๋น„์Šค ์ƒ์„ฑ".

Cachรฉ ๋˜๋Š” Ensemble ์„ค์น˜ ๋ณ€ํ™˜

์ด ๋ฆด๋ฆฌ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์„ค์น˜ ์ค‘์— Cachรฉ ๋˜๋Š” Ensemble ์„ค์น˜๋ฅผ InterSystems IRIS๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณ€ํ™˜ ์ž์ฒด์—๋Š” ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ, ์„ค์ • ๋˜๋Š” ๊ธฐํƒ€ ์Šคํฌ๋ฆฝํŠธ์˜ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.

๋ณ€ํ™˜ํ•˜๊ธฐ ์ „์— InterSystems IRIS In-Place ๋ณ€ํ™˜ ๊ฐ€์ด๋“œ ๋ฐ InterSystems IRIS ์ฑ„ํƒ ๊ฐ€์ด๋“œ๋ฅผ ์ฝ์–ด๋ณด์„ธ์š”. ์ด ๋ฌธ์„œ๋Š” InterSystems Worldwide Support Center ์›น์‚ฌ์ดํŠธ์˜ "์„œ๋ฅ˜".

ํด๋ผ์ด์–ธํŠธ ์–ธ์–ด

Python์šฉ InterSystems IRIS ๋„ค์ดํ‹ฐ๋ธŒ API

Python์—์„œ InterSystems IRIS๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋‹ค์ฐจ์› ๋ฐฐ์—ด์— ๋Œ€ํ•œ ๋‚ฎ์€ ์ˆ˜์ค€์˜ ๋น ๋ฅธ ์•ก์„ธ์Šค์ž…๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "Python์šฉ ๋„ค์ดํ‹ฐ๋ธŒ API".

Node.js์šฉ InterSystems IRIS ๋„ค์ดํ‹ฐ๋ธŒ API

Node.js์—์„œ InterSystems IRIS๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋‹ค์ฐจ์› ๋ฐฐ์—ด์— ๋Œ€ํ•œ ๋‚ฎ์€ ์ˆ˜์ค€์˜ ๋น ๋ฅธ ์•ก์„ธ์Šค์ž…๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "Node.js์šฉ ๋„ค์ดํ‹ฐ๋ธŒ API".

Node.js์— ๋Œ€ํ•œ ๊ด€๊ณ„ํ˜• ์•ก์„ธ์Šค

Node.js ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ InterSystems IRIS์— ๋Œ€ํ•œ ODBC ์•ก์„ธ์Šค ์ง€์›

Java ๋ฐ .NET ๊ฒŒ์ดํŠธ์›จ์ด์˜ ์–‘๋ฐฉํ–ฅ ํ†ต์‹ 

.NET ๋ฐ Java ๊ฒŒ์ดํŠธ์›จ์ด ์—ฐ๊ฒฐ์€ ์ด์ œ ์–‘๋ฐฉํ–ฅ์ž…๋‹ˆ๋‹ค. ์ฆ‰, ๊ฒŒ์ดํŠธ์›จ์ด๋ฅผ ํ†ตํ•ด IRIS์—์„œ ํ˜ธ์ถœ๋˜๋Š” .NET ๋˜๋Š” Java ํ”„๋กœ๊ทธ๋žจ์€ ๋™์ผํ•œ ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•˜์—ฌ IRIS์— ์•ก์„ธ์Šคํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "Java ๊ฒŒ์ดํŠธ์›จ์ด ์žฌ์ง„์ž…".

Java ๋ฐ .NET์šฉ ๋„ค์ดํ‹ฐ๋ธŒ API ๊ฐœ์„ 

Java ๋ฐ .NET์šฉ IRIS ๋„ค์ดํ‹ฐ๋ธŒ API๋Š” $LIST ๋ฐ ์ฐธ์กฐ๋ฅผ ํ†ตํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ „๋‹ฌ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๊ด€๋ฆฌ ํฌํ„ธ์˜ ์ƒˆ๋กœ์šด ๋ชจ์Šต

์ด ๋ฆด๋ฆฌ์Šค์—๋Š” ๊ด€๋ฆฌ ํฌํ„ธ์— ๋Œ€ํ•œ ์ฒซ ๋ฒˆ์งธ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” ์™ธ๊ด€์—๋งŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋ฉฐ ๊ธฐ๋Šฅ์—๋Š” ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

SQL

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

  • ์ด์ œ DML ์ฟผ๋ฆฌ๋ฅผ ํฌํ•จํ•˜์—ฌ ๋” ๋งŽ์€ ์ฟผ๋ฆฌ ์œ ํ˜•์„ ๋ณ‘๋ ฌํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ด์ œ ์ƒค๋”ฉ๋œ ํ…Œ์ด๋ธ”์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ์—์„œ ์•”์‹œ์  ์กฐ์ธ "->"์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

ํ†ตํ•ฉ ์˜ต์…˜

Java ๋˜๋Š” .NET์—์„œ ์ œํ’ˆ ์š”์†Œ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ƒˆ๋กœ์šด ํ”„๋ ˆ์ž„์›Œํฌ

์ด ๋ฆด๋ฆฌ์Šค์—๋Š” ์ œํ’ˆ ๊ตฌ์„ฑ ์š”์†Œ ๊ตฌํ˜„์„ ์œ„ํ•œ ์ถ”๊ฐ€ ์–ธ์–ด ์„ ํƒ์„ ์ œ๊ณตํ•˜๋Š” ์ƒˆ๋กœ์šด PEX(Production EXtension) ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ๋ฆด๋ฆฌ์Šค์—์„œ PEX๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ์„œ๋น„์Šค, ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค, ๋น„์ฆˆ๋‹ˆ์Šค ์šด์˜์€ ๋ฌผ๋ก  ์ธ๋ฐ”์šด๋“œ ๋ฐ ์•„์›ƒ๋ฐ”์šด๋“œ ์–ด๋Œ‘ํ„ฐ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด Java ๋ฐ .NET์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ์„œ๋น„์Šค์™€ ๋น„์ฆˆ๋‹ˆ์Šค ํŠธ๋žœ์žญ์…˜๋งŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์—ˆ๊ณ  ๊ด€๋ฆฌ ํฌํ„ธ์—์„œ ์ฝ”๋“œ ์ƒ์„ฑ๊ธฐ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. PEX ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์ข…์ข… ObjectScript ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์—†์ด Java ๋ฐ .NET ์ฝ”๋“œ๋ฅผ ์ œํ’ˆ ๊ตฌ์„ฑ ์š”์†Œ์— ํ†ตํ•ฉํ•˜๋Š” ๋ณด๋‹ค ์œ ์—ฐํ•œ ์ˆ˜๋‹จ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. PEX ํŒจํ‚ค์ง€์—๋Š” ๋‹ค์Œ ํด๋ž˜์Šค๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ž์„ธํ•œ ๋‚ด์šฉ์€ - "PEX: Java ๋ฐ .NET์„ ์‚ฌ์šฉํ•œ ํ”„๋กœ๋•์…˜ ๊ฐœ๋ฐœ".

์ œํ’ˆ์˜ ํฌํŠธ ์‚ฌ์šฉ๋Ÿ‰์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค.

ํ•ญ๋งŒ์ฒญ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ์„œ๋น„์Šค ๋ฐ ๋น„์ฆˆ๋‹ˆ์Šค ์šด์˜์— ์‚ฌ์šฉ๋˜๋Š” ํฌํŠธ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํฌํŠธ๋ฅผ ํ™•์ธํ•˜๊ณ  ์˜ˆ์•ฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "ํฌํŠธ ์‚ฌ์šฉ๋Ÿ‰ ๊ด€๋ฆฌ".

MQTT์šฉ ์–ด๋Œ‘ํ„ฐ

์ด ๋ฆด๋ฆฌ์Šค์—๋Š” ์‚ฌ๋ฌผ ์ธํ„ฐ๋„ท(IoT) ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” MQTT(Message Queuing Telemetry Transport) ํ”„๋กœํ† ์ฝœ์„ ์ง€์›ํ•˜๋Š” ์–ด๋Œ‘ํ„ฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "ํ”„๋กœ๋•์…˜์—์„œ MQTT ์–ด๋Œ‘ํ„ฐ ์‚ฌ์šฉ".

์ƒค๋”ฉ

๋‹จ์ˆœํ™”๋œ ์•„ํ‚คํ…์ฒ˜

์ด๋ฒˆ ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” ์ด์ „ ๋ฒ„์ „๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์˜์—ญ์ด ์•„๋‹Œ ๊ฐœ๋ณ„ ์„œ๋ฒ„(๋…ธ๋“œ ์ˆ˜์ค€)๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋” ๊ฐ„๋‹จํ•˜๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ๋ฐฉ๋ฒ•์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด API - %์‹œ์Šคํ…œ.ํด๋Ÿฌ์Šคํ„ฐ. ์ƒˆ๋กœ์šด ์ ‘๊ทผ ๋ฐฉ์‹์€ ์˜์—ญ(๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ˆ˜์ค€) ๊ธฐ๋ฐ˜ ํด๋Ÿฌ์Šคํ„ฐ์ธ ์ด์ „ ์ ‘๊ทผ ๋ฐฉ์‹๊ณผ ํ˜ธํ™˜๋˜๋ฉฐ ๊ธฐ์กด ์„ค์น˜๋ฅผ ๋ณ€๊ฒฝํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "์ƒค๋”ฉ์˜ ์š”์†Œ"๊ทธ๋ฆฌ๊ณ "์ƒค๋”ฉ API".

๊ธฐํƒ€ ์ƒค๋”ฉ ๊ฐœ์„  ์‚ฌํ•ญ:

  • ์ด์ œ ๋‘ ํ…Œ์ด๋ธ”์„ ๋ชจ๋‘ ๊ณต๋™ ์ƒค๋“œ(๋‘ ํ…Œ์ด๋ธ”์˜ ์ž์ฃผ ์—ฐ๊ฒฐ๋œ ๋ถ€๋ถ„์„ ๋™์ผํ•œ ์ƒค๋“œ์— ๋ถ„์‚ฐ)ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ๊ณตํ†ต ๋ถ„ํ•  ํ‚ค๊ฐ€ ์žˆ๋Š” ํ…Œ์ด๋ธ”์—์„œ๋งŒ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ๋ฆด๋ฆฌ์Šค๋ถ€ํ„ฐ COSHARD WITH ๊ตฌ๋ฌธ์€ ์‹œ์Šคํ…œ ID๊ฐ€ ์žˆ๋Š” ํ…Œ์ด๋ธ”์—๋„ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "ํ…Œ์ด๋ธ” ์ƒ์„ฑ"๊ทธ๋ฆฌ๊ณ "์ƒค๋”ฉ๋œ ํ…Œ์ด๋ธ” ์ •์˜".
  • ์ด์ „์—๋Š” DDL์„ ํ†ตํ•ด์„œ๋งŒ ํ…Œ์ด๋ธ”์„ ํด๋Ÿฌ์Šคํ„ฐ ํ…Œ์ด๋ธ”๋กœ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์—ˆ์ง€๋งŒ ์ด์ œ๋Š” ์ƒˆ๋กœ์šด Sharded ํ‚ค์›Œ๋“œ์ธ ํด๋ž˜์Šค ์„ค๋ช…์—์„œ๋„ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "์˜๊ตฌ ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋ถ„ํ• ๋œ ํ…Œ์ด๋ธ” ์ •์˜".
  • ์ด์ œ ๊ฐœ์ฒด ๋ชจ๋ธ์ด ์ƒค๋”ฉ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. %New(), %OpenId ๋ฐ %Save() ๋ฉ”์†Œ๋“œ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์—ฌ๋Ÿฌ ์ƒค๋“œ์— ๋ถ„์‚ฐ๋˜์–ด ์žˆ๋Š” ํด๋ž˜์Šค์˜ ๊ฐ์ฒด์™€ ํ•จ๊ป˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ๋Š” ๊ฐœ์ฒด๊ฐ€ ์ €์žฅ๋œ ์„œ๋ฒ„๊ฐ€ ์•„๋‹ˆ๋ผ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์—ฐ๊ฒฐ๋œ ์„œ๋ฒ„์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
  • ํด๋Ÿฌ์Šคํ„ฐ ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ†ตํ•ฉ ์ƒค๋“œ ๋Œ€๊ธฐ์—ด ๊ด€๋ฆฌ์ž๋Š” ๊ฐ ์š”์ฒญ์— ๋Œ€ํ•ด ์ƒˆ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๋Œ€์‹  ํ”„๋กœ์„ธ์Šค ํ’€์— ๋Œ€ํ•œ ์‹คํ–‰ ์š”์ฒญ์„ ๋Œ€๊ธฐ์—ด์— ๋„ฃ์Šต๋‹ˆ๋‹ค. ํ’€์˜ ํ”„๋กœ์„ธ์Šค ์ˆ˜๋Š” ์„œ๋ฒ„ ๋ฆฌ์†Œ์Šค ๋ฐ ๋กœ๋“œ์— ๋”ฐ๋ผ ์ž๋™์œผ๋กœ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œ์˜ ์ธํ”„๋ผ ๋ฐ ๋ฐฐํฌ.

์ด๋ฒˆ ๋ฆด๋ฆฌ์Šค์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ธํ”„๋ผ ๋ฐ ํด๋ผ์šฐ๋“œ ๋ฐฐํฌ ๊ฐœ์„  ์‚ฌํ•ญ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ํ…์„ผํŠธ ํด๋ผ์šฐ๋“œ ์ง€์›. InterSystems Cloud Manager(ICM)๋Š” ์ด์ œ Tencent Cloud์˜ InterSystems IRIS๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ธํ”„๋ผ ์ƒ์„ฑ ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐ”์ธ๋“œ ๋งˆ์šดํŠธ ์™ธ์—๋„ Docker์—์„œ ๋ช…๋ช…๋œ ๋ณผ๋ฅจ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ICM์€ ์œ ์—ฐํ•œ ํ™•์žฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ ๊ตฌ์„ฑ์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ๋” ๋งŽ๊ฑฐ๋‚˜ ์ ์€ ๋…ธ๋“œ๋กœ ๋‹ค์‹œ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "์ธํ”„๋ผ ์žฌํ”„๋กœ๋น„์ €๋‹"๊ทธ๋ฆฌ๊ณ "์„œ๋น„์Šค ์žฌ๋ฐฐํฌ".
  • ์ž์‹ ๋งŒ์˜ ์ปจํ…Œ์ด๋„ˆ ์ƒ์„ฑ ๊ธฐ๋Šฅ์ด ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ICM์€ ์ƒˆ๋กœ์šด ์ƒค๋”ฉ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ์ปจํ…Œ์ด๋„ˆ์˜ ๊ธฐ๋ณธ ์‚ฌ์šฉ์ž๋Š” ๋” ์ด์ƒ ๋ฃจํŠธ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.
  • ICM์€ ์š”์ƒˆ ๋…ธ๋“œ๊ฐ€ ๊ฐœ์ธ ๋„คํŠธ์›Œํฌ๋ฅผ ๊ณต์šฉ ๋„คํŠธ์›Œํฌ์— ์—ฐ๊ฒฐํ•˜๊ณ  ์„œ๋น„์Šค ๊ฑฐ๋ถ€ ๊ณต๊ฒฉ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ๋ณดํ˜ธ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฐœ์ธ ๋„คํŠธ์›Œํฌ์˜ ์ƒ์„ฑ ๋ฐ ๋ฐฐํฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ณด์•ˆ RPC๋ฅผ ํ†ตํ•œ ์„œ๋น„์Šค ๊ฒ€์ƒ‰์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ICM์€ ๋‹ค์ค‘ ์ง€์—ญ ๋ฐฐํฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ „์ฒด ์ง€์—ญ์ด ๋‹ค์šด๋˜๋”๋ผ๋„ ๋†’์€ ์‹œ์Šคํ…œ ๊ฐ€์šฉ์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.
  • ICM์„ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ์ด๋ฏธ ๋ฐฐํฌ๋œ ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๋Š” ๊ธฐ๋Šฅ.
  • ์ปจํ…Œ์ด๋„ˆ๋ฆฌ์Šค ๋ชจ๋“œ - ICM์€ ์ด์ œ ์ปจํ…Œ์ด๋„ˆ ์—†์ด ์ง์ ‘ Google Cloud Platform์— ํด๋Ÿฌ์Šคํ„ฐ ๊ตฌ์„ฑ์„ ๋ฐฐํฌํ•˜๊ณ  Ubuntu ๋˜๋Š” SUSE์— Web Gateway๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋‘ ํŒŒ์ผ์˜ iris.cpf ๋ณ‘ํ•ฉ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ICM์ด ์„ค์น˜๊ฐ€ ์‹คํ–‰๋˜๋Š” ๋ชจ๋“œ์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ์„ค์ •์œผ๋กœ InterSystems IRIS๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด Kubernetes์™€ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ๊ตฌ์„ฑ ๊ด€๋ฆฌ ๋„๊ตฌ๋ฅผ ๋” ์‰ฝ๊ฒŒ ์ž๋™ํ™”ํ•˜๊ณ  ์ง€์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์›น ๋กœ๊ทธ ๋ถ„์„

์„ ํƒ์ ์œผ๋กœ ํ๋ธŒ๋ฅผ ๋‹ค์‹œ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฒˆ ๋ฆด๋ฆฌ์Šค๋ถ€ํ„ฐ InterSystems IRIS Business Intelligence(์ด์ „์˜ DeepSee)๋Š” ํ•˜๋‚˜์˜ ์ธก์ •๊ฐ’ ๋˜๋Š” ์ฐจ์›๋งŒ ์„ ํƒ์  ํ๋ธŒ ๊ตฌ์ถ•์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ํ๋ธŒ ์„ค๋ช…์„ ๋ณ€๊ฒฝํ•˜๊ณ  ๋ณ€๊ฒฝ๋œ ๋‚ด์šฉ๋งŒ ๋‹ค์‹œ ์ž‘์„ฑํ•˜์—ฌ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๋™์•ˆ ์ „์ฒด ํ๋ธŒ๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

PowerBI ์ปค๋„ฅํ„ฐ

์ด์ œ Microsoft PowerBI๋Š” InterSystems IRIS ํ…Œ์ด๋ธ” ๋ฐ ํ๋ธŒ ์ž‘์—…์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ปค๋„ฅํ„ฐ๋Š” 2019๋…„ XNUMX์›” ๋ฆด๋ฆฌ์Šค๋ถ€ํ„ฐ PowerBI์™€ ํ•จ๊ป˜ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ - "Power BI์šฉ InterSystems IRIS ์ปค๋„ฅํ„ฐ".

์ฟผ๋ฆฌ ๊ฒฐ๊ณผ ๋ฏธ๋ฆฌ๋ณด๊ธฐ

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

๊ธฐํƒ€ ๊ฐœ์„  ์‚ฌํ•ญ

  • $ORDER ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ญ์ˆœ(๋ฐฉํ–ฅ = -1)์œผ๋กœ ์ „์—ญ์„ ํƒ์ƒ‰ํ•˜๋Š” ์†๋„๊ฐ€ ์ด์ œ ์ •๋ฐฉํ–ฅ ์ˆœ์„œ๋งŒํผ ๋น ๋ฆ…๋‹ˆ๋‹ค.
  • ๋กœ๊น… ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Apache Spark 2.3, 2.4์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • WebSocket ํด๋ผ์ด์–ธํŠธ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํด๋ž˜์Šค %Net.WebSocket.Client.
  • ๋ฒ„์ „ ์ œ์–ด ํด๋ž˜์Šค๋Š” ์ด์ œ ์ œํ’ˆ ํŽ˜์ด์ง€ ๋ณ€๊ฒฝ์— ๋Œ€ํ•œ ์ด๋ฒคํŠธ๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • CSP, ZEN ๋ฐ REST์— ๋Œ€ํ•œ ์œ ํšจํ•œ ์š”์ฒญ์„ ํ•„ํ„ฐ๋งํ•˜๋Š” ํ™”์ดํŠธ๋ฆฌ์ŠคํŠธ์ž…๋‹ˆ๋‹ค.
  • .NET Core 2.1 ์ง€์›.
  • ODBC ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • message.log ๋ถ„์„์„ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๋Š” ๊ตฌ์กฐํ™”๋œ ๋กœ๊ทธ์ž…๋‹ˆ๋‹ค.
  • ์˜ค๋ฅ˜ ํ™•์ธ ๋ฐ ๊ฒฝ๊ณ ๋ฅผ ์œ„ํ•œ API์ž…๋‹ˆ๋‹ค. ํด๋ž˜์Šค %SYSTEM.Monitor.GetAlerts().
  • ์ด์ œ ํด๋ž˜์Šค ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ์Šคํ† ๋ฆฌ์ง€ ์„ ์–ธ์˜ ์ „์—ญ ์ด๋ฆ„์ด ์ตœ๋Œ€ ๊ธธ์ด(31์ž)๋ฅผ ์ดˆ๊ณผํ•˜์ง€ ์•Š๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์ดˆ๊ณผํ•˜์ง€ ์•Š์œผ๋ฉด ์˜ค๋ฅ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ์ „์—ญ ์ด๋ฆ„์ด ๊ฒฝ๊ณ  ์—†์ด 31์ž๋กœ ์ž˜๋ ธ์Šต๋‹ˆ๋‹ค.

์–ป์„ ์ˆ˜์žˆ๋Š” ๊ณณ

์ง€์›์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์„น์…˜์—์„œ ๋ฐฐํฌํŒ์„ ๋‹ค์šด๋กœ๋“œํ•˜์„ธ์š”. ์˜จ๋ผ์ธ ๋ฐฐํฌ ์›น์‚ฌ์ดํŠธ wrc.intersystems.com

InterSystems IRIS๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด๊ณ  ์‹ถ๋‹ค๋ฉด - https://www.intersystems.com/ru/try-intersystems-iris-for-free/

Docker๋ฅผ ํ†ตํ•ด ๋”์šฑ ์‰ฝ๊ฒŒ:

docker run --name iris20 --init --detach --publish 51773:51773 --publish 52773:52773 store/intersystems/iris-community:2020.1.0.215.0

์„ธ๋ฏธ๋‚˜

๋ชจ์Šคํฌ๋ฐ” ์‹œ๊ฐ„์œผ๋กœ 7์›” 17์ผ 00์‹œ์— ์ƒˆ ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•œ ์›น ์„ธ๋ฏธ๋‚˜๊ฐ€ ์—ด๋ฆด ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. Jeff Fried(์ œํ’ˆ ๊ด€๋ฆฌ ์ด์‚ฌ)์™€ Joe Lichtenberg(์ œํ’ˆ ๋ฐ ์‚ฐ์—… ๋งˆ์ผ€ํŒ… ์ด์‚ฌ)๊ฐ€ ์ฃผ์ตœํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋“ฑ๋กํ•˜๋‹ค! ์›จ๋น„๋‚˜๋Š” ์˜์–ด๋กœ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€