powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Применение автономной работы с бд на практике
25 сообщений из 330, страница 8 из 14
Применение автономной работы с бд на практике
    #38848953
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНичего он никуда не вбивает. Код показать? :)
Ну вот в таком виде да, съедобно :) http://codearticles.ru/articles/2548
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848954
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей КПотомок репозитария не является репозитарием? Это что-то новое в современной трактовке ООП.
Речь об основном репозитории. Кеширующие, агрегирующие, танцующие во тьме и прочие репозитории - нужны конкретно для своей специфики. Об этом речь. Основной репозиторий при этом цел и невредим, может использоваться хоть на луне.Современная теория репозитариев не делит репозитарии на категории: основные, неосновные или какие-то ещё. Было сказано: "Кэшированию в репозитарии не место". Начались отмазки: "Это неосновной репозитарий и т. п.".

Это всё к вопросу о нормальной терминологии.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848955
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУskyANAНичего он никуда не вбивает. Код показать? :)
Ну вот в таком виде да, съедобно :) http://codearticles.ru/articles/2548 Ахаха. Открыл-таки для себя шаблон Декоратор и сразу же в рецепты занёс (Дата создания: 06.01.2015 11:03). Молодец!

А что тот самокат с виртуальными методами и наследованием не занёс?
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848956
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КСовременная теория репозитариев не делит репозитарии на категории: основные, неосновные или какие-то ещё.
Кто определяет современную терминологию? :)

Алексей КБыло сказано: "Кэшированию в репозитарии не место". Начались отмазки: "Это неосновной репозитарий и т. п.".
Сразу ниже во втором посте в качестве уточнения было сказано про боевой репо 17088063 и о том, как сделать рабочий вариант. Но ты прицепился к первому посту и продолжаешь его насиловать. Твоё право

Алексей КЭто всё к вопросу о нормальной терминологии.
Да нормально тут всё с терминами. Есть репо для работы с данными. Есть другой репо, наследник, для работы с кешем. По сути тот же декоратор, если тебе так легче.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848957
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАхаха. Открыл-таки для себя шаблон Декоратор и сразу же в рецепты занёс (Дата создания: 06.01.2015 11:03). Молодец!
Этот шаблон был предложен вот тут 17088063

skyANAА что тот самокат с виртуальными методами и наследованием не занёс?
Он очевиден :)
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848959
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей КБыло сказано: "Кэшированию в репозитарии не место". Начались отмазки: "Это неосновной репозитарий и т. п.".
Сразу ниже во втором посте в качестве уточнения было сказано про боевой репо 17088063 и о том, как сделать рабочий вариант.Там не рабочий вариант, там так, поделие.

Декораторы можно комбинировать и применять к разным репо, а с наследованием не получится :)
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848961
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почитал Бындю . Пара фраз просто убила:
автор не умеет работать с ОРМУбираем ORM для лучшей оптимизации - сами ORM редко делают оптимальные запросы, а сложный запрос написать на языке понятном ORM (Linq, HQL и т.п.) практически невозможно.
автор заблуждаетсяУбираем весь код выборки в хранимые поцедуры - есть мнение, что таким образом SQL-код начинает работать быстрее.
автор ни болта не рубит в оптимизации запросовЧто больше всего тормозит SQL-запрос? Скорее всего оператор JOIN, когда приходится объединять много таблиц и записей. Как показала практика, если в JOIN участует по миллиону строк из каждой таблицы, такой запрос работать быстро не будет никогда, даже при самых глубоких оптимизациях.
автору не интересен один из наиболее эффективных приёмовЕсть еще способы с репликацией БД и чтением данных из реплик, но я не буду их рассматривать.
автор рисует неправильные картины мира

Вспомнилось: "Маленькая ложь рождает большое недоверие" (ц)

