Подключение к базе данных Perl

Я подключаюсь к базе данных mysql, используя следующий код:

my $dbh = DBI->connect("DBI:mysql:test:localhost", $user, $pass)
    or die $DBI::errstr;
my $sqlQuery  = $dbh->prepare($query) 
    or die "Can't prepare $query: $dbh->errstr\n"; 
my $rv = $sqlQuery->execute 
    or die "can't execute the query: $sqlQuery->errstr";

while (my @row= $sqlQuery->fetchrow_array()) {
    # do something;
}

Я сомневаюсь, что :это нормально до тех пор, пока мое приложение не взаимодействует с небольшими БД. Но когда я перемещаю это приложение в живую среду, где размер БД может составлять сотни ГБ, какие проблемы с производительностью может вызвать этот код. Фактически то, что я спрашиваю, находится в строке-

@row= $sqlQuery->fetchrow_array();

Будет ли Perl копировать все содержимое таблицы и сбрасывать его в переменную. Если да, не вызовет ли это значительных проблем с производительностью моего приложения, а также сервера базы данных?

5
задан Flimzy 8 July 2012 в 19:49
поделиться