Что такое ACID? | Самый частый вопрос бэкендеру

Поделиться
HTML-код
  • Опубликовано: 22 май 2024
  • Разбираемся в букавках ACID.
    00:00 Вступление, неуклюжие попытки пошутить
    00:59 Транзакция, транзакционная база данных
    01:17 Расшифровка ACID
    01:40 Atomicity (атомарность)
    02:46 Consistency (консистентность)
    05:19 Isolation (изоляция)
    06:16 Read committed
    08:14 Snapshot isolation (repeatable read)
    09:11 Демонстрация отличий read committed и repeatable read на примере MySQL
    16:06 MVCC
    16:26 Проблема lost update
    18:36 Durability

Комментарии • 306

  • @OverEngineer
    @OverEngineer  3 года назад +138

    Пара неточностей в видео.
    1. На 17:18 я сказала, что мы не можем прочитать значение, так как установлена эксклюзивная блокировка. На самом деле значение можно прочитать простым SELECT, но для установки другого exclusive lock или shared lock придется подождать.
    2. На 18:50 я говорю, что разные виды S3 имеют разную Durability, но судя по всему количество девяток в S3 не зависит от того есть ли риск полной потери данных из-за их расположения в одной availability zone (One Zone-IA), видимо эти риски уже заложены, а распределение данных по разным AZ в S3 Standard и других тарифах выдается в виде дополнительной гарантии (но это уже больше вопрос маркетинга Амазона).
    3. Не неточность, но то, что я не упомянула в видео: абсолютно любая операция в транзакционной СУБД - это транзакция, даже если вы явно не используете start transaction/commit. Любой запрос, чтения или записи - это транзакция. Явно использовать синтаксис start transaction/commit нужно, когда вы хотите сделать несколько операций в одной транзакции.

    • @alexkis6198
      @alexkis6198 3 года назад +8

      Миледи, где новые видео?

    • @waagnermann
      @waagnermann 9 месяцев назад

      есть ещё ряд неточностей:)

    • @spacerecluse
      @spacerecluse 3 месяца назад

      @@waagnermann прошу объясниться )))

  • @Aticinsane
    @Aticinsane 3 года назад +141

    За объяснение на реальном примере в терминале жирный лайк!

  • @caffeinejavacode1475
    @caffeinejavacode1475 3 года назад +39

    Пример на консоли просто открыл глаза. Как говорил L.Torvalds stop talking just just show me your code.

  • @dsmenov
    @dsmenov 3 года назад +30

    Я как оракловый дба аж затаил дыхание при просмотре.
    На середине только внезапно отвлекся, поставил лайк и продолжил дальше смотреть.
    Правильный разработчик! Решительно подпишусь!

  • @shmeleu
    @shmeleu 3 года назад +84

    Чтоб нам так в универе объясняли. Спасибо!

  • @Sh0HraT
    @Sh0HraT 3 года назад +132

    Уж слишком все понятно. Вам надо преподавать))). Спасибо!

  • @vladyslavhanoshenko2942
    @vladyslavhanoshenko2942 3 года назад +19

    Никогда не было желания проигнорить видос от твоего канала. Топово.

  • @simbaruzz
    @simbaruzz 3 года назад +31

    Концовка, конечно, топовая - напряжение, драма, посыл… и вот это всё :D
    За видео спасибо! Было интересно)

  • @andrewg8907
    @andrewg8907 3 года назад +36

    Как всегда все разобрано по полочкам и все предельно понятно! Спасибо, очень крутое видео!

  • @DzmitryDz
    @DzmitryDz Год назад +3

    Благодаря вашему объяснению я наконец-то уложив в голове, что такое уровни изоляции. Спасибо вам за проделанную работу.

  • @RaZeR22L
    @RaZeR22L 3 года назад +9

    Спасибо огромное! С нетерпением жду следующий ролик!

  • @Mugen88888
    @Mugen88888 3 года назад +15

    Уже соскучиться успел, боялся, что не будет больше видео и не увижу тебя.

  • @user-xb2dv2ew6j
    @user-xb2dv2ew6j 23 дня назад

    Наконец то я нашел понятное доступное объяснение, спасибо!

  • @rustemiskakov2973
    @rustemiskakov2973 3 года назад +1

    Вот это контент! Много лет работал с базами данных, и почерпнул новые знания с этого видео! И мотивировался ещё копать тему изоляции) Огромное спасибо!

  • @alinapetrova3232
    @alinapetrova3232 3 года назад +1

    Вы круты! Рассказываете супер понятно и вдохновляете 🙂 пожалуйста, продолжайте!

  • @RisDeep
    @RisDeep 3 года назад +17

    Спасибо. Единственный источник годных втдео по бекенду для новичков

    • @CYBERUkr
      @CYBERUkr 3 года назад +4

      *Гхм-гхм*
      А почему для новичков-то? Тема (ну конкретно в данном видео, например) поднята совсем не джунская. Миддлу или условному 22-летнему синьору вспомнить и скомпоновать инфу в голове - самое то.

  • @cooleekova
    @cooleekova 8 месяцев назад

    Ксения, спасибо за это видео! Объяснение как всегда супер подробное и понятное🔥
    Очень нравится ваш стиль подачи материала👍

  • @ne0nf0rce
    @ne0nf0rce 3 года назад +6

    Как раз сегодня этой темой интересовался, и тут этот ролик))) Спасибо)

  • @Alexander-ds1hj
    @Alexander-ds1hj Год назад +1

    Спасибо, за видео. Если будет время, сделайте цикл по проблемам с изоляцией. Очень хорошо объясняете.

  • @user-sf4qq2bo2n
    @user-sf4qq2bo2n 3 года назад +2

    Спасибо за понятный пример с repatable read.

  • @egorvafin1978
    @egorvafin1978 Год назад

    Спасибо. Очень все доходчиво. Прекрасное изложение сути.

  • @annasakharova511
    @annasakharova511 2 года назад

    Спасибо за информативное и познавательное видео. Все разжевано и разложено по полочкам. Очень полезная инфа)

  • @Rinspeed778
    @Rinspeed778 Год назад +1

    Просто шикос! Очень доступно и понятно объяснила, спасибо!)

  • @user-fw9qr4ss7f
    @user-fw9qr4ss7f 3 года назад +8

    Спасибо, Ксюша!

  • @SPILBERG-FILMS
    @SPILBERG-FILMS 2 месяца назад

    😊 грамотная подача материала! Буду готовиться к DevOps-intervew на ваших видео-уроках.
    🎉 Большая благодарность за грамотное видео про ACID и транзакции.

  • @andyanderson222
    @andyanderson222 2 года назад

    Очень наглядное объяснение с уровнями изоляции, спасибо! Пишу коммент, ставлю лайк - вот это всё.

  • @Skykvi
    @Skykvi 2 года назад

    Спасибо, Ксения. Очень доходчиво, наверное больше то и не надо для краткого понимания.

  • @sofiakustikova5969
    @sofiakustikova5969 Год назад +1

    Ксения, спасибо вам за подробное объяснение! Намного лучше чем всякие статьи на хабре. Я очень вами вдохновляюсь и надеюсь, что я тоже стану классным специалистом в своей сфере и буду делиться своими знаниями

  • @nameless4u
    @nameless4u 6 месяцев назад

    Спасибо! Очень понятное объяснение с реальными примерами)

  • @user-hw8fj5hj9s
    @user-hw8fj5hj9s 3 года назад +4

    Атом-неделимый ,так что все там по научному феншую,старая школа так сказать.
    Спасибо ,что поделилась с нами опытом , было интересно и познавательно,мне как новичку очень.

  • @Sergey-xe9vd
    @Sergey-xe9vd 2 года назад

    Автор умничка! Самое грамотное объяснение, что видел тут. Большое спасибо

  • @velopro4285
    @velopro4285 3 года назад +2

    спасибо, очень мотивирующий контент.

  • @Aziz-gl5kf
    @Aziz-gl5kf 8 месяцев назад

    очень доходчиво объяснили без воды, спасибо вам большое

  • @maceall8106
    @maceall8106 3 года назад +1

    Благодарю за видео, как раз затронул эту тему при обучении! Как всегда все подробно и комплексно)
    p.s. соскучились по новым видео!)

  • @user-rc8uc1gt3w
    @user-rc8uc1gt3w 6 месяцев назад

    Большое спасибо за реальный пример в терминале. До этого до конца не понимал, как это работает!

  • @semenpetrov9456
    @semenpetrov9456 3 года назад +11

    Молодец, умница, продолжай пожалуйста

  • @AlexGott
    @AlexGott 2 года назад

    Всё просто и понятно и всё равно мозг сломан на несколько часов... Спасибо за видео!!!

  • @MaximRovinsky
    @MaximRovinsky 3 года назад +2

    Обожаю твои вставки из фильмов)

  • @evgenibasov9545
    @evgenibasov9545 2 года назад

    Круто 👍
    Вот ещё бы про isolation видосиков.
    Спасибо

  • @ozmeks
    @ozmeks 2 года назад

    Очень интересно было посмотреть на примере!

  • @user-cr2jy7oz8o
    @user-cr2jy7oz8o 3 года назад +1

    С новым годом!))
    Очень здорово, что ты с нами, такие замечательные видео не грех подождать, большое спасибо за твой труд!
    Если не сложно - поясни пожалуйста, что означает название канала?

  • @allximik50
    @allximik50 8 месяцев назад

    За отрывок из "Теория большого взрыва" сразу лайк))

  • @Alexander-is1eq
    @Alexander-is1eq Год назад

    Очень доступно. Спасибо большое!

  • @user-zj6cw9mt3d
    @user-zj6cw9mt3d Год назад

    Большое спасибо, было полезно узнать про уровни изоляций)

  • @eugenysh5731
    @eugenysh5731 3 года назад

    Очень крутое видео! Сам сталкивался с read commited и repeatable read уровнями изоляций транзакций. Насчет durability возможно стоит добавить, что в случае отключения питания машины с бд, когда снова будет питание и бд будет поднята, бд прочитает логи транзакции и завершит/либо откатит не завершенные транзакции. :)

  • @user-je2nh4op3s
    @user-je2nh4op3s 3 года назад

    Доброе утро Ксюша . Спасибо большое

  • @nikiforovsansanich
    @nikiforovsansanich 2 года назад

    Отличное объяснение! Спасибо!

  • @andreyalexandrov2067
    @andreyalexandrov2067 3 года назад +1

    видео пушка! спасибо. хочется еще про БД))

  • @vova_dev
    @vova_dev 23 дня назад

    Обалденно с примером!

  • @armiol
    @armiol 2 месяца назад

    Огромное человеческое спасибо, наконец-то всё встало на свои места.

  • @acidandrey
    @acidandrey 11 месяцев назад +1

    Самое крутое видео. Настолько все разжевано. Спасибо большое.

  • @Guitar8202
    @Guitar8202 2 года назад

    Классный материал и подача, Спасибо!

  • @alexandrfomenko369
    @alexandrfomenko369 2 года назад +10

    Так вот как выглядит комбинация из ума и красоты)
    Крутой материал, понятное объяснение, благодарю!

  • @alekseyyarchuk9600
    @alekseyyarchuk9600 3 года назад +2

    На работе стараются не используют транзакции, от страшного слова AСID пугаются. Отупеваешь, думаешь что все тлен. А благодраря таким блогерам не унываешь, открываешь что-то новое, забытое старое. Вспомнил универ, курс БД, конспект под расческу) Спасибо за то, что освежила информацию в голове)

    • @sergeydostovalov6180
      @sergeydostovalov6180 2 года назад

      Похоже не зря на работе не исполбзуют транзакции :)

  • @homelander973
    @homelander973 6 месяцев назад

    лучшее объяснение которое я когда либо видел в своей жизни. Успехов в работе:)

  • @user-zh3bx9kj3m
    @user-zh3bx9kj3m 3 года назад

    Ого! Мне за 20 минут объястнили лучше и понятнее чем иные книги за 50 страниц, спасибо!

  • @digital_ninja
    @digital_ninja 3 года назад

    Спасибо, вы очень крутая. Отлично тему раскрыли.

  • @svetlanamazhaykina6918
    @svetlanamazhaykina6918 3 месяца назад

    Спасибо за Ваш труд! Коммент в поддержку канала.

  • @aleksprimetv
    @aleksprimetv 2 года назад

    Побольше таких видео и побольше подробных примеров)

  • @finishsuffering
    @finishsuffering 3 месяца назад

    Гигантская благодарность за столь полезный урок!

  • @konstantinchvilyov9602
    @konstantinchvilyov9602 7 месяцев назад

    Спасибо, очень наглядно и понятно.

  • @Ksardas55
    @Ksardas55 7 месяцев назад

    Супер объяснение!
    Спасибо!

  • @TheSvRoma
    @TheSvRoma 3 года назад

    Классный урок! Спасибо

  • @parvinetibarli1283
    @parvinetibarli1283 Месяц назад

    Perfect explanation. Thanks

  • @aramayis_mirzoyan
    @aramayis_mirzoyan 5 месяцев назад

    Супер объяснение, спасибо!

  • @diman1ght491
    @diman1ght491 3 года назад +1

    Очень ждём новых видео, надеюсь ты - в добром здравии =) Это т канал - один из любимых моих каналов

  • @Trecoolerok
    @Trecoolerok 3 года назад +4

    Супер. Давно вас не видел :)

  • @diman1ght491
    @diman1ght491 3 года назад +14

    О боги, как же я люблю этот канал. Спасибо большое! Базы данных - одна из важнейших вещей, которые нужно знать бекендеру. Какой бы ты ни писал супер оптимальный код на C++, если ты юзаешь базу данных и запрос выполняется 15 секунд - то оптимизация этого кода будет незаметна совершенно. Лайк.

  • @vitamin2845
    @vitamin2845 3 года назад

    Классное видео)Все понятно) сделай пожалуйста видео про уровни изоляции подробнее

  • @deazlylol
    @deazlylol Год назад

    просто бомба, ясно и понятно хоть я об этом и впервые сталкиваюсь !

  • @user-nl6lx1zu9r
    @user-nl6lx1zu9r Год назад

    Отличное видео! Подробное и понятное описание. Чувствуется, что рассказчица глубоко в теме. Видео особенно приятно смотреть, потому что рассказчица - очаровательная девушка, что нечасто в IT, особенно на бэке

  • @meteysh
    @meteysh 3 года назад

    Круто блин рассказала, чётко по делу. Интересно слушать

  • @oleg_shulga
    @oleg_shulga 10 месяцев назад

    Спасибо за видео! Очень хорошее.

  • @PythonDevelopment
    @PythonDevelopment 3 года назад

    Привет и спасибо огромное)) Ждем новых роликов. Репост, лайк, коммент с двух акков всё для поддержки канала)

  • @risha8622
    @risha8622 3 года назад

    Спасибо за ваш материал!)

  • @0day694
    @0day694 3 года назад +5

    У тебя очень интересные получаются видео.

  • @Wladimir_31
    @Wladimir_31 Год назад

    Благодарю за объяснения ниже в комментариях ))!

  • @user-dq9ub1lj9j
    @user-dq9ub1lj9j 3 года назад +4

    у меня Ваши видео такие теплые эмоции вызывают, не знаю почему.. сопли, конечно, но как есть :)

  • @alexandergaiwer9804
    @alexandergaiwer9804 3 года назад

    Узнал для себя кое-что новое. Спасибо за видео))) Лайк!!!!

  • @user-ry9yg3ic6u
    @user-ry9yg3ic6u 5 месяцев назад

    Супер. Нужно больше видео)

  • @yevgenmuza9728
    @yevgenmuza9728 7 месяцев назад

    Спасибо, очень доходчиво.

  • @Lion-programmer
    @Lion-programmer 10 месяцев назад

    Мне пришлось 20 раз поставить на паузу, и пойти подробнее разобраться в каждом термине. В итоге 20 минутный ролик я смотрел полтора часа, но зато я всё понял)

  • @user-mj1bw2ef5l
    @user-mj1bw2ef5l 7 месяцев назад

    очень понятно, как раз для начинающих, спасибо

  • @user-si2tb4dg5x
    @user-si2tb4dg5x 3 года назад

    🔥спасибо за информацию!

  • @AnatolyLeonov
    @AnatolyLeonov 3 года назад

    Спасибо за интересное видео

  • @natielsanti407
    @natielsanti407 Год назад

    Спасибо. Информация не для новичков, но объяснено годно.

  • @anya7811
    @anya7811 Год назад

    Очень понятно, спасибо!

  • @alexeypashchenko
    @alexeypashchenko 2 года назад

    Спасибо за видео!

  • @alex4everyours
    @alex4everyours 3 года назад +1

    Хорошо объяснено, благодарю за видео! Один из лучших каналов на русском для бэкендеров.

  • @mpchest1
    @mpchest1 Год назад

    Шикарное объяснение!

  • @dimapunisher
    @dimapunisher 11 месяцев назад

    Блин спасибо огромное за такое разбор) столько раз читал про это и смотрел видео но теперь как будто осинило всё что я там начитывал с заумными словами

  • @virnus1
    @virnus1 Год назад

    Спасибо за помощь с бессонницей, ничего не понимаю в программировании но зато отлично усыпляет и голос приятный.

  • @alekseyslovyagin6056
    @alekseyslovyagin6056 2 года назад

    Отличное изложение. Вам стоит подумать о выступлениях на конференциях/уроках - очень классно получается.

  • @user-dv1vu1om6o
    @user-dv1vu1om6o 2 года назад +1

    Все очень понятно, даже я - стажер/джун многое понимаю, спасибо:)))

  • @ElektroDrrrEL
    @ElektroDrrrEL 2 года назад

    Просто супер - спасибо!

  • @user-ib7vx3yc4i
    @user-ib7vx3yc4i Месяц назад

    классно что с примерами в терминале

  • @aeuonep
    @aeuonep 3 года назад

    очень круто, спасибо

  • @paul.antares
    @paul.antares 2 года назад

    Спасибо! Классное видео))

  • @user-lc7jj4np8h
    @user-lc7jj4np8h 2 года назад

    очень круто! спасибо!

  • @ivanl7786
    @ivanl7786 Год назад +1

    Шикарно! Лучше, чем на платных курсах! Жму Вашу женскую руку!