問題タブ [chunks]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 4つのアイテムのスライスでPythonリストをページングする
これらのブロックを、一度に4つのアイテムしか処理できないサードパーティのAPIに渡す必要があります。一度に1つずつ実行できますが、これはHTTPリクエストであり、実行ごとに処理されるため、可能な限り少ないクエリ数で実行することをお勧めします。
私がやりたいのは、リストを4つのブロックにチャンクし、各サブブロックを送信することです。
したがって、上記のリストから、私は期待します:
python - ダウンロード マネージャー: 複数の接続によってフェッチされたチャンクを再構築する方法
そのため、教育目的で独自のダウンロード マネージャーを開発しています。ファイルをダウンロードする複数の接続/スレッドがあり、各接続はファイルの特定の範囲で機能します。すべてのチャンクをフェッチした後、このチャンクをまとめて元のファイルを再作成する方法が正確にはわかりません。
私がしたこと:
まず、「wb」モードで一時ファイルを作成し、各接続/スレッドがチャンクをダンプできるようにしました。ただし、接続がこれを行うたびに、以前に保存されたチャンクが上書きされます。これは、「wb」ファイル記述子を使用したためだと考えました。「ab」に変更しましたが、seek() 操作を実行できなくなりました
私が探しているもの:
このチャンクを元のファイルに再パッケージ化するエレガントな方法が必要です。他のダウンロード マネージャーがどのようにそれを行っているか知りたいです。
少し早いですがお礼を。
c# - ファイル (画像) をチャンクでアップロードしようとすると、アップロードされたバイト ファイルをマージした後に破損するのはなぜですか?
大きなファイルをアップロードするために、Silverlight アプリでカスタム アップロード コントロールを作成しようとしています。753バイトのサイズをテストするための非常に小さな画像があります。チャンク サイズを 753 に設定すると、すべて正常に動作し、コントロールは 753 バイトすべてを一度に受け取り、これらのバイト配列を FileSaveAs ダイアログに書き込みます (テスト目的で) ストリームとアップロードされたバイトは、アップロードされた画像のコピーとして表示されます。チャンク サイズを 500 に設定すると、500 + 253 の 2 つのチャンクが必要になります。デバッグ時にこれらのバイト (2 つのチャンク) を比較すると、どちらも 1 つのチャンクでアップロードする場合と同じです。唯一の違い - iこれらのマージされたチャンクを新しい画像ファイルに保存した後、このファイルは破損しています。元のサイズとまったく同じですが、破損しているためプレビューできません。そこに何が問題なのかわからない、何かアイデアはありますか?
これらの画像を添付しました:
a.jpg - 元の b.jpg - 破損 (チャンク 500 + 253 でアップロード) c.jpg - チャンク サイズ = 753 のときにアップロード
algorithm - サイズの異なるデータのチャンクを複数のビンにパックする
編集:この問題は「切り株問題」と呼ばれているようです
ビン内のチャンクの (スペース) 最適な配置を提供するアルゴリズムが必要です。1 つの方法は、最初に大きなチャンクを配置することです。しかし、この例でそのアルゴリズムがどのように失敗するかを確認してください。
「ビッグファースト」は DD には収まりません。次のような表を作成すると役立つ場合があります。
python - Pythonで大きなcsvファイルの読み取りを均等なサイズのチャンクに分割するにはどうすればよいですか?
基本的に、私は次のプロセスを持っていました。
この関連する質問を参照してください。バッチシャーディングを実装するために、100行ごとにプロセスラインを送信したいと思います。
関連する回答の実装に関する問題は、csvオブジェクトがサブスクライブできず、lenを使用できないことです。
どうすればこれを解決できますか?
c# - Filestream.Readの戻り値はどういう意味ですか?データをチャンクで読み取って処理する方法は?
私はC#を初めて使用するので、ご容赦ください。(FileStreamを使用して)データ(固定サイズ)を小さな配列に読み取り、データを処理してから、ファイルの最後まで再度読み取ります。
私はこのようなものを使うことを考えました:
しかし、私はドキュメントとその例を確認し、上記のreadメソッドの戻り値は次のとおりであると述べました。
「タイプ:System.Int32バッファに読み込まれた合計バイト数。これは、そのバイト数が現在使用できない場合は要求されたバイト数より少ない場合があり、ストリームの終わりに達した場合はゼロになる可能性があります。」
それらが現在利用できないということはどういう意味ですか、これは少量のデータを読み取るときに実際に発生する可能性がありますか、それとも大量のデータに対してのみですか?他の場所でも大きなチャンクで読んでいるので、大きい場合は、おおよその大きさです。これがいつでも発生する可能性がある場合、コードが効率的に実行されるようにコードを変更するにはどうすればよいですか?
お手数をおかけしますが、よろしくお願いいたします。
c# - チャンク内のデータを暗号化/復号化する方法は?
私は C# と暗号化にまったく慣れていないので、しばらくお待ちください。いくつかのバイナリ データ (「オブジェクト」 - 実際にはほとんどがオブジェクトの一部のみであるため、シリアライゼーション、BinaryWriter などを使用できない/使用しない) を保存し、それをメモリに暗号化してから FileStream を使用して書き込みたい. 最初はある種の Xor を使用したいと思っていましたが、簡単に破ることができるとは知らなかったので、コードを変更して Aes を使用するようにしました。
問題は、比較的大きなファイルがいくつかあり、多くの場合、32 バイトのデータを変更または読み取るだけでよいということです。したがって、データの 1 つのチャンクのみを暗号化でき、必要なデータのチャンクのみを復号化できなければなりません。今のところ、次の解決策しか思いつきませんでした。
データを保存するときは、すべてのデータをループし、ループ内でデータのチャンクを暗号化してファイルに書き込みます。読み取り中に、データのチャンクを読み取るループがあり、ループ内で復号化を宣言する必要がありますが、これは非常に非効率的です。
暗号化と保存のコードは次のとおりです。
キーと iv は、デバッグと問題解決を容易にするためにハードコーディングされています。これが機能するようになったら、キーと iv の生成方法を変更します。
読み取りと復号化のコードは次のとおりです。 FileStream fStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read, 4096, false);
問題は、ループ内でデクリプタを作成するのは非常に非効率的であるということです。かなりのデータ量になります。ループに入る前に作成すると、適切に復号化できず、暗号化を変更する必要があります (ループの前に暗号化ストリームとメモリ ストリームを宣言します) が、必要なデータのチャンクのみを暗号化/復号化することはできません。また、ランダムな読み取り/書き込みのみを必要とするファイルは多くありません。たとえば、一部のファイルでは、特定の位置からファイルの最後まで読み取りたい場合がありますが、これは非常に多くなる可能性があります。
これについてどう思いますか。これを達成するためのより良い方法はありますか?暗号化アルゴリズムが異なる可能性があります(最初はある種のxorを使用したかったのですが、「クラック」するのは非常に簡単であることがわかりました)?
psメモリ内で暗号化したいので、シーク可能なストリームを使用する必要があります。
algorithm - ファジーマッチング/チャンキングアルゴリズム
背景: ビデオと同期したいビデオ クリップとオーディオ トラックがあります。
ビデオ クリップから、リファレンス オーディオ トラックを抽出します。また、参照トラックと同期させたいトラックがもう 1 つあります。非同期は、各カットシーンの間隔を変更した編集に起因します。
ターゲット トラックを操作して、トラックのように見えるようにする (この場合は音のように聞こえる) 必要がありref
ます。これは、正しい位置で無音を追加または削除することになります。これは手動で行うこともできますが、非常に面倒です。したがって、これらの場所をプログラムで特定できるようにしたいと考えています。
例:
出力:
私の考えは、最初から始めます:
ここでの主な問題は、サウンド マッチングとフィンガープリンティングが曖昧であり、比較的コストのかかる操作であることです。
理想的には、できるだけ少ない回数にしたいです。アイデア?
java - Java - チャンク単位でテキスト ファイルを読み取る
マルチスレッド化するために、ログ ファイルを異なるチャンクで読み取りたいと考えています。アプリケーションは、複数のハードディスクを備えたサーバー側環境で実行されます。チャンクに読み取った後、アプリはすべてのチャンクの行ごとに処理を行います。
bufferedreader を使用してすべてのファイル行の読み取りを完了し、RandomAccessFile と MappedByteBuffer を組み合わせてファイルのチャンクを作成できますが、これら 2 つを組み合わせるのは簡単ではありません。
問題は、チャンクが私のチャンクの最後の行に割り込んでいることです。ブロックの最後の行全体を持っていないため、この最後のログ行を処理することは不可能です。行末を考慮して、ファイルを可変長のチャンクに分割する方法を見つけようとしています。
誰もこれを行うためのコードを持っていますか?
sql-server-2008 - SQLServer2008およびLAPACKバインディングのメモリのチャンク
LAPACK bindings
それらを使用してメモリのチャンクを読み取るにはどうすればよいですか?
- この行列「テーブル」を含むメモリチャンクを作成するにはどうすればよい
SQL Server 2008
ですか? - それが不可能な場合、マトリックスを含むメモリポインタは実行可能ですか?