metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2011-07-16 10:55 am

Google+

Адский гуглоплюс каким-то боком умудрился сунуть в suggestions половину знакомых. Как же они задолбут своим датамайнингом.

Внезапный вопрос.

[identity profile] kkirsanov.livejournal.com 2011-07-16 08:07 am (UTC)(link)
Для создания опердени требуется хранить деньги в БД.
А БД не простая, а гугловская. Т.е. Decimal - нет, но есть integer, float и string.

Хранить во флот - потеря точности + странные суммы вроде 2.000000009
В стринге - придется делать свои математические операции.
Можно и в ineger хранить в виде коппек, а при выводе просто делить на 100. пока склоняюсь к этому варианту.

Что пауки думают по этому поводу?

Re: Внезапный вопрос.

[identity profile] metaclass.livejournal.com 2011-07-16 08:20 am (UTC)(link)
а integer там сколько-битный? 31 бит копеек не везде хватит)
Вообще интегер безальтернативен, вопрос только в диапазоне значений.

Re: Внезапный вопрос.

[identity profile] d4s.livejournal.com 2011-07-16 08:54 am (UTC)(link)
а стринг существенно скорость уменьшает?

Re: Внезапный вопрос.

[identity profile] metaclass.livejournal.com 2011-07-16 09:00 am (UTC)(link)
Не тестировал, но здравый смысл подсказывает, что реализация математических операций с деньгами поверх стринга будет крайне печальной.

Re: Внезапный вопрос.

[identity profile] d4s.livejournal.com 2011-07-16 09:23 am (UTC)(link)
вот это-то понятно, вопрос в том как много этих операций?
просто из того, что я читал по проектированию хранения данных "на века" - как раз стринг и рекомендуют, но там не для БД, правда. потому и спросил.

Re: Внезапный вопрос.

[identity profile] metaclass.livejournal.com 2011-07-16 09:28 am (UTC)(link)
Того кто рекомендует стринг, нужно поставить в угол и избивать по голове hard-cover изданием TAPL бенджамина пирса, до тех пор, пока не поймет, зачем люди придумали строгую типизацию.
Я таки насмотрелся решений вида "храним произвольные данные в БД, сериализуя их в строку", иногда это приемлемо, но если есть возможность так не делать - лучше так не делать)

Re: Внезапный вопрос.

[identity profile] d4s.livejournal.com 2011-07-16 09:49 am (UTC)(link)
спасибо за наводку ребе - гляну краем глаза.
но я специально выделил - там рекомендация не для БД. Скорее для файлов со структурами, конфигов, высокоуровневывых протоколов - для последних двух особенно хорошо, как показывает мой скромный опыт.
с файлами-хранилищами и БД не работаю - поэтому и стало интересно - а как там у "них"? ;-)

Re: Внезапный вопрос.

[identity profile] metaclass.livejournal.com 2011-07-16 10:06 am (UTC)(link)
Да, для этого всего лучше текст, если нету жестких ограничений по памяти, производительности и трафику. И все равно - желательно оный текст строго типизировать, т.е. в памяти оно все равно будет в виде кошерных структур данных, а не строк.

Re: Внезапный вопрос.

[identity profile] gds.livejournal.com 2011-07-16 10:03 am (UTC)(link)
а я вот недавно, наоборот, постановил передавать числа в json именно в строках. А всё почему? Потому что числа в json плохие, негодные. Таким же образом могут обстоять дела и в других "окружениях" -- в субедешечьках, например.

Кроме того, содержимое произвольного типа можно запихнуть в строку, тем не менее оставляя строгую типизацию. Просто она будет динамической, но от того не менее строгой.

Re: Внезапный вопрос.

[identity profile] avnik.livejournal.com 2011-07-16 01:56 pm (UTC)(link)
ну если вся база (точнее хранищище) -- oid -> object, оно и получается int64 -> serialized
(Но там свой рак индексов на application уровне, и zodb головного мозга)

Зато туда можно нахреначить практически любой граф (хоть цикличный)

Re: Внезапный вопрос.

[identity profile] kkirsanov.livejournal.com 2011-07-16 09:27 am (UTC)(link)
Там еще и агрегирующих функций нет, так что время расчёта, думаю, будет заметно меньше времени извлечения из БД.

Re: Внезапный вопрос.

[identity profile] berezovsky.livejournal.com 2011-07-16 04:06 pm (UTC)(link)
в блобе храни ёпта
а вообще в институте должны были научить что деньги хранятся в типе с фиксированной десятичной точкой

Re: Внезапный вопрос.

[identity profile] kkirsanov.livejournal.com 2011-07-16 05:13 pm (UTC)(link)
И какой же он?

[identity profile] aamonster.livejournal.com 2011-07-16 09:21 am (UTC)(link)
Ребе, так датамайнингом они по любому будут заниматься - так что лучше уж видеть результаты...

[identity profile] osdm.livejournal.com 2011-07-16 10:13 am (UTC)(link)
Используйте circles. Сделайте круг Interesting streams и не включайте туда dataminer-ов и смотрите посты только в нем.

[identity profile] avnik.livejournal.com 2011-07-16 03:20 pm (UTC)(link)
Можно еще создать круг "strange people" -- и добавить туда пару десятков дико популярных блоггеров, и пару десятков унылых задротов, чтобы гугловый датамайнер тоже малость сломался

[identity profile] litvin-v.livejournal.com 2011-07-16 01:00 pm (UTC)(link)
Мне г+ предлагает кучу незнакомых. Причем они меня еще и в свои круги включают.

Потом оказывается что это в основном ЖЖные френды, которых только под никами знал, а тут realnames.
abbra: (Default)

[personal profile] abbra 2011-07-16 02:59 pm (UTC)(link)
Меня еще не предложил? :)