ホームページ >データベース >Redis >Redis バッチ書き込みの概要

Redis バッチ書き込みの概要

藏色散人
藏色散人転載
2020-09-30 16:50:563391ブラウズ

次のコラム Redis チュートリアル では、Redis のバッチ作成について紹介します。困っている友人の役に立てば幸いです。

Redis バッチ書き込みの概要

最近 Redis のパフォーマンスをテストし、1,000 万を超えるデータをバッチで挿入する必要がありました。

調査を実施したところ、おそらく次のメソッド:

1: Java プログラム呼び出し、単純な for ループ、Jedis メソッドによる直接挿入、

速度に関しては、調べる必要はありません。試さないでください。 、まったく機能しない場合は実装されません。

2: シェルスクリプト経由なので比較的簡単ですが、ポート経由でredisに接続する必要があるため、

速度も非常に遅いので諦めてください。

3: Redis 経由でパイプラインを提供します。この方法が最も信頼できると思います。実装は次のとおりです:

ステップ 1: まず単純にシェル スクリプトを作成します:

for((i=1;if7b6e8d1286c85335874aee64187dbfb> /tmp/_t.txt        done

バッチ挿入用のスクリプト ファイルを生成することが目的です。

ステップ 2: Linux または Windows で生成されたファイルを redis ステートメントとして直接実行することはできません。

簡単に言うと、 Linux では、windows と dos の改行が異なります。

したがって、単純な変換を行う必要があります:

多くの変換方法があります:

1 : 一般的な Linux ディストリビューションには、DOS を UNIX ファイルに変換することしかできないこの小さなツールが付属しています。コマンドは次のとおりです:

# unix2dos dosfile.txt

上記のコマンドは、行末の ^M 記号を削除します。 (nuix2dos がマシンにインストールされていない場合は、方法 2 を使用してください)

2: vim を使用します。vim は vi の改良版です。使用方法:

#vim file.txt
:set fileformat=dos
::wq

1 行コマンド保存して終了します。

ステップ 3: redis によって提供されるパイプ (パイプ フォーム) を通じてスクリプトを実行するだけです。

cat redisTest.txt | redis- cli -h reids.aliyuncs.com -p 6379 -a xxxx --pipe

Redis のバッチ挿入を完了するには 3 つのステップで十分です。 2,000 万レコードのスクリプトの生成速度は少し遅く、挿入速度はまだ数分です。

速度は非常に速いと言えます~

以上がRedis バッチ書き込みの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。