0

私は GAE で python 2.7 を使用しており、サイズが 25 から 35 MB のファイルを読み取る必要があります。それらを Blobstore にアップロードし、次のコードを使用してファイルを読み取ります。

blob_reader = blobstore.BlobReader(blob_key)
for line in blob_reader:
     # ...

私の質問は、BlobReader のプロパティ buffer_size と position を使用して、これをより効率的に行うにはどうすればよいかということです。ドキュメントはあまり詳細ではなく、ファイル I/O の経験があまりありません。例は次のとおりです。

# Instantiate a BlobReader for a given Blobstore value, setting the
# buffer size to 1 MB.
blob_reader = blobstore.BlobReader(blob_key, buffer_size=1048576)

# Instantiate a BlobReader for a given Blobstore value, setting the
 # initial read position.
 blob_reader = blobstore.BlobReader(blob_key, position=4194304)

しかし、これを使用してファイルの読み取りを高速化する方法は明確ではありません。

ありがとう、

4

1 に答える 1

1

バッファー サイズが大きいほど、行を読み取るときのブロブストア操作が少なくなり、効率が向上します。バッファ サイズをできるだけ大きく設定するだけで、並べ替えが完了します。

于 2013-02-27T11:52:16.503 に答える