문제

데이터베이스 사용에 대한 트레이드 오프와 다른 옵션이 무엇인지 궁금했습니다. 또한 데이터베이스에 어떤 문제가 적합하지 않습니까?

관계형 데이터베이스에 관심이 있습니다.

도움이 되었습니까?

해결책

데이터베이스의 개념은 매우 광범위합니다. 나는 내가 여기에있는 것에 대해 약간의 단순화를 할 것입니다.

일부 작업의 경우 가장 일반적인 데이터베이스는 관계형 데이터베이스입니다. 관계형 모델을 기반으로 한 데이터베이스입니다. 관계형 모델은 각 테이블에 주어진 수의 열이 있고 고정 된 수의 열이있는 테이블에 속하는 데이터를 행으로 설명한다고 가정합니다. "행당"기준으로 데이터를 제출합니다. 즉, 테이블의 모든 열에 비해 데이터가 포함 된 단일 샷으로 행을 제공해야합니다. 제출 된 모든 행은 일반적으로 테이블 레벨, 때로는 데이터베이스 수준에서 고유 한 식별자를 얻습니다. 예를 들어 테이블에 주어진 셀이 다른 테이블의 행을 참조해야한다고 말함으로써 관계 데이터베이스의 엔티티 간의 관계를 만들 수 있습니다. 따라서 소위 "참조 무결성"을 보존하려면

이 모델은 잘 작동하지만 유일한 모델은 아닙니다. 경우에 따라 데이터가 나무로 더 잘 구성됩니다. 파일 시스템은 계층 적 데이터베이스입니다. 뿌리에서 시작하여 모든 것이이 뿌리 아래, 구조와 같은 나무 아래로갑니다. 다른 모델은 키/값 쌍입니다. Sleepycat BDB는 기본적으로 키/가치 엔티티의 저장소입니다.

LDAP는 두 가지 장점이있는 또 다른 데이터베이스입니다. 저장소는 다소 일반적인 데이터, 디자인으로 배포되며 읽기에 최적화됩니다.

그래프 데이터베이스 및 삼중 선수를 사용하면 그래프를 저장하고 동형 검색을 수행 할 수 있습니다. 이것은 일반적으로 엔티티에 대한 광범위한 수준의 설명을 포함 할 수있는 매우 일반적인 데이터 세트가있는 경우 기본적으로 알려지지 않은 경우에 필요합니다. 이것은 매우 정확한 열 세트로 테이블을 만들고 각 열에 무엇이 포함되어 있는지 알고있는 관계형 모델에 반대합니다.

일부 관계형 열 기반 데이터베이스도 존재합니다. 행으로 데이터를 제출하는 대신 전체 열별로 데이터를 제출합니다.

따라서 질문에 답하기 위해 : 데이터베이스는 데이터를 저장하는 방법입니다. 기술적으로 텍스트 파일조차도 데이터베이스이지만 특히 좋은 것은 아니지만 데이터베이스입니다. 데이터베이스 뒤에있는 모델의 선택은 대부분 애플리케이션의 일반적인 요구와 관련이 있습니다.

아마도 엄격하게 맞지 않는 말을 할 때 대답을 CW로 설정합니다. 편집하십시오.

다른 팁

이것은 다소 광범위한 질문이지만 데이터베이스는 관리에 적합합니다. 관계형 데이터. 대안은 거의 항상 자체 데이터 저장 및 검색 엔진을 설계하는 것을 암시합니다. 대부분의 표준/소규모 응용 프로그램에는 노력의 가치가 없습니다.

데이터베이스에 적합하지 않은 일반적인 시나리오는 비교적 소량의 논리 파일로 구성된 대량의 데이터를 저장하는 것입니다.이 경우 간단한 파일 시스템과 같은 시스템으로 충분할 수 있습니다.

NOSQL 데이터베이스를 살펴 보는 것을 잊지 마십시오. 그것은 꽤 새로운 기술이며 관계형 데이터베이스에 적합하지 않은 물건에 적합합니다.

저장 및 쿼리 할 데이터가있는 경우 데이터베이스를 사용하십시오.

기술적으로 대부분의 것은 데이터베이스에 적합합니다. 컴퓨터는 데이터를 처리하도록 만들어졌으며 데이터베이스는 데이터베이스를 저장하도록 만들어졌습니다.

고려해야 할 유일한 것은 비용입니다. 배포 비용, 유지 보수 비용, 시간 투자, 그러나 일반적으로 그만한 가치가 있습니다.

매우 간단한 데이터 만 저장 해야하는 경우 플랫 파일이 대안이됩니다 (텍스트 파일).

참고 : 일반 용어 '데이터베이스'를 사용했지만 이에 대한 여러 가지 유형과 구현이 많이 있습니다.

  • 을 위한 검색 응용 프로그램, 전체 텍스트 검색 엔진 (일부는 전통적인 DBMSE에 통합되었지만 일부는 그렇지 않은 좋은 대안이 될 수 있으며, 더 많은 기능 (다양한 언어 인식, 반 구조화 된 데이터를 가질 수있는 능력, 순위 등)을 모두 허용 할 수 있습니다. 성능.

  • 또한 어디에서 응용 프로그램을 보았습니다 구성 데이터 데이터베이스에 저장되며 경우에 따라 의미가 있습니다. 일반 텍스트 파일 사용 (또는 YAML, XML 및 그와 같은) 초기화 중에 기본 물체를로드하는 것이 그러한 대안의 자체 포함 특성과 그러한 파일을 수정하고 복제 할 수 있기 때문에 바람직 할 수 있습니다.

  • 플랫 로그 파일, 물론 사용법에 따라 DBMS에 로깅하는 것이 좋은 대안이 될 수 있습니다.

이것은 지난 10 년 동안 DBMS 시스템은 일반적으로 다양한 기능을 추가하여 다양한 형태의 데이터 및 다양한 검색 기능을 처리하는 데 도움이되었습니다 (예 : FullText 검색, XML, 스마트 스토리지/처리 블로브, 강력한 사용자 정의 기능 등) 더 다재다능하게 만듭니다, 따라서 상당히 유비쿼터스 서비스입니다. 그러나 그들의 강점은 주로 관계형 데이터로 남아 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top