ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Redis ๋ ˆ๋””์Šค] Redis ์„ค์น˜ ๋ฐ ๊ธฐ๋ณธ ๋ช…๋ น์–ด
    ํ™˜๊ฒฝ 2022. 7. 5. 14:35

    ๐Ÿ“Œ Redis๋ž€

    NoSQL์˜ ์ข…๋ฅ˜ ์ค‘ ํ•˜๋‚˜๋กœ ๋ฉ”๋ชจ๋ฆฌ ๊ธฐ๋ฐ˜ Key-Value Storage ํ˜• ๊ตฌ์กฐ์˜ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ด๋‹ค. ์‹œ์Šคํ…œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํŠน์ง•์ด ์žˆ์œผ๋ฉฐ, ๋ฌธ์„œํ˜• NoSQL์ธ MongoDB ๋ณด๋‹ค ๋น ๋ฅด๊ณ  ๊ฐ€๋ณ๊ฒŒ ๋™์ž‘ํ•˜๋ฉฐ I/O๊ฐ€ ์ˆ˜์‹œ๋กœ ๋ฐœ์ƒํ•˜๋Š” (์บ์‹œ, ์ธ์ฆ ํ† ํฐ, ์„ธ์…˜ ๊ด€๋ฆฌ ๋“ฑ๋“ฑ) ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ ๊ธฐ๋ฐ˜์ด๋ฏ€๋กœ ํ•˜๋‚˜์˜ ๋ช…๋ น์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค๋ฉด ์ด๋Š” ์ ํ•ฉํ•˜์ง€ ์•Š๋‹ค. 

     

    NoSQL์˜ ์ข…๋ฅ˜

    • ํ‚ค-๋ฐธ๋ฅ˜ ์Šคํ† ๋ฆฌ์ง€ํ˜•: Redis, memcached, Coherence
    • ์—ด ์ง€ํ–ฅ ์™€์ด๋“œ ์ปฌ๋Ÿผ ์Šคํ† ์–ด: Cassandra, HBASE, Cloud Database
    • ๋ฌธ์„œํ˜•: MongoDB, Couchbase, MarkLogic, DynamicDB MS-DocumentDB

     

    Redis ๋‹ค์šด๋กœ๋“œ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜์—ฌ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋‹ค์šด๋กœ๋“œํ•œ๋‹ค.

     

    ๋‹ค์šด๋กœ๋“œํ•œ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰์‹œ์ผœ ์ง„ํ–‰(Next) ํ•œ๋‹ค.

     

     

    ์„ค์น˜ํ•  ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•œ๋‹ค.

     

     

    ํฌํŠธ๋ฅผ ์ง€์ •ํ•œ๋‹ค. ๊ธฐ๋ณธ ํฌํŠธ: 6379

     

     

    ์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ์ž๋™์œผ๋กœ ์‹คํ–‰๋˜๋ฉฐ ์ž‘์—… ๊ด€๋ฆฌ์ž(Window ํ‚ค + ์ž‘์—…) ์„œ๋น„์Šค ํƒญ์—์„œ ํ™•์ธ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

     

    ์„ค์น˜๊ฒฝ๋กœ ํ™•์ธ

    ์„ค์น˜๊ฒฝ๋กœ๋กœ ์ด๋™ํ•˜์—ฌ redis-cli.exe์„ ์‹คํ–‰์‹œํ‚จ๋‹ค.

     

     

    redis-cli.exe

    ping ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ํ™•์ธ(PONG)์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

    set ๋ช…๋ น์–ด๋กœ ๋ฐ์ดํ„ฐ๋ฅผ key-value ํ˜•ํƒœ๋กœ ์ž…๋ ฅ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ get์œผ๋กœ ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    ๋ช…๋ น์–ด(Command)

    ์ €์žฅ
    ๋ช…๋ น์–ด  ์„ค๋ช…
    set key value key, value ์ €์žฅ
    mset key value [key value...] ์—ฌ๋Ÿฌ ๊ฐœ์˜ key, value ๋ฅผ ํ•œ๋ฒˆ์— ์ €์žฅ
    setex key seconds value key, seconds, value ์ €์žฅ (์„ค์ •ํ•œ ์‹œ๊ฐ„ *seconds ๋’ค์— ์†Œ๋ฉธ)

     

     ์กฐํšŒ
    ๋ช…๋ น์–ด  ์„ค๋ช…
    keys * ํ˜„์žฌ ์ €์žฅ๋œ ํ‚ค๊ฐ’๋“ค์„ ๋ชจ๋‘ ํ™•์ธ (๋ถ€ํ•˜๊ฐ€ ์‹ฌํ•œ ๋ช…๋ น์–ด๋ผ ์šด์˜์ค‘์ธ ์„œ๋น„์Šค์—์„  ์ ˆ๋Œ€ ์‚ฌ์šฉํ•˜์ง€ ๋ง๊ฒƒ)
    get key ์ง€์ •ํ•œ key ์— ํ•ด๋‹นํ•˜๋Š” value ๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค
    mget key [key...] ์—ฌ๋Ÿฌ ๊ฐœ์˜ key ์— ํ•ด๋‹นํ•˜๋Š” value ๋ฅผ ํ•œ๋ฒˆ์— ๊ฐ€์ ธ์˜จ๋‹ค
    ttl key key ์˜ ๋งŒ๋ฃŒ ์‹œ๊ฐ„์„ ์ดˆ ๋‹จ์œ„๋กœ ๋ณด์—ฌ์ค€๋‹ค (-1 ์€ ๋งŒ๋ฃŒ์‹œ๊ฐ„ ์—†์Œ, -2 ๋Š” ๋ฐ์ดํ„ฐ ์—†์Œ)
    pttl key key ์˜ ๋งŒ๋ฃŒ ์‹œ๊ฐ„์„ ๋ฐ€๋ฆฌ์ดˆ ๋‹จ์œ„๋กœ ๋ณด์—ฌ์ค€๋‹ค
    type key ํ•ด๋‹น key ์˜ value ํƒ€์ž… ํ™•์ธ

     

    ์‚ญ์ œ
    ๋ช…๋ น์–ด  ์„ค๋ช…
    del key [key...] ํ•ด๋‹น key ๋“ค์„ ์‚ญ์ œ

     

    ์ˆ˜์ •
    ๋ช…๋ น์–ด  ์„ค๋ช…
    rename key newKey key ์ด๋ฆ„ ๋ณ€๊ฒฝ
    expire key seconds ํ•ด๋‹น ํ‚ค ๊ฐ’์˜ ๋งŒ๋ฃŒ ์‹œ๊ฐ„ ์„ค์ •

     

    ๊ธฐํƒ€
    ๋ช…๋ น์–ด  ์„ค๋ช…
    randomkey ๋žœ๋คํ•œ key ๋ฐ˜ํ™˜
    ping ์—ฐ๊ฒฐ ์—ฌ๋ถ€ ํ™•์ธ ("ping" ๋งŒ ์ž…๋ ฅํ•˜๋ฉด "PONG" ์ด๋ผ๋Š” ์‘๋‹ต์ด ์˜ด)
    dbsize ํ˜„์žฌ ์‚ฌ์šฉ์ค‘์ธ DB ์˜ key ์˜ ๊ฐฏ์ˆ˜ ๋ฆฌํ„ด
    flushall ๋ ˆ๋””์Šค ์„œ๋ฒ„์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ ์‚ญ์ œ
    flushdb ํ˜„์žฌ ์‚ฌ์šฉ์ค‘์ธ DB ์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ ์‚ญ์ œ

     

    ๋Œ“๊ธ€

Designed by Tistory.