August 30, 2021
Өдөр тутам дэлхийд барагцаалбал (2.5x10)182.5x1018 байт дата, мэдээлэл үүсэж байдаг. Эдгээр дата, мэдээлэлд текст, зураг, видео гэх мэт олон хэлбэрийн дата багтдаг бөгөөд эдгээр нь их өгөгдлийг үүсгэгч урьдач нөхцөл болж байгаа билээ. Их өгөгдөл нь их хэмжээтэй, олон төрлийн, хурдан боловсруулагдах байхаас гадна зардал бага, автоматчилагдсан, үр дүн нь стратегийн шийдвэр гаргалтуудыг дэмжигдэхүйц байх шаардлагатай байх талаар бид өмнөх блогоор дурдсан билээ.
Тэгвэл Их өгөгдлийг боловсруулахад оролцож байгаа бүх эх үүсвэр болон функцуудыг нэгтгэх, холбох, тохируулахад зориулсан олон төрлийн нээлттэй эх үүсвэрийн суурь технологиуд байдаг. Эдгээр суурь технологиудын хувьд өгөгдлийн хэлбэр төрөл болон ажиллагаануудаасаа хамааран өөр зориулалтаар ашиглагддаг. Мөн доор дурдах технологиудыг бүгдийг нь ч ашигладаг компаниуд байх бөгөөд эдгээр технологиудыг нэгтгэн ажиллуулдаг програм хангамжууд ч гарч ирсэн.
Apache Hadoop
Apache-с гаргасан эх өгөгдлийн технологи болох Hadoop нь найдвартай ажиллагаатай, өргөтгөх боломж бүхий технологи бөгөөд “Их өгөгдөл”-д хамгийн нийтлэг ашиглагддаг технологи юм. Энэ технологи нь техник хангамжийн шаардлага хамгийн бага, их хэмжээний өгөгдөл боловсруулахад ашигладаг бөгөөд клауд болон on-premise орчинд алинд нь ч ашиглахад тохиромжтой технологи юм. Энэ технологийн давуу талууд нь HDFS, Map Reduce, Yarn, Hadoop libraries юм. (Эдгээрийн дэлгэрэнгүйг унших). Эдгээр давуу талуудын ачаар та бидний сайн мэдэх дэлхийн томоохон худалдаа, үйлчилгээ, хайлтын болон санхүүгийн холбогдолтой технологийн бизнесүүд анализ хийх, оновчтой үр дүн харуулах зэрэгт ашигладаг.
Apache Spark
Apache Spark бол Hadoop гэж хэлж болох технологи юм. Ерөнхийдөө Hadoop-н зарим нэг дутагдалтай талуудыг сайжруулсан хувилбар юм. Жишээ нь: Real-time болон багц өгөгдлийг боловсруулах бөгөөд In-memory өгөгдөл боловсруулах чадамжтай тул Map Reduce-с 100 дахин хурдан ажилладаг. Энэ технологийг томоохон компаниуд их хэмжээтэй өгөгдөл ашиглан өндөр түвшний анализ хийх, real-time анализ хийх, олон эх үүсвэрээс авсан датануудаа нэгтгэхэд ашиглаж байна.
Apache Storm
Apache-н 3 дахь “Их өгөгдөл”-н технологи бөгөөд олон төрлийн програмчлалын хэлийг хүлээн зөвшөөрсөн Data stream боловсруулалт хийх real-time технологи юм. Storm нь хуваарилагч функтэй бөгөөд олон төрлийн зангилаа (multiple nodes) хоорондын ачааллыг тэнцвэржүүлдэг буюу паралел байдлаар тасралтгүй ажилладаг. Энэ технологийг та бидний сайн мэдэх Spotify компани дуу санал болголт, мониторинг, сурталчилгааны таргет хийх зэрэг real-time хэрэгслүүд дээрээ ашигладаг. Мөн онлайн худалдааны технологид тэргүүлэгч Алибаба компани аппликейшны лог болон дата баазад хором бүрд шинэчлэгдэж байгаа бүтээгдэхүүний мэдээллүүдийн өөрчлөлтийг real-time удирдах, өөрчлөхөд ашигладаг. Apache Storm нь дараах давуу талуудтай:
Ямар нэг гэмтэл учрах үед автоматаар restart хийгддэг.
Clojure дээр бичигдсэн
Үр дүнгийн файл Json форматаар гардаг
Apache Cassandra
Apache Cassandra нь олон тооны серверүүдэд тархсан байгаа их хэмжээний өгөгдлүүдийг удирдахад ашигладаг. Cassandra-н нэг онцлог нь зөвхөн бүтэцлэгдсэн өгөгдлүүдтэй ажилладаг. Cassandra нь асар их хэмжээний масс өгөгдлүүдтэй ажилладаг. Хэрвээ өгөгдлүүдийн зохион байгуулалт ямарваа нэг байдлаар эвдрэхэд цааш үргэлжлэхээр зохион байгуулагдсан ба бусад NoSQL болон холбоотой DB байхгүй. Жишээ нь: Facebook компанийн “Их өгөгдөл”-н ард ажилладаг технологиудын нэг бөгөөд дэлхий даяар тархсан асар олон тооны зангилаанууд бүхий багц бүтэцлэгдсэн өгөгдлүүдийг боловсруулахад ашигладаг. Мөн Netflix компани streaming үйлчилгээний Back-end дата бааз болгон ашигладаг.
Apache Samoa
Apache Samoa нь (Scalable Advanced Massive Online Analysis) “Их өгөгдөл”-н олборлолт хийх streaming алгоритмд ашиглагддаг. Samoa нь ямар нэг backup болон шинэчлэлийн шаардлагагүй ажилладаг ба machine learning-н үйл ажиллагааны кластер болон регресс хийх, ангилах болон шинэ алгоритмыг програмчлах зэрэгт ашиглагддаг. Энгийнээр тайлбарлавал Samoa нь хаана ч ажилладаг, өмнө ашиглаж байсан дэд бүтцээ ашиглах боломжтой, системийн зогсолтгүй, backup шинэчлэлтийн шаардлага гардаггүй зогсолтгүй streaming хийдэг технологи юм. Samoa-г ихэвчлэн machine learning-н үйл ажиллагааг хэвийн явуулах, дэмжихэд ашиглаж байна.