metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2014-03-06 11:17 am

Про базы данных

http://jakobz.livejournal.com/238658.html
У нас есть SSD, гигагерцы процессоров. Есть стандартная модель элементарных частиц. Вокруг планеты летают кругами предварительно разогнанные до гигантских скоростей куски из металла и наноэлектроники. А мне ни одна технология не позволяет положить уже хуй на эти битики и оперировать данными удобно, с транзакциями, не думая про планы запросов, и не занимаясь всякими ручными "денормализациями". В 21-м веке любой программист, хранящий важные данные - негр с мотыгой на фоне тросника и заката.

[identity profile] berezovsky.livejournal.com 2014-03-06 08:29 am (UTC)(link)
Не нравится - не работай или сделай лучше, чё истерить.

[identity profile] fhu299.livejournal.com 2014-03-06 09:21 am (UTC)(link)
березовский как твоя мама?

[identity profile] oldmann.livejournal.com 2014-03-06 08:37 am (UTC)(link)
METHOD check_corresp_static.
* E_CNT <> 0 - корреспонденция нужна
CLEAR: e_cnt.
SELECT COUNT(*)
FROM (i_p_mapping_table_name)
INTO e_cnt
WHERE chrt_accts = i_chrt_accts
AND gl_account = i_gl_account
AND /bic/zmsfo_cd6 <> space
* AND dcindic = i_dcindic
AND /bic/zmsfo_k01 <> 0.
e_subrc = sy-subrc.
ENDMETHOD.


хуяк хуяк, получение значения TRUE/FALSE методом COUNT * на таблице с 10 млн. записей.
процидурка запускается 80 раз в секунду.

[identity profile] metaclass.livejournal.com 2014-03-06 08:40 am (UTC)(link)
Если там индексы по where есть и все это в RAM торчит - то оно будет работать достаточно быстро.

[identity profile] oldmann.livejournal.com 2014-03-06 08:50 am (UTC)(link)
нахуя? нахуя блять делать так, чтобы определить, изменилась ли таблица, хуярить COUNT по всем полям, а?
современных "программистов" за такой код нужно УБИВАТЬ.
мучительно убивать, путем ссылки на комбайны по уборке огурцов, с последующим запарыванием плетьмя за нерадивость.
или зашить в медвежью шкуру и затравить собаками.

[identity profile] kranov.livejournal.com 2014-03-06 10:31 am (UTC)(link)
в этом случае делается частичный индекс, содержащий только flag=true, т.е. получается не важно сколько записей в таблице, в этом индексе будет 1-10 записей, он будет 8 кб размером. И будет моментально возвращать where flag=true

[identity profile] zmila.livejournal.com 2014-03-06 09:41 am (UTC)(link)
сбылась мечта?
http://www.red-gate.com/products/sql-development/sql-source-control/
правда только для ms sql server, и правда платная
:)

[identity profile] norguhtar.livejournal.com 2014-03-06 09:46 am (UTC)(link)
По моему это банальная софтина для ведения изменений.

[identity profile] jakobz.livejournal.com 2014-03-06 12:05 pm (UTC)(link)
Нахер не надо. Для того чтобы БД засунуть в SVN надо утилитку, которая берет версию БД из спец. таблички, потом берет скрипты из папки у которых версия выше, и потом эти скрипты запускает. Утилитка либо входит в состав фреймворка, либо тривиально пишется по месту.

[identity profile] denis dmitriev (from livejournal.com) 2014-03-06 10:51 am (UTC)(link)
С одной стороны, кусок железяки made on Earth уже покинул пределы Солнечной системы и даже шлёт оттуда приветики, а с другой стороны, на пару километров вглубь самой Земли толком и не спустились. Так, дырочек натыкали, да два раза нырнули на 11 км :)

[identity profile] golosptic.livejournal.com 2014-03-08 07:04 pm (UTC)(link)
Не покинул. Журналисты погорячились.

[identity profile] prepor.livejournal.com 2014-03-06 11:15 am (UTC)(link)
datomic не оно?