Mysql
 sql >> база данни >  >> RDS >> Mysql

Python:Какво не е наред с моя код за вмъкване на множество процеси в MySQL?

Да, ако групово вмъквате 300 милиона реда в една и съща таблица, тогава не трябва да се опитвате да паралелизирате това вмъкване. Всички вмъквания трябва да преминат през едни и същи тесни места:актуализиране на индекса и запис във физическия файл на твърдия диск. Тези операции изискват ексклузивен достъп до базовите ресурси (индекса или главата на диска).

Вие всъщност добавяте някои безполезни допълнителни разходи към базата данни, която сега трябва да обработва няколко едновременни транзакции. Това изразходва памет, налага превключване на контекста, кара главата за четене на диска да скача през цялото време и т.н.

Вмъкнете всичко в една и съща нишка.

Изглежда, че всъщност импортирате данни от вид CSV файл. Може да искате да използвате вградения LOAD DATA INFILE MySQL команда, предназначена точно за тази цел. Моля, опишете вашия изходен файл, ако имате нужда от помощ при настройването на тази команда.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да получите текущата дата в MySQL

  2. Perl DBI вмъкване на множество редове, използвайки собствена способност за многократно вмъкване на mysql

  3. 2-ро поколение Google cloud SQL - App Engine

  4. как да сравня два реда и да съхраня приликите на двата реда в друга колона

  5. Изчислете AVERAGE от 2 колони за всеки ред в SQL