Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Выборка из базы данных в несколько потоков / 25 сообщений из 129, страница 1 из 6
15.12.2012, 15:47
    #38080564
Newbie2002
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Хочу научится работать с многопточностью )
К примеру, в базе есть 300 записей. Я хочу запустить выборку по 100 записей в 3 потоках одновременно. Подскажите как действовать и что почитать.
Спасибо.
...
Рейтинг: 0 / 0
15.12.2012, 17:50
    #38080619
Lelouch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Newbie2002,
300 записей получать в 3 потока это сурово....
...
Рейтинг: 0 / 0
15.12.2012, 18:11
    #38080628
beg-in-er
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Lelouch300 записей получать в 3 потока это сурово....
да, пожалуй задачка для БД непосильная. надо бы увеличить количество потоков.
...
Рейтинг: 0 / 0
15.12.2012, 18:19
    #38080631
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
...
Рейтинг: 0 / 0
15.12.2012, 19:14
    #38080652
Newbie2002
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Ну хорошо, мне надо увеличить скорость выборки 30 000 000 записей, из сложной структуры соответственно 30 млн записей тянут за собой еще записии и сумарно получается под 100 150 млн записей. Так круче?
...
Рейтинг: 0 / 0
15.12.2012, 19:14
    #38080653
Newbie2002
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
МСУ,

Спасибо за ответ буду разбираться
...
Рейтинг: 0 / 0
15.12.2012, 20:02
    #38080680
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Newbie2002,

можно посмотреть в сторону MARS (Multiple Active Recordsets).
...
Рейтинг: 0 / 0
15.12.2012, 20:12
    #38080683
Newbie2002
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
bazile,

Спасибо я использую MultipleActiveResultSets=true
...
Рейтинг: 0 / 0
15.12.2012, 22:10
    #38080737
SeVa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
МСУ http://codearticles.ru/Home/ArticleView/1156

Какая прелесть!! муфаил, а если в десяти потоках нужно будет читать данные, то продолжать соpy-past еще на пару страниц?
PS выборка результатов будет последовательная

net 4.5


Создаешь нужный метод, который будет считывать данные, далее с помощью Paraller.ForAll или PLinq запускаешь их

a'la

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 public async Task<string> ReadAsync( int index)
{
    await   Task.Delay(index * 1000);
    return index.ToString();
 
}

//Test

   var strings= Emumarable.Range(0,3).AsParallel.Select( async i => ReadAsync(i));
   foreach( var s in strings)
   {
      Console.WriteLine(s);
   }
...
Рейтинг: 0 / 0
15.12.2012, 23:45
    #38080787
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
SeVa,
без спорно, идея великолепная, но чел только только про потоки услышал а вы ему таски с паралелями, так можно лишить сознания пациента.
Я бы с начало дал ему попробовать утрамбовать "под 100 150 млн записей" в типизированный датасет, а потом глядя на динамику выздоровления - назначил бы потоки..
...
Рейтинг: 0 / 0
15.12.2012, 23:59
    #38080801
SeVa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Где-то в степиSeVa,
без спорно, идея великолепная, но чел только только про потоки услышал а вы ему таски с паралелями, так можно лишить сознания пациента.
Я бы с начало дал ему попробовать утрамбовать "под 100 150 млн записей" в типизированный датасет, а потом глядя на динамику выздоровления - назначил бы потоки..

А думал, что проще async\await. MS тужится, а создается полное впечатление, что про net 4.5 мало кто слышал.
Странная картина: c одной стороны облака, а с другой айтишники в глухих землянках отсиживаются без выхода в интернет
...
Рейтинг: 0 / 0
16.12.2012, 00:04
    #38080809
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
SeVaКакая прелесть!! муфаил, а если в десяти потоках нужно будет читать данные, то продолжать соpy-past еще на пару страниц?
Кухарочка, а если наступит новый год и дед мороз назовет тебя безупречным ламером, как в этом случае быть с потоками?

P.S. Кто-то недавно пищал про убогость тасков и воспевал говно-Rx. Кодеманка поменяла ориентацию? Шедеврально.
...
Рейтинг: 0 / 0
16.12.2012, 00:14
    #38080817
SeVa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
МСУSeVaКакая прелесть!! муфаил, а если в десяти потоках нужно будет читать данные, то продолжать соpy-past еще на пару страниц?
Кухарочка, а если наступит новый год и дед мороз назовет тебя безупречным ламером, как в этом случае быть с потоками?

P.S. Кто-то недавно пищал про убогость тасков и воспевал говно-Rx. Кодеманка поменяла ориентацию? Шедеврально.

