HBase: یک ذخیره ساز توزیع شده NoSQL به صورت ستون گرا
مقدمه
HBase یک محل ذخیره سازی NoSQL بصورت ترکیبی ستون گرا و Key-Value هستش. HBase دسترسی تصادفی به دیتا رو مشابه Google Big Table فراهم می که و می تونه روی بستر HDFS بصورت کاملا منطبق با Map Reduce اجرا بشه. هنر HBase اینه که روی ساختار بلوکی HDFS به ما دسترسی تصادفی می ده که داده هدفمون را برداشت کنیم. امکان دیگه ای که HBase داره بحث ورژن بندی دیتاست و دیتا رو داده قبلی بازنویسی نمی کنه و روی هر Key Value یه دونه Timestamp میزنه تا بتونیم History دیتا رو بکشیم بیرون. پس ما با یه جدول چهار بُعدی طرفیم، سطر و ستون و Time Stamp و Type مون. اگه به ما با هر سطر و ستون به دیتا مراجعه کنیم به ما لیستی از دیتا رو میده نه فقط یه دونه دیتا. دیتاهامون تو Region های متفاوت تقسیم میشن و هر Region یه Start , End داره. دیتامون هم بر اساس کلید مرتب میشه. نکته دیگه اینکه Regionها روی سرورهامون پخش میشن، بعنوان مثال شما اگه 100 تا سرور داشته باشین! با 500 تا Region، اونوقت به هر سرور چیزی حدود 50 تا Region اختصاص پیدا میکنه.
کلید
- سطر
- ستون
- خانواده ستون
- نام ستون
- زمان
- نوع
- همگی هم از نوع byte[] هستند.
پس یه مرور کنیم با هم:
HBase یک محل ذخیره داده از نوع key value و بر مبنای ستون است. برای پشتیبانی از نرخ بالای به روز رسانی جدول، و برای مقیاس گذاری به صورت افقی در خوشه های محاسباتی توزیع شده طراحی شده است. برای مثال، جداولی که حاوی میلیاردها ردیف و میلیون ها ستون هستند. یکی از برجسته ترین موارد استفاده از HBase به عنوان رسیدگی کننده داده های ساخت یافته برای زیرساخت های پایه نرم افزار پیام رسانی فیسبوک است. مانند هدوپ، HBase نیز معمولا با استفاده از JAVA و نه SQL ، برنامه ریزی می شود و هر جدولی باید یک ستون به عنوان کلید اولیه داشته باشد و تمامی اتصالات به جداول HBase باید با استفاده از این کلیدها صورت گیرد.
مفهوم Column Family در HBase
یا
یا
از لحاظ فنی، HBase در واقع بیشتر یک محل ذخیره سازی داده ها است. تا اینکه بخواهد یکپایگاه داده باشد.
زیرا بسیاری از ویژگی های یک سیستم RDBMS از جمله ستون های تایپ شده، ایندکسهای ثانویه، راه انداز و زبان های پرسو جوی پیشرفته را ندارد. خوشه بندی HBase با افزودن RegionServers ها که توسط سرورهای نسبتا ارزان قیمت میزبانی می شوند، گسترش می یابد. برای مثال، اگر یک خوشه RegionServers از 10 تا 20 گسترش یابد، از نظر ذخیره سازی و همچنین ظرفیت پردازش، دو برابر میشود در حالیکه HBase را می توان با استفاده از سخت افزار های ارزان گسترش داد. امکاناتی مانند Big Table را برای هدوپ فراهم می آورد.
کدام شرکت ها از HBase استفاده می کنند؟
از بزرگترین استفاده کنندگانش در آمریکا یاهو و فیس بوک و Flurry و خیلی جاهای دیگه هستند. Flurry یه کمپانی تحلیل دیتاهای موبایل هستش که بزرگترین کلاستر HBase دنیا رو در اختیار داره.
درباره محمد حیدری
مهندس ارشد کلان داده، هلدینگ داده ورزی سداد | پژوهشگر ارشد رایانش ابری و پایگاه های داده توزیع شده،پژوهشگاه دانشهای بنیادی (IPM)
نوشته های بیشتر از محمد حیدری
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.