Mondrian vs Elasticsearch: nimani tanlash kerak

Biznes uchun amaliy dastur uchun analitikni qayta ishlab chiqaradigan vositani topish ishlab chiquvchilar va ma'lumotlar ombori arxitektorlari uchun qiyin vazifadir.

Sizning tanlovingiz har doim dasturiy ta'minotni ishlab chiqish tsiklining dastlabki bosqichlarida ko'rib chiqilishi kerak bo'lgan keng doiradagi biznes, amaliy dasturiy va apparat talablariga bog'liq.

Loyihangizning uzoq maqsadlariga mos keladigan echimni to'g'ri tanlashda sizga yordam berish uchun biz ikkita kuchli (ammo tabiatiga ko'ra farq qiladigan) vositalarni - Elasticsearch va Mondrianni e'tiboringizga havola qilamiz. daraja xususiyatlari va qidiruv tizimi va OLAP serverining asosiy maqsadlarini o'rganish.

LastElastika qidirish

Dunyodagi eng yirik kompaniyalar Elasticsearch-ga o'z afzalliklarini berishadi. Buning ajablanarli joyi yo'q - Elasticsearch bir vaqtning o'zida hujjatga asoslangan ma'lumotlarni saqlash, ko'p qavatli qidirish va tahlil mexanizmlarining eng yaxshi xususiyatlarini o'zida mujassam etgan. Qidiruv va olish uchun optimallashtirilgan bo'lib, u eng so'nggi qidiruv xususiyatlariga ega ilovalarni kuchaytiradi. Uning ko'p yillik ijarasi sizga kerakli klasterda qancha indekslarga ega bo'lish imkoniyatini beradi.

Qidiruv imkoniyatlaridan tashqari, u analitikani qo'llab-quvvatlaydi va sizning ma'lumotlaringizdan qiymatlarni ajratib olishga yordam beradigan samarali yig'ishni taklif qiladi.

Kaput ostida nima bor?

Elasticsearch-ning markazida Apache Lucene - ishlashi, kengaytirilishi va ishonchliligi bilan mashhur bo'lgan eng sevimli ma'lumot qidirish kutubxonalaridan biri.

Haqiqiy vaqtda

Elasticsearch real vaqt rejimidagi qidiruv platformasi deb nomlanadi, chunki u har bir soniyada bir marta yangilanib, yangi hujjatlarni qidirish osonlashtiradigan jarayonni qo'llaydi.

Joylashtirish

Qoida tariqasida, Elastics Search-ni o'zingizning arxitektura dizayningizga qo'shish juda og'riqsiz jarayondir - siz uni mahalliy yoki bulutli usulda boshqarishingiz mumkin. Amalga oshirish eng kam harakatlarni talab etadi, ammo uzoq muddatda maksimal natijalarni beradi.

Ishlash va miqyosi

Masshtablash imkoniyati har doim yaratish yoki sindirish masalasidir, ammo Elasticsearch umumiy qidiruvni ta'minlaydigan taqsimlangan xususiyatga ega. Har bir indeksni bir nechta shardlarga bo'lish tufayli osongina miqyosga chiqadi. Sharding bir yoki bir nechta tugunlar ishlamay qolsa, shardlarni o'zaro taqqoslash va indeks shardlarini ko'paytirishga imkon beradi. Bundan tashqari, indeks yaratilgandan so'ng, siz replikatsiyalar sonini dinamik ravishda boshqarishingiz mumkin, ammo indeksni yaratish vaqtida sharklar sonini aniqlash kerak.

Moslashuvchanlik

Elasticsearch-ning asosiy ixtisosliklaridan biri shundaki, sxemani old tomonga ko'rsatishga hojat yo'q. Elasticsearch hujjatlarni indekslashni o'z zimmasiga oladi va avtomatik ravishda uning turlari va maydonlarini to'ldiradi. Shunday qilib, sizga ma'lumotlarni imkon qadar tezroq o'rganishga yordam beradi.

Xavfsizlik

X-Pack - Elastik Stack-ning kengaytmasi (ogohlantirish, monitoring, hisobot berish, mashinani o'rganish xususiyatlarini o'z ichiga olgan) yordamida siz o'z guruhingizga turli xil xavfsizlik choralarini ko'rishingiz mumkin.

Odatda, bunday choralar shaxsiy ma'lumotlarning oshib ketishini oldini olish va qimmat talablarni yoki tashqi kodni dinamik skriptlar orqali bajarish. Shuningdek, siz huquqlarni yangilash uchun cheklovlar qo'yishingiz mumkin.

API

Elasticsearch-ning barcha xususiyatlari RESTful interfeysi orqali ochib beriladi.

Bundan tashqari, siz istalgan tilda Elasticsearch bilan o'zaro ishlashingiz mumkin. Tillarni qo'llab-quvvatlash keng - Java, Python, Curl, PHP, SQL, JavaScript, Ruby va boshqalar.

Jamiyat

Ochiq manbali mahsulot bo'lganligi sababli, Elastics Search butun dunyo bo'ylab ishlab chiquvchilar tomonidan qo'llab-quvvatlanadi.

Elastik forumga tashrif buyurishga harakat qiling - bu sizga xalqaro hamjamiyatga tegishli bo'lgan tengsiz hissiyotni beradi.

Hujjatlar, relizlar va yangilanishlar

Birinchidan, Elasticsearch hujjatlari qay darajada tartibli va yangilanganligi.

Sizga yoqishi mumkin bo'lgan yana bir narsa - bu Elasticsearch va ELK stack-ning boshqa mahsulotlari yordamida turli tashkilotlarning qidirish va tahlil qilish muammolarini qanday echishini aniqlashga yordam beradigan holatlar.

Kichkina nashrlar va tuzatishlar tez-tez ro'y beradi. Asosiy relizlar tez-tez uchraydi - har ikki yoki to'rt oyda bir marta.

Bu bepulmi?

Ha, bu Apache 2.0 litsenziyasi ostida ochiq manba sifatida chiqarilgan bepul qidiruv tizimi.

Bizning fikrimiz

Elasticsearch - tezlik va moslashuvchanlik. Agar siz murakkab ma'lumotlar oqimini boshqarishingiz kerak bo'lsa, bu eng yaxshi tanlov. Bu qidiruv jarayonini og'riqsiz va samarali qiladi.

Siz Elasticsearch-dan asosiy do'kon va qidiruv tizimi sifatida foydalanishingiz mumkin. Ammo eng yaxshi amaliyot bu mavjud ma'lumotlar bazasiga qo'shimcha ravishda Elasticsearch-dan foydalanish.

O'zingizning ilovangizni biznesga oid razvedka vositasi bilan ta'minlash uchun siz Flexmonster-ni sinab ko'rishingiz mumkin - bu ma'lumotlaringizni indeksingizdan ma'lumotlarni kuchli filtrlash, yig'ish va saralash xususiyatlari bilan tushunchalarga aylantirishga yordam beradi.

Amalda Elasticsearch indeksidagi ma'lumotlarga asoslangan holda hisobot qanday tuzilishini o'rganish uchun, Elasticsearch-ga ulanish maqolasiga qarang.

Endi Mondrianning qisqacha obzoriga murojaat qilaylik.

Mondrian

Mondrian - 2002 yilda chiqarilgan OLAP dvigateli. Uni yaratishda asosan SSAS ilhomlantirgan va ko'p vaqt talab qiladigan hisobot yaratish jarayonida muammolarni engib o'tishga intilgan.

Bu qanday ishlaydi?

Pentaho me'morlari ROLAP (relyatsion onlayn analitik ishlov berish) ning eng yaxshi xususiyatlarini, soddalashtirilgan tuzilishini va MOLAP (ko'p o'lchovli onlayn analitik ishlov berish) ishlashini birlashtirdilar.

Texnik jihatdan, u ma'lumotlar ombori va tahlil vositalari o'rtasida vositachi bo'lib xizmat qiladi. Ma'lumotlarning mantiqiy tavsiflari va JDBC yordamida ma'lumotlarni bazadan oladi, MDX so'rovlarini SQL so'rovlariga o'zgartiradi va OLAP kublarini hisobot vositasiga javob sifatida yuboradi. Mondrianning asosiy xususiyati shundaki, u so'rovlarga tezkorlik bilan javob berish uchun xotirada kublarni yig'adi.

Shuningdek, Mondrian sxemasining tuzilishini tushunish muhimdir. Kub bu o'lchovlar va o'lchovlar to'plamidir. O'lchovlar kategoriyalarga bo'linishi kerak bo'lgan atributlarni taqdim etadi. Ushbu o'lchovlar va ierarxiyalar sxemada ma'lumotlar bazangizdagi jadvallarga taqqoslanadi.

Haqiqiy vaqtda

Siz Mondrian bilan real vaqtda tajribaga erishishingiz mumkin, chunki ROLAP dvigatellari o'lchamlarning kesishishini oldindan hisoblamaydilar, ya'ni ma'lumotlar bazasida yangilanishi bilan ular oxirgi foydalanuvchilar uchun mavjud bo'ladi.

Aynan shuning uchun Mondrian real vaqt tizimlari uchun yaxshi tanlov qiladi - siz doimiy ravishda o'zgarib turadigan ma'lumotlar bazasida ko'p o'lchovli so'rovlarni bajarishingiz mumkin. Buning uchun siz keshni boshqarish uchun API-dan foydalanishingiz mumkin.

Joylashtirish

Siz Mondrian-ni veb-konteynerda (Tomcat yoki JBoss) ishga tushirishingiz yoki ilovangizning bir qismi sifatida ko'mishingiz mumkin.

Ishlash va miqyosi

Mondrian tezlikni oshirish uchun xotirada xotirada saqlanadigan ma'lumotlardan foydalanadi. Mondrian-ning samaradorligiga qaramay, agar sizning SQL so'rovlaringiz optimallashtirilmagan bo'lsa yoki sxemasi yaxshi ishlab chiqilmagan bo'lsa, u sizning dasturingizni sekinlashtirishi mumkin. Bundan tashqari, OLAP kublarini o'rnatish, texnik xizmat ko'rsatish va qayta qurish, ishlab chiqaruvchiga ko'proq vaqt sarflashi mumkin, bu ko'pincha quvvat va xotiradan qimmatroq manbadir. Shunga qaramay, to'g'ri konfiguratsiyalardan foydalanib, siz yuzlab yoki minglab foydalanuvchilar foydalanishi uchun Mondrian-ni o'lchashingiz mumkin.

Moslashuvchanlik

Turli xil muhitlarga joylashtirilishi va uchinchi tomon asboblari bilan birlashtirilishi mumkinligi nuqtai nazaridan moslashuvchan. Ammo Mondrian sxema tili ma'lum cheklovlarni yuklaydi, bu dasturga maxsus plaginlarni qo'shish orqali bartaraf qilinishi mumkin.

Xavfsizlik

OLAP kubining ma'lum qismlariga kirishni cheklash uchun, BA serverining rol xaritasi yordamida sxemani aniqlashda foydalanuvchi rollarini aniqlashingiz mumkin.

API

Mondrian REST API bilan ta'minlamaydi, ammo siz Mondrian kutubxonasiga o'ralgan uchinchi tomon REST API-laridan foydalanishingiz mumkin.

Jamiyat

Mondrian, shuningdek, har kim o'z hissasini qo'shishi mumkin bo'lgan ochiq manbali loyihadir. Agar siz Mondrianning funktsional imkoniyatlari bilan bog'liq savol berishingiz kerak bo'lsa, rasmiy Pentaxo forumi sizning xizmatingizda. Biroq, u faol ishlatilmayapti.

Hujjatlar, relizlar va yangilanishlar

Hujjatlar keng qamrovli, ammo etarlicha aniqlanmagan. Afsuski, u kerakli ma'lumotni topgunga qadar pastga aylantiradigan bitta uzun hujjat taassurotini beradi.

Rasmiy so'nggi versiya 3.0 2008 yilda chiqarilgan. O'shandan beri Mondrian asosan ishlab chiqaruvchilar tomonidan qo'llab-quvvatlanib, yangilanmoqda.

Bu bepulmi?

Ha, Mondrian bepul va ochiq manbadir. Bu ETL litsenziyalangan.

Bizning fikrimiz

Umuman olganda, agar siz so'rovlar orqali tezkor qidiruv natijalarini olish ehtiyojlarini to'liq qondirmaydigan, saqlash qatlami sifatida yagona aloqador ma'lumotlar bazasiga ega bo'lsangiz, Mondrian yaxshi tanlovdir. U ma'lumotlarning o'lchovli ko'rinishini, keshlash va yuqori darajadagi hisob-kitoblarni taqdim etish orqali relyatsion ma'lumotlar bazasi funktsional imkoniyatlarini kengaytiradi.

Agar siz uni ishlatishga qaror qilsangiz, siz aniq ma'lumotlar kublaridagi ma'lumotlarni namoyish qilish va tahlil qilish uchun old tomondan zamonaviy vositaga ehtiyoj sezasiz. Bu Flexmonster uchun mo'ljallangan. Siz Mondrian-ga XMLA yoki Flexmonster Accelerator (tezkor ma'lumotlarni uzatish uchun maxsus server yordam dasturi) orqali ulanishingiz va OLAP ma'lumotlarini o'rganishni boshlashingiz mumkin. Tafsilotlarni bilish uchun Pentaho Mondrian-ga ulanish maqolasiga qarang.

