1
0
mirror of https://github.com/ltcptgeneral/cs239-caching.git synced 2025-04-01 12:33:25 +00:00
2025-02-28 20:12:23 +00:00

33 lines
1.0 KiB
Python

import random, string
from tinydb import TinyDB
from tinydb.storages import JSONStorage
from tinydb.middlewares import CachingMiddleware
def randomstring(length):
letters = string.ascii_lowercase
return ''.join(random.choice(letters) for i in range(length))
def generate_data(base_id, num_users):
data = []
for i in range(num_users):
data.append({
"user_id": str(base_id + i),
"name": randomstring(10),
"followers": random.randint(1, 10000),
"bio": randomstring(250),
"posts": randomstring(100),
"friends": random.choices(range(base_id + i - 1), k=random.randint(1, 50))
})
return data
base_id = input("Enter base id (check db to find the next consecutive user_id): ")
num_users = input("Enter number of users to generate: ")
data = generate_data(int(base_id), int(num_users))
# Create json file
file_path = "datastore/llmData_sns.json"
global db
db = TinyDB(file_path, storage=CachingMiddleware(JSONStorage), indent=4)
db.insert_multiple(data)
db.close()