#database

Ключові відмінності бази даних, сховища даних, вітрини даних та озера даних

Для того щоб прийняти правильне рішення при виборі системи організації даних доцільно провести порівняльний аналіз можливих варіантів.

Ключові відмінності між базами даних та сховищем даних:

Сховище даних

База даних

Ключові відмінності між вітриною даних та сховищем даних:

Вітрина даних

Сховище даних

Ключові відмінності між озером даних та вітриною даних

Озеро даних

Вітрина даних

Ключові відмінності між озером даних та сховищем даних

Сховище даних

Озеро даних

Ключові відмінності між базами даних та вітриною даних

База даних

Вітрина даних

Ключові відмінності між базами даних та озером даних

База даних

Озеро даних

База даних, сховище даних, вітрина даних, озеро даних: основні характеристики та відмінності

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

База даних

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

До основних характеристик баз даних можна віднести:

Сховище даних

Сховище даних є основною аналітичною системою компанії. Воно часто працює разом з операційним сховищем даних (ODS) з метою зберігання даних, отриманих з різних баз даних компанії. Наприклад, компанія має бази даних точок продажу, онлайн-активності, інформації про клієнтів та співробітників. Сховище даних візьме дані із цих джерел і зробить їх доступними в одному місці. Метод вилучення даних з бази даних, перетворення їх на ODS і завантаження у сховище даних э прикладом процесів ETL і ELT.

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

До основних характеристик сховища даних можна віднести:

Вітрина даних

Як і сховище даних, вітрина даних підтримує та зберігає оброблені та готові до аналізу дані. Однак, область видимості обмежена. Вітрина даних надає предметні дані, які необхідні підтримки кожної бізнес-одиниці. Наприклад, вітрина даних для підтримки звітів та аналізу відділу маркетингу. Визначаючи межі даних у масштабі певного відділу, доступні лише релевантні для цього відділу дані.

Використання вітрини даних підвищує рівень безпеки. Обмеження видимості запобігає безвідповідальному використанню даних, які не мають відношення до певного відділу. Слід також зазначити, що менший обсяг даних у вітрині підвищує швидкість обробки, отже збільшує швидкість виконання запитів. Дані агрегуються та готуються для певного відділу, що мінімізує некоректне використання даних та ймовірність суперечливих звітів.

До основних характеристик вітрини даних можна віднести:

Озеро даних

Озеро даних призначене для зберігання структурованих та неструктурованих даних компанії. Воно збирає всі цінні дані для подальшого використання: зображення, pdf-файли, відео тощо. Як і сховище даних, озеро витягує дані з кількох розрізнених джерел та обробляє їх. Воно також може бути використано з метою аналізу даних та створення звітів. Для обробки та аналізу використовуються різні програми та технології (наприклад, Java). Озера даних часто використовують у поєднанні з машинним навчанням. Результати тестів машинного навчання зберігаються в озері. Рівень складності використання потребує серйозних навичок від користувачів, а також досвіду роботи з мовами програмування та методами обробки даних. Очищення даних відбувається без використання ODS.

До основних характеристик озера даних можна віднести:

Основні методи безпеки баз даних

Кількість спроб зламати систему безпеки різних компаній та організацій викликає тривогу. На цей момент найбільше атакують організації зі сфери охорони здоров’я, фінансів, роздрібної торгівлі, урядових організацій, виробництва та енергетики.

Разом із появою нових технологій стрімко розвивається кіберзлочинність. Їхні методи стають дедалі витонченішими. Внаслідок цього їхніми жертвами можуть стати навіть великі підприємства з надійною системою кіберзахисту. Малий бізнес дещо «розслаблений» у цьому питанні, помилково вважаючи, що вони «нецікаві» для кіберзлочинців. Однак, будь-яка інформація та дані мають цінність і можуть стати «бажаною здобиччю» для кіберзлочинців, незалежно від того, якій компанії вони належать.

Згідно з прогнозами, до 2025 року кіберзлочинність коштуватиме світовій економіці 10,5 трильйона доларів. Це ще раз показує наскільки важливо звернути увагу власників бізнесу на забезпечення кібербезпеки.

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

  1. Безпека фізичної бази даних

Центри обробки даних та власні сервери можуть бути вразливими для фізичних атак, що походять від стороннього або внутрішнього джерела. Кіберзлочинець, отримавши доступ до фізичного серверу БД, може вкрасти дані, пошкодити їх або впровадити шкідливе програмне забезпечення для отримання віддаленого доступу. Вони можуть оминати протоколи цифрової безпеки, тому варто вжити додаткових заходів безпеки для виявлення такого типу атак.

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

  1. Окремі сервери баз даних

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

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

  1. Налаштування сервера HTTPS

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

  1. Не використовуйте мережеві порти за замовчуванням.

