私は読んだり、最新のほんの数行の情報だけを取り込む必要があるかなり大きなBLOBファイルを持っています。私のアプリが最小限の情報を取り込めるように、終了するまでファイルを読み込むAPI(C#)はありますか?Azure Blobストレージのテキストファイルを最後から読み取ることはできますか?
答えて
確かに、私は答えに同意しません。ページ・ブロブはランダム・アクセス用に設計されているのは事実ですが、それらはすべて異なる目的のために用意されています。
私はまた、しかし、何も途中からブロックブロブの内容を読んでからあなたを防ぐことはありません、ブロックブロブは、シーケンシャルアクセス用に設計されていることに同意するものとします。ブロックBLOBの範囲読み取りをサポートすることで、ブロックBLOBの部分的な内容を完全に読み取ることができます。
あなたの例を与えるために、あなたは10メガバイトのブロブ(Blobサイズ= 10485760バイト)を持っていると仮定しましょう。今度は、下からブロブを読みたいと思っています。一度に1MBのチャンクを読み込みたい場合は、開始範囲に9437184
(9MBマーカー)、終了範囲に10485759
(10MBマーカー)を指定して、DownloadRangeToStream
(またはその非同期バリアント)を呼び出し、9437184
内容を読んで、探しているものが見つかったら参照してください。そうでない場合は、blobの内容を8MBから9MBに読み込んで処理を続行できます。
ブロックブロッブはアクセス用に設計されていますが、ページブロブはrandom
用に設計されています。あなたのケースでは私たちが探しているものではないAppend操作のためのAppendBlobs。
あなたの解決策は、デフォルト値BlockBlob
ではなく、PageBlob
としてブロブを保存することだと思います。ページブロブを作成したら、GetPageRangesAsyncのような素晴らしいメソッドがあり、IEnbumerableをPageRangeに戻します。後者はToString()メソッドをオーバーライドして、ページの文字列の内容を取得します。
- 1. Azure BlobストレージのファイルをAzure SQLデータベースに読み込みます。
- 2. Azure BlobストレージからAzureサービスバスへのメッセージ
- 3. ファイルをAzure Blobストレージからダウンロードする
- 4. Azure BLOBストレージからデータを読み取るときにOpenReadAsync()の奇妙な結果が返される
- 5. Azure BLOBストレージはFTPとしてアクセスできますか?
- 6. blobストレージからspark経由でより速く読み込み
- 7. は、Azureのキーボールトから値を読み取ることができません
- 8. Azure Blobストレージはソースコントロールレポに同期できますか?
- 9. 別のマシンからテキストファイルを読み取ることができません
- 10. Azure BLOBストレージからオブジェクトを逆シリアル化する最速の方法は?
- 11. PHP Azureストレージにアップロードした後にBlob URLを取得する
- 12. Javaのazure関数からBLOBストレージを使用するには
- 13. AzureのBLOBストレージからJupyterノートブックにデータをアップロードするには?
- 14. AzureデータウェアハウスはBLOBストレージからデータをロードします
- 15. ストレージからファイルを読み取っているときのEOFException
- 16. アセットからテキストファイルを読み取ることができません(Android Studio、JAVA)
- 17. テキストファイルから数値を読み取ることができません
- 18. スプリングブートジャーからテキストファイルを読み取ることができません
- 19. Azure BlobストレージBLOBを表示する
- 20. Java:OracleからBLOBを読み取る
- 21. Azure Blobストレージのトランザクションアクセス
- 22. Azure Logic AppをParallelizeするSFTPからBlobストレージにファイルをコピーするとき
- 23. WinCE 5.0を使用して他のストレージからデータを読み取ることはできますか?
- 24. AzureストレージとOracle Blobコンテンツ
- 25. Azure BLOBストレージのDLLからUSQLアセンブリを作成します。
- 26. これで、テキストファイルからすべての名前を読み取ることができますか?
- 27. Azure関数からPOSTコンテンツを読み取ることができません
- 28. Azureファイル共有からファイルを読み取ることができません
- 29. Azureアプリ(BLOBストレージ)はローカルホスト上でのみ実行する
- 30. Azure BLOBストレージのあるCNAME
簡単な質問....ブロブに挿入された各レコードが固定長であるかどうかを教えてください。言い換えれば、各行は固定サイズであるか、それとも変化する可能性がありますか? blobファイルにあなたのレコードに構造体がありますか? –
構造体がありますが、レコード長が異なる可能性があります(つまり、特定のフィールドは可変長です) – Igorek