๋„์ „ ๊ณผ์ œ

๋ชฝ๊ณ DB์™€ ์นด์šฐ์น˜๋ฒ ์ด์Šค ๋น„๊ต

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

๊ธฐ๋Šฅ

Couchbase์™€ MongoDB์˜ ์ฃผ์š” ๊ธฐ๋Šฅ ๋น„๊ต

  • ํฌํ•จ๋œ ๋‚ด์šฉ
  • JSON ์œ ์—ฐ์„ฑ
  • ๋‚ด์žฅ ์บ์‹œ
  • ๋ชจ๋ฐ”์ผ, ์—ฃ์ง€ ๋ฐ P2P ๋™๊ธฐํ™”
  • SQL
  • ๊ธฐ๋ณธ ์ „์ฒด ํ…์ŠคํŠธ ๊ฒ€์ƒ‰
  • ๋„ค์ดํ‹ฐ๋ธŒ ๋ฒกํ„ฐ ๊ฒ€์ƒ‰
  • XDCR ๋งˆ์Šคํ„ฐ-๋งˆ์Šคํ„ฐ ๋ณต์ œ
  • ์ž๋™ ์ƒค๋”ฉ
  • ๋งˆ์Šคํ„ฐ๋ฆฌ์Šค ๊ณต์œ -๋ฌด๊ณต์œ  ์•„ํ‚คํ…์ฒ˜
  • ์‚ฐ ๊ฑฐ๋ž˜
  • ๋‹ค์ฐจ์› ์Šค์ผ€์ผ๋ง
  • ๋ชจ๋ฐ”์ผ์—์„œ ๋ฒกํ„ฐ ๊ฒ€์ƒ‰
  • ์ปฌ๋Ÿผํ˜• ์Šคํ† ๋ฆฌ์ง€ ์—”์ง„
  • ๋ฉ€ํ‹ฐ์†Œ์Šค, ์ œ๋กœ-ETL ์ˆ˜์ง‘
  • ์†Œ์Šค ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์“ฐ๊ธฐ-๋ฐฑ, ์‹ค์‹œ๊ฐ„ ๋ถ„์„
  • ์นด์šฐ์น˜๋ฒ ์ด์Šค
  • MongoDB
  • BSON
  • ๊ธฐ๋ณธ ๋™๊ธฐํ™”, ๋ณต์žกํ•œ ๋ฌธ์ œ, ํ”ผ์–ด ํˆฌ ํ”ผ์–ด ๋™๊ธฐํ™” ์—†์Œ
  • ๋ฃจ์”ฌ ๊ธฐ๋ฐ˜์ด๋ฉฐ Atlas์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
๊ณ ๊ฐ

๊ณ ๊ฐ์˜ ์˜๊ฒฌ

  • "๋งค์šฐ ํฐ ๊ทœ๋ชจ์—์„œ๋„ Couchbase์˜ ์‘๋‹ต ์‹œ๊ฐ„์€ 500๋งˆ์ดํฌ๋กœ์ดˆ๋กœ ๋งค์šฐ ์ผ๊ด€๋˜๊ฒŒ ์œ ์ง€๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค."
    ๊ธฐ์ˆ  ๋ฆฌ๋“œ, Cisco
    100B+ ์—ฐ๊ฐ„ ์‚ฌ์šฉ์ž ์„ธ์…˜ ์ˆ˜
    500 ๋งˆ์ดํฌ๋กœ์ดˆ ์‘๋‹ต ์‹œ๊ฐ„
  • "ํŠนํžˆ ๋Œ€๊ทœ๋ชจ ์›Œํฌ๋กœ๋“œ์—์„œ Couchbase์˜ ๋ฐ์ดํ„ฐ์„ผํ„ฐ ๊ฐ„ ๋ณต์ œ ๊ธฐ์ˆ ์ด ์šฐ์ˆ˜ํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."
    ํด๋ผ์šฐ์Šค ๋ชฐํŠธ, CIO, FICO
    <1 ms ์‘๋‹ต ์‹œ๊ฐ„
    24x365 ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ€๋™ ์‹œ๊ฐ„
  • "์„œ๋ฒ„๋ฅผ ์ ˆ๋ฐ˜ ์ดํ•˜๋กœ ์ค„์ž„์œผ๋กœ์จ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒํ•˜๊ณ  ํ›จ์”ฌ ๋” ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค."
    ์•„๋ฏธ๋ฅด ์ด์‰ฌ ์ƒฌ๋กฌ, ์šด์˜ ๋‹ด๋‹น ์ˆ˜์„ ์ด์‚ฌ, Viber
    15 ํ•˜๋ฃจ 10์–ต ๊ฑด์˜ ํ†ตํ™” ๋ฐ ๋ฉ”์‹œ์ง€ ์ด๋ฒคํŠธ
    60% ์ด ์„œ๋ฒ„ ์ˆ˜ ๊ฐ์†Œ
