NoSQL: a non-SQL RDBMS
Once I run some benchmars to get an idea of the actual NoSQL speed with respect to other similar packages, and below are the results. These tests were run a few years ago, where computing power was much more limited than it is nowadays, and when the internals of the involved NoSQL operators were different, i.e. those commands were less efficient than today.
Input table: No. of fields = 18 No. of records = 21000 Total size = 3.4 MB Column names: seq NAME PREF EXTENSION DEPT BLDNG TOWN NODE USERID DEPTT CAPIN EMPTYPE EMPNUM ADDITIONAL MGRCC PHONE MGR MGRNUM Machine: P200, 64MB RAM, 1GB Wide-SCSI HD OS: Debian GNU/Linux 2.0 (kernel 2.0.35) RDB (Perl): time col BLDNG NAME PREF USERID < table.rdb | col BLDNG NAME PREF | col NAME >/dev/null real 0m13.937s user 0m10.340s sys 0m0.440s NoSQL (AWK): time getcolumn BLDNG NAME PREF USERID < table.nosql | getcolumn BLDNG NAME PREF | getcolumn NAME >/dev/null real 0m3.910s user 0m3.250s sys 0m0.280s Starbase (ANSI-C): time column BLDNG NAME PREF USERID < table.starbase | column BLDNG NAME PREF | column NAME >/dev/null real 0m1.230s user 0m0.720s sys 0m0.170s
Input tables: join1: No. of fields = 4 No. of records = 21000 Total size = 660 KB Column names: NAME PREF EXTENSION DEPT join2: No. of fields = 4 No. of records = 21000 Total size = 700 KB Column names: NAME BLDNG TOWN NODE Machine: P-II 233, 32MB RAM, 3GB EIDE U-DMA HD OS: Debian GNU/Linux 2.0 (kernel 2.0.35) RDB (Perl): time jointbl -md < join1.rdb NAME join2.rdb >/dev/null real 0m10.630s user 0m10.540s sys 0m0.020s NoSQL (AWK): time jointable -a 1 -j NAME - join2.nosql < join1.nosql >/dev/null real 0m1.198s user 0m1.140s sys 0m0.030s Starbase (C): time jointable -A1 -j NAME join1.starbase join2.starbase >/dev/null real 0m0.881s user 0m0.860s sys 0m0.020s
Trackbacks (2) | New trackback | Comments (0) | Print