metaclass: (Default)
[personal profile] metaclass
http://plumqqz.livejournal.com/364288.html
Я вот как-то не задумывался, что в приложениях, предназначенных для exUSSR базы данных с большим количеством текстовых полей в таблицах в win-1251 будут в два раза меньше чем в utf8.
Интересно, нельзя ли в базе сделать кастомную кодировку, аналогичную utf8, но чтобы в ней символы, цифры, русские и приравненные к ним буквы чтобы занимали 1 байт, а английские и прочие умляуты - 2 и прочее. Сразу бы вопрос размера базы снялся.

Date: 2013-04-18 07:24 pm (UTC)
From: [identity profile] aamonster.livejournal.com
Хочется взять и уебать.
И так хватило безумия с кодировками. А хотите ада - жмите поля ppm.

Date: 2013-04-18 07:27 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Ну да, но вот народ уперся рогом в win-1251 и все. А потом же будут костыли когда туда понадобится умляуты и иероглифы писать.
Впрочем, я придумал более простой вариант - два поля, русский писать в первое в win1251, если понадобится нерусь вносить - во второе, в utf8.

Date: 2013-04-18 08:20 pm (UTC)
From: [identity profile] plumqqz.livejournal.com
А вы, между прочим, предложили отличное решение.

Date: 2013-04-19 04:01 am (UTC)
From: [identity profile] trueblacker.livejournal.com
не в точности, но примерно по теме

Date: 2013-04-19 04:00 am (UTC)

Date: 2013-04-18 07:26 pm (UTC)
From: [identity profile] falcrum.livejournal.com
Теоретически, никто не мешает. Заодно... э-э... обсфурцируешь... :)

Date: 2013-04-18 07:27 pm (UTC)
From: [identity profile] metaclass.livejournal.com
"В комментарии призывается maxdz с комментариями про колхозные кодировки серверного мордора основанные на xor"

Date: 2013-04-18 07:29 pm (UTC)
From: [identity profile] aamonster.livejournal.com
Только ppm. Только хардкор. Всё остальное - неоправданный расход битиков!

Date: 2013-04-19 09:43 am (UTC)
From: [identity profile] nivanych.livejournal.com
BTRFS со включенным ZLO-сжатием!!

Date: 2013-04-18 07:37 pm (UTC)
From: [identity profile] berezovsky.livejournal.com
ничё не понял, куда там что упирается, если размер в два раза больше

Date: 2013-04-18 07:45 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Нагрузка на i/o и размеры стораджа.
(deleted comment)

Date: 2013-04-19 05:57 pm (UTC)
From: [identity profile] berezovsky.livejournal.com
О, привет, глазофф!

Date: 2013-04-18 07:53 pm (UTC)
From: [personal profile] alll
ребе, не останавливайтесь на полдороге - жмите уже текстовые поля потоковым компрессором
один чорт на перекодировку utf8r <-> utf8 процессор напрягать

Date: 2013-04-18 07:55 pm (UTC)
From: [identity profile] berezovsky.livejournal.com
аппаратно зипировать

Date: 2013-04-18 07:55 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Вы тащемта не поверите, но базы данных это сами вроде делают :)

Date: 2013-04-18 08:17 pm (UTC)
From: [identity profile] plumqqz.livejournal.com
Некоторые даже с аппаратной помощью.

Date: 2013-04-18 09:16 pm (UTC)
From: [personal profile] alll
Не поверю - иначе откуда бы вы взяли такой вкусный выигрыш в размерах в ~50% вместо унылого ~20%. ;)

Date: 2013-04-18 08:25 pm (UTC)
From: [identity profile] kiryl.livejournal.com
Купите уже больше памяти/диска и не изобретайте костыли.

Date: 2013-04-18 08:36 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Да я тоже так думаю.
Но вот для баз в несколько терабайт размером и на хороших дисках, внезапно, экономия в два раза начинает иметь смысл. Плюс еще ускорение работы в два раза чисто за счет i/o.

Date: 2013-04-18 08:51 pm (UTC)
From: [identity profile] eternal-leave.livejournal.com
Базы в пару терабайт зачастую партиционированы на куски по несколько десятков гиг, которые с легкостью влазят целиком в память

Date: 2013-04-18 09:07 pm (UTC)
From: [identity profile] kiryl.livejournal.com
А что по сегодняшним меркам пара терабайт -- это объём? Это ж за разумные деньги делается. Хоть SAS на 15k, хоть SSD.

P.S. в моём тестовом стенде 1TiB RAM :-P

Date: 2013-04-18 09:20 pm (UTC)
From: [identity profile] metaclass.livejournal.com
У меня как-то не складывается.
Вот собирался сделать себе сервак для виртуализации - памяти побольше, диски в рейде, материнка плата более-менее приличная - так в итоге получается, что он себя не окупит.
Т.е. пиковая его производительность мне нужна, когда я интенсивно делаю какую-нибудь трэшатину, но загрузить его в среднем хотя бы на 50% - я один лично не смогу, я столько работы не делаю, а больше некому. :)

Date: 2013-04-18 11:16 pm (UTC)
From: [identity profile] qehgt.livejournal.com
А можно поинтересоваться, что в "несколько терабайтной" базе этой храниться будет? Фамилии/имена всех жителей России от начала времён и до конца жизни Вселенной?

А то вся флибуста - это такие-то жалкие 301 гигабайт со всеми толстыми и достоевскими. И всё равно не дотягивает.

