ទិដ្ឋភាពទូទៅនៃមូលដ្ឋានទិន្នន័យ NoSQL មួយ

អក្សរកាត់ NoSQL ត្រូវបានបង្កើតឡើងក្នុងឆ្នាំ 1998 ។ មនុស្សជាច្រើនគិតថា NoSQL គឺជាពាក្យដែលប្រមាថមើលងាយបង្កើតឡើងដើម្បីបុក SQL ។ តាមពិតពាក្យមានន័យថាមិនត្រឹមតែ SQL ទេ។ គំនិតនេះគឺថាបច្ចេកវិទ្យាទាំងពីរអាចរួមរស់ជាមួយគ្នានិងគ្នាមានកន្លែងរបស់វា។ ចលនា NoSQL បាននៅក្នុងពត៌មានក្នុងរយៈពេលប៉ុន្មានឆ្នាំកន្លងមកដែលមេដឹកនាំ Web 2.0 ទាំងអស់បានទទួលយកបច្ចេកវិទ្យា NoSQL ។ ក្រុមហ៊ុនដូចជា Facebook, Twitter, Digg, Amazon, LinkedIn, និង Google សុទ្ធតែប្រើ NoSQL នៅក្នុងវិធីមួយឬច្រើន។

ចូរបំបែក NoSQL ដូច្នេះអ្នកអាចពន្យល់វាទៅកាន់ CIO របស់អ្នកឬសូម្បីតែសហសេវិករបស់អ្នក។

NoSQL ចេញពីតម្រូវការ

ការផ្ទុកទិន្នន័យ: ទិននន័យឌីជីថលដែលត្រូវបានរក្សាទុកនៅលើពិភពលោកត្រូវបានវាស់នៅក្នុង exabytes ។ exabyte គឺស្មើនឹងទិន្នន័យមួយពាន់ជីហ្គាបៃ (GB) ។ យោងតាមគេហទំព័រ Internet.com ចំនួនទិន្នន័យដែលបានរក្សាទុកក្នុងឆ្នាំ 2006 មាន 161 exabytes ។ គ្រាន់តែ 4 ឆ្នាំក្រោយឆ្នាំ 2010 ចំនួនទិន្នន័យដែលរក្សាទុកនឹងមានចំនួនជិត 1000 ExaBytes ដែលជាការកើនឡើងជាង 500% ។ និយាយម្យ៉ាងទៀតមានទិន្នន័យជាច្រើនត្រូវបានរក្សាទុកនៅក្នុងពិភពលោកហើយវានឹងបន្តកើនឡើង។

ទិន្នន័យភ្ជាប់គ្នា: ទិន្នន័យនៅតែបន្តភ្ជាប់។ ការបង្កើតបណ្តាញត្រូវបានបង្កើតឡើងនៅក្នុងតំណខ្ពស់ប្លុកមាន pingbacks ហើយគ្រប់ប្រព័ន្ធបណ្តាញសង្គមសំខាន់ៗមានស្លាកដែលចងរឿងរួមគ្នា។ ប្រព័ន្ធសំខាន់ៗត្រូវបានបង្កើតឡើងដើម្បីភ្ជាប់គ្នា។

រចនាសម្ព័ន្ធទិន្នន័យស្មុគស្មាញ: NoSQL អាចគ្រប់គ្រងរចនាសម្ព័ន្ធទិន្នន័យខាងក្នុងឋានានុក្រមបានយ៉ាងងាយស្រួល។ ដើម្បីសម្រេចរឿងដដែលនេះក្នុង SQL អ្នកត្រូវមានតារាងទំនាក់ទំនងច្រើនដោយប្រើគ្រាប់ចុចគ្រប់ប្រភេទ។

លើសពីនេះទៅទៀតមានទំនាក់ទំនងរវាងការអនុវត្តនិងភាពស្មុគស្មាញនៃទិន្នន័យ។ ការអនុវត្តអាចបង្អាក់នៅក្នុង RDBMS ជាប្រពៃណីនៅពេលយើងផ្ទុកទិន្នន័យដ៏ធំដែលត្រូវការនៅក្នុងកម្មវិធីបណ្តាញសង្គមនិងគេហទំព័រស័ព្ទ។

តើ NoSQL ជាអ្វី?

ខ្ញុំគិតថាវិធីមួយដើម្បីកំណត់ NoSQL គឺត្រូវពិចារណាថាតើវាមិនមែនជាអ្វី។

