| 1 21 package com.db4o.test.performance; 22 23 import java.io.File ; 24 25 import com.db4o.Db4o; 26 import com.db4o.ObjectContainer; 27 import com.db4o.ObjectSet; 28 import com.db4o.io.RandomAccessFileAdapter; 29 30 33 public class CreateSomeData { 34 public static final int DEPTH = 3; 35 36 public static final int COUNT = 10; 37 38 public static int c = 100; 39 40 public static class SomeData { 41 public int id; 42 43 public SomeData _parent; 44 45 public SomeData(int id, SomeData parent) { 46 this.id = id; 47 this._parent = parent; 48 } 49 50 public String toString() { 51 return " " + id; 52 } 53 } 54 55 public static void main(String [] args) { 56 new File (Util.BENCHFILE).delete(); 57 new File (Util.DBFILE).delete(); 58 Db4o.configure().io( 59 new RecordingIoAdapter(new RandomAccessFileAdapter(), 60 Util.BENCHFILE)); 61 Db4o.configure().optimizeNativeQueries(true); 62 ObjectContainer db = Db4o.openFile(Util.DBFILE); 63 64 long start = System.currentTimeMillis(); 65 66 for (int i = 1; i <= COUNT; i++) { 67 SomeData obj = new SomeData(i, null); 68 69 for (int j = 0; j < DEPTH; j++) { 70 obj = new SomeData(c++, obj); 71 } 72 db.set(obj); 73 74 } 75 db.commit(); 76 System.err.println("to store " + (COUNT + COUNT * DEPTH) 77 + " objects needed " + (System.currentTimeMillis() - start)); 78 System.gc(); 79 start = System.currentTimeMillis(); 80 ObjectSet result = db.query(SomeData.class); 81 while (result.hasNext()) { 82 System.out.println(result.next()); 83 } 84 85 System.err.println("to query and retrive " + result.size() 87 + " objects needed " + (System.currentTimeMillis() - start)); 88 db.close(); 89 } 90 } 91 | Popular Tags |