Автор не смог нормально организовать код в репозитариях. Автор решил выделить каждый метод в отдельный класс, мотивируя это каким-то мифическим нарушением SRP. Бог ему судья.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848962
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУskyANAАхаха. Открыл-таки для себя шаблон Декоратор и сразу же в рецепты занёс (Дата создания: 06.01.2015 11:03). Молодец!
Этот шаблон был предложен вот тут 17088063 Твои глупые кривляния на кого расчитаны? На тех кто не откроет ссылку, или не поймёт, что нет там никакого Декоратора?
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848964
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, знаешь почему NoSQL тупо быстрее SQL? Там нет JOIN-ов :)
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848965
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAТам не рабочий вариант, там так, поделие.
Да та же редька, только в профиль. Задачу решает 100%.

skyANAДекораторы можно комбинировать и применять к разным репо, а с наследованием не получится :)
Зачем мне их комбинировать и применять к разным репо? Моя задача откешировать метод. Не выдумывай проблемы на ровном месте :)

skyANAТвои глупые кривляния на кого расчитаны? На тех кто не откроет ссылку, или не поймёт, что нет там никакого Декоратора?
Ты упёрся рогом в декоратор и не желаешь смотреть на суть вопроса. Кончай жить паттернами и начни думать своей головой, а не чужой. Ты озвучил сиутацию с кешированием, я тебе дал рецепт, как сделать её на родном контроллере. Потом ты начинаешь кривляться и выдумать какие-то новые проблемы с комбинированием и разными репо. Так скоро и до освоения космоса дойдет.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848966
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, знаешь почему применяют Денормализацию для ускорения выборки? Потому как в денормализованные таблицы не нуждаются в JOIN-ах :)
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848967
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, знаешь почему NoSQL тупо быстрее SQL? Там нет JOIN-ов :)
Очень сомнительное высказывание. Что с чем измеряется?
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848969
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУskyANAТам не рабочий вариант, там так, поделие.
Да та же редька, только в профиль. Задачу решает 100%.

skyANAДекораторы можно комбинировать и применять к разным репо, а с наследованием не получится :)
Зачем мне их комбинировать и применять к разным репо? Моя задача откешировать метод. Не выдумывай проблемы на ровном месте :)

skyANAТвои глупые кривляния на кого расчитаны? На тех кто не откроет ссылку, или не поймёт, что нет там никакого Декоратора?
Ты упёрся рогом в декоратор и не желаешь смотреть на суть вопроса. Кончай жить паттернами и начни думать своей головой, а не чужой. Ты озвучил сиутацию с кешированием, я тебе дал рецепт, как сделать её на родном контроллере. Потом ты начинаешь кривляться и выдумать какие-то новые проблемы с комбинированием и разными репо. Так скоро и до освоения космоса дойдет.Пустомеля ты. Я про то как реализовать кэширование в репозитории не вставляя в него никакие грабли, ещё в прошлом году рассказывал :)

Не надо теперь делать вид, что ты предложил мне то, что мне так было нужно, а я не знал как это реализовать.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848971
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУskyANAАлексей К, знаешь почему NoSQL тупо быстрее SQL? Там нет JOIN-ов :)
Очень сомнительное высказывание. Что с чем измеряется?Ну если мне не веришь, можно поискать более авторитетные источники.

Хотя бы на Хабре: " NoSQL базы данных: понимаем суть ".
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848974
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAПустомеля ты. Я про то как реализовать кэширование в репозитории не вставляя в него никакие грабли, ещё в прошлом году рассказывал :)
У меня кеширование точно так же без грабель, вынесено в отдельный кеширующий слой, которой так же легко доставать через инверсию интерфейса репозитория. Всё работает безшовно.

skyANAНе надо теперь делать вид, что ты предложил мне то, что мне так было нужно, а я не знал как это реализовать.
Я не делаю никому виды, я ответил на твой начальный вопрос о том, как делается кеширование за один чих. А ты начал надувать щеки.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848978
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КАвтор не смог нормально организовать код в репозитариях. Автор решил выделить каждый метод в отдельный класс, мотивируя это каким-то мифическим нарушением SRP. Бог ему судья.Понимаешь. Когда у тебя модульная архитектура, о переходе к которой пишет автор.
То одному модулю нужны одни данные, второму другие, третьему... и т.д.

