21 Травня 2020

Програмування сайтів. Бази даних

Програмування сайтів виконується з метою створення деякого корисного функціоналу. Робота з базами даних – це одна з найважливіших складових програмування сайтів динамічного типу. Будь то формування сторінок «на льоту» або ж реагування на дії відвідувачів сайтів – взаємодія з базами даних потрібно завжди.

Бази даних для сайтів (БД) використовуються з метою зберігання різної інформації і, спрощено, представляють собою деякий набір взаємозв’язаних таблиць. Розміри таблиць в БД різні, їх кількість довільно. Саме в базах даних зберігається на сервері необхідна для роботи сайту інформація, наприклад, інформація про клієнтів, каталог товарів, статистичні дані і т. Д.

Програмування сайтів динамічного типу виконується за допомогою різних скриптів, поділюваних зазвичай на серверні і клієнтські. Програмування сайтів за допомогою серверних скриптів дозволяє обробляти дані, введені відвідувачами сайтів в веб-форми, генерувати динамічні сторінки, відсилати і приймати cookies. Для отримання інформації, необхідної при виконанні подібних дій, серверні скрипти звертаються до баз даних. Звернення скрипта до БД називається запитом.

Для побудови запитів до баз даних широко застосовується SQL (Structured Query Language) – «мова структурованих запитів». За допомогою SQL може здійснюватися додавання, видалення, редагування записів в таблицях баз даних, вибірка даних відповідно до різними умовами, сортування даних і багато іншого.

У програмуванні сайтів управління БД здійснюється за допомогою клієнт-серверних систем управління базами даних (СКБД), таких як Oracle, MS SQL Server, PostgreSQL, MySQL та ін. Клієнт-серверні СУБД обробляють запити централізовано, до їх переваг відносять забезпечення високої надійності баз даних , високої доступності та високої безпеки.

СУБД MySQL – вільна система управління базами даних, одна з найбільш часто вживаних в програмуванні сайтів. СУБД MySQL підтримує велику кількість існуючих типів таблиць (InnoDB, MyISAM і т. Д.), А завдяки відкритій архітектурі і GPL-ліцензуванню, в СУБД MySQL постійно з’являються нові типи таблиць. Управління базами даних за допомогою MySQL дуже зручно, що зробило цю систему затребуваною і популярною.

Система керування базами даних Microsoft SQL Server поставляється компанією Microsoft на комерційній основі (за винятком безкоштовної редакції Express Edition). Дана СУБД використовує мову запитів Transact-SQL, підтримується операційними системами сімейства Windows Desktop / Server. В СУБД Microsoft SQL Server присутній графічне ПО для конструювання та оптимізації запитів (SQL Management Studio та Studio Express).

Об’єктно-реляційна система управління базами даних компанії Oracle – Oracle Database – працює на Windows, Unix, Linux, MacOS. Oracle Database, на відміну від MySQL, наприклад, має більш широку сферу застосування. СУБД Oracle має високу продуктивність, широким функціоналом, унікальними технологіями (RAC, RAT і т. Д.). У програмуванні сайтів для невеликих і середніх компаній застосовується досить рідко через свою високу вартість. До того ж, досить складно знайти хостинг з підтримкою даної СУБД.

Вільний система управління базами даних PostgreSQL існує в редакціях для Linux, Solaris / OpenSolaris, Win32, Win x86-64, Mac OS X, FreeBSD, QNX 4.25, QNX 6. Базується на мові SQL. Серед переваг PostgreSQL виділяють підтримку БД практично необмеженого розміру, наявність надійних механізмів реплікації, легку розширюваність, підтримку великого набору вбудованих типів даних і багато іншого.

Програмування сайтів, що взаємодіють по-різному з базами даних, включає кілька основних етапів роботи з БД: побудова запитів до БД за допомогою мови SQL, програмування сценаріїв для обробки цих запитів і програмування модулів для відображення результатів обробки запитів.

Надмірне число звернень від сайтів до баз даних робить завантаження сайтів повільнішою, збільшує навантаження на сервер. В результаті можливі збої в роботі сайтів, аж до повного припинення доступу. Зменшення кількості запитів до БД дозволяє зменшити навантаження на сервер, а також зменшити час завантаження динамічних сторінок з сервера. Тому оптимізація взаємодії сайтів з базами даних – це одне із завдань професійного програмування сайтів.

photo
photo