분류 전체보기
-
SQL / NoSQL💻 computer science/📦 database 2022. 10. 5. 18:11
관계형 데이터베이스 고정된 행과 열로 구성된 테이블 에 데이터가 저장된다. 테이블의 구조와 데이터 타입등을 사전에 정의하고 정의된 내용에 알맞는 데이터만 삽입할 수 있다. 엄격한 스키마 데이터는 테이블에 레코드로 저장되며, 각 테이블에는 명확하게 정의된 구조가 있다. 관계 데이터들을 여러개의 테이블으로 나누어, 데이터들의 중복을 피할 수 있다. 테이블 간의 관계를 직관적으로 파악할 수 있다. SQL 구조화된 쿼리 언어 특정 유형의 데이터베이스와 상호 작용하는데 사용하는 쿼리 언어 비 관계형 데이터베이스 데이터가 고정되어 있지 않은 데이터 베이스 데이터의 모델에 따라 유형이 다양하다. 스키마가 없는 것이 아니다! 특징 데이터 간의 관계를 정의하지 않는다. 대용량의 데이터를 저장할 수 있다. 분산형 구조이다..
-
트랜잭션💻 computer science/📦 database 2022. 10. 5. 01:46
🤔 트랜잭션💡 트랜잭션- 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위- 데이터베이스에 접근하는 방법은 쿼리, 즉 여러 개의 쿼리들을 하나로 묶는 단위 ACID 특징 1. 원자성 (Atomicity)“all or nothing” 원자성(atomicity)은 트랜잭션이 이루어지는 작업(관련된 일)이 모두 수행되었거나 되지 않았거나를 보장하는 특징 트랜잭션 단위로 여러 로직들을 묶을 때 외부 API를 호출하는 것이 있으면 안된다!!! 왜❓트랜잭션이 update, insert, 외부 API 호출로 이루어진 상황에서, 외부 API 호출이 실패하여 롤백을 한다면 내부적인 롤백에는 문제가 없다.하지만, 만약 외부 API 호출을 완료하고 나서 롤백을 한다면, 외부 API로 반영된 내용은 롤백하..
-
정규화💻 computer science/📦 database 2022. 10. 5. 01:41
정규화 ❗ 💡 릴레이션 간의 잘못된 종속 관계로 인한 데이터베이스 이상 현상 을 해결하거나, 저장 공간을 효율적으로 사용하기 위해 릴레이션을 여러 개로 분리하는 과정 테이블간 데이터 중복을 줄이고, 중복된 데이터를 허용하지 않음으로 써 무결성을 향상(유지)하고, DB의 저장 용량도 줄인다. 데이터베이스 이상 현상 (Anomaly) 서로 공유하는 데이터임에도 불구하고 각자의 튜플에 독립적으로 존재하기 때문에 발생 삽입 이상 데이터 삽입시 특정 속성에 해당하는 값이 없어 NULL을 입력해야 하는 현상 수정 이상 데이터 수정시 중복된 데이터의 일부만 수정되어 일어나는 데이터 불일치 현상 삭제 이상 데이터 삭제시 같이 저장된 다른 정보까지 연쇄적으로 삭제되는 현상 정규화 원칙 자료의 중복성은 감소해야 한다. 독..
-
데이터베이스 기본💻 computer science/📦 database 2022. 10. 5. 01:39
데이터베이스 ❓ DB 는 일정한 규칙, 혹은 규약을 통해 구조화되어 저장되는 데이터의 모음 해당 데이터베이스를 제어, 관리하는 통합 시스템을 DBMS라고 한다. 데이터베이스 안에 있는 데이터들은 특정 DBMS마다 정의된 쿼리 언어(query language)를 통해 삽입, 삭제, 수정, 조회 등을 수행할 수 있다. 실시간 접근과 동시 공유가 가능하다. 특징 실시간 접근성 : 실시간 처리에 대한 응답 가능 계속적인 변화 : 삽입, 삭제, 갱신, 최신의 상태로 유지 동시 공용 : 다수의 사용자가 동시에 같은 내용의 데이터를 이용할 수 있어야 한다. 내용에 의한 참조 : 사용자의 요구에 따른 데이터 내용으로 찾는다. 엔터티 엔터티(entity)는 사람, 장소, 물건 등 여러 개의 속성을 지닌 명사를 의미한다...
-
1장 - 도메인 모델 시작하기📕 book/도메인 주도 개발 시작하기 2022. 10. 4. 22:12
도메인 도메인은 여러 하위 도메인으로 구성된다. 한 하위 도메인은 다른 하위 도메인과 연동하여 완전한 기능을 제공 ex) 고객이 물건을 구매 주문, 결제, 배송, 혜택 하위 도메인의 기능이 엮이게 된다. 특정 도메인을 위한 소프트웨어라고 해서 도메인이 제공해야 할 모든 기능을 직접 구현하는 것은 아니다. 도메인마다 고정된 하위 도메인이 존재하는 것은 아니다. 하위 도메인을 어떻게 구성할지 여부는 상황에 따라 달라진다. 도메인 전문가와 개발자 간 지식 공유 전문가 해당 도메인에 대한 지식과 경험을 바탕으로 본인들이 원하는 기능 개발을 요구 개발자 전문가의 요구사항을 분석하고 설계하여 코드를 작성하며 테스트하고 배포한다. 요구사항을 올바르게 이해하는 것이 중요하다. “Garbage in, Garbage ou..
-
Mac에 Hadoop 설치 / 실행 해보기💾 big data/🐘 hadoop 2022. 10. 3. 17:24
Install / Setting $ wget 수정해야 하는 파일들 hadoop-env.sh (하둡 사용) core-site.xml (Pseudo-Distributed Mode) hdfs-site.xml (Pseudo-Distributed Mode) mapred-site.xml (yarn) yarn-site.xml (yarn) Pseudo-Distributed Mode??? 각 하둡 daemon이 각각의 분리된 Java 프로세스에서 실행되는 모드 standalone 모드와 다르게 가상으로 분산시스템을 경험할 수 있다. hadoop-env.sh $ vi hadoop-env.sh ## Java 경로 설정 export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0..
-
Elasticsearch + Springboot🔍 elastic search 2022. 9. 27. 15:34
Docker-compose로 Elasticsearch 설치 compose 파일 생성 vi elasticsearch.yml version: '3.7' services: es: image: docker.elastic.co/elasticsearch/elasticsearch:7.15.2 container_name: elasticsearch environment: - node.name=single-node - cluster.name=beomsic - discovery.type=single-node ports: - 9200:9200 - 9300:9300 networks: - es-bridge kibana: container_name: kibana image: docker.elastic.co/kibana/kibana..
-
ES - Aggregations🔍 elastic search 2022. 9. 22. 17:23
Aggregations Elasticsearch는 검색엔진 뿐 아니라 로그 분석 을 비롯한 다양한 목적의 데이터 시스템으로 사용되고 있다. 이렇게 활용이 가능한 이유는 데이터를 단순히 검색할 뿐 아니라 여러가지 연산을 할 수 있는 Aggregation 기능이 있기 때문이다. Kibana 에서 바 차트, 파이 차트 등으로 데이터를 시각화 할 수 있는데 여기서 Aggregation 기능을 사용 aggregation은 번역하면 “집계” 라는 뜻이지만, ES에서는 원문대로 aggregation 혹은 애그리게이션으로 많이 표현. 크게 세 종류 Metrics Aggregations Bucket Aggregations Pipeline Aggregations Metrics Aggregations 필드 값에서 합계 또는..