목록외부/교육 (10)
Leeyebin의 블로그
셸 정렬 일정한 간격으로 떨어져있는 자료들끼리 부분집합을 구성하고 각 부분집합에 있는 원소들에 대해서 삽 입 정렬을 수행하는 작업을 반복하면서 전체 원소들을 정렬하는 방법 병합 정렬 여러 개의 정렬된 자료의 집합을 병합하여 한 개의 정렬된 집합으로 만드는 방법 부분집합으로 분할하고, 각 부분집합에 대해서 정렬 작업을 완성한 후에 정렬된 부분집합들을 다시 결 합하는 분할 정복 기법 사용 기수 정렬(radix sort) 원소의 키값을 나타내는 기수를 이용한 정렬 방법 트리 이미지 출처 : http://stackoverflow.com/questions/19330731/tree-implementation-in-java-root-parents-and-children 원소들 간에 1대 다 관계를 가지는 비선형 자료..
큐스택과 마찬가지로 삽입과 삭제의 위치가 제한된 유한 순서 리스트큐의 뒤에서는 삽입만 하고, 앞에서는 삭제만 할 수 있는 구조(FIFO:선입선출) 이미지 출처 : https://en.wikipedia.org/wiki/Queue_(abstract_data_type) 큐의 연산삽입:enQueue삭제:deQueue 스택과 큐의 연산 비교 삽입 연산 삭제 연산 연산자 삽입 위치 연산자 삭제 위치 스택 push top pop top 큐 enQueue rear deQueue front 선형 큐1차원 배열을 이용한 큐큐의 크기 = 배열의 크기변수 front : 저장된 첫 번째 원소의 인덱스 저장변수 rear : 저장된 마지막 원소의 인덱스 저장상태 표현초기 상태 : front = rear = -1공백 상태 : fro..
이미지 출처 : http://way2java.com/arrays/one-dimensional-arrays/ 순차 자료구조(순차리스트) ex)배열 *생성시에 크기가 결정된다.(요소(데이터 갯수)의 수) *Data 중간 삭제, 삽입될 때 -> 요소이동에 따른 오버헤드 => java.util.ArrayList 내부적으로 배열 구현 add(요소) set(index, 요소) 추가, 삭제 시 오버헤드 발생 등 Collection(Reference) Vector는 멀티스레딩 환경을 대비해서 만들어졌고 이후에 ArrayList는 단일 쓰레딩 환경으로 대비해서 만들어짐. Vector 주소: https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html Vector() ..
자료구조를 다시금 리마인드하고 싶어서 수강//자료구조란?자료를 효율적으로 사용하기 위해서 자료의 특성에 따라서 분류하여 구성하고 저장 및 처리하는 모든 작업 자료구조를 배우는 이유?컴퓨터는 사람이 원하는 것을 알아서 처리할 수 없음 컴퓨터가 효율적으로 문제를 처리하기 위해서는 문제를 정의하고 분석하여 그에 대한 최적의 프로그램을 작성해 야 한다. 자료의 형태에 따른 분류단순구조(기본 자료형)선형구조(자료들 간의 앞뒤 관계가 1:1 선형 관계, 예:리스트,링크드리스트,스택,큐,덱 등)비선형구조(자료들 간의 앞뒤 관계까 1:다, 다:다의 관계, 예:트리,그래프 등)파일구조(레코드의 집합인 파일에 대한 구조 예:순차파일,색인파일,직접파일 등) 이미지 출처 : 교재 자료구조는 메모리 관리 / 운영체제(라운드엔 ..
실습한 부분에 대해서는 빠진부분이 있어 따로 추가할 예정 도커허브도커허브 이미지 공개 저장소Root 공식저장소, official 마크user:repository:tagDocker repository에 pull Docker hub에 있는 이미지 가져오기 레지스트리(Registry) - 저장소도커 이미지를 저장하고 공유할수 있는 서버오픈소스, 아파치 라이센스v1, v2가 호환되지 않는다.클라우드: DockerHub인트라넷:DTR //Private Registry 실행 kosta@DESKTOP-6B01TQ1 MINGW64 ~ $ docker run -d -p 5000:5000 --name myregistry registry:2 이미지 데이터를 어디에 저장할 것인가?LocalStorage Drivers(http..
[Docker 이해 및 환경 구성] 도커는 무엇인가 !리눅스컨테이너 기술을 이용해 애플리케이션 !패키징, !배포를 지원하는 !경량의 !가상화 오픈소스 프로젝트 Go 언어로 개발(가장 성공한 Go언어로 만든 프로그램) 왜 도커를 써야 할까 https://www.slideshare.net/Docker/docker-lpc-2014cristian 예: 맥에서 아파치 톰캣을 설치하는 방법과, 윈도우에서 설치하는 방법이 다름 도커를 이용해서 깔면 한줄이면 끝남 Container vs Hypervisor 이미지 출처 : https://www.docker.com/what-docker 도커는 가볍다. VM에 비해 이미지 파일 크기가 작아서 빠르게 이미지를 만들고 실행할 수 있다. Immutable Infrastrutur..
12. 서버 튜닝 도구 서버튜닝은 2회에서 3회 적정(최적)을 찾아야한다. *변천 흐름 8i부터 utlbstat.sql -> 시작 utlestat.sql -> 끝 이 스크립트를 이용해서 일정기간 동안의 튜닝 통계정보 수집할 수 있다. => Report.txt | 9i부터 기능 향상 Statspack package(데이터베이스 내부에서 프로시저와 펑션들을 이용해서 데이터베이스 상태정보를 수집하고 분석) -> Data Dictionary Table형태로 보고서를 받을 수 있다. | 10g부터 기능 향상 log Automatic Workload Repository(AWR 통계 정보를 저장하고 관리해 주는 기능) => 결과를 txt, html 파일 형태로도 볼 수 있다.오라클 메모리 상태정보를 자동으로 수집 및..
8. 인덱스 검색 방법 8.1 INDEX 설계 시 주의사항 -조건을 만족하는 데이터의 분포도가 10% 내외일 때(분포도 = (조건을 만족하는 행수 / 전체행수) * 100) -대용량 데이터를 가진 테이블에 적용했을 때 -분포도가 나쁘더라도 FAST INDEX SCAN이 가능한 경우(분포가 나빠도 적극적으로 사용해보고 판단해보자) -다양한 인덱스 유형 중에 가장 적합한 인덱스를 선택 -테이블스페이스와 물리적 크기 설계 고려 -좋은 분포도를 가진다 8.2 INDEX의 종류 Balance*Tree 이미지 출처 : http://docs.oracle.com/cd/E25054_01/server.1111/e25789/indexiot.htm 참고 B Tree 알고리즘 애니메이션 : http://ats.oka.nu/b-..
4.4.2 동일한 문장이 아닌 경우 (대,소문자 등) 동일한 SQL문을 작성하지 못한다면 각 문장은 PARSING을 각각 수행하기 때문에 불필요한 메모리 공간의 낭비 및 성능저하 현상이 발생될 수 있음. 1)CURSOR_SHARING = EXACT 2개의 문장에 사용된 SQL문이 모두 동일한 조건, WHERE절 조건에 정의된 상수가 동일해야 만 파싱 정보를 공유함 SQL> ALTER SYSTEM SET CURSOR_SHARING=EXACT; 시스템이 변경되었습니다. SQL> SELECT * FROM DEPT WHERE DEPTNO = 30; DEPTNO DNAME LOC ---------- -------------- -------------- 30 SALES CHICAGO SQL> SELECT * FRO..
#강사님께서 교재 전체를 진행하지는 않았기 때문에 추후에 공부하면서 추가할 부분은 추가적으로 채워 넣을 예정 데이터베이스 분석 및 개선을 통한 성능 확보 필수로 공부해야할 것 초급 1. SQL&PL/SQL(35) : RDB개념, Syntax 중급 2. Fundamental(35) : DB구조, Data 저장방법 관리기법 3. Fundamental(35) : 백업&복구, Network&Solution 4. SQL Statement(튜닝) 5. Server 튜닝(Performance) 6. Data-Modeling(분석, 설계쪽) 7. Data-Architecture 참고로 공부하면 좋은 것 -Embedded-SQL, IEM, EA(BA, AA, DA, TA) 성능저하의 문제가 sql문제인지 db구조적 문제..