본문 바로가기

분류 전체보기94

[DB] Index Structures for files (Primary, Clustering, Secondary) Index란? : 파일에 저장된 레코드에 빠르게 접근하기 위해 추가적으로 생성되는 보조적인 접근 구조이다. 특정 검색 조건에 따라 레코드를 효율적으로 검색할 수 있도록 설계되었다.  Indexing Field(or Indexing Attribute)를 기반으로 record에 효율적으로 access할 수 있는 방법을 제공하는데, 이는 검색 시간을 대폭 단축 시킨다. 즉, 전체 파일을 순차적으로 검색해야 하는 비효율성을 줄여준다.  더불어, Secondary Access Path(보조 접근 경로)를 제공하여, 디스크에 저장된 레코드의 물리적 위치와 상관없이 데이터를 빠르게 검색할 수 있게 한다.  Index는 level에 따라 두 종류로 나뉘는데, 이는 다음과 같다. 1. Single-level ordere.. 2024. 12. 14.
[DB] Collision Management in Database Hashing Techniques 해싱(Hashing)이란 무엇일까?해싱은 다양한 분야에서 쓰이는데, 키(Key = Field)를 입력으로 받아, 이를 해시 함수(Hash Function)를 사용하여 데이터가 저장될 위치(주소)를 계산하는 기술이다. 해시 함수의 결과는 보통 고정된 크기의 숫자나 값으로 변환되며, 이를 해시 값(Hash Value)이라고 한다.  Hashing 기법이 DB에서 왜 필요할까? 데이터베이스에서는 방대한 양의 데이터를 다루는 경우가 많아, 특정 검색 조건에서 레코드에 빠르게 접근할 수 있는 효율적인 방법이 필요했다. 단순히 레코드가 정렬된 파일에서는 이진 탐색(Binary Search)을 사용하여 검색하며, 이는 O(log n)의 시간 복잡도를 가진다. 그러나 레코드 수가 크게 증가하면 이 방식의 성능은 점차 .. 2024. 12. 14.
[DB] Searching and Managing Records in Heap and Sorted Files 정렬되지 않은 레코드들로 이루어진 Heap Files과 정렬된 레코드들로 이루어진 Sorted Files에서 각각 어떻게 특정 Record를 Search할까?에 대한 내용을 다루려고 한다.  1. Files of Unordered Records (Heap Files)Heap 혹은 Pile File에서는 Record들이 삽입된 순서로 파일에 저장된다. 그래서 새로운 Record는 File의 끝에 저장되며,  Data Record를 수집하고 저장하는 용도로 사용되기도 한다.  record를 수정하기 위해서는 record가 담긴 block을 찾아 buffer에 기록한 후 수정해야 할 record를 삭제 후, file의 가장 마지막에 재작성한다. record를 삽입하기 위해서는 마지막 block을 buffer에.. 2024. 12. 14.
FCM 프로젝트 만들기 (Firebase 2024 최신버전) https://firebase.google.com/?hl=ko Firebase | Google's Mobile and Web App Development Platform개발자가 사용자가 좋아할 만한 앱과 게임을 빌드하도록 지원하는 Google의 모바일 및 웹 앱 개발 플랫폼인 Firebase에 대해 알아보세요.firebase.google.com시작하기프로젝트 만들기이름 지정default로 지정해줬음.이렇게 프로젝트가 만들어진다!난 안드로이드를 만들고 있으니 안드로이드를 선택앱등록 위해 프론트 패키지 이름 넣고 여기서 주어지는 goggle-service.json 파일은 안드로이드스튜디오에 사진과 같이 넣어줘야 한다! 이렇게 자바나코틀린으로 설정 해주자밖으로 나와서 이제 백엔드가 사용할 json을 다운로드해.. 2024. 11. 26.