Быстрый способ отправки данных Sql в RavenDB? - PullRequest
1 голос
/ 22 марта 2012

Я создал консольное приложение, которое отправляет данные из базы данных Sql в RavenDB.

У меня невероятное количество данных для передачи, поэтому это занимает невероятно много времени. (1 000 000 строк занимает около 2 часов хранения RavenDB)

RavenDB требует больше времени для импорта данных, чем собранное с Sql Server консольным приложением.

Есть ли способ ускорить передачу или, возможно, существующий инструмент, который уже делает это?

        using (var session = this._store.OpenSession())
        {
            //row.Count is never more than 1024
            while (i < row.Count)
            {
                session.Store(row[i]);
                i++;
            }
            session.SaveChanges();
        }

1 Ответ

0 голосов
/ 22 марта 2012

Не могли бы вы опубликовать код, куда вы вставляете в RavenDB, скорее всего, в этом и заключается узкое место. Вы должны делать запросы одновременно.

Окружение:

HttpJsonRequest.ConfigureRequest += (e,x)=>((HttpWebRequest)x.Request).UnsafeAuthenticatedConnectionSharing = true; 

А также обработка записей вставки в пакете.

Что касается производительности вставки, вы, вероятно, никогда не будете соответствовать SQLServer, поскольку RavenDb оптимизирован для чтения и записи.

...