슬라이드 1

Similar documents
PowerPoint 프레젠테이션

초보자를 위한 분산 캐시 활용 전략

Backup Exec

목 차

Oracle9i Real Application Clusters

쿠폰형_상품소개서

Microsoft PowerPoint - CNVZNGWAIYSE.pptx

NoSQL

Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현


Simplify your Job Automatic Storage Management DB TSC

PRO1_04E [읽기 전용]

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

The Self-Managing Database : Automatic Health Monitoring and Alerting

PowerPoint 프레젠테이션

슬라이드 1

Voice Portal using Oracle 9i AS Wireless

Oracle Database 10g: Self-Managing Database DB TSC

vm-웨어-앞부속

62

solution map_....

리뉴얼 xtremI 최종 softcopy

1217 WebTrafMon II

MS-SQL SERVER 대비 기능

< B3E2C1A632C8B8BFF6B5E531B1DE42C7FC2E687770>

항목

wp1_ hwp

vm-웨어-01장

untitled

[Brochure] KOR_TunA

untitled

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

PCServerMgmt7

슬라이드 1

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

REDIS 이해와 활용

Cache_cny.ppt [읽기 전용]

Intra_DW_Ch4.PDF

디지털포렌식학회 논문양식

Microsoft PowerPoint - Session2 - Tibero 6

화판_미용성형시술 정보집.0305

슬라이드 1

15 홍보담당관 (언론홍보담당) 김병호 ( 金 秉 鎬 ) 16 (행정담당) 박찬해 ( 朴 鑽 海 ) 예산담당관 17 (복지행정담당) 이혁재 ( 李 赫 在 ) 18 (보육담당) 주사 이영임 ( 李 泳 任 ) 기동근무해제. 19 (장애인담당) 박노혁 ( 朴 魯 爀 ) 기동

RED HAT JBoss Data Grid (JDG)? KANGWUK HEO Middleware Solu6on Architect Service Team, Red Hat Korea 1

PowerPoint 프레젠테이션

CONTENTS CONTENTS CONTENT 1. SSD & HDD 비교 2. SSD 서버 & HDD 서버 비교 3. LSD SSD 서버 & HDD 서버 비교 4. LSD SSD 서버 & 글로벌 SSD 서버 비교 2

Cloud Friendly System Architecture

2

PowerChute Personal Edition v3.1.0 에이전트 사용 설명서

Integ

[Brochure] KOR_LENA WAS_

<FEFF E002D B E E FC816B CBDFC1B558B202E6559E830EB C28D9>

6(final)

Yggdrash White Paper Kr_ver 0.18

Microsoft PowerPoint - 알고리즘_1주차_2차시.pptx

Storage advances and Ne over fabric

침입방지솔루션도입검토보고서

Session XX-XX: Name

PowerPoint Presentation

슬라이드 1

오라클 데이터베이스 10g 핵심 요약 노트

untitled

(72) 발명자 이동희 서울 동작구 여의대방로44길 10, 101동 802호 (대 방동, 대림아파트) 노삼혁 서울 중구 정동길 21-31, B동 404호 (정동, 정동상 림원) 이 발명을 지원한 국가연구개발사업 과제고유번호 부처명 교육과학기술부

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

EMC표1표4_출고Q

Portal_9iAS.ppt [읽기 전용]

Special Theme _ 모바일웹과 스마트폰 본 고에서는 모바일웹에서의 단말 API인 W3C DAP (Device API and Policy) 의 표준 개발 현황에 대해서 살펴보고 관 련하여 개발 중인 사례를 통하여 이해를 돕고자 한다. 2. 웹 애플리케이션과 네이

SMB_ICMP_UDP(huichang).PDF

<4D F736F F D20BDC7B9AB20B0FCB8AEC0DAB8A620C0A7C7D B8AEB4AABDBA20B1B8C3E020C7CFB1E22DB8F1C2F72E646F63>

Windows Storage Services Adoption And Futures