Hammasini birga olib kelish

Mondrian ham, Elasticsearch ham oldindan yig'ilgan ma'lumotlarni samarali so'rov qilish va real vaqt rejimida tahlil qilish uchun ishlatilishi mumkin, ammo ular deyarli har xil texnologiyalardan foydalanadi. Biroq, bu oxir-oqibat IT bozorida ochiq manbali vositalar raqobati tufayli eskirgan va kamroq mashhur echimga aylanganga o'xshaydi. Bundan tashqari, Mondrian sxemalarini yozish uchun ko'proq o'rganish chizig'i talab qilinadi va bu zerikarli jarayon bo'lishi mumkin.

Elasticsearch-ni ishlab chiquvchilar hamjamiyati (ayniqsa DevOps muhandislari) ko'proq qabul qilishadi va u Mondrian-ni turli jihatlar bilan qamrab oladi: qo'llab-quvvatlanadigan ma'lumotlarning keng doirasi, miqyosi, REST interfeysi orqali bog'lanish qobiliyati va kuchli jamoatchilik tomonidan qo'llab-quvvatlanadi. Bundan tashqari, jurnallarni tahlil qilish uchun juda yaxshi. Boshqa muhim xususiyatlar - real vaqtda qidirish va sxemadan kam arxitektura. Biz Elasticsearch-ni ma'lumotlarning oson birlashishi va mukammal ishlashi uchun yaratilganligiga ishonch hosil qilish uchun tajriba orttirishni tavsiya etamiz.

