Jump to content
Sign in to follow this  
iljalop

несколько вопросов по функционалу

Recommended Posts

добрый день форумчане.

Есть сл вопрос.

Работаю над созданием интернет магазина и столкнулся с такой проблемой.

У меня на сайте будет очень большой перечень товаров, больше 100000. Мне необходимо иметь базу ввиде файла или БД в которую я смогу вносить изменения и дополнять новыми появившимися товарами. А клиент, через поиск или через страницу поиска, может найти этот товар. и получить определенный список параметров ввиде результата.

К примеру у меня есть 10 000 товаров в БД или в каком-то файле на сервере магазина. Часть из этих товаров (1000) у меня висят в каталоге и внесены через админку и их можно легко найти по поиску. Остальные товары (9000) у меня просто указаны в файле или БД. Так вот клиент вводит номер 123456 и ему поиск говорит - товар 123456 доступен под заказ 25,10$ срок поставки 14-21день.

подскажите как это лучше реализовать? Может кто-то сталкивался с таким? Есть-ли какой-то модуль который позволяет осуществлять поиск по файлу который находится где-то на сервере?

Share this post


Link to post
Share on other sites

Любой файл нужно разбирать (парсить) прежде чем по нему искать. А это бешеные затраты ресурсов. Идея сама по себе утопична. Все нужно грузить в БД, потому что MySQL единственное средство быстрой обработки данных и поиска по ним.

Share this post


Link to post
Share on other sites

Могу подсказать один из вариантов решения:

1. В линуксе есть консольная команда grep с помощью которой можно искать в файлах с помощью регулярных выражений. Ищет очень быстро, отдает строки, содержащие совпадение (возможно можно поменять вывод с помощью параметров, нужно курить маны)

например. grep "256" utf8_DaneCzesci.csv (файл на пол миллиона строк, размером в 42 мегабайта) время поиска меньше секунды!

2. В php есть функция exec с помощью которой можно выполнять консольные комманды.

3. К стандартному поиску дописать поиск по внешнему файлу..

4. Профит

Share this post


Link to post
Share on other sites

а какого-то уже готово решения по этому поводу нету?

Share this post


Link to post
Share on other sites

а какого-то уже готово решения по этому поводу нету?

готовые решения есть для стандартных задач, а у вас очень специфическая задача для нее нужно писать индивидуальное решение. Да и в чем проблема? Нужно ТЗ и несколько часов работы вменяемого программиста и будет вам счастье :)

Share this post


Link to post
Share on other sites

Могу подсказать один из вариантов решения:

1. В линуксе есть консольная команда grep с помощью которой можно искать в файлах с помощью регулярных выражений. Ищет очень быстро, отдает строки, содержащие совпадение (возможно можно поменять вывод с помощью параметров, нужно курить маны)

например. grep "256" utf8_DaneCzesci.csv (файл на пол миллиона строк, размером в 42 мегабайта) время поиска меньше секунды!

2. В php есть функция exec с помощью которой можно выполнять консольные комманды.

3. К стандартному поиску дописать поиск по внешнему файлу..

4. Профит

тогда уже проще preg_match.

Share this post


Link to post
Share on other sites

тогда уже проще preg_match.

Не проще..

1. для preg_match нужно передать строку в которой будет осуществляться поиск , которую нужно получить из файла, а тут есть 2 варианта: 1. Загрузить весь файл в эту строку, но если файл большой то сделать это не получится 2. Если считывать построчно и проверять каждую строку то это очень долго и не эффективно

2. я не проверял, но подозреваю, что скорость работы консольной команды будет намного больше, чем php функции

3. preg_match вроде имеет ограничение в к-во символов, то есть обработать реально большой файл ей не получиться.

Share this post


Link to post
Share on other sites

готовые решения есть для стандартных задач, а у вас очень специфическая задача для нее нужно писать индивидуальное решение. Да и в чем проблема? Нужно ТЗ и несколько часов работы вменяемого программиста и будет вам счастье :)

вы знаете так и поступлю. Попробую что получится.

