DB 96

mongodb 명령어

1. 용어 sql mongo db database database table collection row document column field 2. 특정 조건에 맞는 값 찾기 : db.collection.find({“column”:{“$parameter”:x”}}) parameter 설명 gt(e) 주어진 값 보다 큰값(같은 값) lt(e) 주어진 값 보다 작은값(같은 값) ne 주어진 값과 일치하지 않는 값 in 주어진 배열 안에 속하는 값 nin 주어진 배열안에 속하지 않는 값 3. 포함시킬 칼럼찾기 : db.collection.find({"column":a},{"column1":1,"column2":0}) 파라미터 설명 1 주어진 배열 안에 속하는 값 0 주어진 배열안에 속하지 않는 값 4. 정렬하..

DB/MONGODB 2021.08.10

[빅데이터분석기사] 부문별 데이터베이스 발전과정

1. 제조부문 (1) 실시간 기업(RTE)이 대표적 화두 (2) 제조부문 ERP(전사자원관리, Enterprise Resource Planning) 시스템 도입과 dw, crm, bi등 기술 적용 2. 유통부문 (1) KMS(Knowledge Management System)를 위한 별도의 백업시스템 3. 물류부문 (1) CALS(commerce at light speed) : 제품생산, 설계, 개발, 유통에 이르기 까지 제품라이프사이클 전반의 데이터를 통합 (2) port-MIS : 항만운영정보시스템 (3) KROIS : 철도운영정보시스템 4. 지리부문 (1) GIS(Geograpic Information System) : 지리정보시스템 (2) LBS(Location-Based System) : 위치정..

DB/[이론] 2021.04.14

데이터베이스 클러스터

정의 하나의 DB를 여러개의 서버상 구축(데이터 파티셔닝 : DB를 여러부분으로 분할) 데이터 통합시 성능, 가용성위해 DB차원의 파티셔닝 클러스터링 사용 장점 1. 병렬처리 : 빠른 데이터처리 검색 2. 고가용성 : 파티션에 장애생겨도 중단안됨 3. 선응향상 : 선형적 성능향상 리스크 공유 관점에서 구분 1. 무공유 (1) 완전히 분리된 데이터의 서브집합에 대한 소유권 갖음 (2) 각 데이터는 소유권 갖는 인스턴스가 처리 (3) 대부분 DB클러스터가 무공유 방식 (4) 장점 : 노드확장 제한없음 (5) 단점 : 별도의 폴트톨로런스 필요 2. 공유 (1) 각인스턴스는 모든 데이터에 접근 가능 (2) 데이터공유시 sah네트워크 필요 (3) 장점 : 폴트톨로런스 제공 (4) 단점 : 클러스터 커지면 병목현상..

DB/[이론] 2021.03.28

[ADP] CDC(Change Data Capture)

개념 1. DB내 데이터에 대한 변경 식별, 후속처리 자동화 2. 실시간 또는 근접 실시간 데이터 통합을 기반으로 DW구축 3. 스토리지 ~ 어플리케이션 등 다양한 계층, 다양한 기술로 구현 구현방법 1. time stamp on row : 변경이 반드시 인지되어야 하는 테이블 내 마지막 변경 시점을 기록하는 타임스템프 칼럼두고 변경 식별 2. version number on row : 변경이 인지되어야 하는 테이블 해당 레코드의 버전기록 칼럼을 두고 식별 3. status on rows : 1, 2의 보안용도. 데이터변경여부를 T/F로 저장 4. Time/version/status on rows : 1, 2, 3 모두 사용 5. triggers on tables : 트리거 이용하여 변경, 배포 6. e..

DB/[이론] 2021.03.22

[ADP] 분야별 데이터베이스

1. ERP : 전사적 자원관리. 인사, 재무 생산 등의 경영자원을 하나의 통합 시스템으로 구축 2. BI : 기업의 데이터를 정리해서 의사결정에 활용하는 프로세스 3. RTE : 실시간 기업의 새로운 경영시스템, 회사 전부분의 정보를 하나로 통합 4. EAI : 기업내 상호 연관된 모든 어플리케이션 연동 (중앙집중관리) 5. EAW : DW를 전사적 차원으로 확장 6. KMS : 지식관리시스템(기업경영을 지식이라는 관점에서 조명) 7. RFID : 주파수를 이용해 식별

DB/[이론] 2021.03.19

[ADP] OLTP와 OLAP

OLTP - 호스트 컴퓨터와 온라인으로 접속된 여러 단말기 간의 처리 형태. - 호스트 컴퓨터가 데이터베이스를 엑세스하고 바로 처리결과 돌려줌. - 트랜젝션 중심 OLAP - 비즈니스 관점에서 쉽고 빠르게 데이터에 접근해서 의사결정에 활용할 수 있는 정보를 얻을 수 있게 해주는 기술 - 중간 매개자나 매개체 없이 대화식으로 정보를 분석하고 의사결정에 활용. 다차원 데이터 대화식 분석 - OLAP의 탐색기법

DB/[이론] 2021.03.16

[SQL]sql코테전에 보기