Date: 2013-04-19 04:12 am (UTC)
From: [identity profile] thedeemon.livejournal.com
Запись всех разговоров и мыслей жителей Минска и окрестностей за 21-25 века.

Date: 2013-04-19 04:58 am (UTC)
From: [identity profile] metaclass.livejournal.com
В трекер только что добавлен пункт "переговорить с куратором насчет утечки данных в Таиланде".

Date: 2013-04-19 04:51 am (UTC)
From: [identity profile] metaclass.livejournal.com
Там вроде все в архивах.

Date: 2013-04-19 05:31 am (UTC)
From: [identity profile] denisioru.livejournal.com
Да не будет там в два раза. Служебной информации тоже хватает. К тому же большие текстовые данные отлично жмутся как позаписьно так и постранично.

Date: 2013-04-18 08:53 pm (UTC)
From: [identity profile] eternal-leave.livejournal.com
latin1 же )

Date: 2013-04-18 09:19 pm (UTC)
From: [identity profile] qehgt.livejournal.com
Есть такая мудрая поговорка "с говна сметану собирать".

Date: 2013-04-20 07:21 am (UTC)

Date: 2013-04-19 05:29 am (UTC)
From: [identity profile] denisioru.livejournal.com
А что такое "в два раза"? У вас plain-text document storage? В остальных случаях разница win1251/utf-8 несущественна. Индексы по текстовым строкам пожырнее будут, но это не настолько критично, ибо все нормальные full-text движки используют уникод для хранения строк. Я не вижу причин создавать базы СЕЙЧАС в кодировке, отличной от utf-8 или строго уникодной. Потому что завтра появится название на китайском, французском или чешском (кстати у нас такие уже есть такие, и монгольский и прочие).

Date: 2013-04-19 05:51 am (UTC)
From: [identity profile] metaclass.livejournal.com
Ну вот все так говорят, а крокодил говорит, что на текстах заметная экономия.

Date: 2013-04-19 07:24 am (UTC)
From: [identity profile] denisioru.livejournal.com
Пруфы? И не надо синтетики, где одна таблица на стопицот миллионов записей с двумя полями, одно из которых текстовое и индексированное. Это ниразу не показатель. В реальной жизни разница единицы процентов, да и то надо постараться, чтобы она была.

Date: 2013-04-19 06:12 am (UTC)
From: [identity profile] plumqqz.livejournal.com
Потому что завтра появится название на китайском, французском или чешском (кстати у нас такие уже есть такие, и монгольский и прочие).
У меня брат - врач, и, грит, с определенного момента времени юзерыпациенты начали привозить выписки из историй болезни на китайском, тайском, арабском, турецком и т.п. Что с ними делать - он не знал, но в итоге пошел по вашему пути - просто подклеивал. Пусть будет, чё...

Date: 2013-04-20 07:22 am (UTC)
From: [identity profile] anonim-legion.livejournal.com
Я почти уверен, что если бы выписки были на английском - он тоже не знал бы, что с ними делать. Потому что учил немецкий, но его тоже не знает.

Врачи такие врачи.

Date: 2013-04-22 07:30 pm (UTC)
From: [identity profile] plumqqz.livejournal.com
Ну вот и думайте, к чему это все ведет.

Date: 2013-04-19 09:12 am (UTC)
From: [identity profile] tzirechnoy.livejournal.com
В юникоде, кстати, так и нет нормальной одновременной поддержки китайского и японского иероглифического.

Date: 2013-04-19 09:13 am (UTC)
From: [identity profile] denisioru.livejournal.com
Тем не менее уникод снимает львиную долю головняков с хранением национальных символов.

Date: 2013-04-19 09:09 am (UTC)
From: [identity profile] nivanych.livejournal.com
Слышал, люди пробовали в BTRFS со сжатием хранить и даже получали какой-то выигрыш.
На чистом BTRFS получается раза в полтора-два медленнее, чем в ext4, но зато, в BTRFS есть сжатие, и оно как-то что-то позволяет.
Я не пробовал.

Date: 2013-04-19 09:10 am (UTC)
From: [identity profile] tzirechnoy.livejournal.com
Если весь сраный оркужающий мир не знает, как работать с разными кодировками -- то нет, нельзя.

А в постгрэссе, конечно, можно.

Date: 2013-04-19 09:45 am (UTC)
From: [identity profile] litvin-v.livejournal.com
Я как-то реализовывал хранение русских строк в 5-ти битах на символ. И свой формат базы. Телефонный справочник для аппарата с очень мало мозгов.

Если надо цифры и буквы, которым нет аналогов в кириллице, можно ещё бит добавить :)

Date: 2013-04-19 04:32 pm (UTC)
From: [identity profile] victor bolshakov (from livejournal.com)
Хранить в нормальном UTF, чтоб русскому небыло обидно.
А вообще, это касается только БД с кучей текстов - полнотекстовый поиск и т.д. Но для этого случая реляцилнные БД как-то не очень.

Date: 2013-04-20 07:19 am (UTC)
From: [identity profile] anonim-legion.livejournal.com
Кто-нибудь, дайте Крокодилу ссылку: natishalom.typepad.com/nati_shaloms_blog/2010/03/memory-is-the-new-disk-for-the-enterprise.html

Пускай ужаснется.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 25th, 2025 09:37 pm
Powered by Dreamwidth Studios