Благодарю Вас за помощь.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By neoseo
      Модификация дублирует статьи из подвала в шапку сайта.
        Обращаем внимание:
       
      1. Внимание: Открытый код!
      2. Все обновления к купленным модулям - бесплатно и навсегда.
      3. Техническая поддержка и оперативные ответы на вопросы - бесплатно и навсегда.
      4. NEW! Помощь в установке и устранении ошибок при установке модулей - бесплатно и навсегда, но в порядке общей очереди.
      5. NEW! Оперативный удаленный помощник по TeamViewer по специальному тарифу, 15 мин. - 369 руб. для тех, кому нужно уже, не дожидаясь бесплатной поддержки, которая предоставляется в порядке общей очереди.
       
      C 01.08.2019 года техническая поддержка осуществляется исключительно через обращение на почту  info@neoseo.com.ua  Если у Вас есть вопросы информационного характера, пожалуйста, напишите в ЛС или позвоните нам:
      Россия, все звонки бесплатно
      8 800 551 94 15
        Украина: +380 67 67 07 647 +380 63 71 70 763
      +380 50 34 58 565
       
       
      МЫ РАБОТАЕМ:
      Понедельник-пятница 
      с 9-00 до 19-00 по Киевскому времени 
       
       
      Суббота и Воскресенье
      - выходные дни!
       
      Лицензионные условия.
       
       
      Пожалуйста, внимательно читайте то, что написано на странице каждого модуля в инструкции
      по установке и обновлениям:
       
      1. Данный модуль устанавливается без лицензии
       
      2. Распакуйте архив с модулем и загрузите содержимое папки upload на сайт
       
      3. Установите модуль посредством меню Дополнения / Модули
       
      4. Установите права на просмотр модуля нужным пользователям
       
      5. Зайдите в настройки модуля, укажите нужные параметры и сохраните настройки.
       
      ВАЖНО! Если вы видите сообщение о том, что файл лицензии не найден, не переходите к этапу #7.
      В таком случае напишите нам на info@neoseo.com.ua, мы поможем выявить причину не активации лицензии. Если вы убедились в том, что модуль видит лицензию, вы можете переходить к следующему пункту.
       
      7. Обновите модификаторы (Дополнения / Модификаторы)
       
      Общий порядок обновления модулей:
       
      Советы:
       
       
       
      Как предоставляется информационная поддержка? Как решить свой вопрос максимально оперативно?

       
      Важно. Условия бесплатной и платной
      информационной и технической поддержки.
       
       
      Очень часто спрашивают:

      Преимущества модулей от NeoSeo:
       
      Посмотреть работу модуля вы сможете тут:
      https://demo.neoseo.com.ua/admin
      логин: admin
      пароль: admin
       
      Нажмите здесь http://prntscr.com/j1sqxc, чтобы быть в курсе всех обновлений.
       
      Уважаемые покупатели, скажите, что может быть лучше для развития модуля, чем публичные обсуждения и отзывы?
      Мы уверены это хороший стимул предоставлять услуги еще лучше ).

      Пожалуйста, все вопросы для обсуждения пишите здесь:
      https://opencartforum.com/topic/67991-stati-v-shapke-opencart-2x/
       
      Отзыв о работе модуля, пожалуйста, напишите здесь:
      https://opencartforum.com/files/file/3489-stati-v-shapke-opencart-2x/?tab=reviews
       
      Также, очень рекомендуем Вам, купить и другие наши продукты, которые пригодятся в абсолютно любом магазине.
       
      Спасибо, что вы с нами, всегда рады помочь развитию вашего онлайн-бизнеса!
      Веб-студия NeoSeo - полноценная Команда, решаем любые вопросы оперативно и качественно.
       
      ФУНКЦИОНАЛ НАЗВАНИЕ И ОПИСАНИЕ ССЫЛКИ ИНСТРУМЕНТЫ для
      SEO ПРОДВИЖЕНИЯ:
        1. SEO-Фильтр. Кроме того, что этот модуль предназначен для создания  фильтров, он позволяет создавать сотни или даже тысячи специальных посадочных страниц, чтобы получать из поисковой выдачи средне и низко-частотный трафик бесплатно      2. Генератор robots.txt, без которого поисковые роботы проиндексируют ненужные страницы и понизят вам релевантность  
       
          3. Отслеживание битых ссылок, чтобы не терять трафик впустую      4. Модуль создания редиректов, который позволяют починить битые ссылки     5. Источник заказа, чтобы отслеживать эффективность рекламных кампаний   ПОВЫШЕНИЕ ПРОДАЖ:   1. Выгрузка товаров на Prom.ua, Ava.ua, Hotline, Facebook.com, Яндекс.Маркет, Nadavi.net, Price.ua, Torg.mail.ru и др. прайс-агрегаторы, Модуль для Opencart от веб-студии NeoSeo, который позволяет выгрузить данные для прайс агрегаторов  
        ОБРАБОТКА ТОВАРОВ:   1. Водяной знак, который позволяет автоматически наложить изображение водяного знака на все ваши товары  
       
          2. Обмен с 1С Предприятие     3. Удаление неиспользуемых картинок, без которого ваш каталог с изображениями может порвать хостинг   ОБРАБОТКА ЗАКАЗОВ:   1. Товарный чек     2. Менеджер заказов, без которого просматривать заказы было бы не так удобно  
        БЕЗОПАСНОСТЬ:   1. Резервные копии, без которых можно потерять данные по магазину навсегда  
       
       
    • By neoseo
      Скачать/Купить дополнение


      Статьи в шапке Opencart 2.x, модуль OpenCart, веб-студия NeoSeo
      Модификация дублирует статьи из подвала в шапку сайта.
        Обращаем внимание:
       
      1. Внимание: Открытый код!
      2. Все обновления к купленным модулям - бесплатно и навсегда.
      3. Техническая поддержка и оперативные ответы на вопросы - бесплатно и навсегда.
      4. NEW! Помощь в установке и устранении ошибок при установке модулей - бесплатно и навсегда, но в порядке общей очереди.
      5. NEW! Оперативный удаленный помощник по TeamViewer по специальному тарифу, 15 мин. - 369 руб. для тех, кому нужно уже, не дожидаясь бесплатной поддержки, которая предоставляется в порядке общей очереди.
       
      C 01.08.2019 года техническая поддержка осуществляется исключительно через обращение на почту  info@neoseo.com.ua  Если у Вас есть вопросы информационного характера, пожалуйста, напишите в ЛС или позвоните нам:
      Россия, все звонки бесплатно
      8 800 551 94 15
        Украина: +380 67 67 07 647 +380 63 71 70 763
      +380 50 34 58 565
       
       
      МЫ РАБОТАЕМ:
      Понедельник-пятница 
      с 9-00 до 19-00 по Киевскому времени 
       
       
      Суббота и Воскресенье
      - выходные дни!
       
      Лицензионные условия.
       
       
      Пожалуйста, внимательно читайте то, что написано на странице каждого модуля в инструкции
      по установке и обновлениям:
       
      1. Данный модуль устанавливается без лицензии
       
      2. Распакуйте архив с модулем и загрузите содержимое папки upload на сайт
       
      3. Установите модуль посредством меню Дополнения / Модули
       
      4. Установите права на просмотр модуля нужным пользователям
       
      5. Зайдите в настройки модуля, укажите нужные параметры и сохраните настройки.
       
      ВАЖНО! Если вы видите сообщение о том, что файл лицензии не найден, не переходите к этапу #7.
      В таком случае напишите нам на info@neoseo.com.ua, мы поможем выявить причину не активации лицензии. Если вы убедились в том, что модуль видит лицензию, вы можете переходить к следующему пункту.
       
      7. Обновите модификаторы (Дополнения / Модификаторы)
       
      Общий порядок обновления модулей:
       
      Советы:
       
       
       
      Как предоставляется информационная поддержка? Как решить свой вопрос максимально оперативно?

       
      Важно. Условия бесплатной и платной
      информационной и технической поддержки.
       
       
      Очень часто спрашивают:

      Преимущества модулей от NeoSeo:
       
      Посмотреть работу модуля вы сможете тут:
      https://demo.neoseo.com.ua/admin
      логин: admin
      пароль: admin
       
      Нажмите здесь http://prntscr.com/j1sqxc, чтобы быть в курсе всех обновлений.
       
      Уважаемые покупатели, скажите, что может быть лучше для развития модуля, чем публичные обсуждения и отзывы?
      Мы уверены это хороший стимул предоставлять услуги еще лучше ).

      Пожалуйста, все вопросы для обсуждения пишите здесь:
      https://opencartforum.com/topic/67991-stati-v-shapke-opencart-2x/
       
      Отзыв о работе модуля, пожалуйста, напишите здесь:
      https://opencartforum.com/files/file/3489-stati-v-shapke-opencart-2x/?tab=reviews
       
      Также, очень рекомендуем Вам, купить и другие наши продукты, которые пригодятся в абсолютно любом магазине.
       
      Спасибо, что вы с нами, всегда рады помочь развитию вашего онлайн-бизнеса!
      Веб-студия NeoSeo - полноценная Команда, решаем любые вопросы оперативно и качественно.
       
      ФУНКЦИОНАЛ НАЗВАНИЕ И ОПИСАНИЕ ССЫЛКИ ИНСТРУМЕНТЫ для
      SEO ПРОДВИЖЕНИЯ:
        1. SEO-Фильтр. Кроме того, что этот модуль предназначен для создания  фильтров, он позволяет создавать сотни или даже тысячи специальных посадочных страниц, чтобы получать из поисковой выдачи средне и низко-частотный трафик бесплатно      2. Генератор robots.txt, без которого поисковые роботы проиндексируют ненужные страницы и понизят вам релевантность  
       
          3. Отслеживание битых ссылок, чтобы не терять трафик впустую      4. Модуль создания редиректов, который позволяют починить битые ссылки     5. Источник заказа, чтобы отслеживать эффективность рекламных кампаний   ПОВЫШЕНИЕ ПРОДАЖ:   1. Выгрузка товаров на Prom.ua, Ava.ua, Hotline, Facebook.com, Яндекс.Маркет, Nadavi.net, Price.ua, Torg.mail.ru и др. прайс-агрегаторы, Модуль для Opencart от веб-студии NeoSeo, который позволяет выгрузить данные для прайс агрегаторов  
        ОБРАБОТКА ТОВАРОВ:   1. Водяной знак, который позволяет автоматически наложить изображение водяного знака на все ваши товары  
       
          2. Обмен с 1С Предприятие     3. Удаление неиспользуемых картинок, без которого ваш каталог с изображениями может порвать хостинг   ОБРАБОТКА ЗАКАЗОВ:   1. Товарный чек     2. Менеджер заказов, без которого просматривать заказы было бы не так удобно  
        БЕЗОПАСНОСТЬ:   1. Резервные копии, без которых можно потерять данные по магазину навсегда  
       
       
      Добавил neoseo Добавлено 22.11.2016 Категория Блоги, новости, статьи Системные требования PHP 5.3 - 7.1 Сайт разработчика https://neoseo.com.ua Старая цена Метод активации Автоматическая активация
      Через официальный сайт дополнения Ioncube Loader Требуется OpenCart 2.1 ocStore 2.1 OpenCart.Pro, ocShop Обращение к серверу разработчика Нет  
    • By Diamondberg
      Коллеги, столкнулся со следующей проблемой в footere решил убрать не используемые категории.
      Через Админку отключение модулей вообще ничего не дало.
      Открыл файл footer.tpl нашел код:
      <!--//2-я колонка футера//--> <!--/3-я колонка футера--> <div class="col-sm-3"> <h5>Дополнительно</h5> <ul class="list-unstyled"> <!-- <li><a href="<?php echo $manufacturer; ?>"><?php echo $text_manufacturer; ?></a></li> <li><a href="<?php echo $voucher; ?>"><?php echo $text_voucher; ?></a></li> <li><a href="<?php echo $affiliate; ?>"><?php echo $text_affiliate; ?></a></li> <li><a href="<?php echo $special; ?>"><?php echo $text_special; ?></a></li> --> </ul> </div> <!--//3-я колонка футера//--> <!--/4-я колонка футера--> закомментировал ВСЁ  и них"я не происходит, эти категории не убираются.
      Кто-нибудь сталкивался с такой проблемой, как убрать, поделитесь опытом?
      (хеш в модификаторах и в броузере скидывал )

    • By fduw
      Как подключить mysql через unix socket?
      В инете не нашел рабочей инфы
       
      Стандартная конфа

       Так не работает
      define('DB_HOSTNAME', 'unix:/tmp/mysql.sock'); define('DB_HOSTNAME', 'localhost/tmp/mysql.sock'); define('DB_HOSTNAME', 'tmp/mysql.sock');  
    • By perebor
      Ребят привет, нужна помощь, прошу не пинаться) я пока не силен в оптимизации БД, но очень интересно было бы разобраться самому.
      На сервере где-то раз в месяц происходят скачки по нагрузке и кол-ву запросов. Последний был 27 числа, админка при этом пару раз отдавала 503 ошибку. Хостинг шлет предупреждения.
      Есть лог запросов, но все, что пока понимаю, так это то, что основную нагрузку подбрасывают запросы из мегафильтра. Собственно вопрос в том, что бы понять что это за запросы и как это дело оптимизировать, или может вообще стоит хостинг сменить. Буду благодарен если направите в правильное русло)

      сайт: nice-office.ru
      хостинг: ihc.ru
      Slow log:
       
       

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.