Fansy технологія як вибрати СУБД

Fansy-додатки можуть працювати з однією з наступних СУБД (на вибір): FIREBIRD, MSSQL, ORACLE, серед яких, перша найменш відома і тому вимагає додаткового опису.

СУБД FIREBIRD

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

СУБД FIREBIRD нагадує ORACLE в мініатюрі. Однією з основних особливостей FIREBIRD (на відміну від MSSQL), мабуть, можна вважати версійна архітектуру, яка забезпечує унікальні можливості при багато користувачів роботі - пушущіе користувачі ніколи не блокують Новомосковскющіх. Також в FIREBIRD реалізований механізм оптимістичній блокування на рівні запису, тобто сервер блокує тільки ті записи, які реально були змінені користувачем, а не блокує всю сторінку даних цілком (на відміну від MSSQL). Ця особливість ще більше знижує ймовірність конфліктів при багато користувачів роботі. У FIREBIRD вдалося домогтися таких показників високої доступності даних, які перевищують показники інших баз даних при виконанні паралельних тривалих транзакцій в інформаційних і фінансових системах.

Потужність, простота використання, безкоштовність, підтримка платформ Windows, Linux і Solaris, виводять FIREBIRD в фаворити серед розробників і роблять її найбільш прийнятним рішенням серед корпорацій. На відміну від більшості сучасних баз даних, FIREBIRD вимагає лише незначного адміністрування, проста в інсталяції і розроблена з метою зменшення витрат на супровід, що спрямоване на прискорення процесу розробки додатків і гарантує швидке повернення інвестицій для компаній, які потребують складних розподілених додатках.

ЯК ВИБРАТИ СУБД

При виборі СУБД слід в першу чергу визначитися з двома основними критеріями, що впливають на ефективність їх використання в якості ефективного сховища даних: кількість одночасно працюючих користувачів і обсяг щодня вноситься в базу даних інформації. У термінах СУБД ці критерії відносяться відповідно до механізму реалізації так званих «блокувань» і механізму «секціонування» даних для рівня ізоляції транзакцій «read-commited», використовуваному Fansy-додатками за замовчуванням. Механізм «блокувань» забезпечує гарантію цілісності зчитування і зміни даних кожним користувачем при многопользовательском режимі доступу. Важливим фактором при виборі платформи слід вважати той аспект, блокує чи СУБД дані таблиць при вставці записів одними користувачами, для тих користувачів, які використовують ці таблиці для читання. У типовій ситуації одні користувачі проводять операції поточного дня, в той час як інші хочуть отримати звіти за минулий період, при цьому використовуються дані одних і тих же таблиць. При виборі СУБД для багатокористувацького використання перевагу слід віддавати СУБД, які не блокують сусідні записи при вставці і зміні даних.

Наявність блокувань читання сусідніх рядків при вставці і зміні даних?

Немає блокувань, додаткові ресурси не потрібні

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

Немає блокувань, додаткові ресурси не потрібні

Механізм «секціонування» даних (partitioning) дозволяє розділяти великі (критичні за обсягом) бази даних, таблиці та індекси на безліч дрібних керованих частин, кожна з який може бути доступна більш ефективним способом, ніж весь масив даних в цілому. Наприклад, рознесення даних та індексів на два паралельних диска дозволять прискорити доступ до даних, тому що читання індексів чи не позначиться на продуктивності читання даних. Секціонування великий таблиці, що індексується за датою, на кілька таблиць по інтервалу дат, дозволить отримати більш швидкий доступ до даних поточного звітного періоду, при цьому доступ до даних попередніх звітних періодів сповільниться тільки в разі отримання консолідованих даних за періодами, що відносяться до різних секціях зберігання. При виборі СУБД для зберігання великих масивів даних перевагу слід віддавати СУБД, які мають гнучкий механізм секціонування.

Вимоги до апаратного забезпечення

Немає особливих вимог, база займає один файл на диску

Бажано наявність декількох паралельних дисків для поділу користувальницьких областей даних, системних областей даних і журналу транзакцій

Потрібна наявність декількох паралельних дисків (не менше 3-х) для функціонування СУБД і бажано наявність додаткових паралельних дисків для секціонування даних користувача

Вимоги до кваліфікації персоналу?

Немає особливих вимог. Досить знань про процедуру дампа баз даних, для забезпечення їх охорони.

Потрібні знання про процедуру дампа баз даних, для забезпечення їх охорони. Потрібні знання про командах DDL на секціонування даних і перебудові індексів.

Потрібні кваліфікація в налаштуванні процесу забезпечення відкату транзакцій і в мапування табличних просторів на різні дискові простору. Потрібні знання про командах DDL на секціонування даних.

Зі сказаного вище легко визначити, що FIREBIRD слід вибирати тільки при роботі з невеликими обсягами даних, MSSQL - при роботі невеликої кількості користувачів, ORACLE тільки при наявності сертифікованого персоналу і якісного обладнання.

Fansy-додатки можуть працювати з будь-якої з обраних вами платформ, при цьому гарантується можливість масштабування від простіший до більш складної SQL-платформі і назад.