sql >> データベース >  >> NoSQL >> Redis

CLIを使用してRedisキーをCSVとしてエクスポートする方法

    多くの場合、redisからデータをcsvとしてエクスポートする必要があります。 redis-cliには-csvがあります フラグがありますが、単一のキーをエクスポートする場合にのみ機能します。ただし、コマンドラインの魔法を少し使用するだけで、任意の数のキーをCSV形式でエクスポートできます。

    このスクリプトは、<で始まるすべてのハッシュのフィールドID、表示名、評判、場所をエクスポートします。 code> users:*

    スキャンを使用したキーの選択

    最初のステップは、-scanでredis-cliを使用することです。 および--pattern 対象のキーを選択するためのフラグ。したがって、users:*に一致するキーを選択するには、コマンド redis-cli --scan --pattern users:*を実行します。 。

    redisはglobスタイルのパターンのみを許可することに注意してください。したがって、 users:* users:1234と一致します また、 users:1234:favouritesと一致します 。より詳細な制御が必要な場合は、grepと正規表現でフォローアップできます。

    redis-cli --scan --pattern users:* | grep -e'^ users:[^:] * $'

    AWKを使用したRedisコマンドの実行

    選択したキーごとに、redisコマンドを実行してそのキーのデータをフェッチする必要があります。この例では、ハッシュからフィールドをフェッチするため、 hmgetを使用します。 指図。 $ 0 awkスクリプトでは、スキャンを使用して以前に選択したキーを参照しています。

    awkスクリプトの出力はredis-cliにパイプされます。 -csv により、各コマンドが実行され、出力がCSVとして返されます。 フラグ。

    このスクリプトのカスタマイズ
    1. redisサーバーがローカルホスト上にない場合は、ホスト、ポート、およびパスワードを2回提供する必要があります。 コマンドで、基本的にredis-cliを呼び出すときはいつでも。
    2. hmgetの代わりに任意のコマンドを実行できます
    関連項目
    • ハッシュ内のフィールドの名前を変更する
    • スキャンを使用して複数のキーの名前を変更する
    • 有効期限を複数のキーに設定
    • パターンに一致するキーを削除する
    • Redis用のRDBToolsGUIを使用すると、一括アクションをプレビューでき、Redisのデータを管理するための強力なGUIが提供されます。無料でダウンロードできます!

    1. MongoDB $ convert

    2. MongoDBからのランダムレコード

    3. 単一のnode.jsプロジェクトのマングースと複数のデータベース

    4. MongoDBとMongooseの使用を開始する