전체 글 124

[2과목 소프트웨어 개발] 데이터 입·출력 구현 - 041. 데이터 입 · 출력

SQL를 사용해 데이터 조작의 모든 행위를 함데이터 접속(Data Mapping) : 객체와 데이터를 연결하는 것트랜잭션 : 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들1. SQL (Structured Query Language)IBM SEQUEL에서 유래관계대수와 관계해석을 기초로 한 혼합 데이터 언어데이터 정의어(DDL), 데이터 조작어(DML), 데이터 제어어(DCL)로 구분2. 데이터 접속 (Data Mapping)SQL Mapping프로그래밍 코드 내 SQL을 직접 입력하여 DBMS의 데이터에 접속하는 기술JDBC, ODBC, MyBatisORM (Object-Relational Mapping)객체지향 프로그래밍의 객체(Object)와 관계형(..

[2과목 소프트웨어 개발] 데이터 입·출력 구현 - 040.데이터베이스 개요

데이터들을 논리적인 구조로 조직화하거나 물리적인 공간에 구축하는 것논리 데이터 저장소 : 데이터 간의 연관성, 제약조건을 식별해 논리적인 구조로 조직화한 것물리 데이터 저장소 : 논리 데이터 저장소에 저장된 데이터와 구조들을 하드웨어적인 저장장치에 저장한 것논리 데이터 저장소를 거쳐 물리 데이터 저장소를 구축하는 과정 = 데이터베이스 구축과정1. 데이터베이스여러 사람에 의해 공동으로 사용될 데이터를 중복을 배제하여 통합하고, 쉽게 접근하여 처리할 수 있도록 저장장치에 저장하여 항상 사용할 수 있도록 운영하는 **운영** 데이터통합된 데이터(Integrated Data) : 자료 중복 베제저장된 데이터(Stored Data) : 컴퓨터가 접근할 수 있는 저장매체에 저장된 자료운영 데이터(Operationa..

[2과목 소프트웨어 개발] 데이터 입·출력 구현 - 039. ⭐ 검색 - 이분검색 / 해싱

1. 이분검색 (Binary Search)전체 파일을 두 개의 서브파일로 분리해가면서 Key 레코드를 검색파일의 중간값과 비교하면서 검색을 반복중간 레코드 번호 M = (F + L) / 2 (F:첫 번째, L:마지막)2. 해싱 (Hashing)해시 테이블(Hash Table) 기억공간을 할당하고 해시 함수(Hash Function)을 이용해 레코드 키에 대한 해시 테이블 내의 홈 주소(Home Address)를 계산한 후 주어진 레코드를 해당 기억장소에 저장하고나 검색 작업을 수행하는 방식1) 해시 테이블 (Hash Table)레보드를 한 개 이상 보관할 수 있는 버킷들로 구성된 기억공간버킷(Bucket)하나의 주소를 갖는 파일 구역버킷 크기는 같은 주소에 포함될 수 있는 레코드 수슬롯(Slot)한 개의..

카테고리 없음 2024.06.17

[2과목 소프트웨어 개발] 데이터 입·출력 구현 - 038. ⭐ 정렬 (Sort)

1. 삽입 정렬 (Insertion Sort)이미 순서화된 파일에 새로운 하나의 레코드를 순서에 맞게 삽입시켜 정렬2. 쉘 정렬 (Shell Sort)Insertion Sort 확장매개변수 값으로 서브파일을 구성 → 각 서브파일을 Insertion 정렬방식으로 순서 배열하는 과정을 반복하는 정렬방식3. 선택 정렬 (Selection Sort)n개 레코드 중 최소값을 찾아 첫 번째 레코드 위치에 놓고, 나머지 (n-1)개 중 다시 최소값을 찾아 두 번째 레코드 위치에 놓는 방식을 반복4. 버블 정렬 (Bubble Sort)인접한 두 개의 레코드 키 값을 비교해 그 크기에 따라 레코드 위치를 서로 교환하는 정렬방식정렬 여부를 플래그 비트(f)로 결정5. 퀵 정렬 (Quick Sort)레코드의 많은 자료 이동..

[2과목 소프트웨어 개발] 데이터 입·출력 구현 - 037. ⭐ 트리 (Tree)

정점(Node, 노드)과 선분(Branch, 가지)을 이용해 사이클을 이루지 않도록 구성한 그래프(Graph)의 특수한 형태트리 응용분야가족의 계보(족보)조직도트리 관련 용어노드(Node) : 자료 항목과 다른 항목에 대한 가지를 합친 것 (A, B, C, D, E, F, G, H, I, J)근 노드(Root Node) : 트리의 맨 위에 있는 노드 (A)디그리(Degree) : 각 노드에서 뻗어 나온 가지의 수 (A=2, B=2, E=1)단말 노드(Terminal Node) = 잎 노드(Leaf Node) : 자식이 하나도 없는 노드 = 디그리가 0인 노드 (F, G)자식 노드(Son Node) : 다음 레벨의 노드 (H, I의 부모 노드=D)부모 노드(Parent Node) : 이전 레벨의 노드 (D..

[2과목 소프트웨어 개발] 데이터 입·출력 구현 - 036. ⭐ 자료구조

자료의 표현과 관련된 연산자료들을 조직하고 구조화 하는 것모든 연산 처리 가능자료구조에 따라 프로그램 실행시간이 달라짐1. 자료구조의 분류1) 선형 구조(Linear Structure)배열(Array)선형 리스트(Linear List)연속 리스트(Contiguous List)연결 리스트(Linked List)스택(Stack)큐(Queue)데크(Deque)2) 비선형 구조(Non-Linear Structure)트리(Tree)그래프(Graph)2.  배열 (Array)동일한 자료형 데이터들이 같은 크기로 나열되어 순서를 갖는 집합정적 자료구조기억장소 추가 어려움. 데이터 삭제 시 빈공간으로 남아있어 메모리 낭비 발생첨자를 이용해 데이터 접근반복적인 데이터 처리 작업에 적합한 구조첨자 개수에 따라 n차원 배열..

