ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

منهنجو مشورو آهي ته توهان پڙهو 2017 جي رپورٽ جو ٽرانسڪرپٽ Igor Stryhar جي "ClickHouse - Visually fast and clear data Analysis in Tabix."

Tabix پروجيڪٽ ۾ ClickHouse لاءِ ويب انٽرفيس.
اھڙا اھڙا

  • ڪلڪ هاؤس سان سڌو برائوزر کان ڪم ڪري ٿو، اضافي سافٽ ويئر انسٽال ڪرڻ جي ضرورت کان سواء؛
  • نحو نمايان ڪرڻ سان سوال ايڊيٽر؛
  • حڪمن جي خودڪار مڪمل ٿيڻ؛
  • سوال جي عمل جي گرافڪ تجزيي لاء اوزار؛
  • رنگ اسڪيمن مان چونڊڻ لاء.
    ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar


ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

مان SMI2 جو ٽيڪنيڪل ڊائريڪٽر آهيان. اسان خبرن جي تبادلي جي خبرن جو مجموعو آهيون. اسان تمام گهڻو ڊيٽا ذخيرو ڪندا آهيون جيڪو اسان پنهنجي ڀائيوارن کان حاصل ڪندا آهيون ۽ ان کي ڪلڪ هائوس ۾ رجسٽر ڪندا آهيون - اٽڪل 30 درخواستون في سيڪنڊ.

هي ڊيٽا آهي جهڙوڪ:

  • خبرن تي ڪلڪ ڪريو.
  • خبرون مجموعي ۾ ڏيکاري ٿو.
  • بينر ڏيکاري ٿو اسان جي نيٽ ورڪ تي.
  • ۽ اسان واقعن کي رجسٽر ڪندا آهيون اسان جي پنهنجي ڪائونٽر کان، جيڪو Yandex.Metrica سان ملندڙ جلندڙ آهي. هي اسان جي پنهنجي مائڪرو اينالائيٽڪس آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ClickHouse کان اڳ اسان جي ڏاڍي مصروف زندگي هئي. اسان تمام گهڻو نقصان ڪيو، ڪوشش ڪري رهيا هيا ته هن ڊيٽا کي ڪٿي ذخيرو ڪرڻ ۽ ڪنهن به طرح ان جو تجزيو ڪيو.

ClickHouse کان اڳ زندگي - infiniDB

پهرين شيء جيڪا اسان وٽ هئي infiniDB. هوء 4 سالن تائين اسان سان گڏ رهي. اسان ان کي مشڪل سان شروع ڪيو.

  • اهو ڪلسترنگ يا شارڊنگ کي سپورٽ نٿو ڏئي. ڪابه اهڙي سمارٽ شيون ڊفالٽ طور دٻي مان ٻاهر نه آئي.
  • هن کي ڊيٽا لوڊ ڪرڻ ۾ مشڪل آهي. صرف هڪ مخصوص ڪنسول افاديت جيڪا صرف CSV فائلن کي لوڊ ڪري سگهي ٿي ۽ صرف ڪجهه بلڪل غير واضح طريقي سان.
  • ڊيٽابيس هڪ واحد موضوع آهي. توهان يا ته لکي يا پڙهي سگهو ٿا. پر اهو ممڪن ڪيو ته ڊيٽا جي وڏي مقدار کي پروسيس ڪرڻ لاء.
  • ۽ هوء پڻ هڪ دلچسپ ڪڇ هئي. هر رات سرور کي ريبوٽ ڪرڻو پوندو هو، ٻي صورت ۾ اهو ڪم نه ڪندو.

هوء 2016 جي آخر تائين اسان لاء ڪم ڪيو، جڏهن اسان مڪمل طور تي ڪلڪ ڪيو هاؤس ڏانهن.

زندگي ClickHouse کان اڳ - Cassandra

جيئن ته infiniDB سنگل ٿريڊ هو، ان ڪري اسان فيصلو ڪيو ته اسان کي ڪنهن قسم جي ملٽي ٿريڊڊ ڊيٽابيس جي ضرورت آهي جنهن ۾ اسين هڪ ئي وقت ڪيترائي موضوع لکي سگهون ٿا.

اسان ڪافي دلچسپ شين جي ڪوشش ڪئي. پوء اسان Cassandra ڪوشش ڪرڻ جو فيصلو ڪيو. Cassandra سان سڀ ڪجهه عظيم هو. 10 درخواستون في سيڪنڊ في بلي. 000 درخواستون ڪٿي پڙهڻ لاءِ.

پر هن جا به پنهنجا مفاد هئا. مهيني ۾ هڪ ڀيرو يا هر ٻن مهينن ۾ هڪ ڀيرو هن کي ڊيٽابيس جي ڊس سنڪرونائيزيشن جو تجربو ٿيو. ۽ مون کي جاڳڻو پيو ۽ ڪئسندرا کي ٺيڪ ڪرڻ لاءِ ڊوڙڻو پيو. سرور هڪ هڪ ڪري ٻيهر شروع ڪيا ويا. ۽ هر شيء سهڻي ۽ خوبصورت ٿي وئي.

ClickHouse کان اڳ زندگي - Druid

پوء اسان محسوس ڪيو ته اسان کي وڌيڪ ڊيٽا لکڻ جي ضرورت آهي. 2016 ۾ اسان ڊروڊ ڏسڻ شروع ڪيو.

Druid هڪ اوپن سورس سافٽ ويئر آهي جيڪو جاوا ۾ لکيل آهي. تمام خاص. ۽ اهو ڪلڪ اسٽريم لاءِ موزون هو، جڏهن اسان کي ضرورت هجي ته ڪنهن قسم جي اسٽريم جي واقعن کي ذخيرو ڪريون ۽ پوءِ انهن تي مجموعي ڪرڻ يا تجزياتي رپورٽون ٺاهيون.

