Hot
-
[데이터베이스] 정규화 vs. 비정규화(반정규화)
💡 정규화 vs. 비정규화(반정규화) 데이터베이스 정규화 데이터베이스 비정규화 데이터베이스 비정규화(Denormalization, 반정규화)란 무엇인가? 장점, 단점 비정규화 대상 주의점 정규화(Normalized)란 무엇인가? 장점, 단점 정규화의 원칙 함수적 종속(Functional Dependency) 완전 함수적 종속, 부분 함수적 종속 ✍️ 질문 체크 ⍞ Reference 💡 정규화 vs. 비정규화(반정규화) 데이터베이스 정규화 데이터베이스(normalized database)는 중복을 최소화하도록 설계된 데이터베이스를 말한다. 비정규화 데이터베이스(denormalized database)는 읽는 시간을 최적화하도록 설계된 데이터베이스를 말한다. 정규화 데이터베이스 같은 데이터는 데이터베이스 내..
2020.06.15
-
[Java] Array copy 배열 복사/복제
[얕은 복사] 주소값 복사 1. B = A; 예시 [깊은 복사] 복제. 새로운 메모리 공간에 값 복사 2. B = A.clone(); 예시 3. 기존 배열의 일부만 덮어씌우기 || clone()보다 더 빠르길 원할 때 System.arraycopy( A, sourcePos, B, destPos, len ); 예시 4. 원하는 길이 설정 B = Arrays.copyOf( A, newLength ); 예시 5. 원하는 시작점 설정 B = Arrays.copyOfRange( A, from_index, to_index ); 예시 [깊은 복사] 2차원 배열 👀 예시 [얕은 복사] 주소값 복사 1. B = A; 예시 class Main { public static void main(String[] args) { i..
2020.05.31
-
[MySQL] 성능 튜닝 - 버퍼 풀
버퍼 풀(Buffer Pool) 버퍼 풀의 크기 (innodb_buffer_pool_size) 버퍼 풀 인스턴스 수 (innodb_buffer_pool_instances) ⍞ Reference 버퍼 풀(Buffer Pool) 버퍼 풀은 InnoDB가 액세스 할 때 테이블 및 인덱스 데이터를 캐시하는 메인 메모리 영역이다. 버퍼풀은 자주 사용하는 데이터를 메모리에서 직접 처리할 수 있게하여 처리 속도를 높인다 전용 서버에서 실제 메모리의 최대 80% 정도가 버퍼풀에 할당된다. 대량 읽기 조작의 효율성을 위해 버퍼 풀은 여러 행을 보유할 수 있는 페이지로 분할된다. 캐시 관리 효율성을 위해 버퍼풀은 링크된 페이지 목록으로 구현된다. 거의 사용되지 않는 데이터는 다양한 LRU 알고리즘을 사용하여 캐시에서 종료..
2020.09.05
-
동적계획법(DP, Dynamic Programming), 쉬운 것 같은데 쉽지 않은..
동적계획법이란? 그리디 알고리즘과 비교 적용 연습문제 🔗 프로그래머스, 타일 장식물 🔗 프로그래머스, 등굣길 🔗 LeetCode, Coin Change ✨ 🔗 LeetCode, Word Break ✨ ⍞ Reference 동적계획법이란? 전체 문제를 작은 문제로 단순화한 다음 점화식으로 만들어 재귀적인 구조를 활용해서 전체 문제를 해결하는 방식 큰 의미에서 분할 정복과 같은 접근 방식을 의미한다. → 처음 주어진 ① 문제를 더 작은 문제들로 나눈 뒤 ② 각 조각의 답을 계산하고, ③ 이 답들로부터 원래 문제에 대한 답을 계산해 낸다. 동적 계획법과 분할 정복의 차이가 발생하는 부분은 문제를 나누는 방식이다. → 동적 계획법에서 어던 부분 문제는 두 개 이상의 문제를 푸는데 사용될 수 있기 때문에 값을 저..
2020.06.14
-
[알고리즘 문제해결전략] 15. 계산 기하
계산 기하 관련 코드 구현 시, 필수적 개념 벡터의구현 점과 직선, 선분의 표현 벡터의 내적과 외적 벡터의 내적(inner product) 벡터의 외적(cross product) 교차와거리, 면적 직선과 직선의 교차 가장 간단한 방법 선분과 선분의 교차 선분과 선분의 교차: 교차점이 필요 없을 때 점과 선 사이의 거리 자주 하는 실수와 유의점 퇴화 도형 직교 좌표계와 스크린 좌표계 다른 실수들 계산 기하(computational geometry) 알고리즘이란, 점, 선, 다각형과 원 등 각종 기하학적 도형을 다루는 알고리즘이다. 2차원의 평면 도형과 3차원의 입체 도형을 모두 다루는 주제이지만 여기에서는 2차원 기하학만을 다룬다. 계산 기하 관련 코드 구현 시, 필수적 개념 벡터의구현 📜 방향과 거리를 ..
2020.05.13