최상의 답변
먼저 몇 가지 용어를 정리하겠습니다. 데이터베이스 관리 시스템은 데이터를 장기적으로 쉽게 저장, 검색 (쿼리), 검색 및 수정할 수 있도록 구성 및 관리하도록 설계된 소프트웨어입니다. 데이터베이스는이 스토리지의 인스턴스입니다. 따라서 비유하면 데이터베이스 관리 시스템은 라이브러리 카드 카탈로그 개념과 같고 데이터베이스는 특정 라이브러리에서 카드를 보관하는 특정 캐비닛과 같습니다. 그러나 저는 대부분의 사람들이 대화에서하는 것처럼 전체적인 개념을 “데이터베이스”라고 부를 것입니다.
데이터를 저장하고 검색 할 수 있다는 것은 매우 일반적으로 들리며 사실입니다. 데이터베이스입니다. 소프트웨어 응용 프로그램에서 일반적으로 발생하는 요구 사항에 맞는 일반화 된 솔루션입니다. 데이터베이스의 주요 기능은 응용 프로그램 / 비즈니스에서 사용하기위한 방식으로 데이터를 구성한다는 것입니다. 파일 모음 일뿐만 아니라 일부 응용 프로그램의 컨텍스트 내에서 파일을 구성하는 방법이기도합니다. 이러한 종류의 요구는 소프트웨어, 특히 영구 저장 및 온라인 액세스가 필요한 인터넷 응용 프로그램에서 항상 발생합니다. 예를 들어 이메일 서비스를 생성하는 경우 이메일을 영구적으로 저장하고 사용자가 이메일을 검색 할 수 있도록 허용해야합니다. 이메일을 검색하고 정렬 할 수 있어야합니다. 어떤 이메일이 어떤 사용자에게 속하는지 쉽게 알 수 있어야합니다. 데이터베이스는 여기에 이상적입니다.
대부분의 모든 소프트웨어가 데이터를 저장하고 액세스하는 데 필요하지만 소프트웨어 엔지니어는 항상 데이터베이스를 사용하도록 선택하지 않습니다. 따라서 항상 필요한 것은 아닙니다. 목적은 무엇이며 언제 사용하는지 어떻게 알 수 있습니까?
다시 말하지만 완벽하지는 않지만 비유를 사용하려고합니다. 학교를위한 짧은 2 페이지짜리 연구 논문을 쓰고 있다고 상상해보십시오. 이미 익숙한 주제에 대한 교과서에서 몇 장을 읽으면됩니다.이 경우 장을 읽은 다음 즉시 논문 쓰기를 시작할 수 있습니다. 필요할 때 교과서를 다시 참조 할 수 있습니다. . 아마도 당신은 개요에 몇 가지 메모를 적을 것입니다. 아무튼 큰 문제는 아닙니다.
이제 50 페이지 길이가 될 철저하게 연구 된 논문을 작성해야한다고 가정합니다. 12 개의 교과서를 사용하여 조사하고 참고 문헌을 인용해야합니다. 이제 조직을 정리해야합니다. 메모 작성 방식, 교과서에서 북마크를 사용하는 방식, 논문의 윤곽을 잡는 방식에 대해 좀 더 체계적이고 부지런히하고 싶을 것입니다.
첫 번째 시나리오에서, 조직화 된 것은 약간의 과잉 일 수 있고 속도가 느려질 수 있습니다. 두 번째 시나리오에서 “그렇게 조직화되어 있지 않으면 작업을 제대로 수행 할 수 없습니다”. 응용 프로그램은 데이터베이스를 사용해야하며 더 가벼운 작업을 수행 할 수있는시기에 사용해야합니다. 시나리오와 제품 / 서비스의 요구 사항에 따라 다릅니다.
이 시점에서 무엇을 묻는 것이 당연합니다. 데이터베이스와 파일 시스템의 차이점은 무엇입니까? “둘 다 데이터를 저장, 구성 및 검색하는 데 모두 사용됩니까?
파일 시스템 (컴퓨터에 파일을 저장하고 표시하는 시스템과 같은)은 데이터베이스가 수행하도록 설계된 것과 동일한 작업이 많이 있습니다. 데이터를 장기간 저장합니다. 데이터를 검색 할 수 있습니다. 데이터와 새 데이터를 검색하고, 기존 데이터를 수정하고, 데이터를 삭제할 수 있습니다.
주요 차이점은 파일 시스템이 특정 애플리케이션이나 비즈니스 목적을 위해 데이터를 구성하기위한 것이 아니라는 것입니다. 파일을 저장하고 검색하기 위해 필요한 것 외에는 데이터 구조에 대해 많이 이해하지 못합니다. 파일이 반드시 서로 관련이있는 것은 아닙니다. 그것들은 반드시 서로 의존하거나 서로에 대해 특별한 의미가있는 것은 아닙니다. 컴퓨터의 파일 시스템에는 MP3가 있고 아마도 여러분이 작성한 학교 논문, 비디오 게임 저장 파일, 이메일, 그리고 카메라의 사진. 파일 시스템은 이러한 파일을 구성하고 다른 응용 프로그램에서 사용하는 데 도움이되지만 이러한 파일을 하나로 묶는 데있어 중앙 이해가 부족합니다. 따라서 파일 시스템에 대해 “내가 가장 좋아하는 MP3는 어디에 있습니까?”와 같은 몇 가지 질문을 할 수 있습니다. “어떤 파일이 가장 큰가요?” “어떤 파일이 최신입니까?” “작년에 찍은 사진은 모두 어디에 있습니까?” 그러나 “이 MP3가이 Word .doc보다 더 가치가 있습니까?”와 같이 파일 시스템에 대해 이해되지 않는 다른 질문이 있습니다.
반면에 데이터베이스는 다음과 같은 데이터를 저장하기위한 것입니다. 적어도 어떤면에서는 모두 공통된 목적과 관련이 있습니다. 따라서 데이터베이스는 “가장 가치있는 고객은 누구입니까?” “가장 인기있는 제품은 무엇입니까?”와 같은 질문에 쉽게 대답 할 수있는 방식으로 정보를 구성하는 데 유용합니다. “”모든 공급 업체는 누구이며 제품 A에 의존하는 모든 고객은 누구입니까? “등
다시 한 번 비유하자면 파일 시스템은 파일 캐비닛과 같을 수 있습니다. 집.세금 문서, 자동차의 유지 관리 기록, 자녀의 성적표, 보관하고 싶은 영수증, 청구서 등을 저장하는 데 사용합니다. 물건을 정리하여 정리하여 찾을 수 있지만 찾는 방법은 알 수 없습니다. 거기에있는 모든 것은 필연적으로 거기에있는 다른 모든 것과 관련이 있습니다.
데이터베이스는 마치 송장 만 보관하는 회계 사무소의 파일 캐비닛과 비슷합니다. 모두 어떤 방식 으로든 정리되어있을 것입니다. . 모든 미수금이 한 벽에 있고 모든 미지급금이 다른 벽에 있습니다. 날짜별로 정렬하거나 지불 인 또는 수취인의 알파벳순으로 정렬 할 수 있습니다. 특정 이름을 가진 지불 인과 관련된 파일을 찾아 볼 캐비닛을 알려주는 색인 파일이 몇 개있을 수 있으며 전화 번호로 다른 색인을 생성하거나 2 억 달러 이상의 모든 인보이스를 나열하는 다른 색인 또는 어떤 것. 비즈니스와 관련된 모든 파일은 비즈니스 목적에 더 유용한 방식으로 구성되어 있습니다.
답변
질문은 : “데이터베이스”를 어떻게 이해합니까?
데이터베이스는 데이터에 대한 액세스 경로가 잘 정의 된 (대부분) 컴퓨터 판독 가능 매체에 구조화 된 방식으로 저장된 정보 항목 집합입니다. 정보 항목 자체가 구조화 될 필요는 없습니다.
따라서 몇 가지 예를 들어 보겠습니다.
- 전문가와 함께 컴퓨터에 저장된 파일 집합 정보에 액세스하는 소프트웨어는 데이터베이스입니다.
- 영화 색인과 함께 컴퓨터에 저장된 영화 세트와이를 찾고 액세스하는 일부 소프트웨어는 데이터베이스입니다.
- 세트 컴퓨터로 유입되어 어딘가에 저장되는 실시간 측정 데이터는 데이터베이스입니다.
- 데이터베이스는 자체 DBMS (RDBMS, HDBMS 등)를 갖거나 플랫 파일 기반 일 수도 있습니다.