전체 글
-
MongoDB 1 - Database 구조, Connection, NodeJS 서버에서 CRUDData Base/MongoDB 2024. 7. 12. 17:31
1. RDB와 MongoDB 계층구조 비교 2. Mongoose Connection2.1. MongoDB 드라이버 https://www.mongodb.com/ko-kr/docs/drivers/ MongoDB로 개발 시작 - MongoDB 드라이버공식 MongoDB 라이브러리 중 하나를 사용하여 애플리케이션을 MongoDB Atlas 배포서버 또는 자체 호스팅 MongoDB 클러스터에 연결할 수 있습니다. Atlas에 대해 자세히 알아보려면 MongoDB Atlas란 무엇인가www.mongodb.com위 링크에 각 언어 별로 MongoDB를 제어할 수 있는 드라이버를 제공한다. 2.2. MongoDB 노드 드라이버https://www.mongodb.com/ko-kr/docs/drivers/node/c..
-
Mongo DB - Compass CLI로 기본적인 CRUDData Base/MongoDB 2024. 7. 12. 11:10
Compass CLI로 기본적인 CRUD1.데이터베이스 생성과 collection 1.1. MogoDB 데이터 베이스 생성MongoDB는 db를 생성하지 않아도 해당 db의 데이터를 생성하면 해당 db가 생성이된다. 1.2. 명령어 db.users.insertOne()db.users.insertOne({name:"Sam Kim", email:"samail@gmail.com"})해당 명령어를 쳤을때 출력되는 결과는 해당 명령어가 성공했다는 의미이다. 1.3. 생성된 users데이터 모두 조회db.users.find()find() 함수를 사용하여 명령어를 실행하면 users에 관련된 데이터를 모두 조회해온다. 1.4. 새로고침위 과정을 모두 거치고 database를 새로고침하면 blog 데이터베이스가 생성..
-
운영체제1 - 운영체제 소개(기본개념, 발전목적,기능)CS지식/운영체제 2024. 7. 11. 18:05
1. 운영체제의 개념1.1. 운영체제의 구성요소소프트웨어 - 컴퓨터가 기능을 수행하는데 필요한 모든 프로그램을 의미한다. 시스템 소프트웨어, 유틸리티, 응용 프로그램 등으로 구성된다.시스템 소프트웨어 : 컴퓨터 자원을 관리하고 응용프로그램을 실행을 지원하여 컴퓨터를 제어하는 프로그램이다. 운영체제를 비롯해 장치 드라이버 등으로 구성된다. 유틸리티 : 응용 프로그램보다 작지만 컴퓨터의 여러 처리 과정을 보조하여 시스템을 유지하고 성능을 개선하는 프로그램으로, 운영체제를 돕는 역할을 하며 필요에 따라 사용자나 운영체제가 메모리 상주 프로그램으로 설치하기도 한다. 응용 프로그램 : 특정 작업을 수행하려는 목적, 즉 어떤 문제를 해결하려고 사용자나 전문가가 만든 프로그램이다. 웹브라우저, 워드프로세서, 게임, ..
-
네트워크의 기초 - 처리량과 지연시간, 토폴로지와 병목 현상나의 개발 이야기 2024. 7. 5. 11:31
네트워크의 기초네트워크란 노드(node)와 링크(link)가 서로 연결되어 있거나 연결되어 있으며 리소스를 공유하는 집합을 의미한다.여기서 노드란 서버,라우터, 스위치 등 네트워크 장치를 의미하고 링크는 유선 또는 무선을 의미한다.노드 - 서버, 라우터, 스위치 등 네트워크 장치링크 - 유선, 무선1.처리량과 지연 시간처리량지연시간네트워크를 구축할 때는 '좋은' 네트워크를 만드는 것이 중요하다.좋은 네트워크란 1)많은 처리량을 처리할 수 있으며 2)지연 시간이 짧고 3)장애 빈도가 적고 4)좋은 보안을 갖춘 네트워트를 말한다. 1.2.처리량(throughput)처리량은 링크 내에서 성공적으로 전달된 데이터의 양을 말하며 보통 얼만큼의 트래픽을 처리했는지를 나타낸다. '많은 트래픽을 처리한다 = 많은 처..
-
MongoDB - 개념설명, 초기 설정, 데이터 저장·조회Data Base/MongoDB 2024. 4. 25. 15:08
MongoDB 개념설정과 초기설정RDB와 NoSQL 개념의 차이 RDB의 경우 데이터베이스에 테이블이 여러개 있지만 NoSQL MongoDB의 경우 컬렉션이 여러개 있다.각 컬렉션에는 레코드(record)가 아닌 도큐먼트(document)형태로 기록 된다. 레코드와 도큐먼트는 그 명칭이 다를 뿐만 아니라 데이터베이스의 핵심 철학에 큰 차이점이 있다. 큰 차이점은 RDB와 다르게 MongoDB의 경우는 스키마리스로 컬렉션의 문서 즉 데이터나 항목이 RDB처럼 항상 같은 구조를 가질 필요가 없다. RDB의 경우 User타입의 데이터는 id,이메일,이름,닉네임,비밀번호 등등 정해져있는 정보의 구조가 있었다면 NoSQL의 경우 User라는 한 컬렉션 안에 아무 유형의 데이터가 있어도 된다. 보통은 비슷한 구조..
-
Sequelize - 실전활용(Update,Delete,Relation설정)FrameWork/ORM 2024. 4. 24. 11:23
Sequelize 실전활용Update - catch~then 체인과 pk를 이용exports.postEditProduct = (req, res, next) => { const prodId = req.body.productId; const updatedTitle = req.body.title; const updatedPrice = req.body.price; const updatedImageUrl = req.body.imageUrl; const updatedDesc = req.body.description; Product.findByPk(prodId) .then( product =>{ product.title = updatedTitle; product.price ..
-
Prisma - Transactions과 다양한 부가기능FrameWork/ORM 2024. 4. 17. 10:35
Prisma에서 트랜잭션과 다양한 부가기능 Prisma - Doc/PrismaClient/Queries https://www.prisma.io/docs/orm/prisma-client/queries/transactions Transactions and batch queries (Reference) | Prisma Documentation This page explains the transactions API of Prisma Client. www.prisma.io 트랜잭션은 결과적으로 성공 또는 작동하지 않음이 보장되는 읽기/쓰기 작업이다. 트랜잭션이 상자속에 이루어진다고 상상해보자 격리된 상자속에서 SQL 문을 실행하는 것과 같다. 따라서 트랜잭션은 모든 명령문이 성공적으로 실행되거나 실행될 것임을 보..
-
Prisma - 객체 간의 관계 설정, 1:N, 1:1, N:MFrameWork/ORM 2024. 4. 16. 10:33
Prisma 객체간의 관계 설정 이번 게시물에서는 DB에서 자주 사용되고 블로그를 통해 많이 소개되었던 1대다(1:N), 1대1(1:1), 다대다(N:M) 관계들을 Prisma는 어떤 인터페이스를 사용해서 이를 설정할 수 있도록 하는지 알아볼것이다. 1 : N (One to Many Relations) 이 관계의 경우는 테이블 A의 하나의 레코드는 테이블 B의 여러 레코드와 관련되어 있다. 다만 테이블 B는 하나의 A의 레코드하고만 연결된다. 위 그림에서 와 같이 사용자는 여러번 주문을 할수 있다. 하지만 주문은 주문자로써의 사용자정보를 하나만 가진다. 1 : 1 (One to One Relations) 한명의 사용자는 하나의 프로필만 가지게 되고 프로필 입장에서도 하나의 사용자만 가지게 된다. N : ..