์ฝ”๋“œ ์Šค๋‹ˆํŽซ

Couchbase SQL++์™€ MongoDB์˜ MQL์—์„œ ๋™๋“ฑํ•œ ์ฟผ๋ฆฌ ๋น„๊ต


/* equivalent to the Mongo example */
SELECT SUM(value * volume) AS val, symbol
FROM   db.stocks
WHERE  symbol IN ( "AAPL", "GOOG" ) AND value > 0
GROUP  BY symbol
ORDER  BY val DESC, symbol ASC


// equivalent to the SQL++ example
db.stocks.aggregate([
	 { "$match": {
	 	 "$and": [
	 	 	 {"symbol": {
	 	 	 	 "$in": [
	 	 	 	 "AAPL",
	 	 	 	 "GOOG"]}},
	 	 	 { "value": {
	 	 	 "$gt": 0 }}]}},
	 { "$group": {
	 	 "_id": {
	 	 	 "symbol": "$symbol" },
	 	 "sum(value * volume)": {
	 	 	 "$sum": {
	 	 	 	 "$multiply": [
	 	 	 	 	 "$value",
	 	 	 	 	 "$volume"]}}}},
	 { "$project": {
	 	 "_id": 0,
	 	 "sum(value * volume)": "$sum(value * volume)",
	 	 "symbol": "$_id.symbol"}}
	 { "$sort": {
	 	 "sum(value * volume)": -1,
	 	 "symbol": 1 }}]})

DBaaS ์„ฑ๋Šฅ ๋ณด๊ณ ์„œ

DBaaS ์„ฑ๋Šฅ ๋ณด๊ณ ์„œ์—์„œ Atlas์™€ Capella์˜ ๋น„๊ต๋ฅผ ํ™•์ธํ•˜์„ธ์š”.

๊ตฌ์ถ• ์‹œ์ž‘

๊ฐœ๋ฐœ์ž ํฌํ„ธ์—์„œ NoSQL์„ ์‚ดํŽด๋ณด๊ณ , ๋ฆฌ์†Œ์Šค๋ฅผ ์ฐพ์•„๋ณด๊ณ , ํŠœํ† ๋ฆฌ์–ผ์„ ์‹œ์ž‘ํ•˜์„ธ์š”.

์ง€๊ธˆ ๊ฐœ๋ฐœํ•˜๊ธฐ
์นดํŽ ๋ผ ์ฒดํ—˜ํ•˜๊ธฐ

ํด๋ฆญ ๋ช‡ ๋ฒˆ์œผ๋กœ Couchbase๋ฅผ ์ง์ ‘ ์ฒดํ—˜ํ•ด ๋ณด์„ธ์š”. Capella DBaaS๋Š” ๊ฐ€์žฅ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

๋ฌด๋ฃŒ ์ฒดํ—˜
๋ฌด๋ฃŒ ์•„์นดํŽ ๋ผ ํ…Œ์ŠคํŠธ ๋“œ๋ผ์ด๋ธŒ์— ์ฐธ์—ฌํ•˜์„ธ์š”

์ „๋‹ด ๊ฐ•์‚ฌ์™€ ํ•จ๊ป˜ 90๋ถ„ ์•ˆ์— ์นด์šฐ์น˜๋ฒ ์ด์Šค ์ž๊ฒฉ์ฆ ์ทจ๋“ ์—ฌ์ •์„ ์‹œ์ž‘ํ•˜์„ธ์š”.

์‹œ์ž‘ํ•˜๊ธฐ