본문 바로가기

Computer Science58

[데이터베이스] ep4-2) SQL: DML ㅁDML(Data Manipulation Language): 데이터 조작어  ① SELECT / FROM문: 테이블 내 데이터를 검색SELECT [ALL | DISTINCT] 속성_리스트FROM 테이블_리스트; -- (테이블 이름)만약 테이블에서 검색하고 싶은 속성 및 테이블이 다수일 경우 콤마로 구분하여 나열 ALL: 결과 테이블에 데이터의 중복을 허용DISTINCT: 결과 테이블에 데이터의 중복을 허용하지 않음  SELECT / FROM문 예제  DISTINCT 예제  ㅇWHERE 조건: SELECT문에 조건을 추가SELECT [ALL | DISTINCT] 속성_리스트FROM 테이블_리스트[WHERE 조건]; 비교 연산자와 논리 연산자를 이용한 검색 조건 제시 (비교 연산자를 이용하여 숫자, 문자, .. 2024. 6. 29.
[데이터베이스] ep4-3) SQL: DCL ㅁDCL(Data Control Language): 데이터 제어어     ① GRANT문: DB 사용자의 사용 권한 부여2가지 타입이 있다1. 객체 권한 부여 by 객체소유자GRANT 권한 ON 객체 TO 사용자 [WITH GRANT OPTION];객체 소유자가 다른 사용자에게 객체에 대한 사용 권한을 부여한다(여러 권한을 한 번에 부여할 수도 있으나 GRANT문으로 부여된 권한은 기본적으로 다른 사용자에게 재부여가 불가능하다) (옵션)PUBLIC 키워드: 모든 사용자에게 똑같은 권한을 부여하는 키워드 ("사용자" 대신 작성)WITH GRANT OPTION: 사용자가 자신이 부여받은 권한을 다른 사용자에게도 부여할 수 있도록 허락하는 옵션  예제 1 예제 2   2. 시스템 권한 부여 by DBA(데이터.. 2024. 6. 29.
[운영체제] ep4-3) Concurrency: Mutual Exclusion and Synchronization Concurrency 방안 3가지1. Software Approaches - 알고리즘을 잘 설계2. HW instruction을 이용3. OS가 제공하는 동기화 툴 이용 (e.g. 세마포, 모니터)1번과 2번에 이어 3번에 대해 알아보자 3. OS가 제공하는 동기화 툴 이용2가지에 대해서 다룰 거다ㅇ세마포(Semaphore): 정수 변수 + (blocked)큐가 결합된 구조체 변수오로지 3개의 동작만 수행한다 ① Initialize: 세마포를 0이나 양수값으로 초기화(음수값으로 초기화 하는 건 의미가 없다) ② semWait: 세마포값 -1, "blocked 큐에서 wait!"if (세마포값 >=0) 통과else if(세마포값  ③ semSignal: 세마포값 +1, "blocked 큐에서 ready 큐.. 2024. 6. 29.
[운영체제] ep4-2) Concurrency: Mutual Exclusion and Synchronization Concurrency 방안 3가지1. Software Approaches - 알고리즘을 잘 설계2. HW instruction을 이용3. OS가 제공하는 동기화 툴 이용 (e.g. 세마포, 모니터)저번 1번에 이어 2번에 대해서 알아보자 2. HW instruction을 이용 - 수정이 불가능하며 중간에 인터럽트로 중단되지도 않는다 HW적으로 움직인다2가지 HW instruction이 있다① Compare & Swap Instruction: 비교하고 같으면 swap// word: 어떠한 저장공간의 주소// 같다면 word를 newval로 swap한다// compare_and_swap 실행 전 word에 저장되어 있던 값을 returnint compare_and_swap(int* word, int test.. 2024. 6. 29.
[운영체제] ep4-1) Concurrency: Mutual Exclusion and Synchronization ㅁ동시성(Concurrency): 여러 작업이 짧은 시간 간격으로 번갈아 가며 수행됨으로써 동시에 처리되는 것처럼 보이게 만드는 것현대 OS는 멀티 프로그래밍, 멀티 프로세싱 등의 기법으로 동시성을 사용하는 데에 있어 발생하는 문제들을 해결해야만 한다 상황) 은행 계좌 파일에 있는 데이터 x를 저장, 처음 잔고는 0원이다 ㅇRace Condition: 결국에는 둘 중에서 마지막으로 작업한 결과만이 남는다Race Condition의 발생을 막기 위해 critical section의 mutually exclusive한 실행이 필요하다 ㅇcritical section(임계구역): Race Condition이 발생할 수 있는 코드 (전혀 예측할 수 없음)critical section은 동시에 실행시키면 안된다.. 2024. 6. 29.
[자료구조] 후기 코딩은 자고로 독학이라 생각한다 스스로 찾아보고 배우면서 시행착오를 겪어야지만 진정한 실력이 는다고 생각한다 이런 마인드를 가진 나였지만.. 자료구조 수업은 정말 힘들었다 비유를 하자면 알파벳을 알려주고서 바로 영작을 하라는 수준이었다c언어로 연결리스트를 처음 구현할 때의 그 막막함이란.. 진짜 심장이 턱! 하고 막히는 기분이었다 평소에 머리가 나쁘단 소리를 들어본 적이 없고, 수학 잘한다는 소리를 듣던 내가 그 순간만큼은 정말 심각한 바보가 된 것 같았다 손을 쓸 도리가 없었다 그러한 허탈감과 죄책감은 나의 오기를 발동하여 내 안에 있던 독기를 깨우는 듯했다 아마 연결리스트 문제를 세종대 OJ에 170번 submit 한 사람은 내가 유일하지 않을까..라는 생각이 든다 하지만 부끄러움은 단 1도 없다 내.. 2024. 6. 25.
[데이터베이스] 빅데이터(Big Data) 빅데이터(Big Data): 기존의 관리 방법이나 분석 체계로는 처리하기 어려운 방대한 양의 정형, 반정형, 비정형 데이터의 집합 [TTA 정보통신용어사전] 빅데이터 유형 3가지- 정형 데이터(Structed Data): 형식과 구조가 있는 데이터  - 반정형 데이터(Semi-Structed Data): 형식과 구조가 변경될 수 있는 데이터 데이터의 구조 정보를 데이터와 함께 제공하는 파일 형식의 데이터e.g. HTML, XML, JSON(Javascript Object Notation), RDF(Resource Description, Framework)질의 처리가 어려워 데이터 분석에 사용 시 정형 데이터로 변환하여 사용한다- JSON 데이터는 CSV(Comma Separated Value) 또는 테이.. 2024. 6. 21.
[데이터베이스] ep4-1) SQL: DDL SQL(Structed Query Language): 구조화된 질의 언어3가지 종류가 있다 DDL, DML, DCL ㅁDDL(Data Definition Language): 데이터 정의어  ① CREATE문: 테이블을 구성하는 속성 타입 지정 및 NULL 값 허용 여부 또는 기본 값 지정 등 정의   (속성 정의)- NOT NULL: 속성에 NULL값 허용 xUSER_ID VARCHAR(10) NOT NULL;(CREATE TABLE문으로 생성되는 테이블을 구성하는 속성은 기본적으로 NULL값을 허용) - DEFAULT: 기본값을 명확히 지정USER_AGE INT DEFAULT 0; -- 디폴트 값을 0으로 설정STUDENT_GRADE CHAR(2) DEFAULT 'A0'; -- 디폴트 값을 'A0'으로.. 2024. 6. 21.
[데이터베이스] ep3) RDB ㅁRDB(Relational DataBase): 관계형 데이터베이스키(key)와 값(value)을 테이블 형태로 구성한 데이터베이스 (참고) RDB 모델https://claremont.tistory.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-ep1-DB-%EB%AA%A8%EB%8D%B8 [데이터베이스] ep1) DB 모델ㅁ논리적 데이터 모델들1. 계층형 데이터 모델  2. 네트워크형 데이터 모델  3. 관계형 데이터 모델(RDB: Relational DataBase)- 우리는 이 RDB에 대해 앞으로 지겹도록 다룰 것이다   ㅁRDB 데이터 모claremont.tistory.com  [릴레이션의 특성]튜플의 유용성: 하나의 릴레이션.. 2024. 6. 21.