SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 29.05.2013 09:12:32

maxjoin
Завсегдатай
Зарегистрирован: 03.07.2008
Сообщений: 26

как правильно сохнарить сжатую строку

хочу использовать базу как ключ значение. есть например поля id, data
я хочу сохранить в поле data сжатую строку json, чтобы сократить размеры базы, но и не понизить производительность чтения. сжатие будет происходить на фронтенде а в базе будет храниться только сжатый результат, подскажите какой лучше использовать тип данных для этого поля VARBINARY или BLOB и его размер или просто не заморачиваться и хранить данные так?
размер записи думаю будет до 500кб не в жатом виде

выдержит ли MySQL если эта таблица будет постоянно обновлять?
предполагаемый размер базы около 1ТБ движек innodb
_______________________________________________________________

сделал сохранение сжатых строк в mediumblob

CREATE TABLE IF NOT EXISTS `topics` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `slug` varchar(255) NOT NULL,
  `hash` binary(16) NOT NULL,
  `data` mediumblob NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `hash` (`hash`),
  KEY `slug` (`slug`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

справится ли мускл с частым обновление такой таблицы и не разрастется ли она до нереальных размеров?

Отредактированно maxjoin (30.05.2013 01:31:00)

Неактивен

 

#2 31.05.2013 10:53:30

Neval
Гуру
Откуда: Киев
Зарегистрирован: 11.03.2008
Сообщений: 449

Re: как правильно сохнарить сжатую строку

Вставлю свои 5 копеек, возможно не совсем по теме... 1 терабайт для часто обновляемых данных - это достаточно много на мой взгляд. Не поверю, что часто обновляемые данные будут составлять хотя бы 20% этой таблицы. В таком случае я бы предложил разбить таблицу на две: для часто обновляемых и редко обновляемых, если конечно же есть возможность заранее спрогнозировать какие ключи будут использоваться чаще.


Человек без чувства юмора - не серьёзный человек wink

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson