Tajuk: MySQL lwn MongoDB: Penanda aras untuk memilih jenis pangkalan data terbaik
Pengenalan:
Dalam pembangunan perisian moden, adalah penting untuk memilih jenis pangkalan data yang sesuai dengan keperluan projek anda. MySQL dan MongoDB ialah dua jenis pangkalan data yang paling biasa Artikel ini akan menjalankan satu siri ujian penanda aras untuk membandingkan prestasi mereka dan senario yang berkenaan.
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 );
use products db.mongodb_product.insertOne({ name: "Product 1", price: 9.99, description: "This is product 1" });
Pertama, kami akan menguji prestasi sisipan data. Kami akan memasukkan 1000 rekod dalam setiap pangkalan data dan mengira masa yang diperlukan.
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}秒")
Seterusnya, kami akan menguji prestasi pertanyaan data. Kami akan menanyakan rekod yang dimasukkan dalam setiap pangkalan data dan mengira masa yang diperlukan.
# 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}秒")
Kesimpulan:
Apabila memilih jenis pangkalan data yang sesuai untuk keperluan projek, pembangun harus mempertimbangkan prestasi dari segi sisipan data dan pertanyaan, serta ketekalan data yang diperlukan dan keupayaan pemprosesan transaksi. Kedua-dua MySQL dan MongoDB adalah jenis pangkalan data yang sangat baik, dan pilihan khusus harus dinilai berdasarkan kes demi kes.
Walaupun artikel ini hanya membandingkan prestasi MySQL dan MongoDB melalui ujian penanda aras mudah, ia boleh digunakan sebagai rujukan untuk memilih jenis pangkalan data yang sesuai. Dalam aplikasi praktikal, penilaian dan ujian lanjut diperlukan untuk menentukan jenis pangkalan data yang terbaik.
Atas ialah kandungan terperinci MySQL lwn MongoDB: Penanda Aras untuk Memilih Jenis Pangkalan Data Terbaik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!