Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: MongoDb vs JSON file
 
 автор: Enter   (17.04.2014 в 11:54)   письмо автору
 
 

Привет. Проблема такая: есть некий файлик, примерно, 7 метров. В нем данные записаны в json формате. Парсю их в массив и все такое. В общем, делаю с этой строкой все, что только можно сделать, в том числе делаю поиск. Меня интересует такой вопрос: стоит ли использовать MongoDB, чтобы ускорить поиск по данным? На данный момент у меня поиск занимает 1 - 1.4 секунды, а мне надо, чтобы поиск занимал хотя бы 0.5 секунды. Вот и думаю, напрягать админа, чтобы он установил монгодб или стоит оптимизировать поиск по json?

  Ответить  
 
 автор: Valick   (17.04.2014 в 13:39)   письмо автору
 
   для: Enter   (17.04.2014 в 11:54)
 

>Парсю их в массив и все такое.
Однозначно надо менять подход. И решение надо принимать исходя из самих данных, смотря что и как надо искать. Будет это реляционная БД или какая-либо другая это уже по обстоятельствам, но однозначно не поиск средствами РНР.

  Ответить  
 
 автор: Enter   (17.04.2014 в 13:49)   письмо автору
 
   для: Valick   (17.04.2014 в 13:39)
 

формат данных таков:
id - число
value - строка
по строке и идет поиск.
сначала я stripos ищу, есть ли такое в общей строке, то есть до json_decode, и если есть, то уже перевожу все в массив и в нем продолжаю поиск, но уже регуляркой. попробую после обеда перевести все на mysql, посмотрю, сколько будет длится поиск из бд.

  Ответить  
 
 автор: Enter   (17.04.2014 в 14:43)   письмо автору
 
   для: Valick   (17.04.2014 в 13:39)
 

да, с БД mysql все работает быстрее. 0.019453сек, примерно.

  Ответить  
 
 автор: Valick   (17.04.2014 в 15:37)   письмо автору
 
   для: Enter   (17.04.2014 в 14:43)
 

так сомнений у меня лично и не было

  Ответить  
 
 автор: Enter   (17.04.2014 в 16:07)   письмо автору
 
   для: Valick   (17.04.2014 в 15:37)
 

мне по некоторым причинам не хотелось использовать mysql, но все равно надо какое-то решение найти, отличное от mysql

  Ответить  
 
 автор: Valick   (17.04.2014 в 17:03)   письмо автору
 
   для: Enter   (17.04.2014 в 16:07)
 

абстрагируйтесь от конкретной БД по средствам PDO

  Ответить  
 
 автор: Enter   (17.04.2014 в 17:12)   письмо автору
 
   для: Valick   (17.04.2014 в 17:03)
 

pdo я использую, просто это заморочки с утановкой по на сервер. не я это делаю, а то давно бы монго установил.

  Ответить  
 
 автор: lgar   (20.04.2014 в 12:31)   письмо автору
 
   для: Valick   (17.04.2014 в 17:03)
 

PDO же вроде не работает с mongodb, для нее в PHP есть отдельный класс. Я б вопрос поставил так, что в этом случае лучше использовать, например, mysql или mongo. Вроде бы формат mongo больше подходит для JSON-данных. Если абстрагироваться от проблемы ТС, возьмем например файл с данными в JSON, обновляются раз в 5 минут, при этом в будущем может потребоваться обращение к старым данным, то, что лучше?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования