Гость
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Применение автономной работы с бд на практике / 25 сообщений из 330, страница 1 из 14
04.01.2015, 17:13
    #38848138
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
Такой вопрос - для чего нужна автономная работа с бд? Какой от этого прок на практике? Зачем майкрософты влили в ado.net возможность локально создать множество таблиц наладить между ними связи, ограничения, создать представления и другие примитивы бд?
...
Рейтинг: 0 / 0
04.01.2015, 17:24
    #38848144
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosТакой вопрос - для чего нужна автономная работа с бд? Какой от этого прок на практике? Зачем майкрософты влили в ado.net возможность локально создать множество таблиц наладить между ними связи, ограничения, создать представления и другие примитивы бд?
это тот редкий случай когда мс сделал что то правильно, но как всегда потом забил на это, так как это сложно развивать
...
Рейтинг: 0 / 0
04.01.2015, 17:28
    #38848147
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
ViPRos, поясни? почему правильно и как и в какой ситуации это можно применить
...
Рейтинг: 0 / 0
04.01.2015, 17:32
    #38848149
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangos,

а почему ты думаешь что бд должна быть доступна только не автономно?
...
Рейтинг: 0 / 0
04.01.2015, 17:43
    #38848156
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
ViPRos, ну например потому что база данных может быть удалена от клиента, получается ему придется скачать всю бд в свою бд? а клиентов может быть много и при изменении базы одним клиентом другой не увидит изменений в своей бд, и толку тогда вообще от этого?
...
Рейтинг: 0 / 0
04.01.2015, 18:10
    #38848163
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangos,

каких клиентов? почему обязательно их должно быть много??
почему надо что то куда то качать?
доступ к БД может быть как многопользовательский, так и однопользовательский
если ты все это говоришь про DataSet, DbContext и т.д., то уточни, что тебе в них не нравится
...
Рейтинг: 0 / 0
04.01.2015, 18:21
    #38848168
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosТакой вопрос - для чего нужна автономная работа с бд? Какой от этого прок на практике? Зачем майкрософты влили в ado.net возможность локально создать множество таблиц наладить между ними связи, ограничения, создать представления и другие примитивы бд?"отсоединённый режим" != "автономная работа".

Для автономной работы нужен не DataSet, для этого нужна локальная БД и её репликация с центральной БД.
...
Рейтинг: 0 / 0
04.01.2015, 18:28
    #38848171
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
ViPRos, Задачка - есть сеть магазинов в городе(1,2,3...) у них есть общий склад из которого они пополняют свои запасы и тд. Для учета запасов на складе есть база данных. Товары в магазах пополняются по заумному алгоритму - кто первый взял со склада того и запасы. У магазина "1" кончились памперсы, менеджер Вася видя что памперсы закончились, проверяет базу данных запасов на складе и видит что там осталось 10 памперсов и решает забрать их все. Затем у магазина "2" тоже кончаются памперсы и менеджер Витя видит что на складе тоже 10 памперсов и забирает их все. Через пол часа на складе разворачивается драка за памперсы. Вопрос к задаче - зачем нужны автономные бд.
...
Рейтинг: 0 / 0
04.01.2015, 18:28
    #38848174
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
Алексей К, ну значит зачм нужен отсоединенный режим?
...
Рейтинг: 0 / 0
04.01.2015, 18:37
    #38848176
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosАлексей К, ну значит зачм нужен отсоединенный режим?А как лучше? При запуске программы открыть одно соединение с БД, и пусть все потоки с ним работают?
...
Рейтинг: 0 / 0
04.01.2015, 18:43
    #38848180
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosViPRos, Задачка - есть сеть магазинов в городе(1,2,3...) у них есть общий склад из которого они пополняют свои запасы и тд. Для учета запасов на складе есть база данных. Товары в магазах пополняются по заумному алгоритму - кто первый взял со склада того и запасы. У магазина "1" кончились памперсы, менеджер Вася видя что памперсы закончились, проверяет базу данных запасов на складе и видит что там осталось 10 памперсов и решает забрать их все. Затем у магазина "2" тоже кончаются памперсы и менеджер Витя видит что на складе тоже 10 памперсов и забирает их все. Через пол часа на складе разворачивается драка за памперсы. Вопрос к задаче - зачем нужны автономные бд.
ну после того как Вася забрал, на складе уже нечего забирать Вите
...
Рейтинг: 0 / 0
04.01.2015, 18:47
    #38848183
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
Алексей К, ок. тогда мы получаем данные из базы данных в датасет и с ним работаем, скорость выше, нагрузка на удаленную бд нулевая - это получается отсоединенный режим? Тогда витя не увидит изменения базы данных васей
...
Рейтинг: 0 / 0
04.01.2015, 18:48
    #38848184
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
ViPRos, ага, только у вити отображается что в базе данных все присутсвует у них же отсоединенный режим, и у каждого на компе своя бд в датасете
...
Рейтинг: 0 / 0
04.01.2015, 18:54
    #38848186
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosАлексей К, ок. тогда мы получаем данные из базы данных в датасет и с ним работаем, скорость выше, нагрузка на удаленную бд нулевая - это получается отсоединенный режим? Тогда витя не увидит изменения базы данных васейДанные в DataSet можно обновлять как угодно часто.

