Здравствуйте! Вот уже лет как 10 я просто развлекаюсь с сайтами и различными языками. Долго посматривал в сторону освоения баз, но никак не решался. Вот дошло до того, что я больше не могу использовать готовые движки, а верстать статичные странички - я уже пробовал, не понравилось...
Суть вопроса: Задался вопросом в группах о базах, мне посоветовали почитать о NoSQL базах, идея мне понравилась, но пока я читал - потерялся в вариантах. Понравился MariaDB.
Хотелось бы в базах держать некоторые данные: МАТЬ:
- - - Сокет
- - - m.2 = 1
- - - ddr
ЦП:
- - - Сокет
- - - Частота
- - - HT = 1
1) На странице хочу отображать пару инпутов с зависимостями:
Если выбран сокет матери то:
- - - вывести в комбобокс процессора список с соответствующим сокетом
2) Создать страницу с простым добавлением контента в базы:
- - - Добавить ЦП > Сокет, частота, ht, ядра,и т.д "Сохранить" > добавить в БД
- - - Аналогично с удалением данных.
Какая база данных больше всего подойдет? Хотелось бы использовать в сочитании с PHP, но что то простое, т.к. данных будет не много в этом проекте - то и сложные базы не нужны. Посоветуйте какие нибудь решения. Заранее благодарю!
Проблема в том, что ты ждешь когда тебе покажут легкий путь. Nosql не выход, у него нет ни 1 преимущества перед структурированными бд. Пойми, пройдет еще 10 лет а тема бд для тебя останется такой же сложной. Просто бери книгу по мускл, и УПРЯМО продолжай читать, так же упрямо гугли не понятные темы. Примерно 3-4 месяца, и тема бд станет интуитивно понятной.
Что касается установки, используй опен сервер (ospanel), там все за тебя установленно.
Губернатор, Я был готов к такому ответу, и пожалуй так и поступлю. Насчет опенсервер, нужен он на linux? у меня lamp стоит сейчас, пока справляется со всеми задачами.
Issue, на счет линукса не знаю, я изучал на винде с денвером, там был только 1 (localhost) домен. опен сервер решает все сис. админские задачи, позволяет имитировать множество доменов и в комплекте имеет кучку полезных программ. Например heidiSQ - удобный ГУИ для mysql (но случаются баги).
Я изучал по книге Алана Бьюли, без гуи, в консоле. Даже пол книги Бьюли должно хватить, для основы, остальные темы можно прогуглить, еще есть книга "Кузнецов, Симдянов, - MySQL 5" она по подробней, всю не читал только интересующие темы.
Все реляционные судб придерживаются стандарта SQL и основа не меняется. Изучив MySQL использовать T-SQL, SQLite или Postgree труда не составит.
Для объёма ваших данных, самое простое будет я считаю начать вообще с базы sqlite. Она по-умолчанию встроена в пхп и для общего понимания sql вполне сойдёт. Простая.
Вот уже лет как 10 я просто развлекаюсь с сайтами и различными языками. Долго посматривал в сторону освоения баз, но никак не решался.
Ээээ, 10 лет разработки без баз? Это вин, ясчитаю...
Понравился MariaDB.
Это форк Mysql если что...
Какая база данных больше всего подойдет?
Любая. Основной выбор новичков - MySQL(MariaDB), считается стандартом де факто, есть почти на всех хостингах, много информации по теме, широкое комюнити.
Мы стремимся к тому, чтобы сделать MariaDB своего рода мостом между NoSQL и SQL. Вот почему мы добавили сначала поддержку Cassandra и в настоящее время работаем над добавлением поддержки LevelDB. Источник
Issue, Вообще бд (и не только) выбирается:
1) Под задачу
2) По знаниям исполнителя (так как обычно под задачу подходят 2-3 решения)
Так как знаний у вас 0, очевидно что выбор желательно сместить в сторону наиболее распространенного решения (и это относится не только к выбору бд). Берите мускуль, разницы между ним и машей вы, как не специалист, не почувствуете вообще. Нюансы в которых они отличаются никак не повлияют на разработку, синтаксис у них совместим.
ThunderCat, единственное, что мне в этом решении не нравится - это установка баз. То есть их нужно создать на хостинге и присоединить к cms. Есть другие достойные решения, базы в папке какие нибудь, или подключение db из папки?
При выборе SQL мне придется через php подавать запросы на создание строк в нужных таблицах на SQL. Его синтаксис меня пугает.
kafkiansky, Это ваше право. Так получилось что за жизнь я тыкался по разным языкам, всего по чуть чуть и в итоге нет целостных знаний, с чем теперь приходится работать. Доучивая php и базы, попутно python, и его фреймворки.
единственное, что мне в этом решении не нравится - это установка баз.
Установка баз это по вашему что? MySQL обычно уже установлен. А если вы про процесс залития данных - все делается в 2 клика.
Есть другие достойные решения, базы в папке какие нибудь, или подключение db из папки?
Хм, относительно хранения в бд, хранение в папках/фалах - это аццкий п**дец... Кроме того что это крайне неудобно в плане поиска данных, это вообще каменный век.
ThunderCat, Неточно выразился, сказав "установка", имел ввиду простое подключение и использование в PHP. Я видел много CMS и смотрел исходники. Бывают такие движки, что не понять о чем речь, а встречаются маленькие и простые, читабельные и понятные.
Не хотелось бы, что бы подключение баз занимало много места сложным и непонятным кодом. Это я имел ввиду.
Большинство хостингов предлагают связку PHP+MySQL(MariaDB). Это сочетание самого популярного языка для бэкэнда и самой простой в освоении базы. Как вы промахнулись мимо этого за 10 лет, боюсь даже представить...
Плюс такого набора в достаточной гибкости, - можете построить всё, на что фантазии и умения хватит, и большого, если не сказать, гигантского коммюнити. Ответ практически на любой вопрос гуглится за 5 минут. Главное, правильно вопрос сформулировать...
И на виртуальном хостинге обычно уже всё установлено. И база создаётся из интерфейса панели управления.
Все должно исходить из решаемой задачи. Программа будет располагаться на виртуальном хостинге или VPS (домашнем компьютере)?
В первом случае, крайне не рекомендую использовать нестандартные базы данных для хостинга (а в особенности sqlite), т.к. это повысит нагрузку на аккаунт.
Во втором случае, вы можете смело выбирать то, что вам интересно, т.к. ограничений накладываться не будет за превышение нагрузки.
А вообще, перед выбором технологии, вам нужно оценить все риски и трудозатраты на освоение этих технологий.
MySQL, Mariadb, Mongodb - все это безусловно прекрасные инструменты, критиковать и сравнивать из бессмысленно, у каждого есть плюсы и минусы, точно так же как и у PostgreSQL. Но, используя, PostgreSQL вы получаете и нормальное хранение данных в json, и создание нормальных индексов. Так же вам отстается реляционная база данных, с поддержкой полнотекстового поиска уровня ведущих решений на рынке. Словом, мощнее и продвинутее - тут уже нужно поискать.