Большое количество данных - как лучше хранить?

12
R
На сайте с 03.04.2008
Offline
90
2887

Добрый день

Прошу совета знатоков.

Сейчас есть база mysql в ней хранятся данные о географических точках (то есть поля две цифры + служебные поля принадлежности к объекту). Но этих точек очень много (несколько миллионов) и по мере роста базы все стало тормозить, так как mysql не справляется и съедает большую часть ресурсов. Данные обновляются редко, в основном происходит только добавление новых.

обращений к базе не много (это служебная информация, по которой строятся элементы), то есть по сути никаких множественных обращений не происходит.

Вопрос: как организовать хранение этих данных? если например хранить это все дело в файлах, побив объекты на группы, даст это прирост в скорости доступа?

Раньше не сталкивался с хранением таких больших объемов данных, поэтому буду благодарен за советы, в какую сторону смотреть для поиска решения.

ICQ: 577-662-540 продвижение сайтов за еду (/ru/forum/480944) продвину Ваш сайт за 3000/мес. Портфолио по запросу
zexis
На сайте с 09.08.2005
Offline
388
#1

Лучше данные хранить в базе SQL. Так как это удобно и не факт, что на файлах своего формата будет быстрее.

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

Если с индексами все нормально, но все равно тормозит, значит нужно делать репликацию базы данных.

То есть один мастер сервер, в который заносим данные, и несколько Slave серверов в которые данных автоматически переносятся системой репликации.

Запросы Select можно делать к Slave серверам. Это позволит распараллелить запросы на несколько серверов.

Для начала я бы взял мощьный сервер и попробовал поставить на него. Может и один сервер справится при условии правильной индексации.

[Удален]
#2
rusevgen:
Добрый день

Прошу совета знатоков.

Сейчас есть база mysql в ней хранятся данные о географических точках (то есть поля две цифры + служебные поля принадлежности к объекту). Но этих точек очень много (несколько миллионов) и по мере роста базы все стало тормозить, так как mysql не справляется и съедает большую часть ресурсов. Данные обновляются редко, в основном происходит только добавление новых.

обращений к базе не много (это служебная информация, по которой строятся элементы), то есть по сути никаких множественных обращений не происходит.

Вопрос: как организовать хранение этих данных? если например хранить это все дело в файлах, побив объекты на группы, даст это прирост в скорости доступа?

Раньше не сталкивался с хранением таких больших объемов данных, поэтому буду благодарен за советы, в какую сторону смотреть для поиска решения.

Вы бы описали структуру базы данных, какой тип полей, индексы.

S
На сайте с 23.05.2004
Offline
315
#3

Структуру таблиц(ы) покажите, какое число данных в базе, какое железо на сервере, конфиг базы меняли или оставили дефолтным ?

Это просто подпись.
Zaqwr
На сайте с 08.08.2007
Offline
111
#4

оптимизировать структуру БД.

Администрирование, Linux, Cisco, Juniper
P
На сайте с 08.03.2007
Offline
250
#5

Несколько миллионов точек - это не много. Надо смотреть на то, какие запросы Вам нужны и либо править запросы, либо править индексы. При некоторых типах запросов будет проще поставить postgres или использовать геонадстройку к mysql (если это поделие можно вообще использовать), но для обработки именно геоточек это всё лишнее.

[Удален]
#6

самое-самое это база данных SQL

rtyug
На сайте с 13.05.2009
Offline
263
#7
rusevgen:

Вопрос: как организовать хранение этих данных? если например хранить это все дело в файлах, побив объекты на группы, даст это прирост в скорости доступа?

можно применить математические алгоритмы...

есть различные решения почти "из коробки", так же Berkeley DB и NoSQL

Спалил тему: Pokerstars вывод WMZ, etc на VISA 0% или SWIFT + Конверт USD/GBP,etc (net profit $0,5 млрд) (https://minfin.com.ua/blogs/94589307/115366/) Monobank - 50₴ на счет при рег. тут (https://clck.ru/DLX4r) | Номер SIP АТС Москва 7(495) - 0Ꝑ, 8(800) - 800Ꝑ/0Ꝑ (http://goo.gl/XOrCSn)
M
На сайте с 16.09.2009
Offline
278
#8
rtyug:
можно применить математические алгоритмы...

Интересно, а реляционные базы данных - это не "математические алгоритмы"? :) Но звучит солидно: "ща как применим математические алгоритмы..."

rtyug:
есть различные решения почти "из коробки", так же Berkeley DB и NoSQL

Решения чего? Проблемы, которой толком и не сформулировали?

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
Zaqwr
На сайте с 08.08.2007
Offline
111
#9

memcached ещё никто не порекомендовал?

9
На сайте с 18.08.2007
Offline
72
#10

1) Explain тормознутых запросов нужен,

2) Структуры таблицы

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий