Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Intro to goldilocks inmemory db - low latency

1 148 vues

Publié le

Goldilocks is a In-memory DB solution which has tremendous performance. It can process millions of user data operations per second.
It's simple, lightweight, easy to use.
We strongly recommand you to try it. If you do so, you'll see the best low latency data solution which you've ever met.

Publié dans : Logiciels
  • Soyez le premier à commenter

Intro to goldilocks inmemory db - low latency

  1. 1. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 1 - GOLDILOCKS ? What is Goldilocks ? Database ? NoSQL DB ? Shared Memory Solution ? nanosecond Jitter Low-Latency
  2. 2. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 2 - DBMS Core ArchitectureAdvantages of Shared Memory Transaction & Simple SQL B Tree Index Concurrent Control Client / Server Environment Various Object Type & Meta Backup & Recovery High Performance Light Weight Direct Access to Memory Easy to Manage No Need to Transform Data Inter Process Communication DBMSShared Memory Goldilocks is a specialized lightweight DB for the field of Low-Latency In-Memory Computing. Goldilocks is fast, simple, lightweght, and easy to use. GOLDILOCKS + GOLDILOCKS ?
  3. 3. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 3 - DBMS vs. GOLDILOCKSDisk DBMS vs. In-Memory DBMS GOLDILOCKS guarantees low-latency reponse. - GOLDILOCKS ?  Removal of Disk I/O cost  Better Performance  Removal of (Disk I/O + Network I/O + Data Transform ) Ultra Low Latency GOLDILOCKS < us IMDB > 20us DISK RDBMS > ms Application DISK DBMS Buffer DB Application Memory DBMS DB Performance Difference Application DB API Driver SQL Query Processing Storage API DB Storage API Performance Difference DBMS GOLDILOCKS Application
  4. 4. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 4 - Features Transaction Management  Transaction Processing  1024 Concurrent Transactions B+ Tree Index  B+ Tree Index  Max Key Size 128 byte  Unique, Non Unique Index Concurrency Control  Record Level Lock Support  MVCC (Multi-Version Concurrency Control) Client / Server Envrionment  Storage API Remote Support  Remote Management Tool (Console Only) Backup & Recovery  Selective Disk Logging Mode  Recovery by Disk Log  Loggin Configuration per Instance & Object  Backup & Recovery Tool Support (Object Schema & Data) Various Object Type  Table, Direct Table, Queue  Communication by Queue Table 1:1, 1:N, N:1, N:N Memory Management  Lock Free Segment Management  Memory Auto Extension  User Definition for Memory Space Management Simple Trigger  Detection of DML Event for Object  Provie Event Info. for User Meta Information & SQL  Meta Info. Management by Dictionary Table  metaManager Tool  Simple SQL
  5. 5. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 5 - GOLDILOCS Internal Module GOLDILOCKS Instance Shared Memory User Data Space (Object Segment, Index Segment) System Undo Space Segment Manager Disk Log Manager Disk Log Lock Manager Deadlock Checker Table Manager Queue Manager Index Manager Listener Process Recover Process Transaction Manager Dictionary Manager Recovery Manager Property File Memory Log Manager API Wrapper Error Handler
  6. 6. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 6 - User Interface
  7. 7. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 7 - User Interface
  8. 8. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 8 - User Interface (Example) You can develop your best performance solutions on DBMS-like envrionment. metaManager [kevin@cheroky ~]$ metaManager =================================================================== * GOLDILOCKS Meta Manager utility. * Copyright 2012-2014, OnmirSoft in Sunje Corporation or its subsidiaries. * All rights reserved. =================================================================== metaManager> create instance test_ins; create success metaManager> create table T1 ( 2 c1 char(20) , 3 c2 int , 4 c3 int ) 5 init 10000000 extend 1000000 max 12000000; create success metaManager> create index idx_T1 on T1(c2); create success metaManager> insert into T1 values(‘aa’, 1, 2); 1 rows inserted. metaManager> commit [kevin@cheroky ~]$ 165 typedef struct TABLE { 167 char c1[20]; 168 int c2; 169 int c3; 170 } TABLE; 171 185 dbmInitHandle ( &sHandle, (char*) TC_INST_NAME ); 186 dbmPrepareTable ( &sHandle, (char*) TABLE_NAME ); 187 191 for ( i = nStart; i < nEnd; i++ ) 193 { 194 memset ( &data, 0x00, sizeof(TABLE) ); 195 sprintf ( data.c1, "%019d", i ); 196 197 if ( opType == INSERT ) 198 { 200 data.c2 = i; 201 data.c3 = 0; 202 dbmInsertRow ( &sHandle, (char*) TABLE_NAME, (char*) &data, sizeof(TABLE)); 203 dbmCommit ( &sHandle ); 204 } 205 else if ( opType == SELECT ) 206 { 208 data.c2 = i; 209 dbmSelectRow ( &sHandle, (char*) TABLE_NAME, (char*) &data ); 210 } 212 else if ( opType == UPDATE ) 213 { 215 data.c2 = j; 216 dbmSelectForUpdateRow ( &sHandle, (char*) TABLE_NAME, (char*) &data ); 218 data.c3 = data.c3 + 1; 219 dbmUpdateRow ( &sHandle, (char*) TABLE_NAME, (char*) &data ); 220 dbmCommit ( &sHandle ); 221 } Storage API
  9. 9. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 9 - Performance Operation 1-Client 2-Client 4-Client 8-Client Average Reponse Time Insert 943,740 1,359,842 1,757,923 1,557,565 1.06 us Update 1,929,321 3,025,221 4,660,572 5,241,087 0.52 us Select 1,489,298 2,357,371 4,098,670 4,565,065 0.67 us Delete 669,120 949,057 1,339,756 1,094,050 1.49 us Testing Envionment  CentOS 6.2 (2.6.32-279) Intel(R) Core(TM) i7 – 3820 @ 3.6GHz * 4 Core * 2 Hyper Thread  5 Millon Record Set  Record Size : 800 Byte  Index Key Size : 4 Byte  Update/Select  Random Search  Average OPS(Operations per Second) 0 1,000,000 2,000,000 3,000,000 4,000,000 5,000,000 6,000,000 1 2 4 8 OPS Insert select Update Delete
  10. 10. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 10 - Performance Operation 100,000 1 M 5 M 10 M Insert 1,579,634 1,602,197 1,557,565 1,563,882 select 5,204,016 5,095,074 5,241,087 5,141,860 Update 4,539,879 4,317,909 4,565,065 4,476,832 Delete 1,133,908 1,115,889 1,094,050 1,157,487 Testing Envionment No drop in performance with much more number of data records.  Average OPS(Operations per Second) with different record count  CentOS 6.2 (2.6.32-279) Intel(R) Core(TM) i7 – 3820 @ 3.6GHz * 4 Core * 2 Hyper Thread  8 Client  Record Size : 800 byte  Index Key Size : 4byte  Update/Select  Random Search 0 1,000,000 2,000,000 3,000,000 4,000,000 5,000,000 6,000,000 10만 100만 500만 1,000만건 Insert select Update Delete
  11. 11. Pure In-Memory DBMS for High Performance © 2013 Sunjesoft Corporation. All rights reserved. - 11 - Onmirsoft Ltd. ㈜온미르소프트 서울시 마포구 양화로 11길 36, 지석빌딩 201호(서교동) Tel 02-322-6288 / 070-4238-6288 Fax 02-322-6788 Mail : smurf@onmirsoft.com Please mail us to get a package and document.

×