ڊروڊ جو نسخو 0.9.X هو.

ڊيٽابيس پاڻ کي ترتيب ڏيڻ تمام ڏکيو آهي. هي انفراسٽرڪچر جي پيچيدگي آهي. ان کي لڳائڻ لاء، ان کي تمام گهڻو انسٽال ڪرڻ ضروري هو، لوهه جو تمام گهڻو. ۽ هارڊويئر جو هر ٽڪرو پنهنجي الڳ ڪردار لاءِ ذميوار هو.

ان ۾ ڊيٽا لوڊ ڪرڻ لاء، ان کي shamanism جي ڪنهن قسم جي استعمال ڪرڻ ضروري هو. اتي ھڪڙو OpenSource پروجيڪٽ آھي - Tranquility، جيڪو ھڪڙي وهڪرو ۾ اسان کان ڊيٽا وڃائي رھيو ھو. جڏهن اسان ان ۾ ڊيٽا لوڊ ڪيو، اهو ان کي وڃائي ڇڏيو.

پر ڪنهن به طرح اسان ان تي عمل ڪرڻ شروع ڪيو. اسان، هيج هاگ وانگر، جن منشيات ورتي پر ڪيڪٽس کائڻ جاري رکيو، ان کي متعارف ڪرائڻ شروع ڪيو. ان لاءِ سڄو انفراسٽرڪچر تيار ڪرڻ ۾ اسان کي اٽڪل هڪ مهينو لڳي ويو. اھو آھي، سرور کي ترتيب ڏيو، ڪردار کي ترتيب ڏيو، ۽ مڪمل طور تي خودڪار ترتيب ڏيڻ. اهو آهي، هڪ ڪلستر جي ناڪامي جي صورت ۾، ٻيو ڪلستر خودڪار طور تي مقرر ڪيو ويندو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

پر پوء هڪ معجزو ٿيو. مان موڪلن تي هئس ۽ منهنجي ساٿين مون کي هڪ لنڪ موڪليو هبر، جنهن جو چوڻ آهي ته Yandex کولڻ جو فيصلو ڪيو ClickHouse. مان چوان ٿو ته ڪوشش ڪريون.

۽ لفظي طور تي 2 ڏينهن ۾ اسان هڪ ڪلڪ هاؤس ٽيسٽ ڪلسٽر مقرر ڪيو. اسان ان ۾ ڊيٽا لوڊ ڪرڻ شروع ڪيو. infiniDB جي مقابلي ۾، هي ابتدائي آهي؛ Druid جي مقابلي ۾، هي ابتدائي آهي. Cassandra جي مقابلي ۾، اهو پڻ ابتدائي آهي. ڇو ته جيڪڏهن توهان PHP کان ڊيٽا لوڊ ڪريو ٿا Cassandra ۾، پوء اهو ابتدائي نه آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اسان کي ڇا مليو؟ رفتار ۾ ڪارڪردگي. ڊيٽا اسٽوريج ۾ ڪارڪردگي. اهو آهي، تمام گهٽ ڊسڪ اسپيس استعمال ٿيل آهي. ClickHouse تيز آهي، اهو ٻين شين جي مقابلي ۾ تمام تيز آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

لانچ جي وقت، جڏهن Yandex شايع ڪيو ClickHouse OpenSource ۾، اتي صرف هڪ ڪنسول ڪلائنٽ هو. اسان جي ڪمپني SMI2 ۾ اسان فيصلو ڪيو ته ڪوشش ڪريون ته ويب لاءِ اصلي ڪلائنٽ، ته جيئن اسان برائوزر مان هڪ صفحو کولي سگهون، درخواست لکي ۽ نتيجو حاصل ڪري سگهون، ڇو ته اسان گهڻيون درخواستون لکڻ شروع ڪيون. ڪنسول ۾ لکڻ ڏکيو آهي. ۽ اسان پنهنجو پهريون نسخو ٺاهيو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

۽ گذريل سال جي سياري جي ويجهو ڪٿي، ڪلڪ هائوس سان ڪم ڪرڻ لاء ٽئين پارٽي اوزار ظاهر ٿيڻ شروع ڪيو. اهي اوزار آهن جهڙوڪ:

مان انهن مان ڪجهه اوزارن کي ڏسندس، يعني اهي، جن سان مون ڪم ڪيو آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

هڪ سٺو اوزار، پر ڊروڊ لاء. جڏهن ڊروڊ تي عمل ڪيو پيو وڃي، مان سپر سيٽ جي جانچ ڪري رهيو هوس. مون هن کي پسند ڪيو. Druid لاء اهو تمام تيز آهي.

اهو ClickHouse لاء مناسب ناهي. اھو آھي، اھو ٺھي ٿو، اھو شروع ٿئي ٿو، پر صرف ابتدائي سوالن تي عمل ڪرڻ لاءِ تيار آھي جھڙوڪ: SELECT event، GROUP BY event. اهو وڌيڪ پيچيده ClickHouse نحو جي حمايت نٿو ڪري.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ايندڙ اوزار Apache Zeppelin آهي. اها هڪ سٺي ۽ دلچسپ ڳالهه آهي. ڪم. اهو نوٽ بڪ، ڊيش بورڊ، ۽ متغير کي سپورٽ ڪري ٿو. مان ڄاڻان ٿو ته ClickHouse ڪميونٽي ۾ ڪو ماڻهو ان کي استعمال ڪري ٿو.

