1 使用mongo数据库自带索引和不带索引查询数据时间对比
# 链接mongo
import os
import time
import yaml
from bson import ObjectId
from pymongo import MongoClient, ASCENDING
parent_path = os.path.abspath(os.getcwd())
print('parent_path', parent_path)
yaml_data = open(os.path.join(parent_path, 'config.yaml'))
yaml_data = yaml.load(yaml_data)
mongo_url = yaml_data.get('mongo')
database = yaml_data.get('database')
print('mongo_url', mongo_url)
#链接mongo
client = MongoClient(host=mongo_url)
db = client[database]
print('db', db)
# 数据库索引和无索引的情况单条数据时间对比
start_time = time.time()
db['users'].find_one({'uid': 20380})
print('数据库不加索引时间查询', time.time() - start_time)
start_time = time.time()
db['users'].find_one({'_id': ObjectId("5de89cdc7e7fcf5b1752aeb3")})
print('使用数据库自带索引时间', time.time() - start_time)
# mongo 系统自带索引和 添加索引单条数据时间对比
# 添加索引
# user_index = db["users"].create_index([("uid", ASCENDING)])
# print('user_index', user_index)
start_time = time.time()
db["users"].find_one({"uid": 20380})
print('使用添加索引时间查询', time.time() - start_time)
结果输出:
数据库不加索引时间查询 0.2353839874267578
使用数据库自带索引时间 0.02894282341003418
使用添加索引时间查询 0.03088521957397461