MLOps 1127 필기

YoonA Kim·2024년 11월 27일
  1. storage

storage: 데이터를 저장하고 관리하는 컨셉적인 단어로 크게 두가지 방법: file system과 database

file system: 파일을 효율적으로 관리하기 위한 저기술 기법
파일은 파일로 덩어리로 본다. 내용물은 노상관.
덩어리가 어디에 얼마만한 크기로 있는지만 중시함
변화되는 공간을 관리하는 것이 목표.
옛날에 디스크 조각모음을 하는 이유가 이 파일시스템을 깔끔정리하는 것
즉 수납에만 전문 / 정렬이나 찾아주는 역할에는 메리트가 없는 친구

데이터베이스: 그것에 비해 더 정렬, 탐색, 삭제추가에 용이하게 만든게 데이터베이스. 키와 인덱스로 정렬의 효율!! 파일이 있고 그 위에 더 진보된 데이터베이스가 있는 그림.

더하기빼고 수준의 기초 키워드 : 이진탐색, 정렬 알고리즘, 트리자료구조 > 공부해보기

광의의 파일: 입출력이 가능한 모든 것. 심지어 외부 디바이스까지도 파일이라고 부른다고...

  1. 데이터 베이스
    탐색의 기준: index
    탐색의 결과물
    이렇게 두가지로 나뉨

키와 인덱스는 다른 개념이다.
키에도 라벨링을 주는 것이 인덱스.

1) 1키 1밸류 구조 : 키를 주면 밸류를 꺼내주는 단순한 기능만. 인덱스가 키에게만 있는 한종류뿐이다
2) 행과 열로 나눈 relational database(RDB): 보통 첫 열에 key(ID처럼 식별가능한 것), 역사가 제일 길다. 스키마(규칙)을 정해야 새로운 데이터를 추가할 수 있다
광의 스키마 = 전~체 데이터의 관리 구조
협의 스키마 = 테이블의 묶음, 테이블의 구조(몇개의 열, 열의 이름, 열별로 들어갈 형식...) , 테이블 그 자체로도 불리기도 한다
3) Document database : 1)과 2)를 합친 느낌? 유연하다. 규칙이 정해져있지 않아도 추가가 된다. 밸류값으로도 어떤 작동이 가능하다. 엑셀에서 값이 복잡하게 하이라이키가 구분되어있어서 tap을 계속 쪼개는 데이터 형식? 대표적으로 몽고db. RDB는 정해진 규칙대로만 추가되고 관리되지만, DOCUMENT DATABSE는 규칙 노상관!!!!
비관계형 데이터베이스라고도 볼 수 있지만 딱 그렇다고는 할 수 없다.

4) 전혀다른 개념: VECTOR DATABASE
가까이 있는 적당히 대출 근접한 무언가를 찾는 것이 목적
무한한 공간에 수학적인 점을 찍어 데이터가 존재한다면, 그 주변의 적당한 다른 점을 찾아서 인덱싱하는것
그래서 키는 없다. 근처값으로 찾는거니까

머신러닝에서 한창 사용되는 최근에 가장 중요한 데이터베이스

벡터와 벡터 사이의 유사도, DOT PRODUCT: 엄청 중요한 개념!!
벡터의 행렬의 곱을 하면 유사도가 나온다??

위의 친구들은 검색알고리즘을 통해서 빠르게 밸류를 찾아주는 거라면
벡터 데이터 베이스는 유사도로 찾는 것!

그외...)

  1. SQL 해보기

  2. ORM은 전부 텍스팅해야하는 SQL에서 좀 더 편하게...

  3. dbeaver: db를 엑셀처럼 ui로 보게 해주는 친구

  4. 빅데이터랑 놀아보기
    1) 찾는 방법:
    원래 이런 애들은 파일 내용을 한줄한줄 보는게 아니라 전체를 다 펼쳐놓고 본다. 그래서 좀만 파일이 커지면 컴퓨터가 아프다.
    큰파일을 사용할때는 커멘드라인이 더 편할 수 있다.

2) 탐색을 잘 하는 방법: 인덱스 활용하기
인덱스 활용 안하고 그냥 키워드를 찾아줘! 라고 하면 한오백년 걸리는데, 인덱스를 넣으면 더 효율적으로 찾아진다.

인덱스를 많이 사용하면 좋지만, 또 그만큼 데이터가 더 커진다.
db설계를 잘하는 것 = 인덱싱을 잘하는 것

profile
코딩 배우는 중

0개의 댓글