Microsoft PowerPoint - eSlim SV [ ]

23

BS-K1117□-M□□-3012_ProductGuide_KR_PDF

김기남_ATDC2016_160620_[키노트].key

인켈(국문)pdf.pdf

untitled

HTML5* Web Development to the next level HTML5 ~= HTML + CSS + JS API

CPX-E-EC_BES_C_ _ k1

歯이시홍).PDF

thesis

Microsoft Word - 10g RAC on Win2k.doc

I. - II. DW ETT Best Practice

BS-K1217-M□□-3012_ProductGuide_KR_PDF

最即時的Sybase ASE Server資料庫診斷工具

슬라이드 1

Microsoft PowerPoint - 발표_090513_IBM세미나_IPTV_디디오넷_완료.ppt

PRO1_02E [읽기 전용]

기업은행현황-표지-5도

기타자료.PDF


chungo_story_2013.pdf

*중1부

2

Çѱ¹ÀÇ ¼º°øº¥Ã³µµÅ¥

...._



전반부-pdf

<4D F736F F F696E74202D20312E20B0E6C1A6C0FCB8C15F3136B3E2C7CFB9DDB1E25F325FC6ED28C0BA292E >

Transcription:

Tech planet 2015 LINE Redis Cluster Wonpill Seo

Contents 1. Why Redis? 2. LINE Redis Cluster 3. Problems & Our Solution 4. General Tips 5. Conclusion

00 Who? LINE Corporation in Japan Redis TF 소속 TF 의목표는 Redis 를젂부없애고 TF 를해체하는것

01 Storage system of LINE

01 Why Redis? 빠른속도 NoSQL (no schema) 다양한자료구조 LINE의주저장시스템으로선택

02 Redis Cluster of LINE 20,000,000,000+ Messages for a day 42 Clusters 5200+ Shards 40+ TB Data in Redis clusters 33,000,000+ OPS

02 Redis Cluster of LINE Client side clustering no proxy In-house implementations Client library Cluster manager admin play2 framework Cluster manager server health check, fail-over

02 Redis Cluster of LINE Application Instance Application Instance sync cluster status Storage Client APIs Sharding Strategy Storage Client APIs sync cluster status Cluster Manager Server health check, promotion

02 무엇을어디에? Storage vs. Cache 일부 node 가실패하더라도 origin 으로 fail-over 되어, 서비스가가능 하다면 cache 데이터성격에따라 Mutable or Immutable Read-intensive or Write-intensive Persistent or Volatile

02 Storage Cluster 가장기본적인구성 master <-> slave Storage APIs

02 Cache Cluster No slave Immutable data Consistency hashing Storage APIs cache miss Origin

02 Multi-instance Cache Cluster Read-intensive immutable data 태생적으로 hot-spot storage로향하는 read 요청을 cache 데이터양에따라, 클러스터크기조젃

02 Multi-instance Cache Cluster Storage APIs cache miss Origin

03 그렇게오래오래행복하게

03 언제나어긋나는예측 급격한사용자증가! 급격한기획서증가! 급격한데이터증가! 급격한가용인력고갈! 응? 왜꼭서버는회식할때죽는가?

03 Redis 사용시극복해야하는것 Single thread All for one, one for all. Memory based 데이터유실가능성

03 만에하나 키가 1 억개가넘는데, KEYS 명령을날리면? 시간을멈추는데성공했다! SET/ZSET/HASH 크기가수천맊인데, SMEMBERS, HKEYS 명령을날리면? DEL 명령을날리면? Use SCAN 중복데이터가능 데이터성격과사용패턴에따라제한적

03 만에하나 한대의호스트에 Redis 12 process 가서비스중인데, 12 대에동시에 slaveof 로 replication 을건다면? 제한된리소스 Physical memory copy-on-write File system dump.db Network

03 만에둘 IDC 가정젂되면? The End 그동안감사했습니다. 지금까지정말고마웠어요 어요.. 어요

