BG Development


Страници: (2) [1] 2   ( Първото ново мнение ) Reply to this topicStart new topicStart Poll

> Автоматично или ръчно изграждане на база данни
crazy_dog
Публикувано на: 08-05-2020, 22:12
Quote Post



Име:
Група: Потребител
Ранг: Активен

Мнения: 154
Регистриран на: 23.02.12



Hibernate много лесно и удобно генерира базата данни от ентититата и връзките между тях. Като крайният резултат в повечето случаи е добър. Но не знам до колко се използва това в по-големи проекти. Дали е добре идея за продукшън или само да се валидират ентититата според съществуващата база? От друга страна писането на база на ръка си е работа, но пък имаш пълен контрол над нещата. Също така какво ви е мнението за migration tool-ове като Flyway? Виждам предимства да можеш да имаш версии на таблиците. Лесно може да мигрираш нови промени по базата и лесно да rollback-ваш, ако нещо се омаже. Но все пак ръчно трябва да пишеш sql скриптовете. icon_idea.gif
PMEmail Poster
Top
Gamma Goblin
Публикувано на: 08-05-2020, 22:46
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 3789
Регистриран на: 21.02.18



ние ползваме liquibase & flyway , аз лично предпочитам flyway

ОРМ-а може да изгенерира някакви първоначални таблици, но после ако стане време за промяна на схемата не се справя добре.

ако правиш сайт за лютеница - остави ОРМ-а да направи таблиците, в противен случай - db migration tool-a

За rollback-a не съм съгласен. Единствения смислен ролбек е връщане от бекъп, освен ако чейнджа ти не е супер изолиран и самостоятелен - примерно нова таблица, която няма връзка с останалите. Няма как да ролбекнеш смислено, ако изтриеш някакви данни, примерно дропнеш колона - да можеш да я направиш отново, но данните вече ги няма


--------------------
https://ncase.me/trust-bg/
---
Misanthropy is the general hatred, dislike, distrust or contempt of the human species or human nature. A misanthrope or misanthropist is someone who holds such views or feelings.
---
INTJ’s are good at being very good at everything
---
"Чувството за вина дето искаш да ни го вмениш, може да си го навиеш на руло и да си го пъхнеш отзад." - stewe
PMEmail PosterUsers Website
Top
thrawn
Публикувано на: 09-05-2020, 06:45
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 2920
Регистриран на: 17.01.17



Аз даже и за сайт за лютеница не виждам смисъл ОРМ.
PMEmail Poster
Top
Gamma Goblin
Публикувано на: 09-05-2020, 11:34
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 3789
Регистриран на: 21.02.18



QUOTE (thrawn @ 09-05-2020, 06:45)
Аз даже и за сайт за лютеница не виждам смисъл ОРМ.

по принцип и аз, но някои хора ги е страх от SQL


--------------------
https://ncase.me/trust-bg/
---
Misanthropy is the general hatred, dislike, distrust or contempt of the human species or human nature. A misanthrope or misanthropist is someone who holds such views or feelings.
---
INTJ’s are good at being very good at everything
---
"Чувството за вина дето искаш да ни го вмениш, може да си го навиеш на руло и да си го пъхнеш отзад." - stewe
PMEmail PosterUsers Website
Top
crazy_dog
Публикувано на: 09-05-2020, 13:53
Quote Post



Име:
Група: Потребител
Ранг: Активен

Мнения: 154
Регистриран на: 23.02.12



Да, сега като се замисля, това със rollback-а не е много ок. Особено ако имаш някаква дебела таблица със 20-30 милиона реда. Като цяло и на мен ми допада повече flyway.
Колкото до ОРМ-а, смятам, че много по-лесно се работи със обекти от колкото със SQL. Особено ако се работи от няколко човека. Разбира се и двата подхода имат плюсове и минуси.
PMEmail Poster
Top
Gamma Goblin
Публикувано на: 09-05-2020, 16:26
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 3789
Регистриран на: 21.02.18



дявола е в детайлите

Релационният модел от далеч прилича на обектния, но реално нямат нищо общо.


--------------------
https://ncase.me/trust-bg/
---
Misanthropy is the general hatred, dislike, distrust or contempt of the human species or human nature. A misanthrope or misanthropist is someone who holds such views or feelings.
---
INTJ’s are good at being very good at everything
---
"Чувството за вина дето искаш да ни го вмениш, може да си го навиеш на руло и да си го пъхнеш отзад." - stewe
PMEmail PosterUsers Website
Top
stewie
Публикувано на: 09-05-2020, 17:39
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 7013
Регистриран на: 14.07.16



ОРМ-а е голям лукс, позлвайте си го докато можете. Не съм пипал поне 4 години този лукс, понеже нямам релация между обектите на ниво база icon_smile.gif
PM
Top
thrawn
Публикувано на: 09-05-2020, 17:53
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 2920
Регистриран на: 17.01.17



Ами така и трябва да бъде. Директното мапване на обектите към базата данни е наивно решение. Базите данни съхраняват данни а предоставят информация (структурирани / систематизирани данни). Единствено, при много прости неща можеш да имаш директна релация между данните и информацията. Но пък тогава не си струва абстракцията на ОРМ.
PMEmail Poster
Top
akrachev
Публикувано на: 10-05-2020, 08:48
Quote Post



Име: акрачев
Група: Потребител
Ранг: Старо куче

Мнения: 882
Регистриран на: 27.11.09



QUOTE (stewie @ 09-05-2020, 17:39)
ОРМ-а е голям лукс, позлвайте си го докато можете. Не съм пипал поне 4 години този лукс, понеже нямам релация между обектите на ниво база icon_smile.gif

Тогава защо толкова го рекламират този DbContext ?
PMEmail PosterUsers Website
Top
Stilgar
Публикувано на: 10-05-2020, 11:19
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 13130
Регистриран на: 13.05.08



Аз винаги съм смятал, че базата е най-важното нещо, а кода е няква подробност затова си пиша базата на ръка. Обаче миграциите са кяр. В .NET най-популярният migration tool е част от най-популярния ORM дето аз без това го ползвам така че се чудя дали да не почна да го ползвам. Ползвал съм го на един проект, работеше много по-добре отколкото очаквах но там проектът имаше много други проблеми и още не съм сигурен кои бяха от миграциите кои от друго.


--------------------
Опитахме се да го направим както трябва, но стана както винаги.
PMEmail PosterUsers Website
Top
1 потребители преглеждат тази тема в момента (1 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Страници: (2) [1] 2  Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2019 | BG Development | All Rights Reserved
RSS 2.0