본문 바로가기

IT68

[자료구조] 후기 코딩은 자고로 독학이라 생각한다 스스로 찾아보고 배우면서 시행착오를 겪어야지만 진정한 실력이 는다고 생각한다 이런 마인드를 가진 나였지만.. 자료구조 수업은 정말 힘들었다 비유를 하자면 알파벳을 알려주고서 바로 영작을 하라는 수준이었다c언어로 연결리스트를 처음 구현할 때의 그 막막함이란.. 진짜 심장이 턱! 하고 막히는 기분이었다 평소에 머리가 나쁘단 소리를 들어본 적이 없고, 수학 잘한다는 소리를 듣던 내가 그 순간만큼은 정말 심각한 바보가 된 것 같았다 손을 쓸 도리가 없었다 그러한 허탈감과 죄책감은 나의 오기를 발동하여 내 안에 있던 독기를 깨우는 듯했다 아마 연결리스트 문제를 세종대 OJ에 170번 submit 한 사람은 내가 유일하지 않을까..라는 생각이 든다 하지만 부끄러움은 단 1도 없다 내.. 2024. 6. 25.
MariaDB 설치 + 사용 방법 MariaDB는 MySQL에서 포크된 데이터베이스 관리 시스템(DBMS)이기 때문에 MySQL을 대체해서 많이 사용하곤 한다 (문법과 기능이 매우 유사) 주의! 도커가 설치되어 있어야 한다터미널에 명령어 입력# 1. MariaDB 이미지 다운로드docker pull mariadb# 2. MariaDB 컨테이너 실행# MariaDB의 기본 포트 번호는 3306 (MySQL도 동일)# 컨테이너 이름을 mariadb로 지정하고, 기본 포트 3306을 호스트의 포트 3306과 맵핑. 또한, MariaDB의 루트 비밀번호를 root로 설정docker run --name mariadb -d -p 3306:3306 --restart=always -e MYSQL_ROOT_PASSWORD=root mariadb# 3. .. 2024. 6. 25.
도커(docker)란? 도커(docker): LXC(리눅스 컨테이너스)라는 커널 컨테이너 기술을 이용하여 만든 컨테이너 기술 중 하나Go언어로 개발된 오픈소스 프로젝트이며(아파치 라이선스 2.0) 사실상 업계 표준이 되어가고 있는 중이다 Docker는 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있게 해 준다. Docker는 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징하며, 이 컨테이너에는 라이브러리, 시스템 도구, 코드, 런타임 등 소프트웨어를 실행하는 데 필요한 모든 것이 포함되어 있다. Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있으며 컨테이너를 매우 가벼운 모듈식 가상 머신처럼 다룰 수 있게 된다.           출처 및 참고: 도커 공식 홈페이지 https:.. 2024. 6. 25.
Node.js로 초간단 서버 만들어보기 Node.js를 이용해서 아주 간단한 서버를 만들어보자// server.js 파일let http = require('http'); // http 기능을 사용할 수 있도록 모듈을 받아온다function onRequest(request, response) { // onRequest: client에게 요청이 온다면 // http의 head + body 구조 템플릿을 생각하자 response.writeHead(200, {'Content-Type' : 'text/html'}); // 200(정상) response.write('Hello Node.js'); // write = writeBody response.end();}http.createServer(onRequest).listen(8888.. 2024. 6. 24.
[데이터베이스] 빅데이터(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.
[데이터베이스] ep2+) 주요 DBMS들 정리(미완) RDBMS(Relational DataBase Management System): 관계형 데이터베이스표준 언어로 SQL(구조화된 질의 언어: Structured Query Language )을 사용 오라클은 아주 악덕한 기업 (돈에 환장)스타트업에서는 Postgre SQL을 많이 쓴다          ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ NoSQL(Not only SQL): 관계형 데이터베이스가 아닌 dbms(흔히들 SQL을 안쓴다고 해서 no + sql 로 생각한다)데이터를 조직하는 방법에는 리스트, 해시 테이블, 트리, 그래프 등이 있고 각각의 장점과 단점이 명확하다사실 아직까지 NoSQL에 내려진 구체적인 정의는 없다 하지만 NoSQL이라 불리는 데이터베이스.. 2024. 6. 20.
[데이터베이스] ep2) DBMS ※ 트랜잭션(transaction): DB시스템에서 복구 및 병행 시 처리되는 작업의 논리적 단위 ㅇ데이터 사전(= 시스템 카탈로그): 스키마, 스키마 간의 맵핑 정보, 다양한 제약조건 등을 저장한다(메타 데이터: 데이터에 대한 데이터)  [DB 시스템 유틸리티]적재, 백업, 파일 재조직, 성능 모니터링, 파일 정렬, 데이터 압축, 사용자 접근 모니터링, 네트워크와의 인터페이스 등  DBMS의 장점: 데이터 중복 통제, 데이터 동시 공유, 데이터 보안 향상, 데이터 무결성 유지, 장애 발생 시 회복 가능DBMS의 단점: 비용, 복잡한 백업&회복, 중앙 집중 관리로 인한 취약점     데이터베이스 사용자는 3가지로 나뉜다1. DBA(DataBase Administrator): 데이터베이스 관리자2. 최종 .. 2024. 6. 20.