起
項(xiàng)目上需要找一個(gè)硬盤型的NoSQL艳吠,用于將Redis中的冷數(shù)據(jù)落入硬盤队丝。初步選型了幾款key-value
類型的NoSQL,分別有levelDB呢堰、 rocksDB、 TiDB凡泣、 SSDB枉疼、swapDB、 Kvrocks鞋拟、Tikv
骂维。均為基于levelDB
開發(fā)的幾款NoSQL。其中因?yàn)?code>levelDB贺纲、rocksDB無(wú)網(wǎng)絡(luò)接口航闺,不方便做分布式和高可用。猴誊,TiDB
過重潦刃,還有swapDB
社區(qū)不夠活躍且相關(guān)client API不完備。暫時(shí)選型SSDB
懈叹。
項(xiàng)目需要存儲(chǔ)的其實(shí)是一個(gè)略長(zhǎng)的二進(jìn)制字符串乖杠,初步認(rèn)為,使用對(duì)象存儲(chǔ)方案其實(shí)也可以替代NoSQL项阴,所以壓測(cè)對(duì)象添加當(dāng)前非常火的云原生對(duì)象存儲(chǔ)MinIO
壓測(cè)配置
硬件名|配置 系統(tǒng)| Ubuntu(基于win10 wsl版的docker啟動(dòng)) 內(nèi)存| 16GB(實(shí)際可用6.08G) CPU| Intel i5-8400
讀寫測(cè)試
測(cè)試項(xiàng)目: 1. 寫50M數(shù)據(jù)100次 2. 隨機(jī)讀取任意key 100次(對(duì)LRU機(jī)制不友好)
SSDB
寫
數(shù)據(jù)導(dǎo)入成功笆包!
數(shù)據(jù)序列化成功环揽!
a 數(shù)據(jù)大小:50.99295234680176 MB
第1次寫入總用時(shí): 797 ms
第2次寫入總用時(shí): 848 ms
第3次寫入總用時(shí): 3621 ms
第4次寫入總用時(shí): 813 ms
第5次寫入總用時(shí): 1862 ms
第6次寫入總用時(shí): 838 ms
第7次寫入總用時(shí): 2235 ms
第8次寫入總用時(shí): 836 ms
第9次寫入總用時(shí): 900 ms
第10次寫入總用時(shí): 1027 ms
第11次寫入總用時(shí): 1101 ms
第12次寫入總用時(shí): 880 ms
第13次寫入總用時(shí): 1956 ms
第14次寫入總用時(shí): 866 ms
第15次寫入總用時(shí): 2422 ms
第16次寫入總用時(shí): 852 ms
第17次寫入總用時(shí): 4511 ms
第18次寫入總用時(shí): 875 ms
第19次寫入總用時(shí): 2736 ms
第20次寫入總用時(shí): 814 ms
第21次寫入總用時(shí): 7172 ms
第22次寫入總用時(shí): 891 ms
第23次寫入總用時(shí): 7820 ms
第24次寫入總用時(shí): 836 ms
第25次寫入總用時(shí): 22103 ms
第26次寫入總用時(shí): 877 ms
第27次寫入總用時(shí): 2712 ms
第28次寫入總用時(shí): 841 ms
第29次寫入總用時(shí): 1928 ms
第30次寫入總用時(shí): 916 ms
第31次寫入總用時(shí): 839 ms
第32次寫入總用時(shí): 826 ms
第33次寫入總用時(shí): 7759 ms
第34次寫入總用時(shí): 843 ms
第35次寫入總用時(shí): 10670 ms
第36次寫入總用時(shí): 843 ms
第37次寫入總用時(shí): 9361 ms
第38次寫入總用時(shí): 821 ms
第39次寫入總用時(shí): 810 ms
第40次寫入總用時(shí): 794 ms
第41次寫入總用時(shí): 13281 ms
第42次寫入總用時(shí): 833 ms
第43次寫入總用時(shí): 811 ms
第44次寫入總用時(shí): 798 ms
第45次寫入總用時(shí): 18843 ms
第46次寫入總用時(shí): 911 ms
第47次寫入總用時(shí): 9428 ms
第48次寫入總用時(shí): 898 ms
第49次寫入總用時(shí): 17582 ms
第50次寫入總用時(shí): 903 ms
第51次寫入總用時(shí): 831 ms
第52次寫入總用時(shí): 800 ms
第53次寫入總用時(shí): 14602 ms
第54次寫入總用時(shí): 827 ms
第55次寫入總用時(shí): 5898 ms
第56次寫入總用時(shí): 856 ms
第57次寫入總用時(shí): 5693 ms
第58次寫入總用時(shí): 1050 ms
第59次寫入總用時(shí): 882 ms
第60次寫入總用時(shí): 1020 ms
第61次寫入總用時(shí): 15060 ms
第62次寫入總用時(shí): 902 ms
第63次寫入總用時(shí): 1062 ms
第64次寫入總用時(shí): 915 ms
第65次寫入總用時(shí): 7572 ms
第66次寫入總用時(shí): 823 ms
第67次寫入總用時(shí): 9649 ms
第68次寫入總用時(shí): 832 ms
第69次寫入總用時(shí): 10403 ms
第70次寫入總用時(shí): 907 ms
第71次寫入總用時(shí): 978 ms
第72次寫入總用時(shí): 789 ms
第73次寫入總用時(shí): 2111 ms
第74次寫入總用時(shí): 947 ms
第75次寫入總用時(shí): 4675 ms
第76次寫入總用時(shí): 944 ms
第77次寫入總用時(shí): 8592 ms
第78次寫入總用時(shí): 832 ms
第79次寫入總用時(shí): 2940 ms
第80次寫入總用時(shí): 842 ms
第81次寫入總用時(shí): 19835 ms
第82次寫入總用時(shí): 862 ms
第83次寫入總用時(shí): 7646 ms
第84次寫入總用時(shí): 873 ms
第85次寫入總用時(shí): 1002 ms
第86次寫入總用時(shí): 842 ms
第87次寫入總用時(shí): 9057 ms
第88次寫入總用時(shí): 801 ms
第89次寫入總用時(shí): 5117 ms
第90次寫入總用時(shí): 918 ms
第91次寫入總用時(shí): 798 ms
第92次寫入總用時(shí): 853 ms
第93次寫入總用時(shí): 7728 ms
第94次寫入總用時(shí): 810 ms
第95次寫入總用時(shí): 3969 ms
第96次寫入總用時(shí): 814 ms
第97次寫入總用時(shí): 2050 ms
第98次寫入總用時(shí): 819 ms
第99次寫入總用時(shí): 9566 ms
第100次寫入總用時(shí): 833 ms</pre>
隨機(jī)讀
第1次讀取 15總用時(shí): 2251 ms
第2次讀取 73總用時(shí): 2045 ms
第3次讀取 98總用時(shí): 1548 ms
第4次讀取 20總用時(shí): 2683 ms
第5次讀取 46總用時(shí): 1156 ms
第6次讀取 69總用時(shí): 1160 ms
第7次讀取 46總用時(shí): 1520 ms
第8次讀取 51總用時(shí): 1381 ms
第9次讀取 48總用時(shí): 1000 ms
第10次讀取 69總用時(shí): 1400 ms
第11次讀取 82總用時(shí): 1236 ms
第12次讀取 22總用時(shí): 1140 ms
第13次讀取 36總用時(shí): 864 ms
第14次讀取 66總用時(shí): 843 ms
第15次讀取 47總用時(shí): 922 ms
第16次讀取 17總用時(shí): 885 ms
第17次讀取 14總用時(shí): 864 ms
第18次讀取 64總用時(shí): 888 ms
第19次讀取 74總用時(shí): 815 ms
第20次讀取 33總用時(shí): 866 ms
第21次讀取 36總用時(shí): 822 ms
第22次讀取 78總用時(shí): 975 ms
第23次讀取 40總用時(shí): 1186 ms
第24次讀取 54總用時(shí): 857 ms
第25次讀取 92總用時(shí): 963 ms
第26次讀取 43總用時(shí): 955 ms
第27次讀取 38總用時(shí): 853 ms
第28次讀取 47總用時(shí): 926 ms
第29次讀取 62總用時(shí): 877 ms
第30次讀取 70總用時(shí): 890 ms
第31次讀取 88總用時(shí): 895 ms
第32次讀取 15總用時(shí): 937 ms
第33次讀取 3總用時(shí): 993 ms
第34次讀取 99總用時(shí): 892 ms
第35次讀取 76總用時(shí): 818 ms
第36次讀取 30總用時(shí): 1020 ms
第37次讀取 89總用時(shí): 863 ms
第38次讀取 99總用時(shí): 819 ms
第39次讀取 62總用時(shí): 818 ms
第40次讀取 1總用時(shí): 871 ms
第41次讀取 66總用時(shí): 809 ms
第42次讀取 68總用時(shí): 847 ms
第43次讀取 72總用時(shí): 910 ms
第44次讀取 50總用時(shí): 1128 ms
第45次讀取 47總用時(shí): 898 ms
第46次讀取 26總用時(shí): 909 ms
第47次讀取 35總用時(shí): 872 ms
第48次讀取 30總用時(shí): 826 ms
第49次讀取 79總用時(shí): 904 ms
第50次讀取 66總用時(shí): 863 ms
第51次讀取 2總用時(shí): 885 ms
第52次讀取 65總用時(shí): 900 ms
第53次讀取 67總用時(shí): 1023 ms
第54次讀取 16總用時(shí): 934 ms
第55次讀取 63總用時(shí): 892 ms
第56次讀取 9總用時(shí): 894 ms
第57次讀取 71總用時(shí): 896 ms
第58次讀取 20總用時(shí): 947 ms
第59次讀取 89總用時(shí): 865 ms
第60次讀取 57總用時(shí): 872 ms
第61次讀取 62總用時(shí): 856 ms
第62次讀取 14總用時(shí): 881 ms
第63次讀取 19總用時(shí): 950 ms
第64次讀取 14總用時(shí): 876 ms
第65次讀取 86總用時(shí): 968 ms
第66次讀取 12總用時(shí): 911 ms
第67次讀取 93總用時(shí): 877 ms
第68次讀取 59總用時(shí): 886 ms
第69次讀取 79總用時(shí): 878 ms
第70次讀取 49總用時(shí): 869 ms
第71次讀取 91總用時(shí): 964 ms
第72次讀取 38總用時(shí): 838 ms
第73次讀取 73總用時(shí): 915 ms
第74次讀取 8總用時(shí): 875 ms
第75次讀取 96總用時(shí): 827 ms
第76次讀取 98總用時(shí): 826 ms
第77次讀取 95總用時(shí): 892 ms
第78次讀取 36總用時(shí): 843 ms
第79次讀取 44總用時(shí): 872 ms
第80次讀取 89總用時(shí): 863 ms
第81次讀取 24總用時(shí): 883 ms
第82次讀取 89總用時(shí): 804 ms
第83次讀取 49總用時(shí): 876 ms
第84次讀取 81總用時(shí): 873 ms
第85次讀取 72總用時(shí): 914 ms
第86次讀取 68總用時(shí): 861 ms
第87次讀取 73總用時(shí): 893 ms
第88次讀取 4總用時(shí): 880 ms
第89次讀取 3總用時(shí): 987 ms
第90次讀取 76總用時(shí): 896 ms
第91次讀取 16總用時(shí): 1010 ms
第92次讀取 73總用時(shí): 903 ms
第93次讀取 83總用時(shí): 933 ms
第94次讀取 52總用時(shí): 945 ms
第95次讀取 48總用時(shí): 901 ms
第96次讀取 26總用時(shí): 942 ms
第97次讀取 37總用時(shí): 883 ms
第98次讀取 44總用時(shí): 866 ms
第99次讀取 89總用時(shí): 921 ms
第100次讀取 61總用時(shí): 896 ms</pre>
MinIO
寫
數(shù)據(jù)導(dǎo)入成功!
第1次寫入總用時(shí): 956 ms
第2次寫入總用時(shí): 912 ms
第3次寫入總用時(shí): 1241 ms
第4次寫入總用時(shí): 1564 ms
第5次寫入總用時(shí): 942 ms
第6次寫入總用時(shí): 3666 ms
第7次寫入總用時(shí): 1629 ms
第8次寫入總用時(shí): 1712 ms
第9次寫入總用時(shí): 977 ms
第10次寫入總用時(shí): 1515 ms
第11次寫入總用時(shí): 911 ms
第12次寫入總用時(shí): 1009 ms
第13次寫入總用時(shí): 1024 ms
第14次寫入總用時(shí): 1206 ms
第15次寫入總用時(shí): 984 ms
第16次寫入總用時(shí): 943 ms
第17次寫入總用時(shí): 954 ms
第18次寫入總用時(shí): 1033 ms
第19次寫入總用時(shí): 1008 ms
第20次寫入總用時(shí): 1121 ms
第21次寫入總用時(shí): 963 ms
第22次寫入總用時(shí): 949 ms
第23次寫入總用時(shí): 889 ms
第24次寫入總用時(shí): 1066 ms
第25次寫入總用時(shí): 1289 ms
第26次寫入總用時(shí): 1125 ms
第27次寫入總用時(shí): 1111 ms
第28次寫入總用時(shí): 953 ms
第29次寫入總用時(shí): 964 ms
第30次寫入總用時(shí): 1125 ms
第31次寫入總用時(shí): 998 ms
第32次寫入總用時(shí): 1993 ms
第33次寫入總用時(shí): 926 ms
第34次寫入總用時(shí): 920 ms
第35次寫入總用時(shí): 926 ms
第36次寫入總用時(shí): 1169 ms
第37次寫入總用時(shí): 1325 ms
第38次寫入總用時(shí): 1170 ms
第39次寫入總用時(shí): 1074 ms
第40次寫入總用時(shí): 1011 ms
第41次寫入總用時(shí): 931 ms
第42次寫入總用時(shí): 984 ms
第43次寫入總用時(shí): 1563 ms
第44次寫入總用時(shí): 905 ms
第45次寫入總用時(shí): 944 ms
第46次寫入總用時(shí): 1147 ms
第47次寫入總用時(shí): 1429 ms
第48次寫入總用時(shí): 934 ms
第49次寫入總用時(shí): 1133 ms
第50次寫入總用時(shí): 912 ms
第51次寫入總用時(shí): 953 ms
第52次寫入總用時(shí): 1127 ms
第53次寫入總用時(shí): 1065 ms
第54次寫入總用時(shí): 1323 ms
第55次寫入總用時(shí): 1003 ms
第56次寫入總用時(shí): 1489 ms
第57次寫入總用時(shí): 1377 ms
第58次寫入總用時(shí): 940 ms
第59次寫入總用時(shí): 1317 ms
第60次寫入總用時(shí): 912 ms
第61次寫入總用時(shí): 898 ms
第62次寫入總用時(shí): 934 ms
第63次寫入總用時(shí): 1005 ms
第64次寫入總用時(shí): 1729 ms
第65次寫入總用時(shí): 983 ms
第66次寫入總用時(shí): 1684 ms
第67次寫入總用時(shí): 908 ms
第68次寫入總用時(shí): 895 ms
第69次寫入總用時(shí): 1171 ms
第70次寫入總用時(shí): 1372 ms
第71次寫入總用時(shí): 1261 ms
第72次寫入總用時(shí): 1024 ms
第73次寫入總用時(shí): 1048 ms
第74次寫入總用時(shí): 904 ms
第75次寫入總用時(shí): 941 ms
第76次寫入總用時(shí): 928 ms
第77次寫入總用時(shí): 1806 ms
第78次寫入總用時(shí): 1052 ms
第79次寫入總用時(shí): 1030 ms
第80次寫入總用時(shí): 1092 ms
第81次寫入總用時(shí): 1117 ms
第82次寫入總用時(shí): 950 ms
第83次寫入總用時(shí): 933 ms
第84次寫入總用時(shí): 928 ms
第85次寫入總用時(shí): 935 ms
第86次寫入總用時(shí): 1908 ms
第87次寫入總用時(shí): 994 ms
第88次寫入總用時(shí): 1097 ms
第89次寫入總用時(shí): 930 ms
第90次寫入總用時(shí): 1052 ms
第91次寫入總用時(shí): 1119 ms
第92次寫入總用時(shí): 958 ms
第93次寫入總用時(shí): 987 ms
第94次寫入總用時(shí): 973 ms
第95次寫入總用時(shí): 2036 ms
第96次寫入總用時(shí): 891 ms
第97次寫入總用時(shí): 954 ms
第98次寫入總用時(shí): 951 ms
第99次寫入總用時(shí): 1044 ms
第100次寫入總用時(shí): 1366 ms</pre>
隨機(jī)讀
第1次讀取 46總用時(shí): 40 ms
第2次讀取 8總用時(shí): 36 ms
第3次讀取 28總用時(shí): 26 ms
第4次讀取 80總用時(shí): 10 ms
第5次讀取 77總用時(shí): 13 ms
第6次讀取 27總用時(shí): 49 ms
第7次讀取 86總用時(shí): 20 ms
第8次讀取 0總用時(shí): 45 ms
第9次讀取 54總用時(shí): 34 ms
第10次讀取 24總用時(shí): 153 ms
第11次讀取 78總用時(shí): 29 ms
第12次讀取 0總用時(shí): 17 ms
第13次讀取 91總用時(shí): 56 ms
第14次讀取 5總用時(shí): 99 ms
第15次讀取 23總用時(shí): 138 ms
第16次讀取 37總用時(shí): 120 ms
第17次讀取 40總用時(shí): 156 ms
第18次讀取 88總用時(shí): 41 ms
第19次讀取 76總用時(shí): 32 ms
第20次讀取 49總用時(shí): 102 ms
第21次讀取 20總用時(shí): 179 ms
第22次讀取 40總用時(shí): 68 ms
第23次讀取 6總用時(shí): 215 ms
第24次讀取 36總用時(shí): 197 ms
第25次讀取 37總用時(shí): 30 ms
第26次讀取 68總用時(shí): 154 ms
第27次讀取 14總用時(shí): 314 ms
第28次讀取 27總用時(shí): 91 ms
第29次讀取 51總用時(shí): 255 ms
第30次讀取 66總用時(shí): 166 ms
第31次讀取 86總用時(shí): 140 ms
第32次讀取 29總用時(shí): 374 ms
第33次讀取 96總用時(shí): 235 ms
第34次讀取 68總用時(shí): 72 ms
第35次讀取 74總用時(shí): 264 ms
第36次讀取 11總用時(shí): 334 ms
第37次讀取 55總用時(shí): 316 ms
第38次讀取 31總用時(shí): 287 ms
第39次讀取 93總用時(shí): 233 ms
第40次讀取 44總用時(shí): 499 ms
第41次讀取 26總用時(shí): 312 ms
第42次讀取 76總用時(shí): 33 ms
第43次讀取 11總用時(shí): 31 ms
第44次讀取 86總用時(shí): 191 ms
第45次讀取 96總用時(shí): 217 ms
第46次讀取 20總用時(shí): 145 ms
第47次讀取 1總用時(shí): 772 ms
第48次讀取 69總用時(shí): 477 ms
第49次讀取 9總用時(shí): 320 ms
第50次讀取 46總用時(shí): 42 ms
第51次讀取 34總用時(shí): 823 ms
第52次讀取 76總用時(shí): 115 ms
第53次讀取 62總用時(shí): 635 ms
第54次讀取 99總用時(shí): 596 ms
第55次讀取 64總用時(shí): 657 ms
第56次讀取 66總用時(shí): 97 ms
第57次讀取 18總用時(shí): 461 ms
第58次讀取 91總用時(shí): 247 ms
第59次讀取 46總用時(shí): 147 ms
第60次讀取 12總用時(shí): 702 ms
第61次讀取 79總用時(shí): 545 ms
第62次讀取 47總用時(shí): 956 ms
第63次讀取 17總用時(shí): 853 ms
第64次讀取 97總用時(shí): 771 ms
第65次讀取 74總用時(shí): 368 ms
第66次讀取 84總用時(shí): 790 ms
第67次讀取 72總用時(shí): 866 ms
第68次讀取 82總用時(shí): 742 ms
第69次讀取 93總用時(shí): 313 ms
第70次讀取 57總用時(shí): 917 ms
第71次讀取 61總用時(shí): 1185 ms
第72次讀取 66總用時(shí): 162 ms
第73次讀取 5總用時(shí): 168 ms
第74次讀取 68總用時(shí): 275 ms
第75次讀取 43總用時(shí): 1108 ms
第76次讀取 74總用時(shí): 281 ms
第77次讀取 65總用時(shí): 955 ms
第78次讀取 22總用時(shí): 1169 ms
第79次讀取 88總用時(shí): 501 ms
第80次讀取 80總用時(shí): 1685 ms
第81次讀取 92總用時(shí): 1286 ms
第82次讀取 89總用時(shí): 1680 ms
第83次讀取 30總用時(shí): 1537 ms
第84次讀取 41總用時(shí): 1576 ms
第85次讀取 2總用時(shí): 2193 ms
第86次讀取 52總用時(shí): 1817 ms
第87次讀取 8總用時(shí): 323 ms
第88次讀取 81總用時(shí): 1409 ms
第89次讀取 40總用時(shí): 577 ms
第90次讀取 88總用時(shí): 598 ms
第91次讀取 19總用時(shí): 2324 ms
第92次讀取 75總用時(shí): 2275 ms
第93次讀取 29總用時(shí): 668 ms
第94次讀取 77總用時(shí): 2773 ms
第95次讀取 62總用時(shí): 484 ms
第96次讀取 84總用時(shí): 883 ms
第97次讀取 32總用時(shí): 2945 ms
第98次讀取 44總用時(shí): 884 ms
第99次讀取 66總用時(shí): 631 ms
第100次讀取 38總用時(shí): 2739 ms</pre>
總結(jié)
非常奇怪的是MinIO
整體性能略優(yōu)于SSDB
但是理論上不太應(yīng)該庵佣,SSDB
怎么說也是半內(nèi)存半硬盤的NoSQL不應(yīng)該比純硬盤的MinIO
性能要差歉胶,有可能是SSDB
寫到一定數(shù)據(jù)量后把本機(jī)內(nèi)存寫爆了,導(dǎo)致讀寫非常慢巴粪。但這變相驗(yàn)證了SSDB
在極端情況下的不穩(wěn)定通今。