Top Main Memory DBs

Download Report

Transcript Top Main Memory DBs

Main Memory Databases
Hadi Amiri, Abolfazle AleAhmad
Department of ECE, University of Tehran
Top Main Memory DBs
FastDB
MonetDB
eXtremeDB
ERDB
DataBlitz
Times Ten

MonetDB
MonetDB is an open source highperformance database system
developed at CWI, (the Institute for
Mathematics and Computer Science
Research of The Netherlands)
 MonetDB has been successfully
applied in high-performance
applications for data mining, OLAP,
GIS, XML Query, text and multimedia
retrieval. (Real Time App)

Architecture
DBMS Architecture
Architecture
MonetDB Architecture
MonetDB: architecture
Front-end/back-end:
• support multiple data
models
• support multiple end-user
languages
• support diverse
application domains
MonetDB Properties
perform all operations in main memory
 a modern CPU-tuned vectorized query execution
architecture
that often gives MonetDB a more than 10-fold raw
speed advantage on the same algorithm over a
typical interpreter-based RDBMS
 extensible algebra.
 binary relation model
 shared-memory parallelism
 MonetDB is one of the first database systems to
focus its query optimization effort on exploiting
CPU caches


MonetDB has played a pivotal role in
the development of datamining
applications at DataDistilleries (now
SPSS).
‫‪Monet Ideas‬‬
‫( ‪ Back-End‬ايده اول‪ :‬امکان استفاده از دستورات‬
‫به‬
‫‪‬‬
‫بنويسيد‪ .‬زباني که اين واسط با آن کار مي ‪ Mapi Client‬با استفاده از واسطي به نام ‪Back-End‬اين معني که شما مي توانيد پرس و جوهايي را براي‬
‫)‬
‫ايده دوم‪:‬با جداول دودويي هر کاري مي توان کرد ‪‬‬
‫ايده سوم‪ :‬عدم نياز به اختراع دوباره سيستم عامل ‪‬‬
‫ايده چهارم‪ :‬بهينه سازي اجراي پرس و جو در حافظه ‪‬‬
‫نام دارد‪MIL‬کند‬
Monet Data Model
Some simple values
 Int,chr,str,oid,nil,intint(nil),chrchr(nil)
,strstr(nil),oidoid(nil)
 Binary Association Tables (BATs)
BAT ‫ جدولي است با دو ستون‬Tail ‫ و‬Head ‫که شامل‬
‫ مقادير ساده فوق و يا‬BAT ‫مي باشد‬

Monet Data Model
BAT[oid,str]
BAT[oid,int]
BAT[oid, BAT[oid,int]]
Storing Relations in MonetDB
Relational Mapping
Object-Oriented Mapping
Monet Performance

Compare some well-known open-source DBMSs with Monet
on the task to build a binary table with the head
representing an ordered sequence and the tail a
permutation over the values in the head
Response time is given in seconds while running on a dual Athlon 1400 with
1GB of RAM and 3.5GB of free space
-- DBtapestry Version=1.1 -- See http://monetdb.cwi.nl/DBtapestry/ -- (c) CWI
2004-2005 - rows=100K --columns=2 -- Produced Sat Feb 26 23:41:51
2005
start transaction;
select now();
create table RKA( head int, tail int);
create table RKB( head int, tail int);
insert into RKA values(0,0);
insert into RKA values(1,360);
insert into RKA values(2,427);
……
insert into RKB select head+0, tail+0
from RKA;
insert into RKB select head+8192, tail+8192 from RKA;
……
drop table RKA;
update RKB set tail=(tail*47) % 102400;
……
create table tapestry( attr0 int , attr1 int);
insert into tapestry select R0.head, R0.tail from RKB R0;
drop table RKB;
select now();
commit;
-- actions=1249 -- tuplesRead= 1.07M tuplesWritten= 2.07M -- volumeRead=
8.59M volumeWritten=16.59M
Monet Interpreter Language
MIL Extensibility
What is MonetDB Good for?
Query-intensive application
 very high performance demanding
 complex data models
 complex query primitives

Transactions (OLTP)
OLTP (Online Transaction Processing) is a form of transaction processing conducted via computer
network. Some applications of OLTP include electronic banking, order processing, employee time
clock systems, e-commerce, and eTrading.
OLAP, Data Mining
On Line Analytical Processing. (OLAP) It is an approach to quickly provide the answer to
complex analytical queries. The typical applications of OLAP are in business reporting for sales,
marketing, management reporting, business performance management, budgeting and
forecasting, financial reporting and similar areas.
New Domains: GIS
New data types (point, polygon,
etc..)
 New search accelerators (R-Tree,
etc..)
 New primitives

boolean intersects(polygon,polygon)

Complex topological structures
stored in DCELs that are decomposed over
BATS queries are efficient due to MonetDB
high join speed
New Domains: Multimedia
New data types (url, image, etc..)
 new search accelerators (color
histograms)
 new primitives (similarity search)
 complex data structures:

bayesian inference networks (information
retrieval)
again decomposed in BATs and
efficient to query