[Linux] starbucks 데이터 넣기

1. IPnetmask 다르면 통신이 안된다.000.000.00.000/24 (ip addr)24 : netmask 1의 갯수000.000.00.1맨 뒤의 1은 Gateway 이다192 : C 클래스172 : B 클래스2. MariaDB콘솔 접속mysql -u {계정} -p {비밀번호}3. VPN가상망4. 폴더구조 설명bin명령어가 들어가 있는 폴더cp, mkdir, rmdir, mv, rm, cat 등boot부팅관련 파일이나 커널 등 시스템 부팅 시 필요한 파일이 들어있는 디렉토리dev하드 디스크, CD-ROM, 터미널 등과 같이 실제 존재하는 물리적인 장치 등을 파일화 하여 관리하는 디렉토리etc시스템 환경 설정 파일 및 부팅 관련된 스트립트 파일이 있는 디렉토리home개인 사용자 디렉토리lib각 라..

AI SW & MLOps/Linux 2024.06.04

[Linux] 데이터 가져오기 & MariaDB 설치

실시간(nohup) 백그라운드(&) 실행nohup으로 실행할 쉘 스크립트 파일은 현재 퍼미션이 755 상태여야 한다.nohup 끄기kill -9 PIDnohup jupyter -lab --ip=0.0.0.0 &ssh RSA key 발급아래 명령어를 실행하면 ~/.ssh폴더가 생기고 key 파일이 생긴다.id_rsa(600) : private keyid_rsa.pub(644) : public keyssh-keygen -k rsacat id_rsa.pub > authorized_keysid_rsa.pub를 authorized_keys 파일에 주입시킨다.> : 새로 파일은 만들어서 내용을 주입>> : 없으면 새로 만들고 있으면 updateos.listdir폴더에 있는 파일 리스트를 뿌려준다.os.walk그 파..

AI SW & MLOps/Linux 2024.06.04

[Linux] Jupyter 설치 및 설정 & vim

api 서버(Fast API 등) 전에 메시지 서버(redis)를 띄어놓는다.Queue에 데이터가 많이 쌓이면 터진다. ⇒ Queue 메모리를 늘려준다.⭐ 웹서버 VS WAS 차이점 알 것웹서버정적인 것HTTP 요청 받기HTML, 이미지, CSS 파일 등의 정적인 콘텐츠 제공nginxWAS동적인 것동적 콘텐츠를 처리하며 웹 서버와 연동해 완전한 웹 어플리케이션 제공웹서버보다 더 많은 기능 제공데이터베이스와 상호작용비즈니스 로직 수행프로그래밍 언어(Java, .NET)로 작성된 웹 어플리케이션의 실행환경 제공클라이언트의 요청에 대한 동적 응답 생성ContainerKubernetes간혹 웹서버와 WAS의 기능을 하나의 소프트웨어에 통합되어 제공 1. Vim보기 모드수정 모드명령어 모드 2. jupyter 설..

AI SW & MLOps/Linux 2024.06.04

[Linux] 환경설정

1. Virtual Box 실행설정새로 만들기ISO 이미지 파일 선택사용자 이름 / 암호 설정하드웨어 메모리 설정메모리 : 8192MB프로세서 : 2CPU하드 디스크 기본값새 가상 하드 디스크 : 25GB키보드 설정호스트키 조합 : Left Window + Shift들어가기Ubuntu software 에서 Terminator 설치Administrator 계정 만들기User → Unlock → Add User Account Type : Administrator로 설정사용자 이름 / 암호 설정호스팅 설정sudo shutdown -h now : 가상머신 나가기Virtual Box 설정어댑터2호스트 전용 어댑터 선택가상머신 재실행Terminator 실행 # 상태확인sudo service ssh statusErr..

AI SW & MLOps/Linux 2024.06.04