M.H.Zarei

وبلاگ من

M.H.Zarei

وبلاگ من

سلام خوش آمدید

۱ مطلب با موضوع «دیتابیس» ثبت شده است

بررسی اولیه دیتابیس StarRocks

در دوران داده‌های بزرگ (Big Data)، داده‌ها برای شرکت‌ها از ارزش بالایی برخوردارند و هدف نهایی تحلیل داده، تصمیم‌گیری سریع و چابک است. پایگاه داده StarRocks به گونه‌ای طراحی شده که در سناریوهای مختلف تحلیل داده، عملکردی بسیار سریع ارائه می‌دهد و در آزمایش‌ها با دیتابیس‌های معروفی همچون ClickHouse، Apache Druid و Trino مقایسه شده است.

آزمایش‌ها نشان داده‌اند که StarRocks در سناریوهای Wide-table و Multi-table به‌ترتیب ۲.۲ و ۵.۵ برابر سریع‌تر از رقبا عمل می‌کند. این پایگاه داده به‌دلیل برخورداری از موتور اجرایی vectorized و cost-based optimizer (CBO) جدید، قادر است تا تحلیل‌های آنی روی داده‌های به‌روز شده را فراهم کند.

StarRocks با استفاده از موتور vectorized، از پردازش‌های CPU بهینه‌تر استفاده می‌کند و عملکرد پردازش‌ها را بین ۳ تا ۱۰ برابر افزایش می‌دهد. همچنین از روش‌های بهینه‌سازی مانند "Bitmap Indexing" و "Late Materialization" برای افزایش کارایی در جستجوهای گسترده بهره می‌برد.

 
نتیجه و جزئیات بیشتر این بنچمارک که توسط تیم StarRocks انجام شده، از طریق https://www.starrocks.io/blog/benchmark-test  در دسترس است.
 
StarRocks به‌عنوان یک سیستم داده دریاچه‌ای نیز عمل کرده و با ویژگی‌هایی چون تقسیم‌بندی، گروه‌بندی و شاخص‌گذاری، به کاربران این امکان را می‌دهد تا بدون نیاز به پیش‌پردازش‌های پیچیده، به سرعت به تحلیل‌های پیچیده و چند‌جدولی دست یابند.
جزئیات بیشتر معماری این دیتابیس از طریق راهنما اصلی در دسترس است:

شروع کار با این دیتابیس

برای استفاده از این دیتابیس می‌توانید با استفاده از داکر با دستور زیر بصورت سریع و ساده در سیستم خود نصب و اجرا کنید:
docker run -p 9030:9030 -p 8030:8030 -p 8040:8040 -itd \
--name quickstart starrocks/allin1-ubuntu

بعد از اجرا شده کانتینر از طریق دستور زیر با محیط شبیه mysql دسترسی به دستابیس خواهید داشت:

docker exec -it quickstart \
mysql -P 9030 -h 127.0.0.1 -u root --prompt="StarRocks > "

با استفاده از خط فرمان بالا، می‌توانید دستورهای مشابه mysql را وارد کنید و خروجی را مشاهده کنید.

همچنین با درایور شبیه mysql با پورت 9030 با استفاده از برنامه‌هایی مانند DBeaver وصل شوید.

تجربه اولیه

من سعی کردم دیتاهای موجود در دیتابیس mysql موجود را بصورت اولیه با فایل sql وارد این برنامه کنم. متاسفانه با اینکه در دستورها و بعضی قابلیت‌ها مشابه mysql است ولی بصورت کامل امکان یکسان نیستند و کوئری‌های براساس راهنمای سایت RockStars نیاز به تغییر دارند تا اجرا شوند.
همچنین برای اجرای این برنامه در محیط عملیاتی (Production) نیاز به حداقل ۳ سرور دارید تا دسترسی پذیری (High Availability) تضمین شود.
  • M.H.Zarei