И если поступать так, как Вы с отчётами: фигачить 100500 методов в репозиторий с сущностями, что нужны только в одном из модулей, - то нарушение SRP становится ни фига не мифическим :)
И автор рассказывает как эволюционировал их код, после того, как они столкнулись с данной проблемой на практике.
Когда и вы на это напоретесь, если напоретесь, то можешь изобрести что-то своё. У тебя же изобретать хорошо получается, целый сайт этому посвящён.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848980
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAМСУпропущено...

Очень сомнительное высказывание. Что с чем измеряется?Ну если мне не веришь, можно поискать более авторитетные источники.

Хотя бы на Хабре: " NoSQL базы данных: понимаем суть ".
Ты архитектуру строишь по хабрам? Молодец, чё.

P.S. У NoSQL есть свои плюсы, есть и свои минусы. Но современные реляционные СУБД могут удовлетворить даже самого требовательного знатока. Вон сколько лет мощнейшие биллинги крутятся на ораклах в билайнах, мтсах и мегафонах. И все рады. Просто нужно иметь прямые руки.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848983
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей КЭто всё к вопросу о нормальной терминологии.
Да нормально тут всё с терминами. Есть репо для работы с данными. Есть другой репо, наследник, для работы с кешем. По сути тот же декоратор, если тебе так легче.Нормально, ага. Тынц
Ну вот скажи:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
class AppDbContext : DbContext
{ }

class DataService
{
    public AppDbContext Db;

    public A[] GetData()
    {
        return Db.A.Where(v => v.B > 19).ToArray();
    }
}

class CachingDataService
{
    public DataService Data;

    public A[] GetData()
    {
        return CacheEngine.GetOrAdd(() => Data.GetData());
    }
}


Все эти классы можно считать репозитариями, или только какой-то один?
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848984
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, знаешь почему NoSQL тупо быстрее SQL? Там нет JOIN-ов :)Это я понял. :-)
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848985
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУskyANAПустомеля ты. Я про то как реализовать кэширование в репозитории не вставляя в него никакие грабли, ещё в прошлом году рассказывал :)
У меня кеширование точно так же без грабель, вынесено в отдельный кеширующий слой, которой так же легко доставать через инверсию интерфейса репозитория. Всё работает безшовно.Понятно что работает. Но это не лучшее решение.

В реальной системе не одну сущность надо кэшировать, не только Album-ы как в твоём примере, а несколько.
И что ты будешь делать? Реализовывать N наследников от N репозиториев?

А декоратор для кэширования реализуется один и применяется к N репозиториям через инверсию.

МСУskyANAНе надо теперь делать вид, что ты предложил мне то, что мне так было нужно, а я не знал как это реализовать.
Я не делаю никому виды, я ответил на твой начальный вопрос о том, как делается кеширование за один чих. А ты начал надувать щеки.Я не надувал щёки, я вообще пиво пил. Просто намекнул, что ты запостил сюда ссылку на велосипед. :)
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848988
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУskyANAпропущено...
Ну если мне не веришь, можно поискать более авторитетные источники.

Хотя бы на Хабре: " NoSQL базы данных: понимаем суть ".
Ты архитектуру строишь по хабрам? Молодец, чё.

P.S. У NoSQL есть свои плюсы, есть и свои минусы. Но современные реляционные СУБД могут удовлетворить даже самого требовательного знатока. Вон сколько лет мощнейшие биллинги крутятся на ораклах в билайнах, мтсах и мегафонах. И все рады. Просто нужно иметь прямые руки.Дурак ты, чё.

Я не строю архитектру по хабрам, я использую его как источник информации о том, чтобы понять что "У NoSQL есть свои плюсы, есть и свои минусы" и какие.
Про архитектуру "на ораклах в билайнах, мтсах и мегафонах" мне ничего не известно, они не выступают на конференциях.
Зато IBM регулярно устраивает митапы. И всякие Evernote выступают на конференциях.