پر ڪلڪ هاؤس نحو لاءِ ڪا به مدد نه آهي، يعني توهان کي سوال لکڻو پوندو يا ته ڪنسول ۾ يا ڪنهن ٻئي هنڌ. اڳيون، چيڪ ڪريو ته اهو سڀ ڪم ڪري ٿو. اهو صرف تڪليف آهي. پر اهو سٺو ڊيش بورڊ سپورٽ آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ايندڙ اوزار Redash.IO آهي. Redash انٽرنيٽ تي ميزباني ڪئي وئي آهي. اهو آهي، اڳوڻي اوزار جي برعڪس، ان کي انسٽال ڪرڻ جي ضرورت ناهي. ۽ هي هڪ ڊيش بورڊ آهي مختلف ڊيٽا ذريعن کان ڊيٽا گڏ ڪرڻ جي صلاحيت سان. اھو آھي، توھان ڊائون لوڊ ڪري سگھو ٿا ClickHouse کان، MySQL کان، PostgreSQL کان ۽ ٻين ڊيٽابيس مان.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

صرف هڪ مهينو اڳ (مارچ 2017)، سپورٽ گرافانا ۾ ظاهر ٿيو. جڏهن توهان Grafana ۾ رپورٽون ٺاهيندا آهيو، مثال طور، توهان جي هارڊويئر جي حالت تي يا ڪجهه ميٽرڪس تي، هاڻي توهان ساڳيو گراف يا ڪنهن قسم جو پينل ٺاهي سگهو ٿا سڌو ڪلڪ هائوس مان ڊيٽا مان. اهو تمام آسان آهي، ۽ اسان ان کي استعمال ڪندا آهيون. اهو توهان کي غير معمولي ڳولڻ جي اجازت ڏئي ٿو. اهو آهي، جيڪڏهن ڪجهه ٿئي ٿو ۽ ڪجهه هارڊويئر گر ٿي يا تنگ ٿي وڃي ٿي، ته پوء توهان ان سبب کي ڏسي سگهو ٿا ته هي ڊيٽا ڪلڪ ڪيو هائوس ۾ حاصل ڪرڻ لاء منظم ڪيو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

مون کي انهن اوزارن ۾ يا ڪنسول ۾ لکڻ ڏاڍو عجيب لڳو. ۽ مون اسان جي پهرين انٽرفيس کي بهتر ڪرڻ جو فيصلو ڪيو. ۽ مون کي خيال آيو EventSQL، SeperSet، Zeppelin کان.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

توهان ڇا چاهيو ٿا؟ مون چاهيو ٿي گرافڪس حاصل ڪرڻ، هڪ بهتر ايڊيٽر، ۽ اشارو لغات لاءِ سپورٽ لاڳو ڪرڻ. ڇاڪاڻ ته ڪلڪ هاؤس وٽ هڪ بهترين خصوصيت آهي - لغات. پر لغتن سان ڪم ڪرڻ ڏکيو آهي، ڇاڪاڻ ته توهان کي ذخيرو ڪيل قدرن جي فارميٽ کي ياد رکڻ جي ضرورت آهي، يعني اهو هڪ نمبر آهي يا هڪ اسٽرنگ وغيره. ۽ جيئن ته اسان اڪثر لغتن کي انهن جي مختلف تبديلين ۾ استعمال ڪندا آهيون، ان ڪري سوالن کي لکڻ ڏاڍو ڏکيو هو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اسان جي پهرين ورزن جي رليز ٿيڻ کان 3 مهينا گذري ويا آهن. مون هڪ خانگي برانچ ۾ اٽڪل 330 ڪمٽ ڪيا ۽ اها ٽئبڪس نڪتي.

اڳئين ورزن جي برعڪس، جنهن کي ClickHouse-Frontend سڏيو ويندو هو، مون فيصلو ڪيو ته ان جو نالو مٽائي سادو نالو رکيو وڃي. ۽ اهو ظاهر ٿيو Tabix.

ڇا ظاهر ٿيو؟

گراف ٺاهي ٿو. ClickHouse SQL نحو کي سپورٽ ڪري ٿو. ڪمن تي مشورو ڏئي ٿو ۽ تمام گھڻو دلچسپ شيون ڪري سگھي ٿو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اھو اھو آھي جيڪو عام ٽيبڪس اسڪيم وانگر ڏسڻ ۾ اچي ٿو. کاٻي پاسي هڪ وڻ آهي. مرڪز ۾ سوال ايڊيٽر آهي. ۽ هيٺ ڏنل هن درخواست جو نتيجو آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اڳيان آئون توهان کي ڏيکاريندس ته سوال ايڊيٽر ڪيئن ڪم ڪندو آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

