KEMBAR78
Daftar
Login
Let's Play with Data Safely | PDF
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Dataya Nolja
91 views
Let's Play with Data Safely
데이터야놀자 2017
Data & Analytics
◦
Read more
0
Save
Share
Embed
Download
Download to read offline
1
/ 70
2
/ 70
3
/ 70
4
/ 70
5
/ 70
6
/ 70
7
/ 70
8
/ 70
9
/ 70
10
/ 70
11
/ 70
12
/ 70
13
/ 70
14
/ 70
15
/ 70
16
/ 70
17
/ 70
18
/ 70
19
/ 70
20
/ 70
21
/ 70
22
/ 70
23
/ 70
24
/ 70
25
/ 70
26
/ 70
27
/ 70
28
/ 70
29
/ 70
30
/ 70
31
/ 70
32
/ 70
33
/ 70
34
/ 70
35
/ 70
36
/ 70
37
/ 70
38
/ 70
39
/ 70
40
/ 70
41
/ 70
42
/ 70
43
/ 70
44
/ 70
45
/ 70
46
/ 70
47
/ 70
48
/ 70
49
/ 70
50
/ 70
51
/ 70
52
/ 70
53
/ 70
54
/ 70
55
/ 70
56
/ 70
57
/ 70
58
/ 70
59
/ 70
60
/ 70
61
/ 70
62
/ 70
63
/ 70
64
/ 70
65
/ 70
66
/ 70
67
/ 70
68
/ 70
69
/ 70
70
/ 70
More Related Content
PDF
AWS EC2 AMI seminar(KELP 2011)
by
Jay Park
PDF
(OCI 탐험일지) 블록 볼륨 생성
by
Jay Park
PPTX
why docker
by
일웅 전
PPTX
Zoo keeper 소개
by
주표 홍
PDF
Mysql insert-speed-150830063629-lva1-app6891
by
Jungsu Heo
PDF
Cassandra 멘붕기 | Devon 2012
by
Daum DNA
PDF
Mongo DB 활용가이드 Tip 35 ~ 41
by
cosmosyc
PPTX
Cassandra education material
by
Youngki Kim
AWS EC2 AMI seminar(KELP 2011)
by
Jay Park
(OCI 탐험일지) 블록 볼륨 생성
by
Jay Park
why docker
by
일웅 전
Zoo keeper 소개
by
주표 홍
Mysql insert-speed-150830063629-lva1-app6891
by
Jungsu Heo
Cassandra 멘붕기 | Devon 2012
by
Daum DNA
Mongo DB 활용가이드 Tip 35 ~ 41
by
cosmosyc
Cassandra education material
by
Youngki Kim
What's hot
PPTX
카산드라를 설치해서 테스트 해보자 with virtualbox
by
떠리 이
PDF
A review of zookeeper 2010.12
by
HoJin Ha
PDF
(OCI 탐험일지) 인스턴스 생성
by
Jay Park
KEY
Mongodb cluster
by
Kyungsuk Song
PPTX
Mongo db 복제(Replication)
by
Hyosung Jeon
PPTX
Ch9,10. Deployments and Statefulsets
by
Hongmin Park
PDF
Operating system #1
by
Taewoo Kim
PPT
Subversion Branch
by
Hyungyong Kim
PDF
Mongodb2.2와 2.4의 신 기능 소개
by
흥배 최
PDF
Using R with MongoDB(R User Conference Korea 2015, SK C&C 김인범)
by
InBum Kim
PPTX
만들면서 배우는 Cocos2d x 멀티 플랫폼 게임 프로그래밍 10-11장
by
ukjinkwoun
PDF
Concurrency in action - chapter 7
by
JinWoo Lee
PDF
스톰 미리보기
by
June Yi
PDF
Mongodb 특징 분석
by
Daeyong Shin
PDF
쿠버네티스 멀티 클러스터 관리
by
choi sungwook
PDF
Lock free queue
by
Bongseok Cho
PDF
Concurrency in action - chapter 5
by
JinWoo Lee
PDF
비동기 파일 로딩
by
Bongseok Cho
PDF
Mongo db 2.x to 3.x
by
InBum Kim
PPTX
Ch3,4. Pod, Replication and Controllers
by
Hongmin Park
카산드라를 설치해서 테스트 해보자 with virtualbox
by
떠리 이
A review of zookeeper 2010.12
by
HoJin Ha
(OCI 탐험일지) 인스턴스 생성
by
Jay Park
Mongodb cluster
by
Kyungsuk Song
Mongo db 복제(Replication)
by
Hyosung Jeon
Ch9,10. Deployments and Statefulsets
by
Hongmin Park
Operating system #1
by
Taewoo Kim
Subversion Branch
by
Hyungyong Kim
Mongodb2.2와 2.4의 신 기능 소개
by
흥배 최
Using R with MongoDB(R User Conference Korea 2015, SK C&C 김인범)
by
InBum Kim
만들면서 배우는 Cocos2d x 멀티 플랫폼 게임 프로그래밍 10-11장
by
ukjinkwoun
Concurrency in action - chapter 7
by
JinWoo Lee
스톰 미리보기
by
June Yi
Mongodb 특징 분석
by
Daeyong Shin
쿠버네티스 멀티 클러스터 관리
by
choi sungwook
Lock free queue
by
Bongseok Cho
Concurrency in action - chapter 5
by
JinWoo Lee
비동기 파일 로딩
by
Bongseok Cho
Mongo db 2.x to 3.x
by
InBum Kim
Ch3,4. Pod, Replication and Controllers
by
Hongmin Park
Similar to Let's Play with Data Safely
PDF
Intro KaKao ADT (Almighty Data Transmitter)
by
I Goo Lee
PPTX
MySQL_MariaDB로의_전환_기술요소-202212.pptx
by
NeoClova
PPTX
오라클 DB 아키텍처와 튜닝
by
철민 권
DOCX
MySQL_SQL_Tunning_v0.1.3.docx
by
NeoClova
PPTX
MaxScale이해와활용-2023.11
by
NeoClova
PDF
웹 개발 스터디 01 - MySQL
by
Yu Yongwoo
PDF
MySQL Performance Tuning (In Korean)
by
OracleMySQL
PPTX
181215 MS SQL로 알아보는 데이터베이스
by
KWANGIL KIM
PPT
sqlserver7.0 데이타베이스
by
영빈 송
PDF
제 9회 엑셈 수요 세미나 자료 연구컨텐츠팀
by
EXEM
PPTX
[135] 오픈소스 데이터베이스, 은행 서비스에 첫발을 내밀다.
by
NAVER D2
PDF
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4
by
Seok-joon Yun
PPTX
Gpdb best practices v a01 20150313
by
Sanghee Lee
PDF
My sql특징 정리
by
parktaesoon
PPTX
대규모 서비스를 지탱하는 기술 Ch 4
by
ukjinkwoun
PPTX
DBMS 아키텍처
by
HaksunLEE6
PDF
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
by
KTH, 케이티하이텔
PDF
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략
by
KTH
PDF
From MSSQL to MySQL
by
I Goo Lee
PPTX
MySQL_MariaDB-성능개선-202201.pptx
by
NeoClova
Intro KaKao ADT (Almighty Data Transmitter)
by
I Goo Lee
MySQL_MariaDB로의_전환_기술요소-202212.pptx
by
NeoClova
오라클 DB 아키텍처와 튜닝
by
철민 권
MySQL_SQL_Tunning_v0.1.3.docx
by
NeoClova
MaxScale이해와활용-2023.11
by
NeoClova
웹 개발 스터디 01 - MySQL
by
Yu Yongwoo
MySQL Performance Tuning (In Korean)
by
OracleMySQL
181215 MS SQL로 알아보는 데이터베이스
by
KWANGIL KIM
sqlserver7.0 데이타베이스
by
영빈 송
제 9회 엑셈 수요 세미나 자료 연구컨텐츠팀
by
EXEM
[135] 오픈소스 데이터베이스, 은행 서비스에 첫발을 내밀다.
by
NAVER D2
[2015 07-06-윤석준] Oracle 성능 최적화 및 품질 고도화 4
by
Seok-joon Yun
Gpdb best practices v a01 20150313
by
Sanghee Lee
My sql특징 정리
by
parktaesoon
대규모 서비스를 지탱하는 기술 Ch 4
by
ukjinkwoun
DBMS 아키텍처
by
HaksunLEE6
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
by
KTH, 케이티하이텔
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략
by
KTH
From MSSQL to MySQL
by
I Goo Lee
MySQL_MariaDB-성능개선-202201.pptx
by
NeoClova
More from Dataya Nolja
PDF
How to Study Mathematics for ML
by
Dataya Nolja
PDF
Music Data Start to End
by
Dataya Nolja
PDF
Find a Leak Time in the Schedule
by
Dataya Nolja
PDF
A Financial Company Story of Bringing Open Source and ML in
by
Dataya Nolja
PPTX
Practice, Practice, Practice and do the Dirty Work
by
Dataya Nolja
PDF
Predicting People Who May Get off at the Next Station
by
Dataya Nolja
PDF
Endless Trial-and-Errors for Data Collecting
by
Dataya Nolja
PPTX
Log Design Case Study
by
Dataya Nolja
PDF
Things Data Scientists Should Keep in Mind
by
Dataya Nolja
PDF
Things Happend between JDBC and MySQL
by
Dataya Nolja
PDF
Human-Machine Interaction and AI
by
Dataya Nolja
PDF
Julia 0.5 and TensorFlow
by
Dataya Nolja
PDF
Zeppelin and Open Source Ecosystem and Silicon Valley
by
Dataya Nolja
PDF
Hadoop 10th Birthday and Hadoop 3 Alpha
by
Dataya Nolja
PDF
Kakao Bank Powered by Open Sources
by
Dataya Nolja
PDF
Open Source is My Job
by
Dataya Nolja
PDF
Creating Value through Data Analysis
by
Dataya Nolja
PDF
How to Make Money from Data - Global Cases
by
Dataya Nolja
PDF
Structured Streaming with Apache Spark
by
Dataya Nolja
PDF
How to Create Value from Data, and Its Difficulty
by
Dataya Nolja
How to Study Mathematics for ML
by
Dataya Nolja
Music Data Start to End
by
Dataya Nolja
Find a Leak Time in the Schedule
by
Dataya Nolja
A Financial Company Story of Bringing Open Source and ML in
by
Dataya Nolja
Practice, Practice, Practice and do the Dirty Work
by
Dataya Nolja
Predicting People Who May Get off at the Next Station
by
Dataya Nolja
Endless Trial-and-Errors for Data Collecting
by
Dataya Nolja
Log Design Case Study
by
Dataya Nolja
Things Data Scientists Should Keep in Mind
by
Dataya Nolja
Things Happend between JDBC and MySQL
by
Dataya Nolja
Human-Machine Interaction and AI
by
Dataya Nolja
Julia 0.5 and TensorFlow
by
Dataya Nolja
Zeppelin and Open Source Ecosystem and Silicon Valley
by
Dataya Nolja
Hadoop 10th Birthday and Hadoop 3 Alpha
by
Dataya Nolja
Kakao Bank Powered by Open Sources
by
Dataya Nolja
Open Source is My Job
by
Dataya Nolja
Creating Value through Data Analysis
by
Dataya Nolja
How to Make Money from Data - Global Cases
by
Dataya Nolja
Structured Streaming with Apache Spark
by
Dataya Nolja
How to Create Value from Data, and Its Difficulty
by
Dataya Nolja
Let's Play with Data Safely
1.
데이터야 안전하게 놀아보자 한번쯤은
고민해봤어야할 데이터 이야기, by chan
2.
자기소개 절대 깨지지 않는
견고한 서비스를 지향 국내 최초(?) 은행 오픈소스 DB 엔지니어 우육빛깔 까칠행원 (KT하이텔 > 티몬 > 카카오 > 한국카카오은행) 성동찬 (Chris / Chan) http://gywn.net https://www.facebook.com/dongchan.sung
3.
저는 지금 실험
중입니다.
4.
무슨 실험을 하냐고요? 하나. 절대
깨지지 않는 서비스 둘. 극한의 퍼포먼스 셋. 99.99999999999999%
5.
이야기 순서 가용성 이야기 변경
로그 이야기 구조 변경 이야기
6.
사실 처음 시도한것
많아요. 무섭지만, 일단 질러보았지요. ㅋㅋㅋㅋㅋ;; 이제야 고백하지만..
7.
1. 가용성 이야기 (가장
진지할 이야기)
8.
MySQL로 이중화를 한다면? 얘
혼자는 외로워요.
9.
MySQL로 이중화를 한다면? 그래서
두 대 이상을 그룹지어주죠.
10.
스토리지 끼고 이중화 ACTIVE
STAND-BY
11.
스토리지 끼고 이중화 ACTIVE
12.
RHCS DRBD DRDB는 논리 블록
카피이기는 하나, 동일 데이터 본다는 관점에서 그냥 넘어갑시다.
13.
스토리지 비싸요. 스토리지 성능이
디비 성능을 결정해요. 디스크 의존도가 커요. 블록 깨질 때는 대응이 안돼요.
14.
데이터 복제로 이중화 master
slave “데이터 변경 로그”로 데이터 복사 (mysql에서는 이것을 “바이너리 로그” 라고 칭합니다.)
15.
데이터 복제로 이중화 master
16.
복제 상태 관리가
필요하다. 롤 체인지가 귀찮다. 장애 대응 자동화가 복잡하다. 비동기로 데이터가 복제된다.
17.
스토리지 끼고 이중화? 데이터
복제로 이중화?
18.
스토리지 끼고 이중화? 데이터
복제로 이중화?
19.
귀찮은 것은 자동화하자. 데이터
유실없게 고민해보자.
20.
MHA 로 가용성
우선 확보 master slave slave MHA 프로세스
21.
MHA 로 가용성
우선 확보 master slave MHA 프로세스 master 페일오버 + 리플리케이션 재구성
22.
MHA 에 필요한
양념 마스터 바이너리 로그 슬레이브(들)의 릴레이 로그
23.
MHA로 자동화 달성 (장애
시 30초 이내 페일오버)
24.
비동기 복제 취약점은? master
slave slave async async
25.
SEMI-SYNC REPLICATION Commit OK Write to
Binary Log Storage Commit Send BinaryLog ACK master slave AFTER_SYNC 이야기임
26.
SEMI-SYNC REPLICATION master slave slave async async 1ms 50ms
27.
슬레이브 어딘가에 변경
이력 있음
28.
MHA + SEMI-SYNC 클러스터
기준으로는 데이터 유실 없음 더이상 로컬 디스크에 의존하지 않아도 됨
29.
가용성 확보 비동기 같은 동기같은 비동기
데이터 복제 (데이터 유실 없는)
30.
2. 변경 로그
이야기 (꼭 알아야할 이야기)
31.
데이터 변경하기 1 100
TEXT1_ABCDEFGHI 2 200 TEXT2_ABCDEFGHI PK COL1 COL2 UPDATE TBL SET COL1 = COL1 + 10;
32.
데이터 변경하기 1 110
TEXT1_ABCDEFGHI 2 210 TEXT2_ABCDEFGHI PK COL1 COL2
33.
데이터 변경 로그(binary
log) 트랜잭션이 커밋되면 변경 내용이 기록 STATEMENT(SQL) ROW : FULL, MINIMAL
34.
STATEMENT 대화를 글로 쭈~욱
적은 역사서
35.
STATEMENT 2017.10.13 10:40:00 UPDATE TBL
SET COL1 = COL1 + 10; Binary Log
36.
STATEMENT 쿼리가 그대로 기록된다. 락
수위가 높아진다. (>= repeatable read) 쿼리 제약이 꽤 있다. (UUID, RAND..) 쿼리만 정상이면, 복제 이슈 없다.
37.
ROW 전/후 사진을 모아놓은
그림 기록서
38.
ROW : FULL 1
100 TEXT1_ABCDEFGHI 2 200 TEXT2_ABCDEFGHI Binary Log 2 210 TEXT2_ABCDEFGHI 1 110 TEXT1_ABCDEFGHI OLD NEW OLD NEW
39.
ROW : FULL 데이터
변경 전/후 이미지가 기록된다. 변경 데이터가 모두 있기에 연동이 수훨하다. (안해봤지만) 타임머신도 구현 가능하다. 테이블과 트래픽에 따라 로그가 커질 수 있다.
40.
ROW : MINIMAL 1 2 Binary
Log 210 110 OLD NEW OLD NEW WHERE PK = 1 SET COL1 = 110 WHERE PK = 2 SET COL1 = 210
41.
ROW : MINIMAL 변경된
칼럼 데이터만 저장된다. 타 시스템 연동 시 데이터 조회를 해봐야한다. 로그 사이즈를 예측할 수 있다.
42.
FULL & MINIMAL 테이블에
PK가 없으면 효율이 떨어진다. 변경된 데이터 건 수가 사이즈를 좌우한다.
43.
짚어봐야할 질문1 STATEMENT는 작고, ROW는
무조건 크다??? ROW 평균 사이즈가 작은 경우 INSERT 위주의 서비스
44.
짚어봐야할 질문2 ROW:FULL 시
커지는 케이스 게시판 카운트 업데이트 쿼리 하나 변경량이 많을 때
45.
STATEMENT? ROW:FULL? ROW:MINIMAL?
46.
STATEMENT? ROW:FULL? ROW:MINIMAL?
47.
BINARY LOG는요. STATEMENT가 절대적으로
작지 않습니다. 서비스 패턴에 따라 사이즈는 유동적입니다. 특성을 알고 잘~ 쓰면 삼대가 편안합니다.
48.
BINARY LOG 메뉴얼 사이즈에
현혹되지 말 고, 지금 서비스 바라보고, 데이 터를 바라보고 결정합시데이.
49.
3. 구조 변경
이야기 (살떨리는 진짜 운영 이야기)
50.
스키마 변경 방법 온라인
ALTER 슬레이브 적용 후 롤 체인지 트리거 기반 유틸리티
51.
온라인 ALTER >= MySQL
5.6 (InnoDB) Binlog에 ALTER 한 줄만 기록 https://dev.mysql.com/doc/refman/5.7/ en/innodb-create-index-overview.html
52.
master 온라인 ALTER slave ALTER ..
(1hour) 여기도 1hour REPLICATION LAG
53.
온라인 ALTER 인덱스를 각각
노드에서 별도 생성 (set session variable sql_log_bin = OFF) 오래 걸리지 않는 ALTER에 적합 (개인의 선택과 정책과 판단을 존중합니다.)
54.
슬레이브 적용 후
롤 체인지 대형 테이블 스키마 변경 온라인 ALTER 불가 상황
55.
master 슬레이브 적용 후
롤 체인지 slave PK1 COL1 COL2 PK1 PK2 COL2
56.
슬레이브 적용 후
롤 체인지 롤 체인지 시 기존 세션 강제 KILL 데이터 안정성 보장 여부 판단 필요 (이건 MHA로 충분히 가능합니다.)
57.
트리거 기반 유틸리티 pt-online-schema-change
58.
트리거 기반 유틸리티 http://gywn.net/2017/08/small-talk-pt-osc/
59.
트리거 기반 유틸리티 리플리케이션
지연 없음 롤체인지 필요 없음 그러나.. 로그 사이즈?
60.
트리거 기반 유틸리티 1
100 2 200 PK COL1 3 300 4 400 5 500 1 100 PK COL1 3 300 BULK INSERT Trigger
61.
트리거 기반 유틸리티 1
100 2 200 PK COL1 3 300 4 400 5 500 1 100 PK COL1 3 300 BULK INSERT STATEMENT 로 남기자
62.
트리거 기반 유틸리티 BULK
INSERT : STATEMENT set session tx_isolation='repeatable-read'; set session binlog_format='statement'; TRIGGER : ROW
63.
스키마 변경 방법 데이터 사이즈 복제
지연 로그 사이즈 ALTER 그때 그때 선택하세요
64.
구조 변경 그때 그때
달라요.
65.
가용성을 고민해보았고 (LOSSLESS Replication
+ MHA)
66.
로그 포멧도 고민해
봤으며 (STATEMENT / ROW:FULL / FOW:MINIMAL)
67.
구조 변경에도 고민했습니다. (Online
ALTER / Slave 변경 / pt-online-shema-change)
68.
내가 책임지는 나만의
실험실 가용성 안정성데이터
69.
Q/A 아직 짤리면 안되니,
민감한 질문은 사양
70.
감사해유~!
Download