본문 바로가기

세계정복의주인장

(1151)
파티션 개념 DB 운영 방식 한대의 DB 서버에서 운영한다. 이중화 : 한대의 서버만 운영하니까 불안해, DB 서버가 죽으면 서비스가 되지 않으니까 DB 서버를 두대로 만들자. 레플리카 : 서버 두대로도 부족한 거 같아. 한대가 죽으면, 한대로 운영하는 동안 백업을 할 수가 없어 레플리카는 기본적으로 서버 4대가 한 묶음이다. 파티션 : 하나의 테이블에 너무 많은 데이터가 있어서 느려졌어, 관리도 힘들어, 테이블을 나누지만 하나의 테이블처럼 사용하자 샤딩 : 하나의 디비에 너무 많은 데이터가 있어서 느려졌어, 파티션으론 한계가 있으니, 디비를 복사해서 하나의 디비처럼 사용하자 proxySQL : 서버 여러대를 하나의 서버처럼 사용하고 싶어 파티션 데이터를 별도의 테이블로 분리해서 저장하지만 사용자 입장에서는 여전히 ..
객체 지향 데이터베이스 (OODB / object-oriented Database) 객체지향 데이터베이스 객체 지향 데이터베이스는 객체 지향 패러다임을 사용하는 객체지향 프로그래밍에서 영향을 받아 생성되었다. 객체지향 프로그래밍과 마찬가지로 실세계의 객체를 DB로 표현하기 위해 만들어졌었다. 객체 표현을 관리하는 데이터베이스 기술, ODMG 2.0 표준으로 기술되어 있다. 객체 모델의 핵심 기능은 다음과 같습니다. 속성 및 관계 개체 속성 개체 작업 (동작) 및 예외 다중 상속 범위 및 키 개체 이름 지정 Atomic, structured and collection literals List, set, bag and array collection classes 동시성 제어 및 객체 잠금 객체 관계 데이터베이스를 위한 데이터 언어 표준으로 ISO에서 제시한 SQL3가 있다. 참고로 객체지향..
pip multiple versions of dependency resolver problem INFO: pip is looking at multiple versions of to determine which version is compatible with other requirements. This could take a while. INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. If you want to abort this run, you can press Ctrl + C to do so. pip의 dependency resolver 문제로 pip의 최신 버전에서 나타나는 문제이다. 설치하려는 패키지와..
파이썬 부동소수점 사용시 주의할점 부동 소수점 오류 예 0.1 == 0.1 # True 0.2 == 0.1+0.1 # True 0.3 == 0.1+0.1+0.1 # False 0.4 == 0.2+0.2 # True 0.5 == 0.2+0.2+0.1 # True 0.6 == 0.2+0.2+0.2 # False 0.9 == 0.5+0.4 # True 0.9 == 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1 # False 0.1을 100번 더하면 10이 나와야 되는데... 0.1을 정확히 표현할 수 없기 때문에 발생하는 오류입니다. result = 0.0 for i in range(0, 100): result += 0.1 print(result) 이 모든것은 부동 소수점에서 발생하는 문제이다. 소수점 연산은 정확한 연산을 ..
로그가 서버를 죽이러 왔다. 사건의 발단 : 1) airflow가 설치된 서버의 스토리지가 모든 용량을 꽉 채우고 죽는 사태가 벌어진 적이 있다. 2) 문제는 airflow의 로그가 계속 쌓여 있어서, 해당 로그들을 삭제함으로써 몇달은 버틸 수 있었다. 3) 이제 스토리지 용량이 다 되어 로그 삭제를 개발하려 했다. 먼저 해당 서버의 스토리지 용량을 다음의 명령어들을 사용해서 확인하려고 했다. df (disk free) - 디스크 여유 공간 확인 df 명령을 사용하면 리눅스 시스템 전체의 (마운트 된) 디스크 사용량을 확인할 수 있다. 파일시스템, 디스크 크기, 사용량, 여유공간, 사용률, 마운트 지점 순으로 나타낸다. du (disk usage) - 디렉토리 디스크 사용량 확인 df 명령어가 시스템 전체의 디스크 공간을 확인하는 ..
이상감지 (정리) https://www.youtube.com/watch?v=xPA6JyHFHew 1. 이상치(Anomaly)란? 기존 관측과는 상이하여 다른 메커니즘에 의해 생성되었다고 판단할만한 관측값 2. 이상탐지 목적 기회 탐지 Chance Discovery (Positive Anomaly) : 새로운 이상치 탐지 오류 탐지 Fault Discovery (Negative Anomaly) : 노이즈 제거 3. 입력 데이터의 특성 (input data) Time series(sequential) vs static univariate vs multivariate data type (binarr / categorical / continuous / hybrid ) relational vs inddependent well-kn..
random forest // isolation forest 공부한한 내용 정리 1. random forest 의사결정 트리가 여러 개 모인 것. 하나의 의사결정 트리는 훈련 데이터에 오버 피팅되는 경향이 있다. 오버 피팅을 해결하기 위해 여러 개의 결정 트리를 모아 random forest가 나왔다. 1.1 동작 Bagging : training set의 부분집합을 활용하여 트리 형성 (각각의 부분집한의 인스턴스는 중복될 수 있다) bagging features : training set의 feature별로 트리를 형성한다. classiify : 2번에서 여러 개의 트리를 통해 ground truth(경계선)을 형성한다. 랜덤 포레스트가 생성한 일부 트리는 overfitting 될 수 있지만, 많은 수의 트리를 생성함으로써 overfitting이 예측하는 데 있어 큰 영향을 미치지..
LeetCode sql 문제, 유저별 월별 집계 https://leetcode.com/problems/reformat-department-table/ Reformat Department Table - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 쉬운 문제인데, 푸는데 너무 오래 걸렸다. sql은 언제나 수행이 부족하다. 아래와 같이 테이블이 있을 때 Department table: +------+---------+-------+ | id | revenue | month | +------+---------+-..