Pandas msgpack vs pickle

msgpack em Pandas é suposto ser um substituto parapickle.

PeloDocumentos do Pandas no msgpack:

Esse é um formato binário portátil leve, semelhante ao JSON binário, que é altamente eficiente em termos de espaço e oferece bom desempenho tanto na gravação (serialização) quanto na leitura (desserialização).

Acho, no entanto, que seu desempenho não parece empilhar contra picles.

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

Pergunta, questão: Além de possíveis problemas de segurança com pickle, quais são os benefícios do msgpack sobre pickle? O pickle ainda é o método preferido de serialização de dados ou existem alternativas melhores atualmente?

questionAnswers(1)

yourAnswerToTheQuestion