[PYTHON] Supprimer des données dans un modèle avec Redis Cluster

Conclusion

Il n'y a pas de méthode simple, alors écrivez un script

Aperçu

Pour supprimer les données Redis avec un modèle, cliquez sur Supprimer les clés qui correspondent au modèle Redis. , mais ce n'est pas une approche simple (bien que ce ne soit pas une approche directe), mais lors de l'utilisation de Redis Cluster, les données même si le préfixe clé est le même Est distribué entre les nœuds, ce qui rend difficile la navigation et la suppression à la fois.

En premier lieu, je fais rarement une telle chose dans l'environnement de publication, mais l'utilisation de Redis Cluster à partir de l'environnement de développement est un peu un problème. Que faire si vous enregistrez accidentellement des données corrompues et que vous souhaitez enfin les supprimer.

scénario

D'après le résultat, c'est le plus rapide pour écrire un tel script.

delete-pat


#! /usr/bin/env python

import sys
import commands

print sys.argv

#Veuillez définir le nœud vous-même
nodes = [
"localhost:10000",
"localhost:10001",
"localhost:10002"
]

pat = sys.argv[1]
for node in nodes:
    host, port = node.split(":")
    output = commands.getoutput("redis-cli -h {host} -p {port} -c keys {pat}".format(host=host,port=port,pat=pat))
    result = filter(lambda s:len(s) > 0, output.split("\n"))
    print host, port
    print result
    for key in result:
        print commands.getoutput("redis-cli -h {host} -p {port} -c del {key}".format(host=host,port=port,key=key))

Je l'utilise comme ça

./delete-pat hoge:fuga:*

C'est tout d'ici.

Recommended Posts

Supprimer des données dans un modèle avec Redis Cluster
Entraînez les données MNIST avec PyTorch en utilisant un réseau neuronal
Ingéniosité pour gérer les données avec Pandas de manière à économiser la mémoire
Organisez les données d'achat individuelles dans un tableau avec le MultiLabel Binarizer de scikit-learn
Obtenez des données supplémentaires vers LDAP avec python
Livre en spirale en Python! Python avec un livre en spirale! (Chapitre 14 ~)
SE, débutant en analyse de données, apprend avec l'équipe de science des données vol.1
Essayez de travailler avec des données binaires en Python
[Python] Dessiner un motif de tourbillon avec une tortue
Dessinez un cœur en rubis avec PyCall
Écraser les données dans RDS avec AWS Glue
Lire le fichier de données de caractères avec numpy
Gérez les structures de données 3D avec les pandas
Dessinez un graphique avec des étiquettes japonaises dans Jupyter
Le basculement du système se produit dans l'environnement de cluster CentOS 7
Démarrez Django dans un environnement virtuel à l'aide de Pipenv
Créer un environnement virtuel avec conda avec Python
Lire les données de la table dans un fichier PDF avec Python
Supprimer les lignes avec des valeurs arbitraires dans pandas DataFrame
Créez un environnement Django avec Vagrant en 5 minutes
Une histoire sur la gestion des données binaires en Python
Cloner avec une branche / balise spécifique dans GitPython
Folium: Visualisez les données sur une carte avec Python
Analyse de données en Python: une note sur line_profiler
J'ai écrit un modèle de conception dans l'édition Kotlin Prototype
Travaillez dans un environnement virtuel avec Python virtualenv.
Créer une nouvelle page en confluence avec Python
Une histoire remplie de valeurs absolues de numpy.ndarray
Configurer un module avec plusieurs fichiers dans Django
Transformez les données de vacances en une trame de données avec les pandas
Créer un modèle d'antenne cadre en Python dans KiCad
Environnement enregistré pour l'analyse des données avec Python
Extraire des données d'une page Web avec Python
Réalisez une maison super IoT en acquérant des données de capteur dans la maison avec Raspberry Pi
Consolider un grand nombre de fichiers CSV dans des dossiers avec python (données sans en-tête)
Comment utiliser fixture dans Django pour saisir des exemples de données associés au modèle utilisateur
J'ai créé un graphique à barres empilées avec matplotlib de Python et ajouté une étiquette de données
Python2 / numpy> Remplacer uniquement une colonne spécifique d'un fichier par les données de colonne d'un autre fichier> numpy.c_
Créer un bot de collecte de données en Python à l'aide de Selenium
Comment convertir / restaurer une chaîne avec [] en python
Je veux faire la transition avec un bouton sur le ballon
Recevez des données de dictionnaire à partir de programmes Python avec AppleScript
Obtenez des données financières avec python (puis un peu de bricolage)
J'ai écrit un modèle de conception dans l'édition Kotlin Builder
Jouer avec l'API d'intelligence artificielle locale de l'utilisateur en Python
Mettez les données AWS dans Google Spreadsheet avec boto + gspread
Créez un Slackbot simple avec un bouton interactif en python
J'ai écrit un modèle de conception dans l'édition Kotlin Singleton
J'ai écrit un modèle de conception dans l'édition Kotlin Adapter
Visualisez les données d'itinéraires ferroviaires sous forme de graphique avec Cytoscape 2
Essayez d'incorporer Python dans un programme C ++ avec pybind11
J'ai écrit un modèle de conception en kotlin, édité par Iterator
Supprimez 1 000 objets stockés dans AWS S3 à la fois.
[Django] Perform Truncate Table (supprimer toutes les données de la table)
Dessiner une structure arborescente avec D3.js dans Jupyter Notebook
Je veux travailler avec un robot en python.
Le point addictif du "raisonnement de Bayes expérimenté en Python"
Jusqu'à ce que vous insériez des données dans une feuille de calcul en Python
Un serveur qui fait écho aux données POSTées avec flask / python
Sortie d'une chaîne avec des sauts de ligne dans PyYAML