Database
 sql >> база данни >  >> RDS >> Database

Релационни срещу нерелационни бази данни – част 2

В предишната ми публикация видяхме някои фундаментални разлики между релационни и нерелационни бази данни. В тази публикация нека поговорим за мащабируемостта на тези две.

Мащабируемост

Това е способност на система, която може лесно да приеме бързите входящи данни без много проблеми с производителността. Това е основният фактор за всяка система да осигури добра мащабируемост. Има два типа методи за мащабиране, известни като вертикално и хоризонтално мащабиране.

Вертикално мащабиране

Всички инструменти за релационна база данни поддържат вертикално мащабиране. Това е методът за увеличаване на мощността на системата чрез добавяне на допълнително пространство на процесора, паметта и диска. Така че, за да позволи бързи входящи данни, единният производствен сървър е оптимизиран за увеличаване на мащаба. В тази техника за мащабиране винаги има един производствен сървър, който може да бъде свързан от всички приложения и потребители. Може да се създаде клъстерна среда с някои възли и да се репликират данните между възли.

Поради свойствата на ACID всички възли трябва да имат еднакъв набор от данни и синхронизирането на данни става сложно, ако има няколко възли в клъстера. Това е много оптимизирано за мащабиране на Read. Вертикалното мащабиране е известно още като мащабиране
Предимството на тази методология за мащабиране е тясното интегриране на данните и тяхната последователност между възлите в клъстер. Всички възли ще имат еднакъв набор от данни и ако има проблем с производствения сървър, друг възел автоматично ще бъде свързан от приложенията. Така че този клъстер е известен като отказен клъстер.

Хоризонтално мащабиране

Всички инструменти за нерелационни бази данни поддържат хоризонтално мащабиране. Това е методът за добавяне на повече компютри към мрежата, за да позволите бързи входящи данни. Лесно е да добавите повече възли в клъстера, за да позволите растеж на данните. Данните се разделят автоматично и се обработват между възли в клъстер. Това е среда за разпределени данни. Hadoop Distributed File System (HDFS) е класически пример за това. Хоризонталното мащабиране е известно още като мащабиране.

Предимството на тази техника за мащабиране е, че тъй като данните се разделят и репликират между възли, ако някой от възлите излезе офлайн, приложението все още може да разполага с данните от други възли и това гарантира наличността на данни през цялото време. Този метод е много полезен в случаите, когато не се изискват JOIN между данните на възлите. Това също е полезно при разделянето на данните и тяхното разполагане на различни географски местоположения.

Въпреки че и двете техники за мащабиране имат предимства и недостатъци, добрата среда може да смеси и двете, за да има изключително мащабиране и мащабиране. Можем да имаме мащабирана база данни за четене и запис в един сървър, който изисква свойства на ACID и да имаме мащабирани разпределени исторически данни в няколко възела с цел извличане на данни.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Премахване на дублирането на изразите Where в приложението

  2. Дигитална трансформация:Всичко започва с мислене на данни

  3. Използване на изрази за филтриране на данни от базата данни

  4. WordPress – Зад кулисите, част 2

  5. Подобрена поддръжка за възстановяване на паралелни статистически данни