វាមិនមែនជា SQL ហើយវាមិនមែនជាទំនាក់ទំនងទេ។ ដូចជាឈ្មោះបានបង្ហាញថាវាមិនមែនជាការជំនួសសម្រាប់ RDBMS ប៉ុន្តែវាជាការសរសើរ។ NoSQL ត្រូវបានរចនាឡើងសម្រាប់ហាងទិន្នន័យចែកចាយសម្រាប់តម្រូវការទិន្នន័យទំហំធំ។ គិតអំពីហ្វេសប៊ុកជាមួយអ្នកប្រើប្រាស់ 500.000.000 នាក់ឬក៏ Twitter ដែលប្រមូលទិន្នន័យ Terabits នៃទិន្នន័យជារៀងរាល់ថ្ងៃ។

នៅក្នុងមូលដ្ឋានទិន្នន័យ NoSQL គ្មានគ្រោងការណ៍ថេរនិងមិនចូលរួម។ RDBMS មួយ "ធ្វើមាត្រដ្ឋានឡើង" ដោយការទទួលបានលឿននិងលឿនជាងមុនផ្នែករឹងនិងការបន្ថែមសតិ។ ផ្ទុយទៅវិញ NoSQL អាចទាញយកអត្ថប្រយោជន៍ពីការ "ពង្រីក" ។ ការធ្វើមាត្រដ្ឋានសំដៅលើការរីករាលដាលនៃបន្ទុកលើប្រព័ន្ធទំនិញជាច្រើន។ នេះគឺជាសមាសភាគនៃកម្មវិធី NoSQL ដែលធ្វើឱ្យវាក្លាយជាដំណោះស្រាយដែលមានតំលៃថោកសម្រាប់សំណុំទិន្នន័យធំ ៗ ។

ប្រភេទ NoSQL

បច្ចុប្បន្ន NoSQL ពិភពលោកសមនឹងចំណាត់ថ្នាក់ចំនួន 4 ។

  1. ហាងទំនិញ សំខាន់ៗមានមូលដ្ឋាននៅ លើក្រដាស Dynamo Paper របស់ Amazon ដែលត្រូវបានសរសេរក្នុងឆ្នាំ 2007 ។ គំនិតចម្បងគឺអត្ថិភាពនៃតារាងហាសដែលមានកូនសោតែមួយគត់និងចង្អុលទៅនឹងធាតុជាក់លាក់នៃទិន្នន័យ។ ការផ្គូផ្គងទាំងនេះត្រូវបានអមដោយយន្តការឃ្លាំងសម្ងាត់ដើម្បីបង្កើនសមត្ថភាព។
    ហាងលក់គ្រួសារជួរឈរ ត្រូវបានបង្កើតឡើងដើម្បីរក្សាទុកនិងដំណើរការទិន្នន័យយ៉ាងច្រើនដែលបានចែកចាយលើម៉ាស៊ីនជាច្រើន។ វានៅតែមានកូនសោប៉ុន្តែវាចង្អុលទៅជួរឈរច្រើន។ ក្នុងករណី BigTable (គំរូជួរឈរ NoSQL របស់ Google) ជួរដេកត្រូវបានសម្គាល់ដោយគ្រាប់ចុចជួរដេកជាមួយទិន្នន័យដែលបានតម្រៀបនិងរក្សាទុកដោយកូនសោនេះ។ ជួរឈរត្រូវបានរៀបចំដោយគ្រួសារជួរឈរ។
  1. មូលដ្ឋានទិន្នន័យឯកសារ ត្រូវបានបំផុសគំនិតដោយ Lotus Notes និងស្រដៀងគ្នាទៅនឹងឃ្លាំងតម្លៃសំខាន់។ ម៉ូដែលនេះគឺជាឯកសារដែលមានមូលដ្ឋានជាឯកសារដែលជាការប្រមូលនៃការប្រមូលតម្លៃគន្លឹះផ្សេងទៀត។ ឯកសារពាក់កណ្តាលរចនាសម្ព័ន្ធត្រូវបានរក្សាទុកក្នុងទ្រង់ទ្រាយដូចជា JSON ។
  2. មូលដ្ឋានទិន្នន័យក្រាហ្វ ត្រូវបានបង្កើតឡើងដោយថ្នាំងទំនាក់ទំនងរវាងចំណាំនិងលក្ខណៈសម្បត្តិនៃថ្នាំង។ ជំនួសឱ្យតារាងនៃជួរដេកនិងជួរឈរនិងរចនាសម្ព័ន្ធនៃ SQL, គំរូក្រាហ្វអាចបត់បែនត្រូវបានប្រើដែលអាចឆ្លងកាត់ម៉ាស៊ីនជាច្រើន។