특정 조건 sick이라는 조건과 같은것 SELECT ANIMAL_ID,NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION is "Sick" 특정 조건 아닌것 SELECT ANIMAL_ID,NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION NOT like "Aged" 정렬 1. 오름차순 SELECT ANIMAL_ID,NAME FROM ANIMAL_INS ORDER BY ANIMAL_ID 2. 내림차순 SELECT ANIMAL_ID,NAME,DATETIME FROM ANIMAL_INS ORDER BY NAME,DATETIME DESC 3. 상위 1개 SELECT NAME FROM ANIMAL_INS ORDER BY DATETIME LIMIT 1 최댓값 ..

DB/SQL 2021.03.06

파이썬 SQL연동

파이썬과 mysql연동 파이썬과 mysql을 연동해서 파이썬에서 데이터베이스에 접근하고 쿼리문등을 실행해 본다. 코드 1. 필요 라이브러리 다운 from sqlalchemy import create_engine import pymysql pymysql.install_as_MySQLdb() 2. 파라미터 설정 # DB이름 설정 db_name = '' # mysql 아이디 db_id = '개인id' # mysql db ip (로컬이면 localhost) db_ip = 'localhost' # mysql db 패스워드 db_passwd = 'pw' # db port db_port = '3306' * DB이름? * 개인 id? mysql command line을 실행하고 터미널에서 아래와 같이 입력하면 user..

DB/SQL 2021.02.10

[SQL] DDL (create drop alter)

CREATE 1. 테이블 생성 creat table (테이블이름) ( (컬럼이름) (타입)(글자수) (옵션) ); create table dept( deptno varchar2(4) primary key, deptname varchar2(20); ); create table emp ( empno number(10), ename varchar2(20), sal number(10,2) default 0, --소수점 2째자리, 기본값은 0 constraint emppk primary key(empno), --empno를 기본키로 constraint deptfk foreign key (deptno) --deptno를 외래키로 references dept(deptno), on delete cascade --dep..

DB/SQL 2020.07.11

[SQL] 내장함수

1. 문자형 함수 함수 설명 acsii(문자) 문자,숫자를 acsii 코드값으로 char(acsii 코드값) acsii 코드값을 문자로 substr(문자열,m,n) 문자열 m부터 n개 자르기 concat(문자열1,문자열2) 문자열1||문자열2 문자열 합치기 lower(문자열) 소문자로 upper(문자열) 대문자로 length(문자열) or len(문자열) 문자열 길이 ltrim(문자열,지정문자) 왼쪽에 (반복되는)지정문자 삭제, or 왼쪽 공백삭제 rtrim(문자열,지정문자) 오른쪽에 (반복되는)지정문자 삭제, or 오른쪽 공백삭제 trim 양쪽에 반복되는 지정문자 삭제 or 양쪽공백삭제 2. 날짜형 함수 함수 설명 sysdate 오늘의 날짜를 날짜 타입으로 extact('year' or 'month' ..

DB/SQL 2020.07.11

[SQL] JOIN(조인)

* 열은(칼럼은) SELECT에서 구한다. 여기서 말하는 모든 JOIN은 행을 말한다! 1. 등가(EQUI) 조인 ​ (1) 등가 조인(INNER JOIN) --EMP와 DEPT 테이블을 DEPTNO칼럼으로 SELECT * FROM EMP, DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO; --EMP와 DEPT 테이블을 INNER JOING, 같은게 여러개있다면 여러 조합으로 JOIN SELECT * FROM EMP INNER JOIN DEPT ON EMP.DEPTNO=DEPT.DEPTNO; - inner join할때 select* 하면, on에 쓰인 조건 열 2개가 모두 출력된다. - 겹치는것이 여러개 있다면 각 조합별로 모두 출력한다. 예를들어 emp.dptno에 1이 2개, dept..

DB/SQL 2020.07.11

[SQL] DCL

권한부여 GRANT (권한리스트) ON (테이블) TO (사용자) (WITH GRATN OPTION) GRANT SELECT, INSERT, DELETE ON R TO KIM WITH GRANT OPTION; -- limbest 사용자에게 emp테이블에 대해서 다음과 같은 권한을 부여한다. grant select, insert, update, delete on emp to limbest; with grant option --권한을 부여할 수 있는 권한을 부여 취소 REVOKE (GRANT OPTION FOR) (권한리스트) ON (개체) FROM 사용자 (CASCADE) *GRANT OPTION FOR : 옵션을 붙이면 부여할수있는 권한만 삭제. 안붙이면 권한&부여권한 모두 삭제 REVOKE GRANT ..

DB/SQL 2020.07.11

[SQL]계층형 쿼리(START WITH, CONNECT BY)

SELECT LPAD(' ',2*(LEVEL-1)) || item_name item_names, item_id, parent_id FROM bom START WITH parent_id is null connect by prior item_id = parent_id; 1. LPAD 공백을 만들어주기 위한 함수. 빈칸(' ')을 LEVEL만큼 왼쪽에 넣어줌으로서 들여쓰기시켜줌 2. start with (조건) 루트노드를 지정하는것. 조건을 만족하는 모든 행이 루트 노드가 된다. 3. connect by (조건) prior (자식노드) = (부모노드) 로서 계층을 만들어 주는것

DB/SQL 2020.07.11