Home
Objective Caml
ocaml@conference.jabber.ru
Четверг, 21 июля 2011< ^ >
gds установил(а) тему: Камль -- http://caml.inria.fr | Логи -- http://chatlogs.jabber.ru/ocaml@conference.jabber.ru/ | Светлое будущее -- http://camlunity.ru/ | Нефильтрованное настоящее -- https://github.com/camlunity/kamlo_wiki | Верблюды грязи не боятся! | release crap, enjoy NIH | репортьте баги официальным дилерам | ocaml мёртв, move on
Конфигурация комнаты
Участники комнаты

GMT+4
[00:28:35] Typhon вошёл(а) в комнату
[00:29:04] <Typhon> я же показывал скриншот из haskell@c.j.r про обсуждения?
[00:30:33] <Typhon> http://dl.dropbox.com/u/7365614/motivator7e05ea841a0f85c03ad8c4035676a294c706011e.jpg
[00:30:36] <gds> Typhon: если тот трэшак со свистоплясками, то помню.  Там профайлер не поможет.
[00:31:15] <gds> оно.  Ваистену!
[00:31:25] komar вышел(а) из комнаты
[00:31:37] <Typhon> в упомянутой конфочке изредка интересные вещи попадаются, общего плана, когда умные челы заходят, а так высока концентрация неуподоблюсь, к.м.к.
[00:32:05] <Typhon> + чисто х-ль проблемы про либы или оптимизацию, это не интересно. я там тоже зрителем (и иногда говорителем сижу)
[00:32:47] komar вошёл(а) в комнату
[00:33:48] <gds> я так почитал чуток, очень похожие впечатления.  "неуподоблюсь", да! :)
[00:36:41] shaggie вышел(а) из комнаты
[00:36:52] shaggie вошёл(а) в комнату
[00:53:16] <ermine> какая нафиг оптимизация в х-ле, если там надо писать декларативно?
[00:53:46] shaggie вышел(а) из комнаты
[00:54:21] <gds> sql тоже оптимизируют.  и, в целом, для некоторых вещей sql имеет нехилую, мать его, нишу.
[00:54:42] <Typhon> ...писать декларативно и правильно расставать strictness флажочки
[00:54:49] <Typhon> а также внимательно читать ghc core ^_^
[00:54:54] <gds> декларативно <> неоптимизированно
[00:55:08] <Typhon> *расставлять
[00:56:00] <gds> да, обмазываться строгостью часто надо.  Когда слышу о "высокопроизводительной библиотеке на х-е", проверяю тенденции.  Ещё не ошибался, флажки расставлены тщательно и продуманно.
[00:58:55] <ermine> sql лучше всего оптимизировать еще до посылки запроса базе, то бишь prepare query
[00:59:16] <gds> г-ссподи есусе
[00:59:49] <Typhon> а как же explain'ы всякие? oO
[01:00:03] <gds> ermine: а знаешь ли ты, что примерно в половине случаев prepare query замедляет выполнение запроса?
[01:00:39] <ermine> gds: не-а
[01:00:51] <ermine> gds: я вообще слышала, что это ускоряет на порядки
[01:05:58] <gds> отныне и навеки веков да знай же!  При неравномерном или хитром распределении данных (то есть, в случаях, когда cardinality столбца/индекса решает реальные условия выборки криво) оптимизатор выбирает кривой план, видя binding variables и не видя реальных значений (которые иначе в литералах), и строит план один раз на похожие запросы, используя его там, где план с литералами был бы грамотнее.
Есть ещё и более тонкие эффекты, сходу "bind variables peeking" в оракле, когда базочка подсматривает первые переданные значения bind variables, строит план, и план используется везде дальше.  Тоже ололо бывает.
Есть ещё что-то с cursor sharing (тоже оракловское, однако там ещё халява с оптимизацией; в других субд хуже обычно).
Вот такая вот простая темка.
[01:08:03] <gds> когда начал анализировать это, взялся за голову и подумал, что в идеале надо бы ещё оформлять частичную/полную эмуляцию bind variables на клиенте, для некоторых запросов и даже вероятно для избранных переменных в запросе.  Но руки не дошли, серьёзных базоданных штук сейчас не делаю.
[01:11:30] <ermine> скоро gds напишет свою собственную базу с собственной vm, оптимизирующим запросы с помощью парвела
[01:11:53] <ermine> и да, итераты для подкачки файлов с диска
[01:12:27] <Typhon> ща можа и тенденция в память бд пихать
[01:12:46] <Typhon> понятно, что на всегда можно, но для олтп позволительно
[01:12:53] <Typhon> *мода, тьфу ты :-)
[01:13:50] <ermine> inmemory db давно существуют
[01:13:51] <gds> я лучше бы написал книжку "реляционки так, как вы их не знаете" с развеиванием мифов.  разрушительная деятельность и ассенизаторство мне удаются неплохо.
[01:14:09] <bobry> лучше цикл постов :)
[01:14:22] <bobry> а то книжка это как то слишком наверное
[01:15:14] <gds> бд в память -- идея не ок.  для скорости, разве что.  но и то, зачем это в среднем случае, если есть операционка, которая прилично кеширует диск на чтение (если неприлично -- тогда уже думать надо).
[01:15:55] <ermine> база в памяти как раз правильно, учитывая, что гремящие вертящиеся диски постепенно отмирают
[01:16:16] <gds> bobry: предложение учёл.  Однако это я к старости, видимо.  Когда умрёт lj\plumqqz, а то же он меня с говном съест.
[01:16:32] <gds> ermine: надёжность как обеспечивать будешь?
[01:17:05] <Typhon> долговечность, которая Durability имеешь ввиду?
[01:17:12] <Typhon> можно много нод сделать! и распределить всё!
[01:17:15] <gds> ermine: хранение данных, все дела.  Представь, что база данных с твоим сальдо по расчётному счёту хранится в такой базе.  Ссыкотно?  Мне было бы да.
[01:17:21] <Typhon> и скрестить пальцы, что оно всё сразу не упадёт ^_^
[01:17:27] <gds> Typhon: ДА!
[01:17:33] <ermine> gds: у нас тут eee pc годами работает и ни разу не загибалось, считаю, что надежность такая же как у сказевого винта, который на j.r таки периодически вылетает
[01:17:59] <ermine> на моей памяти - дважды
[01:18:20] <ermine> не многовато ли для скази за 6 лет
[01:20:22] <gds> ermine: надёжность лишней не бывает.  кроме того, винты дешевле, винты хорошо быкапятся (пофайлово, целиком), винты хранят в отсутствие электроэнергии (про УПСы я знаю, но поддерживать их аккумуляторы рабочими -- дорого), винты дают гарантию вида "как только ответ на команду получен от винта -- инфа записана".
И действительно жаль, что у вас сказёвые винты так быстро вылетают.
[01:21:59] <ermine> gds: а как нонче винты участвуют в облаках?
[01:22:23] <ermine> пора уже мыслить облачно, то бишь туманно
[01:23:17] <ermine> мне тут в соседнем чате пообещали, что ocamlpro может быть научит инлайнить хай-ордер функции, интересно, верить в это или нет
[01:24:09] <gds> ermine: соседний чат и обещавший -- кто?
[01:24:45] <ermine> gds: нискажу! сотрудник jane street
[01:25:16] <gds> лефессант работает в жейнстрит??
[01:25:45] <ermine> хз, не интересовалась
[01:26:30] <ermine> gds: поезжай в Лондон, тебя там возьмут на работу с распростертыми объятиями, это 100%
[01:28:00] ermine сняла с себя шапочку тролля и помахала ею на прощание
[01:28:02] ermine вышел(а) из комнаты
[01:37:37] <gds> дамы и господа!  счастлив сообщить вам, что я в ближайшее время сваливаю в очередную авантюру (понравилось, да!), включающую в себя поездку в http://tinyurl.com/3kgzu7r , скорее всего.  В лучшем для вас случае вы меня не увидите до конца русской недели, в худшем -- буду мельтешить у вас как "вошёл-вышел" (порно, но задорно).
[01:38:32] <gds> а про ландан из зе кэпитал ов грейт британ -- это знаю.  Только вот климат их не прёт, ну вообще никак.  do not want.
[01:45:11] gds вышел(а) из комнаты
[02:39:57] Typhon вышел(а) из комнаты
[03:09:14] ftrvxmtrx вышел(а) из комнаты
[03:10:15] ftrvxmtrx вошёл(а) в комнату
[06:01:48] delete_ вошёл(а) в комнату
[06:32:51] delete_ вышел(а) из комнаты
[06:34:30] delete_ вошёл(а) в комнату
[08:28:20] komar вышел(а) из комнаты
[09:13:25] ermine вошёл(а) в комнату
[09:43:19] bobry- вошёл(а) в комнату
[10:35:04] ftrvxmtrx вышел(а) из комнаты
[11:15:35] komar вошёл(а) в комнату
[11:38:25] ftrvxmtrx вошёл(а) в комнату
[12:54:24] delete_ вышел(а) из комнаты: Replaced by new connection
[12:54:26] delete_ вошёл(а) в комнату
[13:05:20] Typhon вошёл(а) в комнату
[13:08:00] shaggie вошёл(а) в комнату
[13:13:19] shaggie вышел(а) из комнаты
[13:13:59] shaggie вошёл(а) в комнату
[13:59:44] delete_ вышел(а) из комнаты
[14:45:13] ftrvxmtrx вышел(а) из комнаты
[14:51:30] ftrvxmtrx вошёл(а) в комнату
[14:51:45] ftrvxmtrx вышел(а) из комнаты
[14:53:11] ftrvxmtrx вошёл(а) в комнату
[14:55:35] digimmortal вошёл(а) в комнату
[14:55:37] digimmortal вышел(а) из комнаты
[14:55:52] digimmortal вошёл(а) в комнату
[15:14:16] digimmortal вышел(а) из комнаты
[15:15:42] digimmortal вошёл(а) в комнату
[15:20:54] bobry вышел(а) из комнаты
[15:22:46] digimmortal вышел(а) из комнаты
[15:33:47] bobry вошёл(а) в комнату
[16:17:25] ftrvxmtrx вышел(а) из комнаты
[17:33:17] gds вошёл(а) в комнату
[17:47:48] ftrvxmtrx вошёл(а) в комнату
[17:56:03] gds вышел(а) из комнаты
[18:41:21] ftrvxmtrx вышел(а) из комнаты
[18:41:32] ftrvxmtrx вошёл(а) в комнату
[19:32:19] Typhon вышел(а) из комнаты
[19:32:24] bobry вышел(а) из комнаты
[19:32:24] bobry- вышел(а) из комнаты
[19:32:24] ftrvxmtrx вышел(а) из комнаты
[19:32:25] shaggie вышел(а) из комнаты
[19:32:35] komar вышел(а) из комнаты
[19:34:57] ermine вышел(а) из комнаты
[20:12:43] gds вошёл(а) в комнату
[20:12:51] gds вышел(а) из комнаты
[20:12:52] gds вошёл(а) в комнату
[20:13:17] gds вышел(а) из комнаты
[20:13:41] Typhon вошёл(а) в комнату
[20:14:04] ermine вошёл(а) в комнату
[20:14:43] bobry вошёл(а) в комнату
[20:16:13] gds вошёл(а) в комнату
[20:17:11] ftrvxmtrx вошёл(а) в комнату
[20:27:05] shaggie вошёл(а) в комнату
[20:32:01] shaggie вышел(а) из комнаты
[20:43:56] gds вышел(а) из комнаты: Replaced by new connection
[20:43:57] gds вошёл(а) в комнату
[20:46:58] komar вошёл(а) в комнату
[20:48:08] Typhon вышел(а) из комнаты
[20:49:55] gds вышел(а) из комнаты: Replaced by new connection
[20:49:56] gds вошёл(а) в комнату
[21:02:25] avysk вошёл(а) в комнату
[21:02:35] avysk вышел(а) из комнаты
[21:08:39] gds вышел(а) из комнаты
[21:27:41] gds вошёл(а) в комнату
[21:29:22] <gds> чото у меня в json-static не работает тип number.  видимо, как-то криво билдю.  у кого-нибудь он когда-нибудь вообще работал?
[21:30:29] gds летает туда-сюда по чятику.  то, что сейчас перейду в оффлайн, не означает, что мне неинтересен ответ.
[21:30:33] ftrvxmtrx вышел(а) из комнаты
[21:32:36] <ermine> gds: есть вещь покруче json-static!
[21:33:36] <ermine> yojson называется!
[21:33:58] ermine еле вспомнила название, заглянув в каталог site-lib
[21:35:33] shaggie вошёл(а) в комнату
[21:43:43] gds вышел(а) из комнаты
[21:49:20] komar вышел(а) из комнаты: Replaced by new connection
[21:49:21] komar вошёл(а) в комнату
[22:12:11] ftrvxmtrx вошёл(а) в комнату
[22:27:07] gds вошёл(а) в комнату
[22:28:31] <gds> ermine: покруче, да.  И так на "билденье" трачу дофига времени.  А там -- зависимостей побольше.  В общем, параллельно с профайлингом х-я помоги в оверблд зафигачить этот yojson, буду благодарен :]
[22:31:16] <gds> ааааааааа, см. рассылку, "[Caml-list] Rope.of_string looses characters".  Чем-то очень понравилось.  Итераты где-то рядом.
[22:35:58] <ermine> а еще atdgen
[22:39:27] <gds> руки бы дошли до них.  но они круче, факт.
[22:40:29] <ermine> надо бы заюзать yojson для конфига в формате json, хватит уже якшаться с xml и ini
[22:41:13] <ermine> благо что yojson позволяют комментарии, в отличие от json-wheel
[22:41:43] <gds> json-wheel тоже позволяет, см. json_of_string
[22:41:58] <komar> Я не одобряю.
[22:42:01] <gds> кстати, для хуман-ридаблё конфиги можно в yaml
[22:42:11] <komar> Возьмите yaml, раз уж такие эстеты.
[22:43:20] <ermine> а есть готовая парсилка на тормозном камле?
[22:43:42] <komar> Вот тебе все готовое подавай.
[22:44:00] <ermine> ПОДАВАЙ!!!
[22:44:29] ermine наконец узнала, в чеем смак <*>
[22:44:58] <ermine> ну, развертывать туда-сюда в алгебру - те еще тормоза
[23:04:08] komar вышел(а) из комнаты: Replaced by new connection
[23:04:10] komar вошёл(а) в комнату
[23:17:37] gds вышел(а) из комнаты
[23:24:55] shaggie вышел(а) из комнаты
[23:36:23] komar вышел(а) из комнаты
[23:41:30] komar вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!