목록IT (81)
♥️7분 빠른 소식 전달해 드립니다♥️
정규표현식에 대해 알아보기 전에, 정규표현식으로 할 수 있는 일을 나열했다. 정규표현식 기본 기능 나열 리터럴 텍스트에 일치 비인쇄 문자에 일치 여러 문자 중 하나와 일치 모든 문자와 일치 행 시작이나 끝의 대상을 대조 단어 채로 대조 유니코드 번호, 속성, 블록, 스크립트 다자택일 대조 여러 일치부를 그룹으로 묶어 캡처 앞서 일치된 텍스트를 다시 대조 각 일치부를 캡처하고 명명하기 정규식의 일부분을 특정 횟수로 반복하기 최소 반복 vs 최대 반복 불필요한 역행 제거 지나친 반복 방지 한 일치부를 전체 일치부에 넣지 않고 검사 조건문으로 두 후보 중 하나 대조 정규식에 주석 추가 치환 텍스트에 리터럴 텍스트 삽입 치환 텍스트에 정규식 일치부 삽입 치환 텍스트에 정규식 일치부의 일부만 삽입 치환 텍스트에 ..
MySQL의 전체 구조 MySQL 서버는 크게 MySQL 엔진과 스토리지 엔진으로 구분해서 볼 수 있습니다. 위 그림에서는 MySQL의 쿼리 파서나 옵티마이저 등과 같은 기능을 스토리지 엔진과 구분하고자 "MySQL 엔진"과 "스토리지 엔진"으로 구분했습니다. 그리고 "MySQL 엔진"과 "스토리지 엔진"을 모두 합쳐서 MySQL 또는 MySQL 서버라고 표현합니다. 위는 오라클 전체 구조 입니다. MySQL, Oracle 구조에는 상당한 차이가 있습니다. 실제 기능상에는 큰 차이가 없음에도 이런 차이가 발생하는 이유는 MySQL 구조내 "Pluggable Storage Engine" 때문입니다. MySQL은 내부적으로 성격이 다른 아키텍처 구조를 여러개 포함하고 있습니다. 오라클의 경우 테이블의 데이터..
1. 스토어드 프로그램이란? MySQL에서는 절차적인 처리를 위해 스토어드 프로그램을 이용할 수 있습니다. 스토어드 프로그램은 스토어드 루틴이라고도 하는데, 스토어드 프로시저와 스토어드 함수 그리고 트리거와 이벤트 등을 모두 아우르는 명칭입니다. 스토어드 프로그램 가운데 스토어드 프로시저나 함수는 MySQL 5.0부터 추가된 기능이며, 스케줄러는 MySQL 5.1부터 추가된 기능입니다. 그럼 스토어드 프로그램(프로시저, 함수, 트리거)의 장점과 단점을 살펴보도록 하겠습니다. 1-1. 스토어드 프로그램의 장점 - 데이터베이스의 보안 향상 MySQL의 스토어드 프로그램은 자체적인 보안 설정 기능을 가지고 있으며, 스토어드 프로그램 단위로 실행 권한을 부여할 수 있습니다. 이러한 보안 기능을 조합해서 특정 테..
파티션이란 MySQL 서버의 입장에서는 데이터를 별도의 테이블로 분리해서 저장하지만 사용자 입장에서는 여전히 하나의 테이블로 읽기와 쓰기를 할 수 있게 해주는 솔루션 입니다. 일반적으로 DBMS의 파티션은 하나의 서버에서 테이블을 분산하는 것이며, 원격 서버 간에 분산을 지원하는 것은 아닙니다. MySQL 5.1부터 제공되는 파티션 기능은 MyISAM과 InnoDB 테이블 등 대부분의 스토리지 엔진에서 사용할 수 있습니다. 파티션 방법은 1. 해시 2. 리스트 3. 키 4. 레인지 총 네가지가 존재합니다. 이외에 서브 파티셔닝 기능까지 사용할 수 있습니다. MySQL 파티션이 적용된 테이블에서 INSERT나 SELECT 등과 가은 쿼리가 어떻게 실행되는지 이해한다면 파티션을 어떻게 사용하는 것이 가장 최..
* 테이블스페이스: 논리적(메모리) - 오라클 데이터베이스는 하나 이상의 논리적 저장영역 테이블스페이스가 있고 데이터를 집합적으로 저장합니다. - 하나 이상의 데이터 파일로 구성되어 있습니다. 1. 테이블 스페이스 유형 1.1. 시스템 테이블스페이스(사용자가 건드릴수 없다) - 데이터 베이스와 함께 생성됩니다. - 데이터 딕셔너리 포함 - 시스템 Undo Segment를 포함합니다. 1.2. 비시스템 테이블스페이스(사용자가 필요하면 만들고, 지우면서 사용가능) - 데이터베이스 관리와 공간 관리를 용이하게 할 수 있습니다. - Undo Segment, Temporary Segment, 응용 프로그램 데이터 세그먼트 및 인덱스 세그먼트를 분할합니다. - 사용자에게 할당된 공간의 양을 제어합니다. 2. 테이블..
오라클 파티션 정의 파티션 개요 오늘날 기업에서 관리하는 데이터는 수백테라 바이트에 이르는 데이터베이스를 관리합니다. 하지만 이런 데이터들 중 몇몇의 Big Transaction Table이 거의 모든 데이터를 가지고 있고 나머지 테이블들은 이 Big Transaction Table을 경유하여 액세스하는 용도로 사용됩니다. 이렇게 데이터 크기가 크고 중요한 Big Transaction Table을 관리하는 부분에서 Troubleshooting이 발생될 경우 데이터베이스의 성능 및 관리작업에 심각한 영향을 받을 수 있습니다. 이러한 리스크가 있는 Big Transaction Table을 보다 효율적으로 관리하기 위해 Table을 작은 단위로 나눔으로써 데이터 액세스 작업의 성능 향상을 유도하고 데이터 관리..
테이블을 저장하는 공간이란 의미도 틀린것은 아니지만 정확한 의미는 아닙니다. 오라클은 데이터베이스 관리 시스템이고 말 그대로 데이터들을 관리합니다. 즉 어딘가에 데이터들을 저장, 추출, 삭제, 변경하는 작업을 할 수 있는 것입니다. 그렇다면 데이터는 어디에 저장되는 것일까요? 물론 파일에 저장됩니다. 오라클 데이터베이스는 데이터 파일들을 가지고 있으며, 이 파일들에 데이터가 저장됩니다. 그런데 파일은 데이터가 저장되는 물리적인 공간을 말하는 것입니다. 오라클 내부에서는 데이터 블록(data block), 익스텐트(extent), 세그먼트(segment), 테이블스페이스(tablespace)라는 논리적인 개념으로 데이터 들을 관리합니다. 오라클에서 데이터를 저장하는 가장 최소의 논리적인 단위가 데이터 블록..
통계분석 데이터 처리 데이터의 특성이 의미있게 드러나도록 표, 차트, 도식으로 표현. 관심대상 선정 -> 테이블로 정리 (관찰 대상 선정 -> 속성 선정) ex. 관찰대상: 대학생 / 속성: 성별, 이름, 성적 등. 대상별로 서로 다른 값을 가질 수 있어. 속성을 변수(variable)라고 표현. variable이 정해지면, 변수에 기록값을 관찰치/측정치(case, observed value) 또는 변수값(value)라고 함. 관찰치의 모음(set) --> data / 관찰대상(행) 변수(열)의 합을 다시 자료(data) 또는 자료집합(data set)이라고 함. 통계분석은 주로 집단의 특성치 / 상관이나 인과를 파악하는 목적이므로. 하나의 관찰치는 분석 목적으로 유요하지 않음. (하나의 열: 최댓값, ..