Rx можно совсем травмировать.
code-monkey, расскажи по каким еще помойкам шаришься, выискивая такие объедки, которые запостил выше?

Да, посмотри лучше на свою ориентацию, сколько от тебя было вони про космические корабли, html5/js, а как выяснилось, ты их в глаза не видел и не собираешься. Чмо пустопорожнее
...
Рейтинг: 0 / 0
16.12.2012, 00:27
    #38080822
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Rx не можно травмировать, а ты уже им травмирован. Причем, неизлечимо. Остальные высеры не имеют какой-либо ценности для темы, так что извини, опять ты обосрался.
...
Рейтинг: 0 / 0
16.12.2012, 00:28
    #38080823
Green2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Newbie2002,

Если диск базы данных один
Тогда выборка в много потоков не даст никакого прироста производительности.
...
Рейтинг: 0 / 0
16.12.2012, 00:52
    #38080836
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
МСУ, SeVa
Учитесь:
Green2Если диск базы данных один
Тогда выборка в много потоков не даст никакого прироста производительности.
...
Рейтинг: 0 / 0
16.12.2012, 00:58
    #38080839
Newbie2002
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Green2,

Выборку делаю с мощного сервера а не с локального компьютора, поэтому у думаю про многопоточность
...
Рейтинг: 0 / 0
16.12.2012, 00:59
    #38080841
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
МСУ, SeVa
Учитесь:
Green2Если диск базы данных один
Тогда выборка в много потоков не даст никакого прироста производительности.
Я теперь всегда использую два сидирома, что бы не плодить потоки.
...
Рейтинг: 0 / 0
16.12.2012, 01:05
    #38080842
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Newbie2002, это у Вас - СУБды, птички да слоники, у реальных пацанов базы на DVD-RW, и точка...
...
Рейтинг: 0 / 0
16.12.2012, 01:15
    #38080845
Green2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Newbie2002Green2,

Выборку делаю с мощного сервера а не с локального компьютора, поэтому у думаю про многопоточностьХорошо, тогда вопросы,
1. Что это за сервер, как у него организованы диски.
2. Какая база данных.

И самое главное, зачем вам схема в три потока?
...
Рейтинг: 0 / 0
16.12.2012, 01:26
    #38080849
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Green2,
сервер- база данных , это абстракция, как он утроен нам без разницы, на сказевых или простых тем более.
единственное что аксиома, он может обслуживать одновременно большое количество участников.
этому критерию удовлетворяют все хранилища баз данных,
доступ к серверу, абстракция тем более, ибо это происходит через провайдеров которые реализуют интерфейс доступа.
Для всех типов баз он одинаковый, тюнинг не в счет.
...
Рейтинг: 0 / 0
16.12.2012, 02:20
    #38080860
beg-in-er
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Green21. Что это за сервер, как у него организованы диски.
2. Какая база данных.
эти вопросы актуальны если количество запросов в секунду чуть больше чем рыбы в речке.
а если 3 запроса в час - то реально не имеет значения какие винты.
Raid просто застрелится от скуки.
...
Рейтинг: 0 / 0
16.12.2012, 12:49
    #38080935
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
Где-то в степиМСУ, SeVa
Учитесь:
Green2Если диск базы данных один
Тогда выборка в много потоков не даст никакого прироста производительности.
Выполни мой пример. Не ленись.
...
Рейтинг: 0 / 0
16.12.2012, 13:25
    #38080955
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
МСУ,
ну ты че, юмор потерял, ну просто я такую шузу а виде полумесяца забыл поставить()) после вертикальных двух точек..
код... не хочу, тем более я вчера опять экспериментировал с пиком баллмера..
я его смотрел так поверхностно секунд 5-6, там все понятно до ужаса, и решена проблема игольного ушка для доступа к базе..
код работоспособный и верный, толь ко вот я никак не могу понять зачем нам многоточечная загрузка, что ж так жалеть базу
что надо весь табун записей загонять на клиента и там его сортировать, с этим прекрасно справляются базы.
Запрос к базе должен быть точный и краткий, как апперкот - ответ такой же.
...
Рейтинг: 0 / 0
16.12.2012, 13:52
    #38080971
SeVa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка из базы данных в несколько потоков
МСУГде-то в степиМСУ, SeVa
Учитесь:
пропущено...

Выполни мой пример. Не ленись.


Мудафаил щедро делится объедками web помоек. Налетай, пока не разобрали!!!
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Выборка из базы данных в несколько потоков / 25 сообщений из 129, страница 1 из 6
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]