массовая вставка параллелизма sqlite - PullRequest
0 голосов
/ 16 февраля 2011

Я читаю sqlLite лучше для SELECT, а не для вставки и особенно для параллельной вставки, потому что блокирует весь файл базы данных, но я хотел бы знать ваш последний пункт:).

Так что мне интересно, если яУ меня возникают проблемы с такой вещью:

foreach($rows as $row){
    if(null === $model->check($row->id,$row->name)){
        //prepare date
        $model->insert($data);
    }
}

код находится внутри рабочего-механика, поэтому у меня есть более одного экземпляра.

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 17 февраля 2011

Вы также можете посмотреть на Berkeley DB . SQL API для Berkeley DB совместим с SQLite, но имеет гораздо более высокий параллелизм, поскольку не требует исключительных блокировок записи в базу данных.Поскольку API совместим с SQLite, это простой тест для перестройки вашего приложения на основе библиотеки Berkeley DB.

1 голос
/ 16 февраля 2011

Нет проблем для меня. Вот отличное чтение относительно блокировок sqlite: http://www.sqlite.org/lockingv3.html

...