제목: MySQL 대 MongoDB: 최고의 데이터베이스 유형을 선택하기 위한 벤치마크
소개:
현대 소프트웨어 개발에서는 프로젝트 요구 사항에 맞는 데이터베이스 유형을 선택하는 것이 중요합니다. MySQL과 MongoDB는 가장 일반적인 두 가지 데이터베이스 유형입니다. 이 기사에서는 성능과 적용 가능한 시나리오를 비교하기 위해 일련의 벤치마크 테스트를 수행합니다.
MySQL 데이터베이스 디자인 예:
CREATE DATABASE products; USE products; CREATE TABLE mysql_product ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL, price DECIMAL(10,2) NOT NULL, description TEXT );
MongoDB 데이터베이스 디자인 예:
use products db.mongodb_product.insertOne({ name: "Product 1", price: 9.99, description: "This is product 1" });
데이터 삽입 성능 테스트
먼저 데이터 삽입 성능을 테스트하겠습니다. 각 데이터베이스에 1000개의 레코드를 삽입하고 필요한 시간을 계산합니다.
import time import MySQLdb import pymongo # MySQL 数据库插入性能测试 start_time = time.time() for i in range(1000): cursor.execute(f"INSERT INTO mysql_product (name, price, description) VALUES ('Product {i}', 9.99, 'This is product {i}')") db.commit() end_time = time.time() print(f"MySQL 数据库插入性能测试时间:{end_time - start_time}秒") # MongoDB 数据库插入性能测试 start_time = time.time() for i in range(1000): db.mongodb_product.insert_one({ "name": f"Product {i}", "price": 9.99, "description": f"This is product {i}" }) end_time = time.time() print(f"MongoDB 数据库插入性能测试时间:{end_time - start_time}秒")
데이터 쿼리 성능 테스트
다음으로 데이터 쿼리 성능을 테스트해보겠습니다. 각 데이터베이스에 삽입된 레코드를 쿼리하고 소요 시간을 계산합니다.
# MySQL 数据库查询性能测试 start_time = time.time() cursor.execute("SELECT * FROM mysql_product") result = cursor.fetchall() end_time = time.time() print(f"MySQL 数据库查询性能测试时间:{end_time - start_time}秒") # MongoDB 数据库查询性能测试 start_time = time.time() result = db.mongodb_product.find() end_time = time.time() print(f"MongoDB 数据库查询性能测试时间:{end_time - start_time}秒")
위 내용은 MySQL과 MongoDB: 최상의 데이터베이스 유형을 선택하기 위한 벤치마크의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!