Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Hibernate-OGM Overview v 1.0
Search
Sunghyouk Bae (Debop)
June 08, 2013
Programming
5.2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Hibernate-OGM Overview v 1.0
Hibernate-OGM v 4.0 Overview
with Infinispan
Sunghyouk Bae (Debop)
June 08, 2013
More Decks by Sunghyouk Bae (Debop)
See All by Sunghyouk Bae (Debop)
Exposed 1.1.1 소개
debop
0
120
Alternatives to JPA 2026
debop
0
140
Java 21/25 Virtual Threads 소개
debop
0
390
Cache Strategies with Redisson & Exposed R2dbc
debop
0
160
Cache Strategies with Redisson & Exposed
debop
0
220
Alternatives to JPA (Async/Non-Blocking) 2025
debop
0
170
Virtual Threads 소개 2025
debop
0
100
MSA Resilient 2025
debop
0
68
Alternatives to JPA 2018 - JDBC Based
debop
0
67
Other Decks in Programming
See All in Programming
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
610
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
400
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
150
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
7.7k
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
320
Lessons from Spec-Driven Development
simas
PRO
0
220
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
210
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
12
5.8k
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
290
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
230
Webフレームワークの ベンチマークについて
yusukebe
0
180
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
370
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Producing Creativity
orderedlist
PRO
348
40k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
400
Utilizing Notion as your number one productivity tool
mfonobong
4
330
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
190
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
160
Optimising Largest Contentful Paint
csswizardry
37
3.7k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
580
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
410
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
Transcript
hibernate-ogm overview
[email protected]
@debop68 1 13֙ 6ਘ 9ੌ ੌਃੌ
Hibernate-OGM Object / Grid Mapping Hibernate for NoSQL Current support
Datastore - EhCache, Infinispan, MongoDB 앞으로 제공할 Datastore - Redis, Couchbase, Neo4j 2 13֙ 6ਘ 9ੌ ੌਃੌ
Relational Databases Data structure abstraction Transactions Referential integrity Simple types
Common query language Scale up (not Scale out) 3 13֙ 6ਘ 9ੌ ੌਃੌ
Why NoSQL 대량의 데이터 저장 저장할 데이터 량이 기하급수적으로 증대
RDB의 scale-up 만으로는 한계 웹 서비스의 구조 변화 데이터의 구조 변화가 큼 비정형 데이터의 관리 필요 Cloud 환경에 맞는 자료저장소 필요 scale-out 기능 강조 Operation 비용 절감 4 13֙ 6ਘ 9ੌ ੌਃੌ
NoSQL Features 대량의 데이터 다양한 구조 다양한 목표 data size
/ availability low latency / higher throughput 특정 사용 패턴에 최적화 다양한 자료 구조 5 13֙ 6ਘ 9ੌ ੌਃੌ
NoSQL Types Graph oriented databases key-value stores Document based stores
Big Table style 6 13֙ 6ਘ 9ੌ ੌਃੌ
NoSQL 약점 Programming Model no common API query (Map Reduce,
specific DSL, ...) no schema => app driven schema Physical data structure transpires Transaction/durability/consistency 7 13֙ 6ਘ 9ੌ ੌਃੌ
JPA for NoSQL 8 13֙ 6ਘ 9ੌ ੌਃੌ
Goals 새로운 데이터 사용 패턴을 쉽게 사용하도록한다. 데이터 크기, 종류,
형태에 상관없이... Full JPA support 익숙한 환경, 빠른 적용 9 13֙ 6ਘ 9ੌ ੌਃੌ
Hibernate-OGM Hibernate-ogm 4.0 CRUD support for @Entity EhCache, Infinispan, MongoDB
Full-text queries (hibernate-search) Future JP-QL query Neo4j, Cassandra, Couchbase, HBase, Redis https://community.jboss.org/wiki/HibernateOGMRoadmap 10 13֙ 6ਘ 9ੌ ੌਃੌ
Domain Model POJO Hibernate Core JPA: programmatic API Hibernate Search
persists indexes/searches Infinispan Lucene Search engine store index indexing store object RDBMS 11 13֙ 6ਘ 9ੌ ੌਃੌ
Domain Model POJO Hibernate Core JPA: programmatic API Hibernate Search
persists indexes/searches Infinispan Lucene Search engine store index indexing store object 12 13֙ 6ਘ 9ੌ ੌਃੌ
Domain Model POJO Hibernate Core JPA: programmatic API Hibernate Search
persists indexes/searches Infinispan EhCache MongoDB Lucene Search engine NoSQL store index indexing store object 13 13֙ 6ਘ 9ੌ ੌਃੌ
Domain Model POJO Hibernate Core JPA: programmatic API Hibernate Search
Hibernate OGM Core JP-QL converter persists indexes/searches Infinispan EhCache MongoDB Lucene Search engine NoSQL store object store index delegates object logic to indexing 14 13֙ 6ਘ 9ੌ ੌਃੌ
Domain Model POJO Hibernate Core JPA: programmatic API Hibernate Search
Hibernate OGM Core JP-QL converter persists indexes/searches Infinispan EhCache MongoDB Lucene Search engine NoSQL store object store index delegates object logic to Object/Grid Mapper indexing 15 13֙ 6ਘ 9ੌ ੌਃੌ
Domain Model POJO Hibernate Core JPA: programmatic API Hibernate Search
Hibernate OGM Core JP-QL converter persists indexes/searches Infinispan EhCache MongoDB Lucene Search engine NoSQL DataStore store object store index delegates object logic to Object/Grid Mapper indexing 16 13֙ 6ਘ 9ੌ ੌਃੌ
Hibernate-OGM Concept 17 13֙ 6ਘ 9ੌ ੌਃੌ
Schema or no schema? Schema-less developer friendly data structure migration?
need strict development guidelines Schema strong documentation share with other apps / tooling 18 13֙ 6ਘ 9ੌ ੌਃੌ
Entities as serializable blobs? Store the whole graph? Consistency with
duplicated objects Concurrency / Latency Structure change and (de)serialization 19 13֙ 6ਘ 9ੌ ੌਃੌ
OGM’s approach 관계형 모델의 장점은 최대한 수용 객체와 데이터 구조의
관계를 끊음 데이터는 tuple 형태로 저장 기본 수형으로 제한 CRUD 작업은 key lookup 으로 작업 20 13֙ 6ਘ 9ੌ ੌਃੌ
Infinispan In-memory key/value store + cache store Data grid memory
>>>> network >> local disk access Transaction JTA / XAResource Distributed virtual memory = (servers) / redundancy 21 13֙ 6ਘ 9ੌ ੌਃੌ