Протоколи використовуються при передачі даних між серверами. При передачі даних між серверами використовуються TCP та UPD протоколи оновлення, які автоматично використовують мережеві порти за замовчуванням. Порт за замовчуванням часто використовується при нападі «грубою силою» (підбір ключа). Напад полягає в тому, щоб підібрати пароль з усіх можливих варіантів. Якщо не використовувати порти за замовчуванням, кіберзлочинець має пройти довгий і, можливо, невдалий шлях до вибору правильного ключа. Щоб переконатися, що новий порт не використовується іншими, необхідно при призначенні нового порту перевірити реєстр присвоєння Інтернет-номерів.

  1. Моніторинг баз даних в режимі реального часу

Регулярні сканування бази даних для спроби хакерства зміцнює безпеку, а також дозволяє швидко реагувати на потенційні атаки. Щоб зареєструвати всі дії, що відбуваються на сервері баз даних, можна використовувати програмне забезпечення TripWire.

Також слід проводити регулярний аудит та тестування. Це дозволено виявляти вразливість у безпеці бази даних та виправити їх.

  1. База даних та програми брандмауера

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

У цьому випадку широко використовуються 3 види брандмауерів:

  1. Packet filter firewall
  2. Stateful packet inspection (SPI)
  3. Proxy server firewall
  4. Протоколи шифрування даних

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

  1. Створення резервних копій

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

  1. Оновлення додатків

В результаті досліджень було виявлено, що 9 із 10 додатків містять застарілі програмні компоненти. Відповідно до аналізу плагінів WordPress 17 383 плагіни не оновлювалися протягом 2 років, 13 655 – протягом 3 років, 3 990 – протягом 7 років. У комплексі це створює серйозну загрозу безпеці. Для управління базами даних необхідно використовувати надійне програмне забезпечення, оновлювати його та встановлювати нові виправлення, а також це стосується віджетів, плагінів, сторонніх додатків тощо.

  1. Аутентифікація користувачів

Згідно з дослідженнями, скомпрометовані паролі є причиною 80% витоків даних. Це доводить, що паролі власними силами не є надійним заходом безпеки (насамперед через людський чинник під час створення пароля). Для вирішення цієї проблеми варто додати ще один рівень безпеки, налаштувавши процес багатофакторної автентифікації. Останні тенденції роблять цей метод не ідеальним, проте кіберзлочинцям буде складно оминути протокол безпеки. Також, для зниження ризику потенційного злому, доступ до бази даних варто надавати лише перевіреним IP-адресам. IP-адресу можна скопіювати, але це вимагатиме додаткових зусиль від кіберзлочинця.

Безпека баз даних

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

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

Захист безпеки БД включає:

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

Витік даних – це ніщо інше, як нездатність забезпечити конфіденційність даних у БД. Ступінь збитків для підприємства залежить від наступних факторів:

  1. Скомпрометована інтелектуальна власність

Інтелектуальна власність організації – це комерційна таємниця, різного роду винаходи, право власності. Все це має вирішальне значення для здатності володіти бізнесом та підтримувати конкурентну перевагу на ринку. Крадіжка інтелектуальної власності може призвести до важкого або ж неможливого відновлення.

  1. Збитки репутації

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

  1. Стійкість бізнесу

Деякі компанії не можуть продовжувати свою діяльність доти, доки проблема не буде повністю вирішена.

  1. Штрафні санкції за невідповідність

Фінансові штрафи можуть бути руйнівними для бізнесу. У деяких випадках суми штрафів перевищують кілька мільйонів доларів.

  1. Витрати на усунення порушень та повідомлення клієнтів

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

Неправильні установки, вразливість та неправильне використання програмного забезпечення можуть призвести до серйозних порушень. До найбільш поширених причин та загроз безпеки БД відносять:

База даних як сервіс

Активне зростання сектора баз даних було спровоковане появою Covid-19. Для існування в нових умовах багатьом компаніям довелося переглянути та покращити свої програми та цифрові послуги. Унаслідок цього було впроваджено більше екземплярів баз даних, а також інструментів, що забезпечують якісну роботу з даними. Оскільки жоден бізнес не планує скорочувати використання даних, з’являтимуться нові продукти для їхньої обробки та способи створення цінності.

Одна з головних тенденцій 2022 пов’язана з управлінням базами даних компанії. Нещодавно всі екземпляри баз даних доводилося запускати всередині локального центру зберігання та обробки даних. Наразі розробники та IT-команди мають більше варіантів. Разом з локальним розгортанням бази даних можуть запускатись постачальником послуг, впроваджуватися у хмарі, використовуватись як послуги від постачальника хмарних технологій та запускатися як безсерверні екземпляри.

База даних як сервіс (DBaaS)

