Hive په سوداګرۍ کې د لوی ډیټا تحلیلاتو پراخه کارول شوې وسیله ده ، او دا د پیل کولو لپاره خورا ښه ځای دی که تاسو لوی ډیټا ته نوي یاست. دا د اپاچي Hive درس د اپاچي Hive د اساساتو له لارې تیریږي، ولې پټه اړینه ده، د هغې ځانګړتیاوې، او نور هرڅه چې تاسو باید پوه شئ.
راځئ چې لومړی د هاډوپ چوکاټ پوه شو چې په کوم کې د اپاچي هیو جوړ شوی.
اپاچی هډوپ
اپاچی هډوپ یو وړیا او وړیا دی د پرانستې-سرچینې د لوی ډیټاسیټونو ذخیره کولو او پروسس کولو لپاره پلیټ فارم چې د ګیګابایټ څخه تر پیټابایټ پورې اندازه لري. هډوپ د ډیری کمپیوټرونو کلستر کولو ته اجازه ورکوي چې په موازي ډول لوی ډیټاسیټونه تحلیل کړي ، د دې پرځای چې د ډیټا ذخیره کولو او تحلیل لپاره یو لوی کمپیوټر ته اړتیا ولري.
MapReduce او Hadoop توزیع شوي فایل سیسټم دوه برخې دي:
- میپ ریډس - MapReduce د اجناسو هارډویر کلسترونو کې د تنظیم شوي ، نیمه جوړ شوي او غیر جوړښت شوي ډیټا لوی مقدار اداره کولو لپاره د موازي برنامې تخنیک دی.
- HDFS - HDFS (د هډوپ توزیع شوي فایل سیسټم) د هاډوپ چوکاټ چوکاټ برخه ده چې ډاټا ذخیره کوي او پروسس کوي. دا د غلطۍ زغمونکی فایل سیسټم دی چې په معیاري هارډویر چلیږي
د هډوپ ایکوسیستم کې مختلف فرعي پروژې (وسیلې) په شمول د Sqoop، Pig او Hive په شمول، د هډوپ ماډلونو سره د مرستې لپاره کارول کیږي.
- هډوکي - Hive د SQL سټایل سکریپټونو لیکلو لپاره چوکاټ دی چې د MapReduce کمپیوټري ترسره کوي.
- سور - سور د طرزالعمل پروګرام کولو ژبه ده چې کیدای شي د MapReduce پروسو لپاره د سکریپټ جوړولو لپاره وکارول شي.
- Sqoop - Sqoop د HDFS او RDBMS ترمنځ د معلوماتو واردولو او صادرولو لپاره وسیله ده.
څه دي اپاچی هوی?
Apache Hive یوه خلاص سرچینه ده د ډاټا ګودام د لوی ډیټا سیټونو لوستلو ، لیکلو او اداره کولو لپاره برنامه په مستقیم ډول د اپاچي هډوپ توزیع شوي فایل سیسټم (HDFS) یا نورو ډیټا ذخیره کولو سیسټمونو لکه اپاچي HBase کې زیرمه شوي.
د SQL پراختیا کونکي ممکن د ډیټا پوښتنو او تحلیلونو لپاره د Hive Query Language (HQL) بیانونو رامینځته کولو لپاره Hive وکاروي چې د منظم SQL بیاناتو سره پرتله کیږي. دا د دې لپاره رامینځته شوی چې د جاوا اوږد کوډ زده کولو او لیکلو اړتیا له مینځه وړلو سره د MapReduce برنامې اسانه کړي. پرځای یې، تاسو کولی شئ خپلې پوښتنې په HQL کې ولیکئ، او Hive به نقشه جوړه کړي او ستاسو لپاره فعالیتونه کم کړي.
د اپاچي Hive د SQL په څیر انٹرفیس د اډ-هاک لټونونو ترسره کولو ، لنډیز کولو او د هډوپ ډیټا تحلیل کولو لپاره د سرو زرو معیار ګرځیدلی. کله چې په بادل کې شامل وي کمپیوټري شبکې، دا حل په ځانګړي توګه ارزانه او د توزیع وړ دی ، له همدې امله ډیری شرکتونه ، پشمول د Netflix او ایمیزون ، د اپاچي Hive پراختیا او ښه کولو ته دوام ورکوي.
تاریخ
په فیسبوک کې د دوی د وخت په جریان کې، جویدیپ سین سرما او اشیش توسو په ګډه اپاچي هیو جوړ کړ. دوی دواړه پوهیدلي چې د هډوپ څخه ډیری ترلاسه کولو لپاره ، دوی باید د جاوا نقشه کمولو لپاره ځینې پیچلي دندې رامینځته کړي. دوی پوهیدلي چې دوی به ونه شي کولی خپل ګړندۍ پراختیایی انجینري او تحلیلي ټیمونه د هغه مهارتونو په اړه زده کړي چې دوی ورته اړتیا لري په ټول شرکت کې د هاډوپ ګټه پورته کړي. انجینرانو او شنونکو په مکرر ډول د کارن انٹرفیس په توګه SQL کارولی.
پداسې حال کې چې SQL کولی شي ډیری تحلیلي اړتیاوې پوره کړي، پراختیا کونکي هم اراده لري چې د هډوپ پروګرام وړتیا شامل کړي. Apache Hive د دې دوو موخو څخه راوتلی: د SQL-based declarative ژبه چې پراختیا کونکو ته یې هم توان ورکړ چې خپل سکریپټونه او پروګرامونه راوړي کله چې SQL کافی نه و.
دا په شرکت کې د ټولو ډیټاسیټونو په اړه د مرکزي میټاډاټا (هډوپ پراساس) ساتلو لپاره هم رامینځته شوی ترڅو د معلوماتو پرمخ وړونکو سازمانونو جوړول اسانه کړي.
Apache Hive څنګه کار کوي؟
په لنډه توګه، Apache Hive د HiveQL (SQL په څیر) ژبه کې لیکل شوي ان پټ برنامه په یو یا ډیرو جاوا میپ ریډیوس، ټیز، یا سپارک کارونو بدلوي. (دا ټول اجرا کولو انجنونه د Hadoop YARN سره مطابقت لري.) له هغې وروسته، Apache Hive ډاټا د هډوپ ویشل شوي فایل سیسټم HDFS لپاره میزونو کې تنظیموي) او د ځواب ترلاسه کولو لپاره په کلستر کې دندې ترسره کوي.
د معلوماتو د
د Apache Hive جدولونه په ورته ډول تنظیم شوي لکه څنګه چې په اړونده ډیټابیس کې میزونه تنظیم شوي ، د ډیټا واحدونو اندازه له لوی څخه تر کوچني پورې. ډیټابیسونه د میزونو څخه جوړ شوي دي چې په ویشلو ویشل شوي، کوم چې نور په بالټونو ویشل شوي. HiveQL (Hive Query Language) ډیټا ته د لاسرسي لپاره کارول کیږي ، کوم چې بدل یا ضمیمه کیدی شي. د جدول ډیټا په هر ډیټابیس کې سیریل شوی ، او هر جدول خپل HDFS لارښود لري.
Architecture
اوس موږ به د Hive معمارۍ ترټولو مهم اړخ په اړه وغږیږو. د Apache Hive اجزا په لاندې ډول دي:
میټاسټور - دا د هر میز په اړه معلومات تعقیبوي، لکه د هغې جوړښت او موقعیت. د ویش میټاډاټا په ورته ډول په Hive کې شامله ده. دا چلوونکي ته اجازه ورکوي چې د مختلفو ډیټا سیټونو پرمختګ تعقیب کړي چې په کلستر کې خپریږي. معلومات په دودیز RDBMS بڼه کې زیرمه شوي. د Hive میټاډاټا د ډیټا تعقیب ساتلو لپاره د موټر چلونکي لپاره خورا مهم دی. د بیک اپ سرور په منظم ډول ډیټا نقل کوي ترڅو د معلوماتو له لاسه ورکولو په صورت کې بیرته ترلاسه شي.
ډرایور - د HiveQL بیانونه د ډرایور لخوا ترلاسه کیږي، کوم چې د کنټرولر په توګه کار کوي. د غونډو په جوړولو سره، چلوونکی د بیان اجرا کول پیلوي. دا د اجرایوي ژوند او پرمختګ تعقیب ساتي. د HiveQL بیان اجرا کولو پرمهال، چلوونکی اړین میټاډاټا خوندي کوي. دا د کمولو پروسې وروسته د معلوماتو یا پوښتنو پایلې راټولولو نقطې په توګه هم کار کوي.
تالیف کونکی - دا د HiveQL پوښتنې تالیف اجرا کوي. پوښتنه اوس د اجرا کولو پلان ته بدله شوې. دندې په پلان کې لیست شوي دي. پدې کې هغه ګامونه هم شامل دي چې MapReduce باید د پوښتنې لخوا ژباړل شوي پایلې ترلاسه کولو لپاره واخلي. پوښتنه د Hive د کمپیلر (AST) لخوا د خلاصې ترکیب ونې ته بدله شوې. AST د مطابقت او تالیف وخت نیمګړتیاو (DAG) لپاره چیک کولو وروسته مستقیم اسیلیک ګراف ته بدلوي.
اصلاح کوونکی - دا د اجرا کولو پلان کې د مختلف بدلونونو په ترسره کولو سره DAG غوره کوي. دا د ښه موثریت لپاره بدلونونه سره یوځای کوي، لکه د یوځای کیدو پایپ لاین په یو واحد کې بدلول. د سرعت د ښه کولو لپاره، اصلاح کوونکی ممکن فعالیتونه تقسیم کړي، لکه د کمولو عملیات ترسره کولو دمخه د معلوماتو لپاره د بدلون پلي کول.
اجرا کونکی - اجرا کونکی هغه مهال دندې پرمخ وړي کله چې تالیف او اصلاح پای ته ورسیږي. دندې د اجرا کونکي لخوا پایپ لاین کیږي.
CLI، UI، او Thrift Server - د کمانډ لاین انٹرفیس (CLI) یو کارن انٹرفیس دی چې یو بهرني کارونکي ته اجازه ورکوي چې د Hive سره اړیکه ونیسي. د Hive د تخفیف سرور، د JDBC یا ODBC پروتوکولونو ته ورته دی، بهرني پیرودونکو ته اجازه ورکوي چې د شبکې له لارې د Hive سره اړیکه ونیسي.
امنیت
Apache Hive د هډوپ امنیت سره مدغم شوی ، کوم چې د پیرودونکي - سرور دوه اړخیز تصدیق لپاره کربروس کاروي. HDFS په اپاچي Hive کې د نوي تولید شوي فایلونو لپاره اجازه لیکي، تاسو ته اجازه درکوي چې د کارونکي، ډلې او نورو لخوا تصویب شي.
اصلي ځانګړنې
- Hive د بهرني میزونو ملاتړ کوي، کوم چې تاسو ته اجازه درکوي چې په HDFS کې ذخیره کولو پرته ډاټا پروسس کړئ.
- دا د سرعت زیاتولو لپاره د میز په کچه د معلوماتو قطع کول هم وړوي.
- Apache Hive په ښه توګه د هډوپ د ټیټې کچې انٹرفیس اړتیا پوره کوي.
- Hive د معلوماتو لنډیز کول، پوښتنې کول، او تحلیل اسانه کوي.
- HiveQL هیڅ پروګرام کولو مهارتونو ته اړتیا نلري؛ د SQL پوښتنو ساده پوهه کافي ده.
- موږ کولی شو د ډیټا تحلیل لپاره د اډ-هاک پوښتنو ترسره کولو لپاره Hive هم وکاروو.
- دا د توزیع وړ، پیژندل شوی، او د تطبیق وړ دی.
- HiveQL هیڅ پروګرام کولو مهارتونو ته اړتیا نلري؛ د SQL پوښتنو ساده پوهه کافي ده.
ګټې
Apache Hive د ورځې پای راپورونو، د ورځني معاملو ارزونو، اډ-هاک لټونونو، او د معلوماتو تحلیل ته اجازه ورکوي. د Apache Hive لخوا چمتو شوي جامع لیدونه د پام وړ رقابتي ګټې ورکوي او ستاسو لپاره د بازار غوښتنو ته ځواب ویل اسانه کوي.
دلته د داسې معلوماتو په اسانۍ سره د شتون ځینې ګټې دي:
- د کارولو اسانتیا - د دې د SQL په څیر ژبې سره، د پوښتنو ډاټا د پوهیدو لپاره ساده ده.
- ګړندی معلومات داخلول - ځکه چې اپاچي های د جدول ډول یا سکیما تعریف تایید کولو پرته سکیما لولي ، نو ډیټا باید د ډیټابیس داخلي ب formatه کې ډیسک ته لوستل ، پارس او سریال کولو ته اړتیا نلري. برعکس، په دودیز ډیټابیس کې، ډاټا باید هرکله چې اضافه شي تصدیق شي.
- غوره توزیع، انعطاف، او د لګښت اغیزمنتوب - ځکه چې ډیټا په HDFS کې زیرمه شوې ، اپاچي هیو کولی شي د 100s پیټابایټ ډیټا وساتي ، دا د عادي ډیټابیس په پرتله خورا ډیر د توزیع وړ اختیار رامینځته کوي. Apache Hive، د بادل پر بنسټ د هډوپ خدمت په توګه، پیرودونکو ته اجازه ورکوي چې په چټکۍ سره د مجازی سرورونو څخه پورته او ښکته کړي ترڅو د بدلولو کاري بارونو پوره کولو لپاره.
- پراخه کاري ظرفیت - لوی ډیټاسیټونه ممکن په هر ساعت کې تر 100,000 پورې پوښتنې اداره کړي.
محدودیتونه
- په عموم کې، د اپاچي Hive پوښتنې خورا لوړ ځنډ لري.
- د پوښتنو ملاتړ محدود دی.
- د ریښتیني وخت پوښتنې او د قطار په کچه بدلونونه په اپاچي Hive کې شتون نلري.
- د مادي نظریاتو لپاره هیڅ ملاتړ نشته.
- په پټۍ کې، د تازه کولو او حذف کولو کړنې نه ملاتړ کیږي.
- د OLTP (آنلاین انتقالي پروسې) لپاره نه دی.
د Apache Hive سره پیل کول
Apache Hive یو پیاوړی هډوپ ملګری دی چې ستاسو کاري جریان ساده او منظموي. د Apache Hive څخه ډیری ترلاسه کولو لپاره، بې سیمه ادغام اړین دی. لومړی ګام دا دی چې ته لاړ شي ویب پاڼه.
1. د یو ثابت ریلیز څخه د Hive نصب کول
د اپاچي ډاونلوډ عکسونو څخه د Hive ترټولو وروستي مستحکم ریلیز ډاونلوډ کولو سره پیل کړئ (وګورئ Hive ریلیز). ټربال بیا باید خلاص شي. دا به د Hive-xyz په نوم یو فرعي فولډر رامینځته کړي (چیرې چې xyz د خوشې کولو شمیره ده):
د چاپیریال متغیر HIVE_HOME تنظیم کړئ ترڅو د نصب کولو لارښود ته اشاره وکړي:
په نهایت کې، خپل ته $HIVE_HOME/bin اضافه کړئ PATH
:
2. چلول Hive
Hive Hadoop کاروي، نو:
- تاسو باید په خپله لاره کې هډوپ ولرئ یا
3. د DLL عملیات
د Hive میز جوړول
د دوه کالمونو سره د پوکس په نوم یو جدول رامینځته کوي ، چې لومړی یې انټیجر دی او دوهم یې تار دی.
د میزونو له لارې لټون کول
د ټولو جدولونو لیست کول
د میزونو بدلول او غورځول
د جدول نومونه بدل کیدی شي او کالمونه اضافه یا بدل کیدی شي:
دا د یادولو وړ ده چې REPLACE COLUMNS ټول موجوده کالمونه ځای په ځای کوي پداسې حال کې چې یوازې د میز جوړښت بدلوي نه ډاټا. یو اصلي SerDe باید په جدول کې وکارول شي. REPLACE COLUMNS د جدول سکیما څخه د کالمونو لرې کولو لپاره هم کارول کیدی شي:
د غورځولو میزونه
په اپاچي هیو کې ډیری اضافي عملیات او ځانګړتیاوې شتون لري چې تاسو یې د رسمي ویب پاڼې په لیدلو سره زده کولی شئ.
پایله
د Hive تعریف د لوی ډیټاسیټونو لپاره د پوښتنو او تحلیل لپاره د ډیټا برنامه انٹرفیس دی چې د اپاچي هډوپ په سر کې جوړ شوی. مسلکیان دا د نورو برنامو ، وسیلو او سافټویر په پرتله غوره کوي ځکه چې دا په عمده ډول د Hive پراخه ډیټا لپاره ډیزاین شوی او کارول یې ساده دي.
امید لرم چې دا ټیوټوریل تاسو سره د اپاچي Hive سره په کیک سټارټ کې مرسته کوي او ستاسو د کاري جریان ډیر اغیزمن کړي. موږ ته په نظرونو کې خبر راکړئ.
یو ځواب ورکړئ ووځي