هتي خودڪار طريقي سان خودڪار طريقي سان ٽيبل تي ڪم ڪري ٿو ۽ اشارو ڏئي ٿو، مطابق، خودڪار مڪمل ڪرڻ لاء فيلڊ لاء. ۽ افعال تي اشارو. جيڪڏهن توهان ctrl enter کي دٻايو، درخواست تي عمل ڪيو ويندو يا غلطي سان ناڪام ٿيندو. آسان ترين درخواست Tabix ڏانهن موڪلي وئي آهي ۽ نتيجو حاصل ڪيو ويو آهي، يعني توهان جلدي ڪم ڪري سگهو ٿا ClickHouse سان.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ڊڪشنري، جيئن مون اڳ ۾ چيو آهي، هڪ تمام دلچسپ شيء آهي جنهن سان اسان تمام گهڻو ڪم ڪندا آهيون. ۽ جنهن اسان کي ڪيتريون ئي شيون ڪرڻ جي اجازت ڏني. اچو ته اسان سڀني شهرن کي ڊڪشنري ۾ ذخيرو ڪريون. اسان ذخيرو ڪريون ٿا شهر جي سڃاڻپ ڪندڙ ۽ شهر جو نالو، ان جي ويڪرائي ڦاڪ ۽ ڊگھائي. ۽ ڊيٽابيس ۾ اسان صرف شهر جي سڃاڻپ ڪندڙ کي ذخيرو ڪندا آهيون. ان جي مطابق، اسان ڊيٽا کي تمام مضبوط طور تي دٻايو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اهو لڳي ٿو ته هڪ سادي شيء آهي، پر اهو هڪ تمام دلچسپ انداز ۾ ClickHouse ۾ مدد ڪري ٿو. انهي حقيقت جي ڪري ته ClickHouse صرف nested جوائن کي سپورٽ ڪري ٿو، سوال هيٺئين طرف وڌي ٿو ۽ ڪافي وسيع آهي. ۽ جڏهن بریکٹ کوليندو آهي ۽ ڪجهه ڊگهو اظهار اچي ٿو، پوءِ سوال کي کولڻ جيترو سادو سوال پاڻ سان گڏ ڪم ڪرڻ آسان بڻائي ٿو. ڇاڪاڻ ته جڏهن سوال 200-300 لائينون ڊگهو ۽ ويڪر ۾ تمام وڏو آهي، اهو تمام مددگار آهي سوال کي ختم ڪرڻ ۽ پوء ڪجهه هنڌ ڳولڻ يا ڪنهن طرح ان کي مقامي ڪرڻ.