អ្នកលេង NoSQL សំខាន់

តួអង្គសំខាន់ៗនៅក្នុងកម្មវិធី NoSQL បានលេចឡើងជាបន្តបន្ទាប់ដោយសារតែអង្គការដែលបានប្រើប្រាស់វា។ បច្ចេកវិទ្យា NoSQL ដ៏ធំបំផុតមួយចំនួនរួមមាន:

កំពុងសួរ NoSQL

សំណួរអំពីរបៀបស្វែងរកមូលដ្ឋានទិន្នន័យ NoSQL គឺជាអ្វីដែលអ្នកអភិវឌ្ឍន៍ភាគច្រើនចាប់អារម្មណ៍។ ទិន្នន័យទាំងអស់ដែលផ្ទុកនៅក្នុងមូលដ្ឋានទិន្នន័យដ៏ធំមិនធ្វើឱ្យអ្នកណាម្នាក់ល្អទេប្រសិនបើអ្នកមិនអាចទាញយកនិងបង្ហាញវាទៅអ្នកប្រើឬសេវាកម្មបណ្ដាញ។ មូលដ្ឋានទិន្នន័យ NoSQL មិនបានផ្តល់នូវភាសាសំណួរប្រកាសខ្ពស់ដូច SQL ទេ។ ផ្ទុយទៅវិញការស្វែងរកមូលដ្ឋានទិន្នន័យទាំងនេះគឺជាទិន្នន័យគំរូ។

វេទិកា NoSQL ជាច្រើនអនុញ្ញាតឱ្យមានចំណុចប្រទាក់ RESTful ចំពោះទិន្នន័យ។ APIs សំណួរផ្តល់ជូនផ្សេងទៀត។ មានពីរឧបករណ៍សំណួរដែលត្រូវបានបង្កើតឡើងដែលព្យាយាមសួរមូលដ្ឋានទិន្នន័យ NoSQL ជាច្រើន។ ឧបករណ៍ទាំងនេះជាធម្មតាធ្វើការនៅទូទាំងប្រភេទ NoSQL តែមួយ។ ឧទាហរណ៍មួយគឺ SPARQL ។ SPARQL គឺជាការបញ្ជាក់ការអធិប្បាយដែលបានបង្កើតឡើងសម្រាប់មូលដ្ឋានទិន្នន័យក្រាហ្វ។ នេះគឺជាឧទាហរណ៍នៃសំណួរ SPARQL ដែលទាញយក URL របស់អ្នកសរសេរប្លុកពិសេសមួយ (មានការអនុញ្ញាតពី IBM):

កំណត់សំគាល់:
SELECT? url
FROM
WHERE {
? foaf អ្នករួមចំណែក: ឈ្មោះ "Jon Foobar" ។
? អ្នកចែកចាយ foaf: weblog? url ។
}

អនាគតនៃកម្មវិធី NoSQL

អង្គការដែលមានតម្រូវការផ្ទុកទិន្នន័យច្រើនត្រូវបានគេយកចិត្តទុកដាក់យ៉ាងខ្លាំងទៅលើកម្មវិធី NoSQL ។ ជាក់ស្តែងគំនិតនេះមិនត្រូវបានទទួលឥទ្ធិពលច្រើនទេក្នុងអង្គការតូចៗ។ នៅក្នុងការស្ទង់មតិមួយដែលធ្វើឡើងដោយសប្តាហ៍ព័ត៌មាន 44% នៃអាជីពផ្នែកព័ត៌មានវិទ្យាអាជីវកម្មមិនបានដឹងអំពី NoSQL ទេ។ ជាងនេះទៅទៀតមានតែ 1% ប៉ុណ្ណោះដែលបានឆ្លើយថា NoSQL គឺជាផ្នែកមួយនៃទិសដៅយុទ្ធសាស្ត្ររបស់ពួកគេ។ ច្បាស់ណាស់ NoSQL មានកន្លែងរបស់ខ្លួននៅក្នុងពិភពលោកដែលបានតភ្ជាប់របស់យើងប៉ុន្តែនឹងត្រូវបន្តវិវត្តដើម្បីទទួលបានការអំពាវនាវដ៏ធំដែលមនុស្សជាច្រើនគិតថាវាអាចមាន។