ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [TIL] IT 5분 잡학사전 #30-#34
    TIL 2024. 3. 24. 20:27
    728x90

    오늘 TIL 3줄 요약

    • DBMS(database management system) 데이터베이스 관리 시스템이다. MySQL, PostgreSQL, SQLite, Oracle, MariaDB등이 있다.
    • 도큐먼트 데이터베이스(document DB)의 예시로 몽고 디비를 들 수 있으며 데이터를 JSON(JavaScript object notation) 도큐먼트 형태로 저장한다.
    • 깃은 파일의 이력을 관리하는 프로그램이고 깃허브는 파일과 깃으로 관리한 이력을 저장하고 공유하는 공간이다.

     

    TIL (Today I Learned) 날짜

    2023.03.24

    오늘 읽은 범위

    3장. 코딩별 안내서_ 컴퓨터 공학 편

    에피소드 30. 코로나가 준 레거시 시스템의 교훈

    4장. 코딩별 안내서_ 컴퓨터 공학 편 2

    에피소드 31. 데이터와 단짝 친구, SQL

    에피소드 32. NoSQL이 뭐죠?

    에피소드 33. 깃 & 깃허브, 똑같은 거냐고?

    에피소드 34. 버전을 표기하는 방법도 있어요?

     

    책에서 기억하고 싶은 내용

    • 코볼(COBOL)은 1959년에 탄생한 언어이며 현재는 대체 언어가 많기 때문에 커뮤니티가 크기가 적어졌다. 이렇게 오래 전에 개발된 시스템을 레거시 시스템 이라고 한다.
    • SQL은 structured query language의 줄임말이다.
    • DBMS(database management system) 데이터베이스 관리 시스템이다. 즉 SQL로 데이터베이스와 상호작용을 하려면 DBMS를 거쳐야 한다. 종류에는 MySQL, PostgreSQL, SQLite, Oracle, MariaDB등이 있다.
    SELECT email FROM users;
    #user라는 테이블에서 email열에 해당하는 정보만 가져온다.
    
    SELECT email FROM users WHERE age > 21;
    #user라는 테이블의 email열에 21살을 기준으로 나이가 많은 사람의 이메일을 가져온다.
    
    SELECT age FROM users WHERE email LIKE "%kmail.com";
    #user라는 테이블에서 age열에 kmail.com이라는 이메일을 사용하는 사람의 나이를 가져온다.
    • ORM(object relational mapping)은 사용자에게 익숙한 프로그래밍 언어로 SQL을 사용할 수 있게 해준다 예시로 파이썬에는 장고 ORM(Django ORM) 노드제이에스에는 시퀄라이즈 ORM(Sequelize ORM), type ORM이 있다.
    • NoSQL의 데이터베이스 종류는 다양한데 이 책에서는 도큐먼트 데이터베이스(document DB), 키값 데이터베이스(key-value DB), 그래프 데이터베이스(graph DB)를 설명하고 있다.
    •  도큐먼트 데이터베이스(document DB)는 데이터 형식이 매우 자유로우며 대표적인 예로 몽고디비(MongDB)가 있다. 데이터를 JSON(JavaScript object notation) 도큐먼트 형태로 저장한다.대괄호와 중괄호로 구성되며 데이터마다 구성이 같을 필요가 없어서 개발자가 원하는 어떠한 모양, 어떠한 종류의 데이터라도 저장할 수 있다.
    #도큐먼트 데이터베이스(document DB)의 모습
    [
      { "id": 1, "name": "슬리퍼", "price": 30000},
      { "id": 2, "name": "바지", "price": 50000}
    ]
    • 키값 데이터베이스(key-value DB)는 카산드라디비(CassandraDB), 다이나모디바(DynamoDB)가 대표적이다. 카산드라디비는 한 행의 열이 엄청 넓은 데이터 베이스라고 생각하면 된다. 읽고 쓰는 속도가 빨라서 수만 개의 데이터를 1초 만에 순식간에 쓸 수 있다. 
    • 키값 데이터베이스(key-value DB)의 다이나모디바(DynamoDB)는 아마존이 만들었고 듀오링고 라는 언어 학습 애플리케이션에서 쓰고 있다.
    • 깃은 파일의 이력을 관리하는 프로그램이다. 같은 파일을 복사해서 각자 컴퓨터에 저장해서 작업한 뒤 다른 사람이 변경한 부분과 내가 변경한 부분을 비교해서 다시 하나로 만들 수 있다. 깃허브는 파일과 깃으로 관리한 이력을 저장하고 공유하는 공간이다.
    • 시맨틱 버저닝(sementic versioning specification, SemVer)은 숫자 3개로 표시하는 버전 표기 방식이다. 예시로 프로그램 16.8.1과 같은 버전이다.

     

    오늘 읽은 소감? 떠오르는 생각

    • 프로젝트 중 MySQL을 주로 활용했었다. MySQL을 사용하는 과정에서 데이터베이스의 개념과 기능을 깊이 이해하기 위해 종이에 표를 그려가며 공부한 경험이 있다. 이후 PostgreSQL을 활용하여 데이터 모델링을 공부하고 사용해 보면서 다양한 관계형 데이터베이스 시스템에 대한 경험을 쌓았다. 이러한 경험을 통해 NoSQL 데이터베이스의 존재와 특징에 관심을 가지는 계기가 되었다.NoSQL에 대해서는 이름만 들어보고 자세한 내용은 알지 못했었는데 관계형 데이터베이스와는 다르게 데이터 구조에 대한 제약이 적으며, 데이터마다 유연하게 구성할 수 있는 특징을 갖고 있다는 것을 알게 되었다. 또한, 깃허브(GitHub)에 대한 이해와 활용 또한 프로젝트 관리와 협업에 중요한 역할을 했었는데, 깃허브를 통해 버전 관리와 코드 공유, 이슈 트래킹 등을 효율적으로 수행할 수 있었고 현재도 깃허브에 공부한 내용을 남기며 잔디를 꾸준히 심고 있어서 깃이 더욱 반가웠다.
    728x90

    'TIL' 카테고리의 다른 글

    [TIL] IT 5분 잡학사전 #39-#45  (0) 2024.03.27
    [TIL] IT 5분 잡학사전 #35-#38  (0) 2024.03.26
    [TIL] IT 5분 잡학사전 #26-#29  (0) 2024.03.23
    [TIL] IT 5분 잡학사전 #22-#25  (0) 2024.03.21
    [TIL] IT 5분 잡학사전 #16-#21  (0) 2024.03.21
Designed by Tistory.