Mashhurlikni taqqoslash

Elasticsearch va Mondrian mashhurligi haqidagi xulosalarimiz Google Trends orqali qidiruv so'rovlarini tahlil qilishga asoslangan. So'nggi o'n yil ichida ikkala echimga qiziqish qanday o'zgarganligini ko'rsatdi. Trendlar grafikasida, Mondrian chiqqanidan keyin dastlabki 10 yil ichida talabga ega bo'lganligini ko'rishingiz mumkin, ammo 2014 yilda uning mashhurligi pasayishi Elasticsearch mashhurligining o'sishi bilan boshlangan edi, va uning asosiy yangilanishlaridan keyin ko'p o'tmay.

yakuniy fikrlar

Umid qilamizki, endi sizning loyihangiz uchun analitiklar uchun orqa-dvigatel haqida yaxshi xabardor qaror qabul qilishga tayyormiz.

Qaysi birini tanlashingizdan qat'iy nazar, siz doimo Flexmonsterga ishonishingiz mumkin. Bu sizning ma'lumotlaringiz uchun biznesni boshqarish vositasi bo'lib xizmat qiladi va keng imkoniyatlarni ochib beradi - siz Elasticsearch yoki Mondrian-ga ulanishingiz, umumlashtirilgan ma'lumotlarni indeks yoki OLAP kubidan olishingiz va tezkor tahlilni boshlashingiz mumkin. Ma'lumotlar bazangiz qanchalik katta bo'lmasin - Flexmonster uni bajara oladi.

Dastlab www.flexmonster.com da nashr etilgan.