在这个充斥着无数的nosql的世界,voldemort作为Nosql的一员.简单测试了下'健康状态'
background:目前被LinkIn使用,与Dynamo思想类似
1.读写性能.
read 10s 100000 writer 15s 1000000
测试机的性能一般,自己开发机器.
2.压缩测试
压缩参考数据:10000条真实数据
[table]
|数据量| 压缩格式 |时间(毫秒)| 大小(k)|
|10000| Null |50013 | 16404|
|10000| Lzf |49451 | 8212|
|10000| Gzip| 47764 | 7184|
[/table]
由于资料很少,对于xml的配置,幸亏存在xrd文件,debug发现可对数据进行压缩,尤其是针对字符串的处理,这个压缩效果是很显著的.通过上面简单的测试结构就可得知.
[img]http://project-voldemort.com/images/logical_arch.png[/img]
压缩策略
[list]
[*]routing-strategy,
[*] preferred-reads,
[*] preferred-writes,
[*] retention-days,
[*] retention-scan-throttle-rate
[/list]
自己使用的preferred-writes.
压缩类型
[list]
[*]gzip
[*]lzf
[/list]
配置文件特别的少,只得通过xsd文件来写xml文件,存储的类型支持json,string,序列化,protobuf,identity.只要还是数据是字符串形式的,则压缩效果很明显.
压缩可针对[b]key[/b],也可针对[b]value[/b]压缩。压缩的比率较大
本次压缩采用的是单机模型.
需要注意的就是配置本机IP
Cluster.xml
压缩在客户端压缩?
Stores.xml
参考资料
1. http://h5py.alfven.org/lzf/
2. http://code.google.com/p/hyk-proxy/issues/detail?id=10
background:目前被LinkIn使用,与Dynamo思想类似
1.读写性能.
read 10s 100000 writer 15s 1000000
测试机的性能一般,自己开发机器.
2.压缩测试
压缩参考数据:10000条真实数据
[table]
|数据量| 压缩格式 |时间(毫秒)| 大小(k)|
|10000| Null |50013 | 16404|
|10000| Lzf |49451 | 8212|
|10000| Gzip| 47764 | 7184|
[/table]
由于资料很少,对于xml的配置,幸亏存在xrd文件,debug发现可对数据进行压缩,尤其是针对字符串的处理,这个压缩效果是很显著的.通过上面简单的测试结构就可得知.
voldemort.store.compress.StreamCompressionStrategy
[img]http://project-voldemort.com/images/logical_arch.png[/img]
压缩策略
[list]
[*]routing-strategy,
[*] preferred-reads,
[*] preferred-writes,
[*] retention-days,
[*] retention-scan-throttle-rate
[/list]
自己使用的preferred-writes.
压缩类型
[list]
[*]gzip
[*]lzf
[/list]
配置文件特别的少,只得通过xsd文件来写xml文件,存储的类型支持json,string,序列化,protobuf,identity.只要还是数据是字符串形式的,则压缩效果很明显.
压缩可针对[b]key[/b],也可针对[b]value[/b]压缩。压缩的比率较大
本次压缩采用的是单机模型.
需要注意的就是配置本机IP
Cluster.xml
<cluster>
<name>mycluster</name>
<server>
<id>0</id>
<host>192.168.208.76</host>
<http-port>8081</http-port>
<socket-port>6666</socket-port>
<partitions>0, 1</partitions>
</server>
</cluster>
压缩在客户端压缩?
Stores.xml
<stores>
<store>
<name>test</name>
<persistence>bdb</persistence>
<routing>client</routing>
<replication-factor>1</replication-factor>
<required-reads>1</required-reads>
<required-writes>1</required-writes>
<key-serializer>
<type>string</type>
</key-serializer>
<value-serializer>
<type>string</type>
<compression>
<type>gzip</type>
<options>preferred-writes</options>
</compression>
</value-serializer>
</store>
<view>
<name>test-view</name>
<view-of>test</view-of>
<view-class>
voldemort.store.views.UpperCaseView
</view-class>
<value-serializer>
<type>string</type>
</value-serializer>
</view>
</stores>
参考资料
1. http://h5py.alfven.org/lzf/
2. http://code.google.com/p/hyk-proxy/issues/detail?id=10