آبجیکٹ ٽري، ملٽي سواليون ۽ ٽيب (وڊيو 13:46 https://youtu.be/w1-XsL3nbRg?t=826)

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اڳيون آئون توهان کي وڻ ۽ ٽيب بابت ڏيکاريندس. کاٻي پاسي ھڪڙو وڻ آھي؛ مٿي تي توھان ڪيترائي ٽيب ٺاھي سگھو ٿا. ٽيب ڪم اسپيس وانگر آهن. توھان ڪيترائي ٽيب ٺاھي سگھو ٿا ۽ ھر ھڪ کي مختلف نالو ڏيو. اها رپورٽ ٺاهڻ لاءِ هڪ مني سسٽم وانگر آهي.

ٽيب خودڪار طور تي محفوظ ڪيا ويا آهن. جيڪڏهن توهان پنهنجو برائوزر ٻيهر شروع ڪريو يا Tabix کي بند ڪريو يا کوليو، اهو سڀ محفوظ ٿي ويندو.

Hotkey - آسان (وڊيو 14:39 https://youtu.be/w1-XsL3nbRg?t=879)

اتي hotkeys آهن ۽ انهن مان تمام گهڻو آهن. مون انهن مان ڪجهه هتي مثال طور ڪڍيا آهن. هي ٽيب کي تبديل ڪرڻ، هڪ درخواست تي عمل ڪرڻ يا ڪيترن ئي درخواستن تي عمل ڪرڻ آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

مان توهان کي ڏيکاريندس ته نتيجن سان ڪيئن ڪم ڪجي. اسان هڪ درخواست موڪليندا آهيون. هتي مان sin، cos ۽ tg ٺاهي رهيو آهيان. توھان نتيجو کي نمايان ڪري سگھو ٿا، يعني ھڪڙي ڪالمن لاء ھڪڙو عام نقشو ٺاھيو. توهان مثبت يا منفي قدر کي اجاگر ڪري سگهو ٿا. يا صرف هڪ مخصوص ٽيبل عنصر کي رنگ ڏيو. اهو آسان آهي جڏهن ٽيبل تمام وڏو آهي ۽ توهان کي پنهنجي اکين سان ڪجهه غير معمولي ڳولڻ جي ضرورت آهي. جڏهن مان بي ضابطگين کي ڳولي رهيو هوس، مون نمايان ڪئي ڪجهه لائينون، ڪجهه عناصر سائي يا ڳاڙهي ۾.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اتي ڪيتريون ئي دلچسپ شيون آهن. مثال طور، ريڊ مائن مارڪ ڊائون ۾ ڪاپي ڪيئن ڪجي. جيڪڏهن توهان کي ڪٿي به نتيجو نقل ڪرڻ جي ضرورت آهي، اهو تمام آسان آهي. توھان صرف ھڪڙو علائقو منتخب ڪري سگھو ٿا، چئو ”ڪاپي ٽو ريڊ مائن“ ۽ اھو نقل ڪندو ريڊ مائن مارڪ ڊائون ۾ يا ٺاھيندو ڪٿي سوال.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اڳيون سوال جي اصلاح آهي. مون هڪ ڀيرو "تاريخ" فيلڊ کي بيان ڪرڻ وساري ڇڏيو. ۽ ClickHouse ۾ منهنجي درخواست تي عمل نه ڪيو ويو، تمام جلدي، پر جلدي، يعني هڪ سيڪنڊ کان به گهٽ. جڏهن مون ڏٺو ته هو ڪيترين ئي لائينن مان گذري ٿو، مان ڊڄي ويس. اسان هڪ ڏينهن ۾ هن ٽيبل تي ڪيتريون ئي قطارون نه لکندا آهيون. مون درخواست جو تجزيو ڪرڻ شروع ڪيو ۽ ڏٺم ته مون ھڪڙي جاءِ تي ھڪڙي تاريخ مس ڪئي ھئي. اهو آهي، مون اهو ظاهر ڪرڻ وساري ڇڏيو آهي ته مون کي سڄي ٽيبل لاء ڊيٽا جي ضرورت ناهي، پر هڪ مخصوص مدت لاء.

Tabix وٽ "Stats" ٽئب آهي، جيڪو موڪليل درخواستن جي پوري تاريخ محفوظ ڪري ٿو، يعني اتي توهان ڏسي سگهو ٿا ته هن درخواست جون ڪيتريون لائينون پڙهيون ويون ۽ ان تي عمل ٿيڻ ۾ ڪيترو وقت لڳو. هي اصلاح جي اجازت ڏئي ٿو.

توھان سوال جي نتيجي تي ھڪڙي پيوٽ ٽيبل ٺاھي سگھو ٿا. توهان ڪلڪ ڪيو هائوس ڏانهن هڪ درخواست موڪلي ۽ ڪجهه ڊيٽا حاصل ڪئي. ۽ پوء توهان هن ڊيٽا کي پنهنجي مائوس سان منتقل ڪري سگهو ٿا ۽ ڪجهه قسم جي پيوٽ ٽيبل ٺاهي سگهو ٿا.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ايندڙ دلچسپ شيء سازش آهي. اچو ته چئون ته اسان کي هيٺ ڏنل درخواست آهي: گناهه لاءِ، cos 0 کان 299 تائين. ۽ ان کي ڪڍڻ لاءِ، توهان کي ”ڊرا“ ٽيب کي چونڊڻو پوندو ۽ توهان کي پنهنجي گناهه ۽ cos سان گڏ هڪ گراف ملندو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

توھان ھن کي مختلف محور ۾ ورهائي سگھو ٿا، يعني توھان ھڪ ئي وقت ٻه گراف گڏ ڪري سگھوٿا. هڪ حڪم ۽ ٻيو حڪم لکو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

توهان هسٽوگرام ٺاهي سگهو ٿا.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

توھان ھن کي ٽوڙي سگھوٿا گراف جي ميٽرڪس ۾.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

توهان هڪ گرمي نقشو ٺاهي سگهو ٿا.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

توهان هڪ حرارتي ڪئلينڊر ٺاهي سگهو ٿا. رستي جي ذريعي، اهو هڪ تمام آسان شيء آهي جڏهن توهان کي هڪ سال کان وڌيڪ بي ضابطگين جو تجزيو ڪرڻ جي ضرورت آهي، يعني، يا ته اسپائڪس يا ڦڙا ڳوليو. هن ڊيٽا جي تصور مون کي هن سان مدد ڪئي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

اڳيان آهي Treemap.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

Sankeys هڪ دلچسپ چارٽ آهي. هو يا ته وهڪرو آهي يا درياهه. پر مان ان کي درياهه سڏيندو آهيان. اهو پڻ توهان کي اجازت ڏئي ٿو ته ڪنهن به غير معموليات کي ڳولڻ لاء. اهو تمام آرامده آهي. مان ان کي ڳولڻ لاء استعمال ڪرڻ جي صلاح ڏيان ٿو.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ايندڙ دلچسپ شيء هڪ متحرڪ نقشو ڊرائنگ آهي. جيڪڏهن توهان پنهنجي ڊيٽابيس ۾ ويڪرائي ڦاڪ، ڊگھائي کي ذخيرو ڪريو ٿا، ۽ چئو، هڪ منزل کي ذخيرو ڪريو، جيڪڏهن توهان، مثال طور، ٽرڪنگ يا هوائي جهاز اڏامي رهيا آهيو، ته پوء توهان منزل جا رستا ٺاهي سگهو ٿا. اتي پڻ توھان انھن شين جي رفتار ۽ سائيز کي سيٽ ڪري سگھو ٿا جنھن ۾ اھي اڏامندا آھن.

پر هن نقشي سان مسئلو اهو آهي ته اهو صرف دنيا جو نقشو ٺاهي ٿو، ان ۾ تفصيل ناهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

بعد ۾ مون گوگل ميپ شامل ڪيو. جيڪڏھن توھان ذخيرو ڪريو ويڪرائي ڦاڪ، ڊگھائي، ته توھان نتيجو ڪڍي سگھوٿا گوگل ميپ تي، پر ھوائي جهاز جي مدد کان سواءِ.

اسان Tabix ۾ نتيجن ۽ سوالن سان ڪم ڪرڻ جي مکيه ڪمن تي بحث ڪيو آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ايندڙ هڪ توهان جي ClickHouse سرور جو تجزيو آهي. هتي هڪ الڳ "ميٽرڪس" ٽيب آهي، جتي توهان هر ڪالمن لاء ذخيرو ٿيل ڊيٽا جي ماپ ڏسي سگهو ٿا. اسڪرين شاٽ ڏيکاري ٿو ته هي "ريفرر" فيلڊ تقريبا 730 Gb وٺندو آهي. جيڪڏهن اسان هن فيلڊ کي ڇڏي ڏيون ٿا، اسان هر هڪ 700 GB جا ٽي شارڊ بچائينداسين، يعني اٽڪل 2 TB جنهن جي اسان کي ضرورت ناهي.

اسان وٽ پڻ "request_id" فيلڊ آهي جنهن کي اسين هڪ تار ۾ محفوظ ڪندا آهيون. پر جيڪڏهن اسان ان کي عددي شڪل ۾ رکڻ شروع ڪيو ته هي ميدان تمام گهڻو سڪي ويندو.

اهو پڻ ڏيکاري ٿو سرور جي ترتيب ۽ توهان جي ڪلستر ۾ نوڊس جي هڪ فهرست.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ايندڙ ٽيب ميٽرڪس آهي. اهي ClickHouse سان حقيقي وقت ۾ حاصل ڪن ٿا ۽ صرف توهان کي سرور جي حالت جو تجزيو ڪرڻ جي اجازت ڏين ٿا ۽ سمجھو ته ان سان ڇا ٿي رهيو آهي. هي مڪمل گرافانا جو متبادل ناهي. اهو تڪڙو تجزيو لاء ضروري آهي.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

ايندڙ ٽيب پروسيس آهي. انهن مان توهان سمجهي سگهو ٿا ته سرور تي ڇا ٿي رهيو آهي. سمجھو ته اتي ڇا پيو ٿئي. مون وٽ هڪ درخواست هئي جيڪا هر وقت پڙهڻ جي 200 GB استعمال ڪئي. مون ڏٺو ته هن انٽرفيس جي مهرباني. مون هن کي پڪڙيو ۽ هن کي درست ڪيو. ۽ اهو نڪتو 30 GB بابت، يعني هڪ ڪارڪردگي ڪڏهن ڪڏهن.

ClickHouse - Tabix ۾ بصري تيز ۽ وجداني ڊيٽا تجزيو. Igor Stryhar

تنهنجي مهرباني! ۽ اهو OpenSource ۾ آهي

مون ختم ڪيو. ۽ رستي ۾، اهو OpenSource آهي، اهو مفت آهي ۽ توهان کي ان کي ڊائون لوڊ ڪرڻ جي ضرورت ناهي. ان کي برائوزر ۾ کوليو ۽ سڀ ڪجھ ڪم ڪندو.

توهان جا سوال

Igor، اڳتي ڇا آهي؟ توهان هن اوزار کي ڪٿي ٺاهيندا؟

اڳيون، ڊيش بورڊ ظاهر ٿيندا، يعني شايد ڊيش بورڊ ظاهر ٿيندا. ٻين ڊيٽابيس سان گڏ انضمام. مون اهو ڪيو، پر اڃا تائين ان کي OpenSource ۾ شايع نه ڪيو آهي. هي آهي MySQL ۽ ممڪن آهي PostgreSQL. اهو آهي، اهو ممڪن ٿيندو ته Tabix کان درخواستون موڪلڻ لاء نه رڳو ڪلڪ هائوس ڏانهن، پر ٻين اوزارن ڏانهن پڻ.

واضح رهي ته وڏي پئماني تي ڪم ڪيو ويو آهي. اهو ظاهر ٿيو ته هڪ مڪمل خيال آهي. اهو برائوزر ۾ ڪيو ويو، ظاهري طور تي، هر قسم جي محور تي ڪچري کي ختم ڪرڻ ۽ جلدي سڄي شيء کي گڏ ڪرڻ لاء. مون ٻڌو آهي ته تون هلي رهيو آهين پي PHP حفاظتي ڪم ڪريو، تنهنڪري آسان طريقو اهو آهي ته ان کي برائوزر ۾ ٽائيپ ڪريو ۽ اهو هر هنڌ ڪم ڪندو. ان بابت ڪو به سوال ناهي. سوال هي آهي. اتي واقعي گهڻو ڪجهه ڪيو ويو آهي. ڪيترا ماڻهو هن تي ڪم ڪيو؟ ۽ اهو سڀ ڪجهه ڪيترو وقت ورتو؟ ڇاڪاڻ ته ڪسٽم ٽولز ۾ عام طور تي ايتري ڪارڪردگي نه هوندي آهي.

اسان جي ٽيم مان هڪ ماڻهو اونهاري کان اونهاري تائين ڪم ڪيو. هي پهريون نسخو هو. ان کان پوء مون اڪيلو 330 ڪم ڪيو. توهان ڇا ٿا ڏسو، منهنجي ساٿي ۽ مون اهو اڌ ۾ ڪيو. 3 مهينن ۾، پهرين نسخي کان آخري تائين، مون اڪثر ڪري اڪيلو ڪيو. پر مان نه ٿو ڄاڻان جاوا اسڪرپٽ چڱي طرح. هي منهنجو واحد هو ۽، مون کي اميد آهي، منهنجو آخري جاوا اسڪرپٽ پروجيڪٽ جنهن سان مون ڪم ڪيو. مون کي اهو مليو، مون ڏٺو - اوه، وحشت. پر مان واقعي پراڊڪٽ کي ختم ڪرڻ چاهيان ٿو ۽ اهو ئي ٿيو آهي.

رپورٽ لاء توهان جي وڏي مهرباني! هي هڪ بهترين اوزار آهي. سان جدول ڇا توهان مقابلو ڪيو؟

تنهنجي مهرباني. ان ڪري مون ان جو نالو Tabix رکيو، ڇاڪاڻ ته پھريون اکر ساڳيا آھن.

ڇو ته توهان مقابلو ڪيو؟

تمام گهڻي سيڙپڪاري ٿيندي، مقابلو ڪنداسين.

توهان اندروني تجزيه نگارن کي وڪرو ڪرڻ لاء ڪيئن پيش ڪري سگهو ٿا ته هي اوزار مڪمل طور تي تبديل ڪندو *ٽيبلو*؟ دليل ڪهڙا هوندا؟

ClickHouse سان مقامي طور تي ڪم ڪري ٿو. مون Tableau جي ڪوشش ڪئي، پر توهان لغتن ۽ ان وانگر مدد لاءِ نه ٿا لکي سگهو. مون کي خبر آهي ته ماڻهو Tabix سان ڪيئن ڪم ڪن ٿا. اهي هڪ سوال لکن ٿا، ان کي CSV تي اپلوڊ ڪريو ۽ ان کي BI تي اپ لوڊ ڪريو. ۽ اهي اڳ ۾ ئي اتي ڪجهه ڪري رهيا آهن. پر مون کي اهو سوچڻ ڏکيو وقت آهي ته اهي ڪيئن ڪندا آهن، ڇاڪاڻ ته اهو هڪ گرافڪ اوزار آهي. اهو 5 قطارن کي لوڊ ڪري سگھي ٿو، وڌ ۾ وڌ 000 قطارون، پر وڌيڪ نه، ٻي صورت ۾ برائوزر مقابلو نه ڪندو.

اهو آهي، ڊيٽا جي مقدار تي ڪجهه سنگين حدون آهن، صحيح؟

ها. مان تصور نٿو ڪري سگهان ته توهان 10 قطارون اپلوڊ ڪرڻ چاهيو ٿا توهان جي ٽيبل ۾ توهان جي برائوزر اسڪرين تي. ڇا جي لاءِ؟

ڇا هن جو مطلب اهو آهي ته هي هڪ انٽرفيس آهي جلدي ڊيٽا کي ڏسڻ لاءِ؟ ان کي ٿورو موڙ، ان کي موڙيو؟

ها، جلدي ڏسو ته اهو ڪيئن ڪم ڪري ٿو ۽ صرف هڪ خلاصو گراف ٺاهيو. ۽ پوءِ ڪنهن هنڌ ڏي. اسان وٽ اسان جو پنهنجو رپورٽنگ سسٽم آهي، جتان مان صرف هي درخواست وٺان ٿو. مان Tabix ۾ ٺاھيو ۽ ان کي اسان جي رپورٽنگ ڏانھن موڪليو.

۽ ٻيو سوال. ڪوهورٽ تجزيو؟

جيڪڏهن ڪي درخواستون آهن، اسان ان کي شامل ڪنداسين.

جڏهن توهان صرف ان کي استعمال ڪرڻ شروع ڪيو؟ ClickHouse، ڪيترو عرصو لاڳو ڪيو ويو؟ ڪلڪ ڪريو هائوس ۽ آڻڻ پيداوار جي حالت؟

جيئن مون چيو، اسان تمام ٿوري وقت ۾ هڪ ٽيسٽ ڪلسٽر لاڳو ڪيو. اسان ان کي ٻن ڏينهن ۾ لڳايو. ۽ اسان ان کي ڪجھ وڌيڪ هفتن تائين آزمايو. ۽ اسان 3 مهينن ۾ پيداوار تي پهچي ويا. پر اسان وٽ اسان جي پنهنجي ETL هئي، يعني ڊيٽا کي رڪارڊ ڪرڻ لاء هڪ اوزار. ۽ هو هر شيءِ ۾ لکي سگهي ٿو. هو MongoDB، Cassandra، MySQL ۾ لکي سگهي ٿو. اهو آسان هو ته هن کي سيکاريو ته ڪلڪ هائوس ۾ ڪيئن لکجي. اسان وٽ تيزيءَ سان عمل ڪرڻ لاءِ تيار ڪيل بنيادي ڍانچي موجود هئا. 3 مهينن اندر اسان پهريون حصو ڪڍڻ شروع ڪيو. 6 مهينن ۾ اسان مڪمل طور تي هر شيء کي ڇڏي ڏنو. اسان وٽ صرف هڪ ڪلڪ هائوس باقي آهي.

Igor، رپورٽ لاء تمام گهڻو مهرباني. مون واقعي پسند ڪيو نقشن جي استعمال سان رستن جي تعمير جي ڪارڪردگي. Yandex.Maps ۽ خاص طور تي ڪسٽم Yandex.Maps سان انضمام لاءِ ڪي منصوبا آهن؟

مون گوگل ميپ جي بدران ضم ڪرڻ جي ڪوشش ڪئي، پر مون کي Yandex.Maps تي اونداهي موضوع نه مليو. مون توهان کي هڪ ٽڪرو نه ٻڌايو. مان شامل ڪرڻ لاءِ واپس ڪندس.

سلائيڊ - گوگل نقشو. اتي ھڪڙو حڪم آھي "DRAW_GMAPS"، جيڪو نقشو ٺاھي ٿو. هتي هڪ حڪم آهي "DRAW_YMAPS"، يعني اهو Yandex.Map ٺاهي سگھي ٿو. پر حقيقت ۾، هن حڪم هيٺ Javascript آهي، يعني اهو ڊيٽا جيڪو توهان ClickHouse مان حاصل ڪندا آهيو، جاوا اسڪرپٽ ڏانهن منتقل ڪري سگهجي ٿو، جيڪو توهان هتي لکندا آهيو. ۽ توھان وٽ ھڪڙو ٻاھرين علائقو آھي جتي اھو ٺاھيو وڃي. توهان ڪو به گراف ٺاهي سگهو ٿا، يعني ڪو به گراف، نقشو، توهان پنهنجو حصو ٺاهي سگهو ٿا. ان کان اڳ، مون وٽ گرافس ٺاهڻ لاءِ هڪ ٻي لائبريري هئي.

اھو آھي، ڇا ھڪڙو اوزار آھي ڊسپلي ڪارڪردگي کي ترتيب ڏيڻ لاء؟

ڪو. توهان انهن نقطن کي وٺي ۽ ٻيهر رنگ ڪري سگهو ٿا، انهن کي ڳاڙهو نه، پر نيرو، سائو.

رپورٽ لاءِ مهرباني! توھان وٽ ھڪڙي سلائڊ ھئي جيڪا پيش ڪئي وئي متبادل سوال جا اوزار ڪلڪ ڪريو هائوس ڊيش بورڊ ۽ تجزياتي رپورٽن جي تعمير لاء. مان سمجهان ٿو ته ان وقت جڏهن توهان ڪم ڪرڻ شروع ڪيو ClickHouse، انهن اوزارن لاءِ ڪوبه ايڊاپٽر نه لکيو ويو آهي. ۽ مان حيران ٿي رهيو آهيان ته توهان ڪجهه تيار ٿيل اوزار لاءِ اڊاپٽر لکڻ بدران پنهنجو اوزار ٺاهڻ جو فيصلو ڇو ڪيو؟ مان سمجهان ٿو ته ٽيسٽ ايڊيٽر کي ٽائيڪ ڪرڻ جلدي آهي. توهان ايترو ڪم ڪرڻ جو فيصلو ڇو ڪيو؟

هتي هڪ دلچسپ نقطو آهي - حقيقت اها آهي ته مان هڪ ٽيڪنيڪل ڊائريڪٽر آهيان، نه ڊيٽا سائنسدان. جنهن وقت اسان ڊروڊ کي لاڳو ڪرڻ شروع ڪيو، منهنجي روڊ ميپ تي لڳ ڀڳ 50 سيڪڙو ڪم هئا- اچو ته ان جو ڳڻپ ڪريون، يا اچو ته ان جو حساب ڪريون، يا ان جو تجزيو ڪريون. ۽ اهو ظاهر ٿيو ته اسان ڪلڪ ڪيو هائوس تي عمل ڪيو. ۽ هن جلدي جلدي هر شي ٺاهڻ شروع ڪيو، ڳڻيو، ۽ جلدي پنهنجي روڊ ميپ کي بند ڪيو. ۽ ان وقت تائين مون محسوس ڪيو ته مون وٽ ڊيٽا سائنس ۽ ڊيٽا بصري ۾ ڄاڻ نه هئي. Tabix هڪ قسم جو منهنجو هوم ورڪ آهي ڊيٽا بصري کي سکڻ لاءِ. مان ڏسي رهيو هوس ته زپيلين کي ڪيئن پورو ڪجي. مون کي هن جي پروگرامنگ لاء ٿوري ناپسند آهي. Redash مون ڏٺو ته ان کي ڪيئن شامل ڪجي، پر هڪ عام ايڊيٽر مون لاءِ ڪافي هو. ۽ سپر سيٽ پڻ هڪ ٻولي ۾ لکيل آهي جيڪا مون کي پسند ناهي. ۽ تنهن ڪري مون فيصلو ڪيو ته سائيڪل هلائڻ، ۽ اهو ئي ٿيو.

اگور، ڇا توهان پل جون درخواستون قبول ڪندا آهيو؟

ها.

رپورٽ لاء توهان جي وڏي مهرباني! ۽ ٻه سوال. پهرين، توهان جي باري ۾ تمام خوشيء سان نه ڳالهايو جاوا اسڪرپٽ. ڇا توهان بيئر جاوا اسڪرپٽ ۾ لکيو آهي يا اهو ڪنهن قسم جو فريم ورڪ آهي؟*

بيئر جاوا اسڪرپٽ ۾ بهتر.

پوء ڪهڙو فريم ورڪ؟

ڪوئلي وارو.

اهو واضح آهي. ۽ ٻيو سوال. توهان غور ڪيو آهي R и *چمڪندڙ**?*

غور ڪيو. کيڏيو.

توهان صرف هڪ اڊاپٽر پڻ لکي سگهو ٿا.

هي آهي. اهو لڳي ٿو ته ڪميونٽي ان کي ٺاهيو، پر، جيئن مون پوئين سوال جو جواب ڏنو، مان پاڻ کي ڪوشش ڪرڻ چاهيان ٿو.

* نه، بصري جي حوالي سان، اهو پڻ آهي.

توهان چئو ٿا ته اتي هڪ اهڙي شيء آهي ۽ اهو توهان کي گراف ٺاهيندو. مون ڊيٽا بصري تي هڪ ڪتاب کوليو. ۽ مون سوچيو: ”مون کي هن ڊيٽا کي ڏسڻ جي ڪوشش ڪرڻ ڏيو. مان هن ڏانهن لکندس ته جيئن هو ڊيٽا کي ٻيهر ٺاهي سگهي. ۽ مون ڊيٽا سپلائي ٽيڪنالاجي کي بهتر سمجهڻ شروع ڪيو. ۽ جيڪڏھن مون ھڪڙو تيار ٿيل حصو ورتو ھو، مون کي ذاتي طور تي وڌيڪ خراب ٿي سگھي ٿو ته اھو ڪيئن استعمال ڪجي، اھو آھي، بصري. پر ها، مون کي R پسند آيو، پر مون اڃا تائين ڪتاب ”آر فار ڊميز“ نه پڙهيو آهي.

مهرباني

سادو سوال. ڇا ڪي طريقا آھن تڪڙو اپلوڊ ڪرڻ لاءِ نشاني يا شيڊول؟

CSV يا Excel تي اپ لوڊ ڪري سگھجي ٿو.

ڊيٽا نه، پر هڪ تيار ٿيل پليٽ، هڪ تيار ڪيل گراف؟ مثال طور، باس کي ڏيکارڻ لاء.

اتي ھڪڙو بٽڻ آھي "اپلوڊ" ۽ ھڪڙو بٽڻ آھي "اپلوڊ گراف ۾ png، jpg ۾".

مهرباني

P.S. tabix انسٽال ڪرڻ لاء ميني-هدايتون

  • ڊائون لوڊ ڪريو تازو ڇڏڻ
  • کوليو، ڪاپي ڊاريڪٽري build nginx root_path ۾
  • nginx ترتيب ڏيو

جو ذريعو: www.habr.com

تبصرو شامل ڪريو