Отсоединённый режим - это некая программная модель, позволяющая автоматически регулировать нужное количество соединений к БД, в том числе в условиях многопоточности. Перед тем как критиковать, есть смысл ознакомиться с ней более подробно, узнать про connection pool и прочее.
...
Рейтинг: 0 / 0
04.01.2015, 18:55
    #38848187
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosViPRos, ага, только у вити отображается что в базе данных все присутсвует у них же отсоединенный режим, и у каждого на компе своя бд в датасете
значит плохо отсоединили
...
Рейтинг: 0 / 0
04.01.2015, 18:57
    #38848188
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosViPRos, ага, только у вити отображается что в базе данных все присутсвует у них же отсоединенный режим, и у каждого на компе своя бд в датасетеВыше было отмечено, что DataSet != БД.

DataSet - это некая структура данных. Она обычно содержит данные, отображаемые в данный момент на экране.
...
Рейтинг: 0 / 0
04.01.2015, 19:11
    #38848190
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
Алексей КfaustmangosТакой вопрос - для чего нужна автономная работа с бд? Какой от этого прок на практике? Зачем майкрософты влили в ado.net возможность локально создать множество таблиц наладить между ними связи, ограничения, создать представления и другие примитивы бд?"отсоединённый режим" != "автономная работа".

Для автономной работы нужен не DataSet, для этого нужна локальная БД и её репликация с центральной БД.+1
...
Рейтинг: 0 / 0
04.01.2015, 19:16
    #38848191
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
ViPRosfaustmangosТакой вопрос - для чего нужна автономная работа с бд? Какой от этого прок на практике? Зачем майкрософты влили в ado.net возможность локально создать множество таблиц наладить между ними связи, ограничения, создать представления и другие примитивы бд?
это тот редкий случай когда мс сделал что то правильноА в чём правильность-то?

ИМХО с объектами в памяти проще и оптимальнее работать, чем с DataSet-ами.
...
Рейтинг: 0 / 0
04.01.2015, 19:17
    #38848192
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
Алексей КОтсоединённый режим - это некая программная модель, позволяющая автоматически регулировать нужное количество соединений к БД, в том числе в условиях многопоточности. Перед тем как критиковать, есть смысл ознакомиться с ней более подробно, узнать про connection pool и прочее.

во уже что-то толковое
...
Рейтинг: 0 / 0
04.01.2015, 19:32
    #38848199
ViPRos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
skyANAViPRosпропущено...

это тот редкий случай когда мс сделал что то правильноА в чём правильность-то?

ИМХО с объектами в памяти проще и оптимальнее работать, чем с DataSet-ами.
а при чем тут простота и непонятная "оптимальность" (что за критерии?)
объекты вшитые в код - это очень жестко - если состояние объекта не = код сам
...
Рейтинг: 0 / 0
04.01.2015, 19:48
    #38848202
faustmangos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
как я понял то если именно в базе данных произошли изменения об этом никак не узнать и всеравно придется каждый раз загружать весь dataset
и плюс получается только в том, что при изменении данных в dataset он отправит только эти измененные данные
...
Рейтинг: 0 / 0
04.01.2015, 21:39
    #38848222
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
ViPRosskyANAпропущено...
А в чём правильность-то?

ИМХО с объектами в памяти проще и оптимальнее работать, чем с DataSet-ами.
а при чем тут простота и непонятная "оптимальность" (что за критерии?)Ты ключевое слово "память" пропустил.
...
Рейтинг: 0 / 0
04.01.2015, 21:40
    #38848223
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosкак я понял то если именно в базе данных произошли изменения об этом никак не узнать и всеравно придется каждый раз загружать весь dataset
и плюс получается только в том, что при изменении данных в dataset он отправит только эти измененные данныеПочему весь? DataSet умеет Merge.
И узнать всегда можно об изменениях. DataSet тут не при чём.
...
Рейтинг: 0 / 0
04.01.2015, 21:53
    #38848224
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
faustmangosкак я понял то если именно в базе данных произошли изменения об этом никак не узнать и всеравно придется каждый раз загружать весь datasetДа. А что в этом странного? В других системах можно сделать как-то по другому? Тут главное не тянуть много данных на клиента БД, только то, что хотим показать пользователю.

В MSSQL можно подписаться на изменения в БД (см SqlDependency), но обычно этим не пользуются, особенно при большом количестве пользователей.

faustmangosи плюс получается только в том, что при изменении данных в dataset он отправит только эти измененные данныеДа, это одно из преимуществ DataSet - возможность отслеживания изменений.
...
Рейтинг: 0 / 0
04.01.2015, 23:17
    #38848243
sphinx_mv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Применение автономной работы с бд на практике
Алексей КВ MSSQL можно подписаться на изменения в БД (см SqlDependency), но обычно этим не пользуются, особенно при большом количестве пользователей."Необходимо и достаточно" в MSSQL использовать timestamp/rowversion при любом количестве подписчиков.
Аналогично в Oracle - ORA_ROWSCN.
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Применение автономной работы с бд на практике / 25 сообщений из 330, страница 1 из 14
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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