Database-as-a-service (база даних як сервіс) підтримує більше програм та цифрових послуг, тому у 2022 році все більше компаній переходитимуть на цей варіант. DBaaS – це модель хмарних обчислень, яка без встановлення обладнання та програмного забезпечення надає доступ до бази даних. Налаштування та обслуговування системи є завданнями провайдера, користувач може відразу використати базу даних. DBaaS є повністю керованим сервісом, який включає програмне та апаратне забезпечення, резервне копіювання, адміністрування, мережеву взаємодію та безпеку. Впровадження цього інструменту забезпечує оперативний, безпечний та економічний робочий процес, що дозволяє оптимізувати усі бізнес-процеси.

Переваги Database-as-a-service:

Недоліки Database-as-a-service:

Основним мінусом DBaaS вважається відсутність прямого доступу до корпоративної інформації: зберігання та обробка баз даних переходить третій стороні, що позбавляє можливості впливати на заходи щодо збереження та відновлення. Проте, рівень надійності, безпеки та ефективності DBaaS сильно перевершує стандартні бази даних.

На сьогоднішній день потреба підприємств в автономних хмарних базах даних зростає. Скорочення витрат, доступність, оновлення, гнучкість, ефективність є основними факторами, що стимулюють компанії використовувати DBaaS. Згідно з прогнозами, обсяг світового ринку хмарних баз даних та DBaaS досягне 399,5 мільярда доларів США до 2027 року.

DBA: проактивність чи “гасіння пожежі”?

Однією з найпопулярніших вимог до спеціаліста та однією з найцінніших його характеристик, є проактивінсть. Для проактивного співробітника характерні: самостійність, відповідальний підхід, здатність впливати на ту чи іншу ситуацію, а також здатність прораховувати наперед можливі результати подій. Таким чином, проактивний спеціаліст не «гасить пожежу», а максимально намагається запобігти її появі.

Чи потрібна проактивність адміністратору баз даних (DBA)? Відповідь однозначна – ТАК. Проактивний підхід до результативності та обслуговуванню баз даних допомагає адміністраторам уникнути проблеми та запобігти трансформації дрібних недоліків у повномасштабну катастрофу.

Далі мова піде про повсякденну роботу адміністратора баз даних та рекомендації щодо покращення продуктивності бази даних.

Обслуговування баз даних

Кожний адміністратор знає, що необхідно виконувати резервне копіювання бази даних. Проте, не всі відносяться до цього завдання з відповідальністю та приділяють їй належну увагу. Виконуючи резервне копіювання регулярно, багато спеціалістів забувають  врахувати найголовніше – наслідки. Необхідно пам’ятати, що регулярне копіювання також детермінує потенційну втрату даних унаслідок відновлення (дані, які були створені після резервного копіювання, але до відновлення).

Резервне копіювання

Жодний керівник не готовий втратити дані. Тому перед плануванням резервного копіювання та відновлення баз даних архіважливо визначити такий показник, як RPO (recovery point object/цільова точка відновлення).

RPO – це припустимий період часу, за який дані можуть бути втрачені у випадку збоїв. Час відновлення даних з резервного сховища не повинно перевищувати цей показник. Цільова точка відновлення повинна диктувати коли (як часто) та як (за допомогою яких технологій) необхідно робити резервні копії.

Забезпечення вдалого резервного копіювання – одна з найважливіших задач DBA. Створюючи резервну копію адміністратору варто використовувати параметр CHECKSUM, за допомогою якого можна перевірити наявність пошкоджень. Ще одним варіантом перевірки резервної копії є функція RESTORE VERIFYONLY.

Адміністратор може виконувати резервне копіювання різних типів: повне (копіювання всіх даних), диференційне (копіювання тільки тих даних, які змінилися з моменту останнього повного копіювання), інкрементне (копіювання змінених даних з моменту останнього повного копіювання або додаткового копіювання).

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

Відновлення

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

Перевірка цілісності

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

Попередження (Agent Alerts)

Для оперативного реагування на збій бази даних адміністратори повинні налагодити сповіщення.

Microsoft пропонує для вирішення цієї задачі свій продукт The SQL Server agent, який призначений для сповіщення про помилки SQL серверу з небезпекою від 17 до 25, включаючи помилки ядра бази даних та ресурсів, а також 823, 823, 825, 829 помилки.

PostgreSQL пропонує свої продукти для відстеження стану бази даних: pgAnalyze и pgwatch2. PgAnalyzeце програмне забезпечення, яке розроблено для покращення видимості запитів. Інструмент можна використовувати для визначення причини повільної роботи запиту, а також для постійного моніторингу бази даних, щоб отримати уявлення про її наявний стан.  pgwatch2 – гнучке рішення для моніторингу, яке використовує панелі управління Grafana.

Індексація

Правильна індексація – один з найкращих методів збільшення продуктивність бази даних. Коректно створені індекси сприяють швидкому знаходженню необхідної інформації та виконанню запитів користувачів. Для правильного будування індексів адміністратору необхідно мати експертизу в цій області, адже неправильний індекс може надати зворотню дію та значно уповільнити обробку запитів.

GoUp Chat