熊猫味精包装与泡菜
发布于 2021-01-29 15:23:53
msgpack
在熊猫中应该被取代pickle
。
这是一种轻便的可移植二进制格式,类似于二进制JSON,具有很高的空间利用率,并且在写入(序列化)和读取(反序列化)方面均具有良好的性能。
但是,我发现它的性能似乎与泡菜不相上下。
df = pd.DataFrame(np.random.randn(10000, 100))
>>> %timeit df.to_pickle('test.p')
10 loops, best of 3: 22.4 ms per loop
>>> %timeit df.to_msgpack('test.msg')
10 loops, best of 3: 36.4 ms per loop
>>> %timeit pd.read_pickle('test.p')
100 loops, best of 3: 10.5 ms per loop
>>> %timeit pd.read_msgpack('test.msg')
10 loops, best of 3: 24.6 ms per loop
问题: 除了泡菜的潜在安全问题之外,msgpack相对于泡菜有什么好处?pickle仍然是序列化数据的首选方法,还是目前存在更好的替代方法?
关注者
0
被浏览
43