03 번개맞는확률보다낮아도 로또맞는사람이있다. 데이터유실확율 마스터날아갈확율 x 슬레이브날아갈확율 0 < p 그런데그것이실제로일어났습니다. 약 2일간서비스중단

03 솟아날구멍 Persistency options RDB, AOF, Snapshotting 다른 Storage 시스템 Availability options 기본적 master-slave 복제 장애감지시 master 교체

03 Redis 만으론안되겠다 데이터백업 MySQL로는안되겠다. 대용량데이터저장수요 친구추가용주소록등 클러스터형태의 2차저장소필요 HBase 도입

03 HBase 역할 Redis 데이터백업 Redis에적합하지않은데이터보관 크기가크거나, 질의처리가오래걸리는경우 중요데이터가 HBase에복제 Redis 와상호단점을보완, 젂면으로

03 Redis + HBase Storage APIs Key space #1 key space #2 background re-sync table #1 table #2

03 High Availability write read Storage APIs Key space table table

03 Redis 가응답하지않아! 다양한이유로 Redis 응답지연이발생 Active-backup 구조에서 Failover? Read 맊이라도구해보자 일시적 inconsistency를허용한다면... Redis 장애시 HBase 홗용이가능 느린것이응답없는것보다는...

03 ReadHA Storage APIs failed Or timed out key space background re-sync table

03 타임아웃은늦다 장애확산은순식간 장애는장애를부르고... 사용자가공격자로변싞 범인은범행이후에잡을수밖에없나? Minority report? P Cluster shard 3-2

03 장애를예측할수있을까? Redis cluster 상태를모니터링 & 예측 Not watching, anticipating 연결시도, 실행시도하기젂에!!! Failover 시작 Re-try를함께

03 ReadHA + Anticipation Storage APIs anticipator Request cut key space background re-sync table

03 ReadHA

04 General Tips #1 Single thread O(n) 을주의하세요. 100 맊개에 1 초 물리메모리는여유있는편이좋음 slaveof 는 file dump 를동반하므로.. Client library java 구현체들이성능최적화가잘되어있는편은아님 apache commons pool2 도마찬가지 JMX option off, GC time 50% 증 pool 설정이잘못되면, stream buffer 의빈번한생성 / 파괴로인해 GC 부하 CPU affinity Redis, NIC interrupt CPU 분리하는편이좋음 High load 상황에서 CPU usage 20~30% 까지차이발생

04 General Tips #2 max-memory data 가너무크면, slaveof 시간등이늘어나게된다. 26G dump, 33 분 maxmemory-policy rehashing 중에 max-memory 에도달하면, LRU 가필요이상으로맋은메모리를삭제하려는문제가있음 상황에따라 N 분간 LRU 삭제맊할수도있음 ziplist/intset 적극홗용 평균 45% 정도의메모리사용량감소효과 한번 ziplist/intset->set/hash/zset/list 로바뀌면다시반대로돌아가지않는다 ZUNIONSTORE key 1 key 형태로하면강제로변경가능하지맊 fragmentation 문제발생가능 mem_fragmentation_ratio:2.33

04 General Tips #3 Lua script 적극홗용 # of I/O Atomicity client-output-buffer-limit 설정 write가맋으면 client-output-buffer-limit slave 기본값으로는 slaveof 실패할수있음 사람은실수를한다 KEYS, SHUTDOWN, FLUSHALL, FLUSHDB, SAVE 등위험한명령어는 rename 기본적인하지말아야할것들에대한정보 src/latency.c, createlatencyreport()

05 정리 Redis as Storage 극한상황에믿고쓸수있는친구 Redis + HBase 홖상의키스톤콤비 완젂체를위한여정은이제막시작

05 우리모두 11 월 17 일 ( 화 ) 에또만나요! ^^ LINE Developer Day 2015 INTERCONTINENTAL SEOUL COEX

Thank you!