У чым розніца паміж традыцыйнай базай дадзеных і сучаснай базай дадзеных?


адказ 1:

Большасць "сучасных" баз дадзеных "традыцыйныя" базы дадзеных! Гэта азначае, што большасць баз дадзеных, якія выкарыстоўваюцца сёння, адпавядаюць традыцыйнай схеме ACID / рэляцыйныя / SQL - з пяці лепшых баз дадзеных у рэйтынгу рухавікоў БД з'яўляюцца SQL / ACID / рэляцыйныя сістэмы.

Аднак у апошнія 10 гадоў было базы дадзеных "наступнага пакалення", якія разарваліся з традыцыйнай мадэллю. Яны падпадзяляюцца на некалькі катэгорый:

  • Базы дадзеных, якія ў першую чаргу спрабавалі забяспечыць вялікую глабальную маштабаванасць, чым транзакцыі ACID - у тым ліку Cassandra і DynamoDBDatabases, якія прапануюць больш гнуткую схему, якая павышае гнуткасць распрацоўкі прыкладанняў - найлепшым прыкладам з'яўляюцца MongoDBDatabases, якія дазваляюць лепш эканоміць для захоўвання сапраўды масіўных дадзеных. Колькасць дадзеных - найлепшы прыклад - Hadoop.

У гэтым артыкуле разглядаюцца гэтыя ідэі. Мая кніга ідзе яшчэ далей :-)


адказ 2:

Я хачу прадбачыць свой адказ, адзначыўшы, што многія "традыцыйныя" базы дадзеных працягваюць шырока выкарыстоўваць некаторыя вядучыя кампаніі Fortune 500 і пастаянна дадаюць новыя цікавыя функцыі. У сувязі з гэтым галоўнае адрозненне паміж "традыцыйнай" і "сучаснай" базай дадзеных залежыць толькі ад таго, калі яна ўпершыню з'явіцца на рынку.

Калі падсумаваць ваш сэнс, вы, верагодна, звязваеце "сучасныя" базы дадзеных з варыянтам NoSQL, які з'явіўся зусім нядаўна, чым яго рэляцыйныя аналагі. Базы дадзеных, такія як MongoDB, працавалі над паляпшэннем апрацоўкі вялікіх дадзеных і прыкладанняў у рэжыме рэальнага часу.

Базы дадзеных NoSQL могуць захоўваць вялікую колькасць дадзеных з невялікай структурай. Вы таксама не ўсталёўваеце абмежаванні на тыпы дадзеных, якія вы можаце захоўваць разам, так што вы можаце дадаваць новыя тыпы па меры змянення вашых патрэбаў. І вы можаце захоўваць дадзеныя ў адным месцы, не вызначаючы загадзя тып дадзеных.

Вось некаторыя асноўныя перавагі баз дадзеных NoSQL:

  1. Першае і галоўнае, яны звычайна вельмі простыя ў ўстаноўцы і наладзе. Яны не маюць схем, таму ваш код вызначае вашу схему. Магчымасць атрымання дакументальнай мадэлі дадзеных з'яўляецца адным з найбольш прывабных пераваг баз дадзеных NoSQL. Напрыклад, MongoDB захоўвае дадзеныя ў выглядзе BSON (Binary JSON). Гэта дазваляе захоўваць масівы і іншыя складаныя тыпы дадзеных. Мова запыту дакумента, які падтрымліваецца базамі дадзеных, такімі як MongoDB, падтрымлівае дынамічныя запыты. Іх лёгка маштабаваць. З-за структуры дадзеных у базах дадзеных NoSQL ніякіх складаных спасылак не патрабуецца. Аптымізацыя прадукцыйнасці даволі простая ў параўнанні з рэляцыйнымі базамі дадзеных. Не трэба прызначаць аб'екты дадзеных аб'ектам прыкладання. Забяспечвае больш хуткі доступ да дадзеных, паколькі для захоўвання выкарыстоўваецца ўнутраная памяць. Базы дадзеных NoSQL непранікальныя для ін'екцый SQL і могуць таксама выкарыстоўвацца ў якасці файлавай сістэмы, якая падтрымлівае балансаванне нагрузкі. Падтрымка рэзкі - гэта карысная асаблівасць. Пры ўдасканаленні дадзеных дадзеныя захоўваюцца на розных кампутарах з павелічэннем памеру дадзеных, што прыводзіць да гарызантальнага маштабавання. Шардаванне дазваляе запісваць і перачытваць дадатковыя дадзеныя па меры павелічэння росту дадзеных.

Толькі ўлічыце, што не ўсё з ног на галаву. Базы дадзеных NoSQL ахвяруюць структуру для большай хуткасці. Гэта робіць іх дрэнны выбар для такіх прыкладанняў, як плацежныя сістэмы.

Для баз дадзеных NoSQL даступна менш кліентаў, чым для больш усталяваных, такіх як MySQL. Калі казаць, Navicat - кліент MongoDB, які я выкарыстаў і мне вельмі падабаецца.

Я спадзяюся, што гэта дапаможа!