И я не исключаю того, что "в билайнах, мтсах и мегафонах" на ораклах крутится только основное хранилище, а биллинги уже давно построены на каких-нибудь очередях и NoSQL :)
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848990
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAИ если поступать так, как Вы с отчётами: фигачить 100500 методов в репозиторий с сущностями, что нужны только в одном из модулей, - то нарушение SRP становится ни фига не мифическим :)Нет никаких 100500 методов в классе, если нормально следовать правилам рефакторинга, например по тому же Фаулеру. А вот если фанатично каждый метод выносить в отдельный класс, то можно напороться на слишком маленькую ответственность класса, что тоже плохо - чем больше классов, тем выше затраты на их интеграцию. Нужно искать компромисс количества методов в классе.

skyANAИ автор рассказывает как эволюционировал их код, после того, как они столкнулись с данной проблемой на практике. Когда и вы на это напоретесь, если напоретесь, то можешь изобрести что-то своё.Мы тоже сталкивались с такими проблемами на практике. Все проблемы были успешно преодолены применением банального рефакторинга и разработкой принципов группирования методов в классы.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848991
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и плюс к прямым рукам, которые имеются (основное хранилище-то на MS SQL у нас, и ни фига не простаивает) нужны ещё не кислые бабки, чтобы построить распределённую систему "на ораклах" с их лицензиями.

Вот сколько у вас серверов в кластере?
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848992
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНормально, ага. Тынц
Мир паттернами не измеряется, он гораздо шире. Ты хочешь инструкцию на все случаи жизни? Готов разочаровать, такой не существует. Да и где ты увидел нарушения при использовании обычного наследования?

Алексей КВсе эти классы можно считать репозитариями, или только какой-то один?
Какая-то бессвязная каша. На помойку.

skyANAПонятно что работает. Но это не лучшее решение.
Ну знаешь ли. Лучшее или не лучшее, это не тебе судить. Оно решает озвученную тобой задачу и легко ложится в концепцию репо.

skyANAВ реальной системе не одну сущность надо кэшировать, не только Album-ы как в твоём примере, а несколько.
И что ты будешь делать? Реализовывать N наследников от N репозиториев?
Да. Точно так же, как в случае с декоратором . И это правильно.

skyANAА декоратор для кэширования реализуется один и применяется к N репозиториям через инверсию.
Смотря как писать. Можно иметь один толстый кеширующий декоратор, можно его разносить по логической связи, как у меня в рецепте. Я бы лучше разносил, а не гадил в одну навозную кучу. Но в любом случае это не проблема.

skyANAЯ не надувал щёки, я вообще пиво пил. Просто намекнул, что ты запостил сюда ссылку на велосипед. :)
Ссылка на велосипед - те же яйца, только в профиль.
...
Рейтинг: 0 / 0
Применение автономной работы с бд на практике
    #38848995
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAДурак ты, чё.
Параноики начали ругаться от бессилия? Забавно.

skyANAЯ не строю архитектру по хабрам, я использую его как источник информации о том, чтобы понять что "У NoSQL есть свои плюсы, есть и свои минусы" и какие.
Про архитектуру "на ораклах в билайнах, мтсах и мегафонах" мне ничего не известно, они не выступают на конференциях.
Зато IBM регулярно устраивает митапы. И всякие Evernote выступают на конференциях.
Я тебе говорю о том, что любые задачи решаются (и хорошо решаются!) на обычных реляционных БД с внятными констреинтами и прочими фичами. Большинство неофитов вроде тебя за уши притягивают NoSQL, которая нафик не уперлась.

skyANAИ я не исключаю того, что "в билайнах, мтсах и мегафонах" на ораклах крутится только основное хранилище, а биллинги уже давно построены на каких-нибудь очередях и NoSQL :)
Там дураков нет :)
...
Рейтинг: 0 / 0
25 сообщений из 330, страница 8 из 14
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Применение автономной работы с бд на практике
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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