복붙노트

[SPRING] MongoDB 용 Spring 데이터 MongoDB와 Hibernate OGM의 차이점은 무엇입니까?

SPRING

MongoDB 용 Spring 데이터 MongoDB와 Hibernate OGM의 차이점은 무엇입니까?

전에 Spring 데이터를 사용하지 않았지만 MySQL 기반 애플리케이션을 위해 Hibernate ORM을 여러 번 사용했습니다. MongoDB 기반 응용 프로그램에서 두 프레임 워크 중에서 선택할 프레임 워크를 이해하지 못합니다.

답변을 찾으려고했지만 프로덕션 환경에서이 두 가지를 비교하는 답을 찾을 수 없습니다. MongoDB에서이 두 프레임 워크와 관련된 작업에 문제가 있다는 것을 발견 한 사람이 있습니까?

해결법

  1. ==============================

    1.면책 조항 : 저는 Spring Data 프로젝트의 선두 주자입니다. 그래서 여기에서 대부분 Spring 데이터 측면을 다룰 것입니다.

    면책 조항 : 저는 Spring Data 프로젝트의 선두 주자입니다. 그래서 여기에서 대부분 Spring 데이터 측면을 다룰 것입니다.

    Spring 데이터 팀이 명시 적으로하지 않은 동안 Hibernate OGM 팀이 JPA를 중심으로 노력을 기울이기로 선택한 두 프로젝트의 핵심 차이점은 생각합니다. 이유는 다음과 같습니다.

    따라서 Spring 데이터를 사용하여 지원되는 상점에 대해 일관된 프로그래밍 모델을 제공하기로 선택했지만 모든 것을 하나의 추상화 된 API로 강제로 옮기려하지 않았습니다. 잘 알려진 템플릿 구현을 얻었을 때 저장소 추상화를 얻었습니다. 모든 상점은 상점 특유의 기능 및 개념을 활용합시다.

  2. ==============================

    2.면책 조항 : 저는 Hibernate OGM 개발자 중 하나입니다. 그래서 나는 그것의 뒤에 몇 가지 이유를 제공하려고 노력할 것입니다.

    면책 조항 : 저는 Hibernate OGM 개발자 중 하나입니다. 그래서 나는 그것의 뒤에 몇 가지 이유를 제공하려고 노력할 것입니다.

    Hibernate OGM은 NoSQL 솔루션에 대한 Java Persistence (JPA) 지원을 제공합니다. 그것은 Hibernate ORM의 엔진을 재사용하지만 엔티티를 관계형 데이터베이스 대신 NoSQL 데이터 스토어로 유지합니다. 또한 JPA가 적합하지 않을 때 특정 데이터 저장소 기능에 대한 액세스를 제공하는 것을 목표로합니다.

    이 접근법은 여러 가지 이유로 흥미 롭습니다.

    주요 단점은 JPA의 개념 중 일부가 NoSQL 세계에 쉽게 매핑되지 않는다는 것입니다 (예 : 트랜잭션). 트랜잭션 구분 방법에 액세스 할 수는 있지만 기본적으로 트랜잭션을 지원하지 않는 데이터 저장소는 롤백 할 수 없습니다 (이 경우 트랜잭션은 그룹 작업 및 호출 수 최적화를 위해 사용됩니다). db).

    또한, 당신의 데이터 집합이 본질적으로 비 도메인 모델 중심적인 것이라면, Hibernate OGM은 당신을위한 것이 아닙니다.

  3. from https://stackoverflow.com/questions/23163853/whats-the-difference-between-spring-data-mongodb-and-hibernate-ogm-for-mongodb by cc-by-sa and MIT license