LINUX.ORG.RU

Что удобно использовать в качестве эрзац-БД для простого PHP сайта без какой-либо нагрузки?

 , ,


0

1

Нужно по-быстрому слепить простенький сайтец и очень не хочется для хранения данных возиться с настоящей БД. Да и админить это всё потом придётся.
Гугл на «php file based db» выдаёт много всякого. Может есть признанный лидер в этом направлении?
Мне от БД ничего особо не нужно. Мне даже SQL не нужен. Данных тоже будет мало. Скорее всего я просто засуну всё в какой-то JSON и в файл (или с чем там РНР нынче проще всего работает), но всё же...

Deleted
Ответ на: комментарий от BaBL

Вопрос в том, что я прикладной программист. Не вебист.
Я спрашиваю что принято в таких случаях использовать. Мне сейчас нет времени самостоятельно топтаться по граблям и меня интересует к чему PHP-сообщество пришло в итоге.

Deleted
()
Ответ на: комментарий от Deleted

Посмотри в начале что такое sqlite.

А вообще, если такие вопросы, то вперёд в Гугл.

anonymous
()

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

А если вообще никакая запись в БД не планируется и никакой лютой динамики, сделай статический сайт.

anonymous
()
Ответ на: комментарий от Deleted

Ну а что мешает тупо сериализовать в файл и обратно?

запросы будут на уровне «SELECT * FROM ...»

Это ты сейчас так думаешь...

no-such-file ★★★★★
()
Ответ на: комментарий от anonymous

Мне нужны точные данные, а не мутные предсказания обкурившихся пифий.

Deleted
()

Самое легковесное это SQLite. А так обычно MySQL юзают, который хостер предоставляет.

Legioner ★★★★★
()
Ответ на: комментарий от Deleted

PHP
принято

MySQL. Твой случай сам по себе экстравагантный, не жди на него готового решения. Просто бери и хреначь, в чём проблема-то? Только о целостности позаботься: в сам файл не записывай, а пиши в копию и уже после закрытия файла заменяй ею исходный. Иначе у тебя при сбое высокий риск испортить файл. Это не только вебни касается, а вообще любых приложений, которые пишут обновляемые данные в файлы.

А если тебе писать не нужно, то и вообще отдельный формат данных не нужен; в таких случаях принято писать конфиг на PHP и просто импортировать его.

Moondancer
()

Плюсану sqlite. Это и есть тупо один файл, над которым накручены абстракции БД. Ничего более эффективного и удобного ты не накостыляешь. Фигачишь в одну таблицу свои данные, добавляешь индексы, и вот уже готовое хранилище со стандартными средствами доступа. Что еще надо? А потом можно и отмасштабировать до полноценной РСУБД если понадобится.

bread
()

sqlite. Возится и админить не нужно.

goingUp ★★★★★
()
Ответ на: комментарий от sniper21

Ну на винте-то всё равно нужно хранить — иначе откуда оно возмётся в оперативке?
Похоже пока SQLite выглядт логичнее всего.

Deleted
()
Ответ на: комментарий от Deleted

больше вреда, чем пользы- от этого мнения.

Альтернативой для вас была бы MongoDB или подобная база (MongoDB самая популярная из подобных, по ней есть неплохая документация, книги и курсы в интернете). Но её тоже надо изучать. А изучение СУБД обычно лучше начинать с традиционных реляционных СУБД, как наиболее универсальных. MongoDB отностится к документо-ориентированным СУБД. В некоторых случаях такие удобнее , чем реляционные. Но менее универсальны, и для обоснованного выбора такой надо иметь представление и об обычных. Вам впрочем сгодится.

Но если вы просто не хотите ничего изучать, то и советы вам не нужны.

Partisan ★★★★★
()
Последнее исправление: Partisan (всего исправлений: 1)

Я за clickhouse

anonymous
()

во времена моей молодости было так. создаешь файл с названием data.php:

<?php die; ?>
First Post|<timestamp>|Some Contents...
Second Post|<timestamp>|Some Contents...
$lines = file('data.php');
$data = [];
for ($i=1;$i<count($lines);++$i) {
  $data[] = explode('|', $lines[$i]);
}

При сохрении данных шапку с die добавляли, данные hl2br обрабатывали и «|» заменяли на html-сущность. Тогда на бесплатных хостингах mysql не было.

tz4678 ★★
()

sqlite малоэффективен для транзакций при совместном доступе - это может выглядеть как доминирующий vacuum.

Посмотрите решения serverless или вообще в браузере - может подойдет.

Еще nosql. Например такие, как couchdb - взаимодействие через http/curl/json. Из недостатков, эта диванная БД постепенно превращается в legacy и кандидат на выпиливание отовсюду. Более современный couchbase монструозен, полузакрыт и не особо приживается в «мейнстримных репах»

На настоящий момент более достойных альтернатив пока не наблюдалось, хотя может что-то достойное уже и появилось...

Хочется надеяться, что все-же есть с http-интерфейсом, в крайнем случае не совсем сложно сделать свой велосипед.

anonymous
()

Мне даже SQL не нужен.

Так в файле/файлах храни, только про exclusive lock'и на изменение (если такое тебе будет нужно) и backup'ы не забудь. Sqlite или там MySQL круто, когда тебе именно запросы нужны, а чтоб просто упорядоченные данные - JSON, XML или даже CSV файл сойдёт. Для этого те форматы и задумывались.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.