Как лучше реализовать базу данных на файлах?

Discussion in 'PHP' started by Ohotnikof, 3 Apr 2013.

  1. Ohotnikof

    Ohotnikof New Member

    Joined:
    25 Mar 2013
    Messages:
    9
    Likes Received:
    0
    Reputations:
    0
    Здравствуйте. Я новичок в программировании, так что заранее прошу извинения, за может быть, глупый вопрос...
    И так, я делаю нечто CMS на файлах. Нужна база данных для быстрого поиска нужной мне информации.
    То есть структура такая: есть файлики, в которых хранится информация по каждой странице. К каждой странице есть ключевые слова, которые я буду хранить в отдельном файле (один файл - хранит все ключивики ко всем страницам). Если я буду искать нужную мне страницу по ключевым словам, то буду пользоваться этим файликом.
    Как лучше организовать базу:
    1) Запихнуть её в txt файлик и регулярными выражениями вытаскивать что мне надо.
    (id страницы = ключевые слова)
    2) Запихнуть всё в php документ, и подгружать в виде массива. (почему-то склоняюсь к этому способу больше)
    3) Или есть вообще решение поумнее?!

    Подскажите как лучше сделать. Дайте совет!
     
  2. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    используй SQLite :)

    когда перед тобой встанет задача редактирования, или вывода с сортировкой, поиска... тогда проклянешь все
     
    _________________________
    1 person likes this.
  3. VY_CMa

    VY_CMa Green member

    Joined:
    6 Jan 2012
    Messages:
    917
    Likes Received:
    492
    Reputations:
    724
    Sphinxsearch - быстро, просто, удобно.
    http://habrahabr.ru/post/131089/
     
    _________________________
  4. daniel777

    daniel777 Elder - Старейшина

    Joined:
    8 Jul 2010
    Messages:
    517
    Likes Received:
    90
    Reputations:
    37
    Посмотрите вот эту статью:
    http://habrahabr.ru/post/112402/

    А вообще лучше всего Mysql:)
     
  5. Trinux

    Trinux Members of Antichat

    Joined:
    26 Nov 2004
    Messages:
    1,403
    Likes Received:
    296
    Reputations:
    364
    Можно долго размышлять по этому поводу, а можно посмотреть на то, что выбирают гиганты индустрии. Например мобильной. Android SDK и iOS SDK нативно поддерживают sqlite. Почему? Потому, что это вся база размещается в одном бинарном файле. Ты получаешь всю мощь SQL в условиях всего одного файла. В php достаточно удобные API. Конечно, sqlite сильно уступает и по синтаксису и по возмоностям mysql, но это явно намного удобнее, быстрее и эффективнее, чем велосипед. Когда надо сделать проект на файлах без mysql, я юзаю sqlite и остаюсь счастливым.
     
    _________________________
  6. Грабитель

    Joined:
    5 Mar 2013
    Messages:
    196
    Likes Received:
    12
    Reputations:
    -7
    А сериализованные массивы не рассматриваются вообще?
     
  7. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    2 Грабитель, во первых что бы их преобразовать обратно нужно затратить большое количество памяти и времени. во вторых - что бы осуществить поиск тебе надо будет каждый раз в память выгружать всю базу в виде массива того же а потом в нем еще и поиск производить рекурсивно. В общем жесть.
     
    _________________________