본문 바로가기
반응형

분류 전체보기468

AWS 기본구성(인터넷환경/리전/AZ영역) 1. 인터넷환경 PC– PC가 네트워크로 연결이 되어 있어서 통신할 수 있는 상태 같은 네트워크 범위 안에 PC들을 구성해두면 어떤 환경이든 그 안에 인프라 사용할 수 있다. ex) 로컬 네트워크로만 구성하면 내부 안에서 해당하는 인프라들을 사용할 수 있다. 만약에 내부 로컬 안에서 naver.com이라는 웹에 들어가고자 하면? 장비 to 장비끼리 네트워크로 연결되어 있는 라우터(목적지)를 따라서 해당 컨텐츠를 가져옴 루트가 가지고 있는 웹서버를 찾아서 가져오는 방식 하지만 서비스하는 지역에 있는 고객과 서버의 거리가 멀면 멀수록 서비스가 느려짐 (경유하는 라우터의 개수들이 많아서) 그래서 물리적인 거리를 좁히는게 빠른 서비스가 가능한 최적의 방법이다. (각 지역 내에서는 가까워서) 이때 이렇게 말그대로.. 2020. 1. 27.
[MySQL] 로그(General/Slow쿼리) 로그 어떤 에러가 발생했는지, 어떤 쿼리를 돌렸는지 볼 수 있음 디폴트는 에러보고 로그 접속 정보나 쿼리에 대한 로그를 알고 싶으면 따로 설정을 해줘야댐 1. 제너럴 로그(General_log) 사용자가 던진 모든 쿼리에 대한 기록 ->어떤 에러가 발생했는지, 어떤 쿼리를 돌렸는지 볼 수 있음 해당하는 경로에 들어가면 쿼리정보를 볼 수 이씀 sud vi 위에 경로명 2. 슬로우쿼리 로그 어떤 쿼리 때문에 느린지 알고 싶을때 *슬로우쿼리 : 클라이언트로 부터 받은 쿼리를 수행할때 일정시간 이상 수행되지 못한 쿼리들 슬로우쿼리가 많으면 성능저하가 발생한다. mysql을 사용할때 mysqld가 cpu를 많이 잡아먹거나 db접속이 원활하지 않으면 슬로우쿼리 확인하기 제너럴 쿼리랑 다른점은? 둘다, 사용자가 던진.. 2020. 1. 27.
[MySQL] 트랜잭션 격리수준(Isolation level) 트랜잭션 : 하나의 작업처리단위 이렇게 작업을 하나씩 순차적으로 진행하면? 1)데이터무결성 보장(ACID특징) 모두 성공적으로 처리되나(Commit) 실패할 경우 원상태로 되돌아가기 때문에(Rollback) 부분업데이트가 발생하지 않음 *데이터 정합성(Automicity) 보장 : 트랜잭션 -> 동시에 수행되는 트랜잭션끼리 데이터의 일관성 유지하도록 보장 *데이터 고립성(Isolation) 제어 : Lock기능 -> 동시에 수행되는 트랜잭션끼리 영향을 미치지 않도록 제어 2)직렬화(Serialization)가 됨 하지만, 다수의 클라이언트가 DB에 동시에 접근해서 사용해야 됨 -> 동시성도 보장되어야 함 -> 어떻게? 격리수준(Isolation level) 동시에 여러 트랜잭션이 처리될 때 다른 트랜잭션.. 2020. 1. 25.
[NetWork] 동기(sync) vs 비동기(async) 데이터를 받는 방식의 차이점 동기식(synchronous) 요청과 결과가 한자리에서 '동시에' 일어난다. 요청을 하면 바로 시간이 얼마나 걸리던지 요청한 자리에서 그 결과가 나타남 작업처리시간이 같다. (추구하는 목적이 같아서) 장점 : 설계가 간단하고 직관적 단점 : 결과가 주어질때까지 아무것도 못하고 대기해야함 예시 : 계좌입출금 --> A에서 B로 송금할때 A에서 돈이 빠져나가고 B에 돈이 들어오는게 동시에 일어나야함 비동기식(asynchronous) 요청과 결과가 동시에 일어나지 않음 요청을 하면 요청한 자리에서 결과가 나타나지 않음 작업처리 시간을 동시에 맞추지 않아도 됨(추구하는 목적이 달라서) 장점 : 결과가 주어지는데 시간이 걸리더라도 그 시간동안 다른 작업 할 수 있음 단점 : 동기식보다.. 2020. 1. 25.
AWS 먹통이후, AWS 너네 믿을만한거 맞냐! | AWS부사장 인터뷰 ‘AWS 서울 서밋 2019’ 참석 차 방한한 아드리안 콕크로프트 AWS 클라우드 아키텍처 전략 담당 부사장을 인터뷰 콕크로프트 부사장은 2009~2013년 넷플릭스에서 일하며 서버를 AWS 클라우드로 전환하는 작업을 총괄했다. ​ AWS안좋은거 아님? 취약점은? AWS먹통 사태 이후에 그런 장애에도 잘 견딜 수 있게 데이터를 각 지역별 리전에 분산해서 저장하는 방식 강화 그정도 서비스 중단 사태는 아주 드물게 일어나는 상황일뿐이다. 그러니까 기업이 자체적으로 운영하는 데이터 센터보다 클라우드에서 발생하는 오류가 더 적으니까 우리꺼 써라. ​ AWS먹통 또 나면 어쩔?재발에 대한 우려? 우리도 대책 생각해봤는데 더 안날꺼 같으니까 불안하면 너네가 알아서 이중화를 써라. =>이게 멀티클라우드의 시작 비용 .. 2020. 1. 24.
[MySQL]복제구축(mysqldump로 백업하기) 1. MySQL복제란?(Replication) 물리적으로 다른 서버의 저장공간안에 동일한 데이터를 복사하는 것 즉, 1개의 Master 서버를 여러개의 Slave 서버에 복제하는 작업 2. 왜 사용하는가? 무슨목적으로? 1. 백업 2.부하분산 1) 백업 실시간으로 Master서버에서 변경된 데이터를 Slave서버에 복사하여 백업할 수 있습니다. 그래서 Master서버의 장애가 발생하였을 경우 Slave서버로 변경할 수 있습니다. 2) 부하분산 사용자가 증가하여 1대의 서버에서 읽기 부하가 발생할 경우 유용하게 사용가능 그래서 Master는 INSERT/UPDATE/DELETE 요청을 받아 쓰기전용으로 사용하고, Slave는 로 SELECT 요청을 받아 읽기전용으로 사용 3. 실시간으로 데이터 복제가 가능.. 2020. 1. 23.
데이터파이프라인/데이터프로덕트/수집/정제 용어정리 1. 데이터파이프라인 : 데이터가 흘러다니는 길 데이터를 수집하고 정제하고 다시 보내는 과정은 데이터 파이프라인을 통해 이루어짐 1) 데이터 스키마 어떤 형태로 어떤 값들이 언제 남아야 하는지 남겨둔 규칙이나 모양 2) 로킹 : 데이터를 남기는 활동, 사용자의 활동을 앱에서 Google Analytics처럼 바로 보낼수도 있고, 서버에서 이벤트를 디비에 저장하고, 그것을 옮겨 가거나 아니면 api의 로그파일로 남겨 긁어가는 방법. 3) 수집 데이터를 어디로 전송하거나, 파일로남겼거나, 디비에 저장했다면 중앙화된 저장소로 옮김 연산된 형태를 고려해서 값을 변경하거나, 필요한 저장소를 결정 4) 정제 로그를 전송 중에(데이터가 파이프라인 안에서 이동되는 동안) 유실이나 중복이 될 수 있음, 또는 서버의 버그.. 2020. 1. 23.
[Mysql아키텍쳐3] InnoDB특징/MyISAM특징 내부적으로 어떻게 작동는지 이해하기 출처 RealMysql 서적을 기반으로 이해한 내용 정리 1.InnoDB 스토리지 엔진 특징 1) 트랜잭션 지원 -> 데이터 무결성 보장 트랜잭션 위주로 진행되기 때문에 ACID특징을 보장함(커밋/롤백지원) 그래서 데이터의 일관성,정확성이 높다. https://pearlluck.tistory.com/17 트랜잭션 특징(ACID) /Rollback /Commit 트랜잭션 데이터베이스의 상태를 변화시키는 하나의 작업단위를 의미합니다. DB의 상태는 딱! 2개 Rollback과 commit만 있음 그래서 두가지 상태를 작업하는 실행단위들 왜 트랜잭션이 필요할까? 왜 DB는 트랜잭션.. pearlluck.tistory.com 2) 동시성 수준 높음 -> Row-level의 L.. 2020. 1. 22.
스크래핑 기술 vs 크롤링 크롤링 여러 인터넷 사이트의 페이지(문서,HTML)를 수집해서 분류 하는것 대체로 찾아낸 데이터를 저장한 후 쉽게 찾을 수 있게 인덱싱 일종의 스크래핑 기술 자동화된 웹크롤러가 정해진 규칙에 따라서 데이터를 수집? ​ 스크래핑 HTTP를 통해 웹사이트 내용을 긁어다 원하는 형태로 가공하는것 웹사이트의 데이터를 수집하는 모든 작업 원하는 부분을 자동으로 추출 및 수집? 출처 2020. 1. 22.
🚀 DB JOIN 정리(INNER/LEFT/RIGHT/OUTER) join(조인) 둘 이상의 테이블을 연결해서 데이터를 검색하는 방법 연결하려면 테이블들이 적어도 하나의 컬럼을 공유하고 있어야함 이 공유하고 있는 컬럼을 PK 또는 FK값으로 사용 ​ 종류 1. INNER JOIN : 내부조인 ->교집합 2. LEFT/RIGHT JOIN -> 부분집합 3. OUTER JOIN : 외부조인 ->합집합 오라클은 OUTER JOIN있지만, MYSQL은 없어서 LEFT조인 + RIGHT조인 ​ ​ 예를 들어 두가지 테이블(T1,T2)이 있다고 하면, 이걸로 join결과를 그림으로 그려보면서 복습해보자 A ID ENAME 1 AAA 2 BBB 3 CCC B ID KNAME 1 가 2 나 4 라 5 마 1. INNER JOIN : 교집합, 공통적인 부분만 SEELCT됨 ​ ID E.. 2020. 1. 21.
728x90