[PYTHON] Führen Sie die Präfixsuche mit DynamoDB durch

Einführung

DynamoDB-chan ist bequem und billiger als alles andere, aber bei der Suche nicht sehr einfach zu bedienen. Heute habe ich darüber nachgedacht, wie man damit eine Präfixsuche macht, also möchte ich es zusammenfassen. Wie ich bereits sagte, wird Scan verwendet. Achten Sie also darauf, es nicht zu stark zu verwenden.

Zunächst der Quellcode, der tatsächlich in Lambda eingegeben wurde

lambda_function.py


import json
import boto3
from boto3.dynamodb.conditions import Attr

def lambda_handler(event, context):
    dynamoDB = boto3.resource("dynamodb")
    table = dynamoDB.Table(event["type"])
    title = event["title"]
    fin = title[0]+chr(ord(title[1])+2)

    queryData = table.scan(
      FilterExpression = Attr("Title").between(title,fin)
    )
    return queryData

Was machst du?

Dies bereitet eine Zeichenfolge vor, in der die oben eingegebene Zeichenfolge und das zweite Zeichen der eingegebenen Zeichenfolge um zwei verschoben werden und den Abstand zwischen ihnen erhalten. Bei dem Lied "Kyun" von Hinatazaka 46, das dieses Mal für den Test verwendet wurde, machen Sie zuerst die Zeichenkette "Kyo" aus der Zeichenkette "Kyun". Das ist der nächste Teil. fin = title[0]+chr(ord(title[1])+2) Sie müssen den Unterschied nur normal scannen. Im Fall von "Kyun" ist es übrigens wie folgt. image.png Da es zwischen "Kyun" und "Kyo" liegt, gibt es einige Songs, die mit "Kyu" beginnen, aber bitte haben Sie etwas Geduld.

Schließlich

Der DynamoDB-Scan ist unübersichtlich und umfangreich, da die Zieldaten nach dem Erfassen aller Fälle eingegrenzt werden. Wenn Sie damit rechnen können, besonders häufig getroffen zu werden, melden Sie sich gehorsam bei RDS an. Ich bin ein Pinchke-Entwickler, daher werde ich für eine Weile mein Bestes mit DynamoDB geben.

Recommended Posts

Führen Sie die Präfixsuche mit DynamoDB durch
Dichotomie mit Python
Lineare Suche in Python
Binäre Suche in Python
Suchen Sie nach Zeichenfolgen in Dateien
Binäre Suche in Python / C ++
Algorithmus in Python (Dichotomie)
[Python] Holen Sie sich Elemente, indem Sie Attribute mit Präfixsuche in BeautifulSoup angeben
Schreiben Sie eine Dichotomie in Python
Scala-ähnliche Erfassungsoperation in Python
Algorithmus in Python (Tiefenprioritätssuche, dfs)
Schreiben Sie eine Suche mit Tiefenpriorität in Python
Suche nach Tiefenpriorität mit Stack in Python