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.
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
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.
Da es zwischen "Kyun" und "Kyo" liegt, gibt es einige Songs, die mit "Kyu" beginnen, aber bitte haben Sie etwas Geduld.
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