A Backend to tie them all?
-
Upload
ldapcon -
Category
Technology
-
view
588 -
download
2
description
Transcript of A Backend to tie them all?
![Page 1: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/1.jpg)
A backend to tie them all ?
![Page 2: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/2.jpg)
Apache Software Foundation member
Chairman of MINA project
PMC of Apache Directory Project
IKTEK Owner (www.iktek.com)
www.iktek@com, [email protected]
Emmanuel Lécharny
![Page 3: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/3.jpg)
What is the Backend anyway ?
Entries+
Indexes
![Page 4: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/4.jpg)
Entries/Index
dn: dc=example,dc=comobjectclass: topobjectclass: domaindc: example
dn: cn=user1,dc=example,dc=comobjectClass: topobjectClass: personcn: user1sn: User one
dn: cn=user2,dc=example,dc=comobjectClass: topobjectClass: personcn: user2sn: User two
![Page 5: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/5.jpg)
Criteria
Performance
Size
Cost
reliability
![Page 6: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/6.jpg)
In MemoryBackend
![Page 7: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/7.jpg)
In memory Backend
Internal data structures :
Btrees,
AVLs,
HashMap,
Lists,
...
![Page 8: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/8.jpg)
In Memory Backend Usage
Cache
Ultra-fast server
No local storage
Tests
![Page 9: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/9.jpg)
In Memory Backend
PerformanceSize
Cost
reliability
![Page 10: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/10.jpg)
LDIFBackend
![Page 11: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/11.jpg)
LDIF Backend
version: 1
dn: dc=example,dc=comobjectclass: topobjectclass: domaindc: example
dn: cn=user1,dc=example,dc=comobjectClass: topobjectClass: personcn: user1sn: User one
dn: cn=user2,dc=example,dc=comobjectClass: topobjectClass: personcn: user2sn: User two
![Page 12: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/12.jpg)
LDIF Backend Usage
Configuration
Schema
Tests
![Page 13: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/13.jpg)
LDIF Backend
Performance
Size
Cost
reliability
![Page 14: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/14.jpg)
BTreeBackend
![Page 15: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/15.jpg)
BTree Backend
![Page 16: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/16.jpg)
BTree Backend
Various possible
Implementations
Btree, B+tree, B*Tree, ...
![Page 17: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/17.jpg)
BTree Backend
Average Worst Case
Space O( n ) O( n )
Search O( log n ) O( log n )
Insert O( log n ) O( log n )
Delete O( log n ) O( log n )
![Page 18: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/18.jpg)
BTree Backend
Usage :
Pretty much everything
Improvements :
Hashed keys
Cache
![Page 19: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/19.jpg)
MVCC Backend
Performance
Size
Cost
reliability
![Page 20: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/20.jpg)
MVCCBackend
![Page 21: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/21.jpg)
MVCC Backend
![Page 22: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/22.jpg)
MVCC Backend
Usage :
Pretty much everything
![Page 23: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/23.jpg)
MVCC Backend
PerformanceSize
Cost
reliability
![Page 24: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/24.jpg)
RDBMSBackend
![Page 25: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/25.jpg)
RDBMS Database
![Page 26: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/26.jpg)
RDBMS Backend
Usage :
Existing DBAs...
ApacheDS experimentation :Oracle Partition
http://svn.apache.org/viewvc/directory/apacheds/branches/ldif-partition/oracle-partition/?pathrev=982537
![Page 27: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/27.jpg)
RDBMS Backend
Performance
SizeCost
reliability
![Page 28: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/28.jpg)
NoSQLBackend
![Page 29: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/29.jpg)
NoSQL Backend
Distributed File SystemDistributed Configuration Service
![Page 30: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/30.jpg)
NoSQL Backend
Usage :
Replicated backend
Huge base
ApacheDS experimentation :http://www.stefan-seelmann.de/media/presentations/3rdOpenHUG2010_Seelmann_ApacheDirectoryHBase.pdf
http://svn.apache.org/repos/asf/directory/sandbox/seelmann/
![Page 31: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/31.jpg)
NoSQL Backend
Performance
SizeCost
reliability
![Page 32: A Backend to tie them all?](https://reader033.fdocuments.net/reader033/viewer/2022051312/546c2d8ab4af9f662c8b4fde/html5/thumbnails/32.jpg)
Thanks!