본문 바로가기

전체 카테고리361

[Oracle] DBMS와 실행 계획 1. 데이터에 접근하는 방법의 결정 RDB를 조작할 때는 SQL이라는 전용 언어를 사용합니다. 사용자 또는 개발자가 데이터베이스에서 의식적으로 사용하는 것은 SQL 레밸까지입니다. 이후의 모든 것은 SQL 구문을 읽어들인 DBMS가 알아서 처리하고 결과를 제공해주기 때문에 사용자는 데이터가 있는 곳을 알 필요도 없고, 데이터에 접근하는 방법도 따로 생각하지 않습니다. RDB에서 데이터 접근 절차를 결정하는 모듈은 쿼리 평가 엔진입니다. 쿼리 평가 엔진은 사용자로부터 입력받은 SQL 구문을 처음 읽어들이는 모듈입니다. 쿼리 평가 모듈은 추가로 파서 또는 옵티마이저와 같은 여러 개의 서브 모듈로 구성됩니다. ● 파서 파서의 역할은 구문을 분석하는 것 입니다. 사용자로부터 입력받은 SQL구문이 올바른지 검사를.. 2019. 6. 4.
[Oracle] DBMS 구조 1. DBMS 구성 데이터베이스를 사용하기 위해서 우리는 SQL구문으로 DBMS를 이용하여 다양한 처리를 수행합니다. 그리고 저장 장치에 있는 데이터에 접근해서 데이터를 읽고 쓰게 되니다. 이제 DBMS 내부에는 어떠한 기능이 있는지 알아보도록 하겠습니다. ● 쿼리 평가 엔진 쿼리 평가 엔진은 사용자로부터 입력받은 SQL 구문을 분석하고, 어떤 순서로 기억장치의 데이터에 접근할지를 결정합니다. 이때 결정되는 계획을 '실행 계획'이라고 부릅니다. 이러한 실행 계획에 기반을 둬서 데이터에 접근하는 방법을 '접근 메서드'라고 부릅니다. 쿼리 평가 엔진은 계획을 세우고 실행하는 DBMS의 핵심 기능을 담당하는 모듈입니다. ● 버퍼 매니저 DBMS는 버퍼라는 메모리 영역을 확보해둡니다. 이 메모리 영역을 관리하는.. 2019. 6. 4.
[Java] 22. JAR (Java ARchive Files) 파일 자바로 개발을 하다보면 종종 JAR 파일을 마주 칠 수 있습니다. JAR 파일이란 무엇일까요? JAR (Java ARchive Files, 자바아카이브)는 여러개의 자바클래스 파일과, 클래스들이 이용하는 관련 리소스(텍스트, 그림 등) 및 메타데이터를 하나의 파일로 모아서 자바 플랫폼에 응용 소프트웨어나 라이브러리를 배포하기 위한 소프트웨어 패키지 파일 포맷입니다. 정리를 해보면 아래와 같습니다. - 일종의 자바 프로젝트 압축 파일 - ZIP 파일 압축 알고리즘을 기반으로 만들어짐 >> 반디집, 알집과 같은 zip 프로그램과 호환 가능 - JAR 파일은 웹브라우저에서 빠르게 다운로드할 수 있도록, 자바 애플릿을 위한 클래스, 이미지 및 사운드 파일들을 하나의 파일에 압축하여 담고 있는 파일이다. - 사용.. 2019. 6. 4.
[Oracle] DDL(Data Definition Language) SQL에서 데이터 정의어는 데이터베이스의 3층 스키마를 정의하는 등, 데이터베이스 관리자는 데이터 정의어를 사용하여 구축하고자 하는 데이터베이스 여러 개체(Object)를 정확하게 기술해야 합니다. 1. 개체(Object) 데이터베이스의 중요한 객체는 다음과 같습니다. Object 설 명 Table 행과 열로 구성된 2차원 테이블로 데이터를 저장하는 개체 View 하나 이상의 테이블로부터 유도된 데이터의 부분집합 개체 Index 빠른 검색을 위해 사용하는 개체 Sequence 순차적인 숫자 값을 생성하는 개체 2. 테이블 2.1 테이블의 생성 관계형 데이터베이스에서 테이블은 데이터를 저장할 수 있는 개체 테이블의 생성을 위해서는 CREATE TABLE, 변경을 위해서는 ALTER TABLE, 삭제를 위해.. 2019. 6. 2.
[JavaScript] 모듈 1. 모듈화란? 순수한 자바스크립트에서는 모듈(module)이라는 개념이 분명하게 존재하지는 않습니다. 하지만 자바스크립트가 구동되는 호스트 환경에 따라서 서로 다른 모듈화 방법이 제공되고 있습니다. 자바스크립트의 대표적인 호스트 환경인 웹브라우저에서 로직을 모듈화하는 방법에 대해서 알아보겠습니다. * 호스트 환경이란? 호스트 환경이란 자바스크립트가 구동되는 환경을 의미합니다. 자바스크립트는 브라우저를 위한 언어로 시작했지만, 더 이상 브라우저만을 위한 언어가 아닙니다. 예를들어 node.js는 서버 측에서 실행되는 자바스크립트입니다. 이 언어는 자바스크립트의 문법을 따르지만 이 언어가 구동되는 환경은 브라우저가 아니라 서버측 환경입니다. 또 구글의 제품 위에서 돌아가는 Google Apps Script.. 2019. 5. 28.
[JavaScript] 객체 1. 자바스크립트에서의 객체 앞에서 살펴본 배열은 아이템에 대한 식별자로 숫자를 사용했습니다. 데이터가 추가되면 배열 전체에서 중복되지 않는 인덱스가 자동으로 만들어져서 추가된 데이터에 대한 식별자가 됩니다. 이 인덱스를 이용해서 배열안에 저장되어 있는 데이터를 가져올 수 있습니다. 만약 인덱스로 문자를 사용하고 싶다면 객체(dictionary)를 사용해야 합니다. 다른 언어에서는 연관배열(associative array) 또는 맵( map), 딕셔너리(Dictionary)라는 데이터 타입이 객체에 해당합니다. 2. 객체의 생성 다음은 객체를 만드는 방법입니다. var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80}; var grades = {}; grades.. 2019. 5. 28.