|
-8 / 12 / 0
Регистрация: 15.02.2023
Сообщений: 421
|
|
Реализация базы данных на текстовых файлах без сторонней СУБД18.04.2023, 23:57. Показов 5985. Ответов 66
Метки нет (Все метки)
Доброй ночи!
Какие есть подходы к ведению базы данных в текстовых файлах, когда не нужна СУБД, и каких распространённых ошибок следует избегать при её проектировании?
0
|
|
| 18.04.2023, 23:57 | |
|
Ответы с готовыми решениями:
66
Реализация базы данных средствами «Словарь морфем английского языка» СУБД Microsoft Access Выбор CMS без базы данных (на файлах) Реализация базы данных на С# без ADO.net и SQL серверов |
|
-8 / 12 / 0
Регистрация: 15.02.2023
Сообщений: 421
|
|
| 20.04.2023, 16:15 [ТС] | |
|
В том и едло, что мой вопросне привязан к одному конкретному проекту, а рассматривает общий подход к решению задач.
0
|
|
| 20.04.2023, 16:24 | |
|
Так вы попробуйте придумать ситуацию.
Что за ситуация вообще такая,хоть примерно опишите. Почему нельзя использовать СУБД? Что требуется от БД (хранение, поиск, обеспечение целостности и т.д и т.п.)? Если со всем для "общего случая". То разработчик должен на очень хорошем уровне знать как работают СУБД. Глубоко погрузиться в этот вопрос и т.п. На практике возможность возникновения такой ситуации пренебрежительно мала. Вопросов придется решать до фига и больше. В т.ч. и структура "текстового" файла. Формат вам все равно придется придумывать, так что это не будет "текстовый файл".
0
|
|
|
-8 / 12 / 0
Регистрация: 15.02.2023
Сообщений: 421
|
|
| 20.04.2023, 22:20 [ТС] | |
|
Любой файл - текстовый. Разница - в представлении данных. Если бы я мог описать ситуацию, я бы давно сам придумал решение, а так меня интересуют грабли, на которые приходилось наступать тем, кто это делал до меня. Для простоты будем считать, что я делаю клон киберфорума.
0
|
|
| 21.04.2023, 01:06 | |||
|
Подводные камни.... ну тут просто изучите одну из СУБД (тот же MySQL) глубоко. Т.е. как организуется совместный доступ, транзакции, ключи, индексирование, блокировки различных уровней, кеширование. Т.е. тут я бы говорил не о "подводных" камнях, а о серьезных знаниях которые надо получить, чтобы браться за эту задачу. При этом тут надо понимать, что PHP не подходящий вариант для этого. В итоге, ну так сделать можно для развлечения и прокачки навыков... но серьезно для проекта - нет. Добавлено через 1 минуту
0
|
|||
|
|
||
| 21.04.2023, 11:09 | ||
|
Не писать данные сразу в основной рабочий файл, а создавать дубликат - и затем копировать его в основной файл. Даже если на каком-то этапе выключится свет, данные не потеряются. Текстовая база оправдывает себя тогда, когда данные имеют простую структуру, в этом случае чтение/запись + парсинг/сериализация одной записи-файла происходит в разы быстрее чем в случае использования бд. Из практики. Игровой профиль. Размер файла в среднем 50 кб. Возникла мысль загнать игровые профили в базу. Зацепил SQLite, расписал таблички, померял время записи. 0.1 сек против 0.0001 на плайн-тексте. Если 50 игроков одновременно сделают запись профиля, лаг бы составил 5 секунд.
1
|
||
|
Модератор
|
|
| 21.04.2023, 13:16 | |
|
1
|
|
|
Модератор
|
|
| 21.04.2023, 13:33 | |
|
0
|
|
| 21.04.2023, 13:39 | ||
![]() По сути, тут придется работать в памяти, например в мемкеше (ТС отмечался в темах по PHP) пишем туда в очередь, очередь обрабатывается постепенно. Тут придется мудрить примерно как в том же мускуле - процесс засыпает пока запись залочена.
0
|
||
|
Модератор
|
||
| 21.04.2023, 13:50 | ||
|
- отчетов по загрузке - когда был последний раз ... хотя иногда сообщение надо корректировать(как и на любом форуме) или удалить или дать ссылку
0
|
||
|
7173 / 2350 / 354
Регистрация: 10.12.2013
Сообщений: 8,147
|
|
| 21.04.2023, 13:52 | |
|
0
|
|
|
Модератор
|
||
| 21.04.2023, 14:03 | ||
- диалог - как например в скайпе - или ввести/скорректировать запись в справочник , например переименовать Калинин текстовая база only read - только на выборку с элементами поиска вполне решаема, но вряд ли в текстовом виде есть смысл делать базу Продажи с приходными/расходными накладными и дюжиной справочников, еще больше отчетов
1
|
||
|
|
|||
| 21.04.2023, 14:47 | |||
|
Cчитывается и парсится он за 0.4-0.5 сек чтоль... Щас не помню точно. Самая долгая операция сейчас - это верификация данных в профилях. Для 17500 пользователей она длится 2 сек. Добавлено через 1 минуту
0
|
|||
|
9148 / 6183 / 594
Регистрация: 27.03.2013
Сообщений: 20,060
|
|
| 21.04.2023, 17:15 | |
|
Жесть.
Посмотрел для интереса профить ТСа. Ни одного положительного отзыва. Кликните здесь для просмотра всего текста
Как таким говном можно жить?
Ну не опарыш же.
0
|
|
|
-8 / 12 / 0
Регистрация: 15.02.2023
Сообщений: 421
|
|
| 21.04.2023, 17:28 [ТС] | |
|
А если я закэширую декартово произведение в отдельных файлах, то задача решаемая.
Добавлено через 3 минуты VinniPuh, это - бескровная жертва ради кресла директора Сбербанка. Добавлено через 5 минут alhaos, твой sqlite перестанут поддерживать, и ты будешь переписывать весь слой работы с данными. Добавлено через 1 минуту voral, в современной науке уже никто не читает миллиард статей в день, а придумывают и доказывают всё с нуля - так быстрее.
0
|
|
|
9148 / 6183 / 594
Регистрация: 27.03.2013
Сообщений: 20,060
|
|
| 21.04.2023, 17:35 | |
|
TrueTyper, не стал -1000 ставить, ибо тоже будучи студентом ночью кричал в форточку , что бы халява пришла.
Так что расслабь очко. Если хамить и матом прилюдно не будешь ругаться, я минусовать не стану как некоторые.
0
|
|
|
-8 / 12 / 0
Регистрация: 15.02.2023
Сообщений: 421
|
|
| 21.04.2023, 17:46 [ТС] | |
|
VinniPuh, так поставь. Мне всё равно. Эти оценки характеризуют тех, кто их ставил.
1
|
|
| 21.04.2023, 17:46 | |
|
Сравнение данных в текстовых файлах База данных на текстовых файлах ОРГАНИЗАЦИЯ ФАЙЛОВОЙ СИСТЕМЫ. ОБРАБОТКА ТЕКСТОВЫХ ФАЙЛОВ. ТИПИЗИРОВАННЫЕ ФАЙЛЫ. ФАЙЛЫ БЕЗ ТИПА. СОЗДАНИЕ БАЗЫ ДАННЫХ. Какая СУБД хранит данные в файлах с расширением .dat и индексы в файлах .k01, k02 и т.д.? Реализация отправки данных из EditText приложения Android в поле таблицы БД под СУБД Oracle 11g и в поле БД под СУБД MSSQL Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|