ప్రోహోస్టర్ > బ్లాగ్ > పరిపాలన > క్లిక్హౌస్ - టాబిక్స్లో దృశ్యపరంగా వేగవంతమైన మరియు సహజమైన డేటా విశ్లేషణ. ఇగోర్ స్ట్రైహర్
క్లిక్హౌస్ - టాబిక్స్లో దృశ్యపరంగా వేగవంతమైన మరియు సహజమైన డేటా విశ్లేషణ. ఇగోర్ స్ట్రైహర్
Igor Stryhar "ClickHouse - Tabixలో దృశ్యపరంగా వేగవంతమైన మరియు స్పష్టమైన డేటా విశ్లేషణ" ద్వారా 2017 నివేదికను చదవమని నేను మీకు సూచిస్తున్నాను.
Tabix ప్రాజెక్ట్లో ClickHouse కోసం వెబ్ ఇంటర్ఫేస్.
ముఖ్య లక్షణాలు:
అదనపు సాఫ్ట్వేర్ను ఇన్స్టాల్ చేయాల్సిన అవసరం లేకుండా నేరుగా బ్రౌజర్ నుండి క్లిక్హౌస్తో పని చేస్తుంది;
సింటాక్స్ హైలైటింగ్తో క్వెరీ ఎడిటర్;
ఆదేశాల స్వయంపూర్తి;
ప్రశ్న అమలు యొక్క గ్రాఫికల్ విశ్లేషణ కోసం సాధనాలు;
ఎంచుకోవడానికి రంగు పథకాలు.
నేను SMI2 సాంకేతిక డైరెక్టర్ని. మేము వార్తల మార్పిడి వార్తల అగ్రిగేటర్. మేము మా భాగస్వాముల నుండి స్వీకరించే చాలా డేటాను నిల్వ చేస్తాము మరియు క్లిక్హౌస్లో నమోదు చేస్తాము - సెకనుకు దాదాపు 30 అభ్యర్థనలు.
ఇది అటువంటి డేటా:
వార్తలపై క్లిక్లు.
అగ్రిగేటర్లో వార్తలు ప్రదర్శించబడతాయి.
మా నెట్వర్క్లో బ్యానర్ డిస్ప్లేలు.
మరియు మేము మా స్వంత కౌంటర్ నుండి ఈవెంట్లను నమోదు చేస్తాము, ఇది Yandex.Metrica మాదిరిగానే ఉంటుంది. ఇది మన స్వంత సూక్ష్మ విశ్లేషణ.
క్లిక్హౌస్కి ముందు మేము చాలా తీవ్రమైన జీవితాన్ని గడిపాము. మేము చాలా బాధపడ్డాము, ఈ డేటాను ఎక్కడో నిల్వ చేయడానికి మరియు దానిని విశ్లేషించడానికి ప్రయత్నిస్తున్నాము.
క్లిక్హౌస్కు ముందు జీవితం - infiniDB
మేము కలిగి ఉన్న మొదటి విషయం infiniDB. ఆమె మాతో 4 సంవత్సరాలు నివసించింది. కష్టపడి లాంచ్ చేశాం.
ఇది క్లస్టరింగ్ లేదా షార్డింగ్కు మద్దతు ఇవ్వదు. డిఫాల్ట్గా అలాంటి స్మార్ట్ విషయాలు ఏవీ బాక్స్ నుండి బయటకు రాలేదు.
ఆమెకు డేటా లోడ్ చేయడంలో ఇబ్బంది ఉంది. CSV ఫైల్లను మాత్రమే లోడ్ చేయగల నిర్దిష్ట కన్సోల్ యుటిలిటీ మాత్రమే మరియు చాలా అస్పష్టమైన మార్గంలో మాత్రమే.
డేటాబేస్ ఒకే-థ్రెడ్. మీరు వ్రాయవచ్చు లేదా చదవవచ్చు. కానీ పెద్ద మొత్తంలో డేటాను ప్రాసెస్ చేయడం సాధ్యపడింది.
మరియు ఆమెకు ఆసక్తికరమైన ఊతకర్ర కూడా ఉంది. ప్రతి రాత్రి సర్వర్ను రీబూట్ చేయాల్సి ఉంటుంది, లేకపోతే అది పనిచేయదు.
మేము పూర్తిగా క్లిక్హౌస్కి మారిన 2016 చివరి వరకు ఆమె మా కోసం పనిచేసింది.
క్లిక్హౌస్కి ముందు జీవితం – కాసాండ్రా
infiniDB సింగిల్-థ్రెడ్ అయినందున, మేము ఒకే సమయంలో అనేక థ్రెడ్లను వ్రాయగలిగే బహుళ-థ్రెడ్ డేటాబేస్ అవసరమని మేము నిర్ణయించుకున్నాము.
మేము చాలా ఆసక్తికరమైన విషయాలను ప్రయత్నించాము. అప్పుడు మేము కాసాండ్రాను ప్రయత్నించాలని నిర్ణయించుకున్నాము. కాసాండ్రాతో ప్రతిదీ చాలా బాగుంది. బిడ్కి సెకనుకు 10 అభ్యర్థనలు. చదవడానికి ఎక్కడో 000 అభ్యర్థనలు.
కానీ ఆమెకు తన స్వంత అభిరుచులు కూడా ఉన్నాయి. నెలకు ఒకసారి లేదా ప్రతి రెండు నెలలకు ఒకసారి ఆమె డేటాబేస్ డీసింక్రొనైజేషన్ను అనుభవించింది. మరియు కాసాండ్రాను పరిష్కరించడానికి నేను మేల్కొని పరుగెత్తవలసి వచ్చింది. సర్వర్లు ఒక్కొక్కటిగా పునఃప్రారంభించబడ్డాయి. మరియు ప్రతిదీ మృదువుగా మరియు అందంగా మారింది.
క్లిక్హౌస్కు ముందు జీవితం - డ్రూయిడ్
మేము ఇంకా ఎక్కువ డేటా రాయాల్సిన అవసరం ఉందని మేము గ్రహించాము. 2016లో మేము డ్రూయిడ్ని చూడటం ప్రారంభించాము.
డ్రూయిడ్ అనేది జావాలో వ్రాయబడిన ఓపెన్ సోర్స్ సాఫ్ట్వేర్. చాలా నిర్దిష్టమైనది. మరియు ఇది క్లిక్స్ట్రీమ్కు అనుకూలంగా ఉంటుంది, మనం కొన్ని రకాల ఈవెంట్ల స్ట్రీమ్ను నిల్వ చేసి, ఆపై వాటిపై అగ్రిగేషన్ చేయడం లేదా విశ్లేషణాత్మక నివేదికలను రూపొందించడం అవసరం.
డ్రూయిడ్ వెర్షన్ 0.9.X కలిగి ఉంది.
డేటాబేస్ను అమలు చేయడం చాలా కష్టం. ఇది మౌలిక సదుపాయాల సంక్లిష్టత. దీన్ని అమలు చేయడానికి, చాలా, చాలా ఇనుమును వ్యవస్థాపించడం అవసరం. మరియు హార్డ్వేర్ యొక్క ప్రతి భాగం దాని స్వంత ప్రత్యేక పాత్రకు బాధ్యత వహిస్తుంది.
దానిలోకి డేటాను లోడ్ చేయడానికి, ఒక రకమైన షమానిజంను ఉపయోగించడం అవసరం. ఒక OpenSource ప్రాజెక్ట్ ఉంది - ప్రశాంతత, ఇది స్ట్రీమ్లో మా నుండి డేటాను కోల్పోతోంది. మేము దానిలోకి డేటాను లోడ్ చేసినప్పుడు, అది దానిని కోల్పోయింది.
కానీ మేము దానిని ఎలాగైనా అమలు చేయడం ప్రారంభించాము. మేము, మందు తాగిన ముళ్లపందుల వలె, కాక్టస్ తినడం కొనసాగించాము, దానిని పరిచయం చేయడం ప్రారంభించాము. దాని కోసం అన్ని మౌలిక సదుపాయాలను సిద్ధం చేయడానికి మాకు ఒక నెల సమయం పట్టింది. అంటే, సర్వర్లను ఆర్డర్ చేయండి, పాత్రలను కాన్ఫిగర్ చేయండి మరియు డిప్లాయ్మెంట్ను పూర్తిగా ఆటోమేట్ చేయండి. అంటే, క్లస్టర్ వైఫల్యం సంభవించినప్పుడు, రెండవ క్లస్టర్ స్వయంచాలకంగా అమలు చేయబడుతుంది.
కానీ అప్పుడు ఒక అద్భుతం జరిగింది. నేను సెలవులో ఉన్నాను మరియు నా సహోద్యోగులు నాకు లింక్ పంపారు హాబ్ర్, ఇది యాండెక్స్ క్లిక్హౌస్ను తెరవాలని నిర్ణయించుకున్నట్లు పేర్కొంది. ప్రయత్నిద్దాం అని చెప్పాను.
మరియు అక్షరాలా 2 రోజుల్లో మేము క్లిక్హౌస్ టెస్ట్ క్లస్టర్ని అమలు చేసాము. మేము దానిలోకి డేటాను లోడ్ చేయడం ప్రారంభించాము. infiniDBతో పోలిస్తే, ఇది ప్రాథమికమైనది; డ్రూయిడ్తో పోలిస్తే, ఇది ప్రాథమికమైనది. కాసాండ్రాతో పోలిస్తే, ఇది కూడా ప్రాథమికమైనది. ఎందుకంటే మీరు PHP నుండి కాసాండ్రాలోకి డేటాను లోడ్ చేస్తే, ఇది ప్రాథమికమైనది కాదు.
మేము ఏమి పొందాము? వేగంలో పనితీరు. డేటా నిల్వలో పనితీరు. అంటే, చాలా తక్కువ డిస్క్ స్పేస్ ఉపయోగించబడుతుంది. ClickHouse వేగవంతమైనది, ఇతర ఉత్పత్తులతో పోలిస్తే ఇది చాలా వేగంగా ఉంటుంది.
ప్రారంభించిన సమయంలో, Yandex OpenSourceలో ClickHouseని ప్రచురించినప్పుడు, కన్సోల్ క్లయింట్ మాత్రమే ఉంది. మా కంపెనీ SMI2 వద్ద మేము వెబ్ కోసం స్థానిక క్లయింట్ను రూపొందించడానికి ప్రయత్నించాలని నిర్ణయించుకున్నాము, తద్వారా మేము బ్రౌజర్ నుండి పేజీని తెరవగలము, అభ్యర్థనను వ్రాసి ఫలితాన్ని పొందగలము, ఎందుకంటే మేము చాలా అభ్యర్థనలను వ్రాయడం ప్రారంభించాము. కన్సోల్లో రాయడం కష్టం. మరియు మేము మా మొదటి సంస్కరణను తయారు చేసాము.
మరియు గత సంవత్సరం శీతాకాలానికి ఎక్కడా దగ్గరగా, క్లిక్హౌస్తో పనిచేయడానికి మూడవ పార్టీ సాధనాలు కనిపించడం ప్రారంభించాయి. ఇవి అటువంటి సాధనాలు:
నేను ఈ సాధనాల్లో కొన్నింటిని చూస్తాను, అంటే నేను పనిచేసిన వాటిని.
మంచి సాధనం, కానీ డ్రూయిడ్ కోసం. డ్రూయిడ్ అమలులో ఉన్నప్పుడు, నేను సూపర్సెట్ని పరీక్షిస్తున్నాను. నేను అతన్ని ఇష్టపడ్డాను. డ్రూయిడ్ కోసం ఇది చాలా వేగంగా ఉంటుంది.
ఇది ClickHouseకి తగినది కాదు. అంటే, ఇది సరిపోతుంది, ఇది ప్రారంభమవుతుంది, కానీ ప్రాథమిక ప్రశ్నలను మాత్రమే ప్రాసెస్ చేయడానికి సిద్ధంగా ఉంది: ఈవెంట్ని ఎంపిక చేసుకోండి, ఈవెంట్ ద్వారా సమూహం చేయండి. ఇది మరింత సంక్లిష్టమైన ClickHouse సింటాక్స్కు మద్దతు ఇవ్వదు.
తదుపరి సాధనం అపాచీ జెప్పెలిన్. ఇది మంచి మరియు ఆసక్తికరమైన విషయం. పనిచేస్తుంది. ఇది నోట్బుక్లు, డాష్బోర్డ్లు మరియు వేరియబుల్లకు మద్దతు ఇస్తుంది. ClickHouse కమ్యూనిటీలో ఎవరైనా దీన్ని ఉపయోగిస్తున్నారని నాకు తెలుసు.
కానీ ClickHouse సింటాక్స్కు మద్దతు లేదు, అనగా మీరు కన్సోల్లో లేదా మరెక్కడైనా ప్రశ్నలను వ్రాయవలసి ఉంటుంది. తరువాత, ఇది అన్ని పని చేస్తుందో లేదో తనిఖీ చేయండి. ఇది కేవలం అసౌకర్యంగా ఉంది. అయితే దీనికి మంచి డ్యాష్బోర్డ్ సపోర్ట్ ఉంది.
తదుపరి సాధనం Redash.IO. Redash ఇంటర్నెట్లో హోస్ట్ చేయబడింది. అంటే, మునుపటి సాధనాల వలె కాకుండా, ఇది ఇన్స్టాల్ చేయవలసిన అవసరం లేదు. మరియు ఇది వివిధ డేటాసోర్సెస్ నుండి డేటాను ఏకీకృతం చేయగల సామర్థ్యంతో కూడిన డాష్బోర్డ్. అంటే, మీరు ClickHouse నుండి, MySQL నుండి, PostgreSQL నుండి మరియు ఇతర డేటాబేస్ల నుండి డౌన్లోడ్ చేసుకోవచ్చు.
కేవలం ఒక నెల క్రితం (మార్చి 2017), గ్రాఫానాలో మద్దతు కనిపించింది. మీరు గ్రాఫానాలో నివేదికలను రూపొందించినప్పుడు, ఉదాహరణకు, మీ హార్డ్వేర్ స్థితి లేదా కొన్ని కొలమానాలపై, ఇప్పుడు మీరు నేరుగా ClickHouse నుండి డేటా నుండి అదే గ్రాఫ్ లేదా ఒక రకమైన ప్యానెల్ను రూపొందించవచ్చు. ఇది చాలా సౌకర్యవంతంగా ఉంటుంది మరియు మేము దానిని మనమే ఉపయోగిస్తాము. ఇది క్రమరాహిత్యాలను కనుగొనడానికి మిమ్మల్ని అనుమతిస్తుంది. అంటే, ఏదైనా జరిగితే మరియు కొన్ని హార్డ్వేర్ పడిపోతే లేదా ఒత్తిడికి గురైతే, ఈ డేటా క్లిక్హౌస్లోకి ప్రవేశించగలిగితే మీరు కారణాన్ని చూడవచ్చు.
ఈ సాధనాల్లో లేదా కన్సోల్లో వ్రాయడం నాకు చాలా ఇబ్బందికరంగా అనిపించింది. మరియు నేను మా మొదటి ఇంటర్ఫేస్ను మెరుగుపరచాలని నిర్ణయించుకున్నాను. మరియు నాకు EventSQL, SeperSet, Zeppelin నుండి ఆలోచన వచ్చింది.
నీకు ఏమి కావాలి? నేను గ్రాఫిక్స్, మెరుగైన ఎడిటర్ని పొందాలనుకుంటున్నాను మరియు సూచన నిఘంటువులకు మద్దతును అమలు చేయాలనుకుంటున్నాను. ఎందుకంటే క్లిక్హౌస్లో గొప్ప ఫీచర్ ఉంది - నిఘంటువులు. కానీ నిఘంటువులతో పని చేయడం చాలా కష్టం, ఎందుకంటే మీరు నిల్వ చేసిన విలువల ఆకృతిని గుర్తుంచుకోవాలి, అనగా ఇది ఒక సంఖ్య లేదా స్ట్రింగ్ మొదలైనవి. మరియు మేము తరచుగా నిఘంటువులను వాటి విభిన్న వైవిధ్యాలలో ఉపయోగిస్తాము కాబట్టి, ప్రశ్నలను వ్రాయడం చాలా కష్టం.
మా మొదటి వెర్షన్ విడుదలై 3 నెలలు గడిచాయి. నేను ఒక ప్రైవేట్ బ్రాంచ్కి దాదాపు 330 కమిట్లు చేసాను మరియు అది టాబిక్స్ అని తేలింది.
ClickHouse-Frontend అని పిలువబడే మునుపటి సంస్కరణ వలె కాకుండా, నేను దానిని సాధారణ పేరుగా మార్చాలని నిర్ణయించుకున్నాను. మరియు అది Tabix మారినది.
ఏమి కనిపించింది?
గ్రాఫ్లు గీస్తుంది. ClickHouse SQL సింటాక్స్కు మద్దతు ఇస్తుంది. ఫంక్షన్లపై సలహా ఇస్తుంది మరియు చాలా ఆసక్తికరమైన విషయాలను చేయగలదు.
సాధారణ టాబిక్స్ పథకం ఇలా ఉంటుంది. ఎడమవైపు ఒక చెట్టు. మధ్యలో ప్రశ్న ఎడిటర్ ఉంది. మరియు ఈ అభ్యర్థన యొక్క ఫలితం క్రింద ఉంది.
తదుపరి ప్రశ్న ఎడిటర్ ఎలా పనిచేస్తుందో నేను మీకు చూపిస్తాను.
ఇక్కడ స్వయంపూర్తి పట్టికలో స్వయంచాలకంగా పని చేస్తుంది మరియు ఫీల్డ్ల కోసం స్వయంపూర్తిగా ప్రాంప్ట్ చేస్తుంది. మరియు ఫంక్షన్లపై సూచనలు. మీరు ctrl ఎంటర్ నొక్కితే, అభ్యర్థన అమలు చేయబడుతుంది లేదా లోపంతో విఫలమవుతుంది. సరళమైన అభ్యర్థన Tabixకు పంపబడుతుంది మరియు ఫలితం పొందబడుతుంది, అనగా మీరు త్వరగా ClickHouseతో పని చేయవచ్చు.
నిఘంటువులు, నేను ఇప్పటికే చెప్పినట్లుగా, మేము చాలా పని చేసే చాలా ఆసక్తికరమైన విషయం. మరియు ఇది చాలా పనులు చేయడానికి మాకు అనుమతి ఇచ్చింది. మేము అన్ని నగరాలను నిఘంటువులలో నిల్వ చేస్తాము. మేము నగరం ఐడెంటిఫైయర్ మరియు నగరం పేరు, దాని అక్షాంశం మరియు రేఖాంశాన్ని నిల్వ చేస్తాము. మరియు డేటాబేస్లో మేము సిటీ ఐడెంటిఫైయర్ను మాత్రమే నిల్వ చేస్తాము. దీని ప్రకారం, మేము డేటాను చాలా బలంగా కుదించాము.
ఇది ఒక సాధారణ విషయం అనిపిస్తుంది, కానీ ఇది క్లిక్హౌస్లో చాలా ఆసక్తికరమైన రీతిలో సహాయపడుతుంది. క్లిక్హౌస్ నెస్టెడ్ జాయింలకు మాత్రమే మద్దతిచ్చే వాస్తవం కారణంగా, ప్రశ్న క్రిందికి మరియు తగినంత వెడల్పుగా పెరుగుతుంది. మరియు బ్రాకెట్ తెరిచినప్పుడు మరియు కొన్ని పొడవైన వ్యక్తీకరణ వచ్చినప్పుడు, ప్రశ్నను కుప్పకూలినంత సరళమైనది ప్రశ్నతో పని చేయడం సులభం చేస్తుంది. ఎందుకంటే ప్రశ్న 200-300 పంక్తులు పొడవుగా మరియు వెడల్పులో చాలా పెద్దదిగా ఉన్నప్పుడు, ప్రశ్నను కుదించి, ఆపై కొంత స్థలాన్ని కనుగొనడం లేదా దానిని స్థానికీకరించడం చాలా ఉపయోగకరంగా ఉంటుంది.
తర్వాత నేను చెట్టు మరియు ట్యాబ్ల గురించి మీకు చూపిస్తాను. ఎడమ వైపున ఒక చెట్టు ఉంది; పైన మీరు అనేక ట్యాబ్లను సృష్టించవచ్చు. ట్యాబ్లు వర్క్స్పేస్ లాంటివి. మీరు అనేక ట్యాబ్లను సృష్టించవచ్చు మరియు ఒక్కోదానికి భిన్నంగా పేరు పెట్టవచ్చు. ఇది నివేదికను రూపొందించడానికి ఒక చిన్న-వ్యవస్థ వంటిది.
ట్యాబ్లు స్వయంచాలకంగా సేవ్ చేయబడతాయి. మీరు మీ బ్రౌజర్ని పునఃప్రారంభిస్తే లేదా Tabixని మూసివేస్తే లేదా తెరిస్తే, ఇవన్నీ సేవ్ చేయబడతాయి.
హాట్కీలు ఉన్నాయి మరియు వాటిలో చాలా ఉన్నాయి. వాటిలో కొన్నింటిని ఉదాహరణగా ఇక్కడ సంగ్రహించాను. ఇది ట్యాబ్లను మార్చడం, అభ్యర్థనను అమలు చేయడం లేదా అనేక అభ్యర్థనలను అమలు చేయడం.
ఫలితంతో ఎలా పని చేయాలో నేను మీకు చూపిస్తాను. మేము ఒక అభ్యర్థనను పంపుతాము. ఇక్కడ నేను sin, cos మరియు tg గీస్తున్నాను. మీరు ఫలితాన్ని హైలైట్ చేయవచ్చు, అనగా నిలువు వరుస కోసం ఒక సాధారణ మ్యాప్ను గీయండి. మీరు సానుకూల లేదా ప్రతికూల విలువలను హైలైట్ చేయవచ్చు. లేదా ఒక నిర్దిష్ట టేబుల్ ఎలిమెంట్కు రంగు వేయండి. పట్టిక భారీగా ఉన్నప్పుడు ఇది సౌకర్యవంతంగా ఉంటుంది మరియు మీరు మీ కళ్ళతో కొంత క్రమరాహిత్యాన్ని కనుగొనవలసి ఉంటుంది. నేను క్రమరాహిత్యాల కోసం వెతుకుతున్నప్పుడు, నేను కొన్ని పంక్తులను, కొన్ని అంశాలను ఆకుపచ్చ లేదా ఎరుపు రంగులో హైలైట్ చేసాను.
అక్కడ చాలా ఆసక్తికరమైన విషయాలు ఉన్నాయి. ఉదాహరణకు, రెడ్మైన్ మార్క్డౌన్లోకి ఎలా కాపీ చేయాలి. మీరు ఫలితాన్ని ఎక్కడో కాపీ చేయవలసి వస్తే, ఇది చాలా సౌకర్యవంతంగా ఉంటుంది. మీరు ఒక ప్రాంతాన్ని ఎంచుకోవచ్చు, "రెడ్మైన్కు కాపీ చేయి" అని చెప్పండి మరియు అది రెడ్మైన్ మార్క్డౌన్లోకి కాపీ చేయబడుతుంది లేదా వేర్ క్వెరీని క్రియేట్ చేస్తుంది.
తదుపరిది ప్రశ్న ఆప్టిమైజేషన్. నేను ఒకసారి "తేదీ" ఫీల్డ్ను పేర్కొనడం మర్చిపోయాను. మరియు క్లిక్హౌస్లో నా అభ్యర్థన చాలా చాలా త్వరగా ప్రాసెస్ చేయబడలేదు, కానీ త్వరగా, అంటే సెకను కంటే తక్కువ. అతను ఎన్ని లైన్లలో నడిచాడో చూస్తే, నేను భయపడ్డాను. మేము ఈ పట్టికకు ఒక రోజులో చాలా వరుసలను వ్రాయము. నేను అభ్యర్థనను విశ్లేషించడం ప్రారంభించాను మరియు నేను ఒక చోట తేదీని కోల్పోయాను. అంటే, నేను మొత్తం పట్టిక కోసం డేటా అవసరం లేదని సూచించడం మర్చిపోయాను, కానీ నిర్దిష్ట కాలానికి.
Tabixలో "గణాంకాలు" ట్యాబ్ ఉంది, ఇది పంపిన అభ్యర్థనల యొక్క మొత్తం చరిత్రను నిల్వ చేస్తుంది, అనగా ఈ అభ్యర్థన ద్వారా ఎన్ని పంక్తులు చదవబడ్డాయి మరియు అమలు చేయడానికి ఎంత సమయం పట్టిందో మీరు చూడవచ్చు. ఇది ఆప్టిమైజేషన్ని అనుమతిస్తుంది.
మీరు ప్రశ్న ఫలితంపై పివోట్ పట్టికను రూపొందించవచ్చు. మీరు ClickHouseకి అభ్యర్థనను పంపారు మరియు కొంత డేటాను స్వీకరించారు. ఆపై మీరు ఈ డేటాను మీ మౌస్తో తరలించవచ్చు మరియు ఒక రకమైన పివోట్ పట్టికను రూపొందించవచ్చు.
తదుపరి ఆసక్తికరమైన విషయం ప్లాట్లు. మేము ఈ క్రింది అభ్యర్థనను కలిగి ఉన్నామని అనుకుందాం: పాపం కోసం, 0 నుండి 299 వరకు. మరియు దానిని గీయడానికి, మీరు "డ్రా" ట్యాబ్ను ఎంచుకోవాలి మరియు మీరు మీ పాపం మరియు కాస్తో గ్రాఫ్ని పొందుతారు.
మీరు దీన్ని వేర్వేరు అక్షాలుగా విభజించవచ్చు, అనగా మీరు ఒకేసారి రెండు గ్రాఫ్లను పక్కపక్కనే గీయవచ్చు. ఒక ఆదేశాన్ని మరియు రెండవ ఆదేశాన్ని వ్రాయండి.
మీరు హిస్టోగ్రామ్లను గీయవచ్చు.
మీరు దీన్ని గ్రాఫ్ల మ్యాట్రిక్స్గా విభజించవచ్చు.
మీరు హీట్ మ్యాప్ను రూపొందించవచ్చు.
మీరు థర్మల్ క్యాలెండర్ను నిర్మించవచ్చు. మార్గం ద్వారా, మీరు ఒక సంవత్సరం పాటు క్రమరాహిత్యాలను విశ్లేషించాల్సిన అవసరం వచ్చినప్పుడు ఇది చాలా అనుకూలమైన విషయం, అనగా, వచ్చే చిక్కులు లేదా చుక్కలను కనుగొనండి. ఈ డేటా విజువలైజేషన్ దీనికి నాకు సహాయపడింది.
తదుపరిది ట్రీమ్యాప్.
Sankeys ఒక ఆసక్తికరమైన చార్ట్. అతను స్ట్రీమ్గ్రాప్స్ లేదా నది. కానీ నేను దానిని నది అని పిలుస్తాను. ఇది ఏదైనా క్రమరాహిత్యాల కోసం వెతకడానికి కూడా మిమ్మల్ని అనుమతిస్తుంది. ఇది చాలా సౌకర్యంగా ఉంది. శోధించడం కోసం దీన్ని ఉపయోగించమని నేను సిఫార్సు చేస్తున్నాను.
తదుపరి ఆసక్తికరమైన విషయం డైనమిక్ మ్యాప్ను గీయడం. మీరు మీ డేటాబేస్లో అక్షాంశం, రేఖాంశాన్ని నిల్వ చేసి, గమ్యాన్ని నిల్వ చేస్తే, ఉదాహరణకు, మీరు ట్రక్కింగ్ లేదా విమానాలు ఎగురుతున్నట్లయితే, మీరు గమ్యస్థాన మార్గాలను గీయవచ్చు. అక్కడ మీరు ఈ వస్తువులు ప్రయాణించే వేగం మరియు పరిమాణాన్ని సెట్ చేయవచ్చు.
కానీ ఈ మ్యాప్లోని సమస్య ఏమిటంటే ఇది ప్రపంచ పటాన్ని మాత్రమే గీస్తుంది, వివరాలు లేవు.
తర్వాత గూగుల్ మ్యాప్ని జోడించాను. మీరు అక్షాంశం, రేఖాంశాన్ని నిల్వ చేస్తే, మీరు Google మ్యాప్లో ఫలితాన్ని గీయవచ్చు, కానీ విమానం మద్దతు లేకుండా.
మేము Tabixలో ఫలితాలు మరియు ప్రశ్నలతో పని చేసే ప్రధాన విధులను చర్చించాము.
తదుపరిది మీ ClickHouse సర్వర్ యొక్క విశ్లేషణ. ప్రత్యేక "మెట్రిక్స్" ట్యాబ్ ఉంది, ఇక్కడ మీరు ప్రతి నిలువు వరుస కోసం నిల్వ చేయబడిన డేటా పరిమాణాన్ని చూడవచ్చు. ఈ “రిఫరర్” ఫీల్డ్ సుమారు 730 Gb తీసుకుంటుందని స్క్రీన్షాట్ చూపిస్తుంది. మేము ఈ ఫీల్డ్ను వదిలివేస్తే, మేము ఒక్కొక్కటి 700 GB చొప్పున మూడు ముక్కలను ఆదా చేస్తాము, అంటే మనకు అవసరం లేని 2 TB.
మేము స్ట్రింగ్లో నిల్వ చేసే "request_id" ఫీల్డ్ని కూడా కలిగి ఉన్నాము. కానీ మనం దానిని సంఖ్యా రూపంలో నిల్వ చేయడం ప్రారంభిస్తే, ఈ ఫీల్డ్ విపరీతంగా తగ్గిపోతుంది.
ఇది మీ క్లస్టర్లోని సర్వర్ కాన్ఫిగరేషన్ మరియు నోడ్ల జాబితాను కూడా చూపుతుంది.
తదుపరి ట్యాబ్ కొలమానాలు. వారు క్లిక్హౌస్తో నిజ సమయంలో ప్రవేశిస్తారు మరియు సర్వర్ స్థితిని విశ్లేషించడానికి మరియు దానికి ఏమి జరుగుతుందో అర్థం చేసుకోవడానికి మిమ్మల్ని అనుమతిస్తుంది. ఇది పూర్తి గ్రాఫానాకు ప్రత్యామ్నాయం కాదు. శీఘ్ర విశ్లేషణకు ఇది అవసరం.
తదుపరి ట్యాబ్ ప్రక్రియలు. వాటి నుండి మీరు సర్వర్లో ఏమి జరుగుతుందో అర్థం చేసుకోవచ్చు. అక్కడ ఏం జరుగుతుందో అర్థం చేసుకోండి. నేను ప్రతిసారీ 200 GB రీడింగ్ని వినియోగించే అభ్యర్థనను కలిగి ఉన్నాను. ఈ ఇంటర్ఫేస్కు ధన్యవాదాలు నేను దీనిని చూశాను. నేను అతన్ని పట్టుకుని సరిదిద్దాను. మరియు ఇది సుమారు 30 GB గా మారినది, అంటే కొన్ని సమయాల్లో పనితీరు.
ధన్యవాదాలు! మరియు ఇది ఓపెన్సోర్స్లో ఉంది
నేను పూర్తి చేశాను. మరియు మార్గం ద్వారా, ఇది OpenSource, ఇది ఉచితం మరియు మీరు దీన్ని డౌన్లోడ్ చేయవలసిన అవసరం లేదు. దీన్ని బ్రౌజర్లో తెరవండి మరియు ప్రతిదీ పని చేస్తుంది.
మీ ప్రశ్నలు
ఇగోర్, తదుపరి ఏమిటి? మీరు ఈ సాధనాన్ని ఎక్కడ అభివృద్ధి చేస్తారు?
తర్వాత, డ్యాష్బోర్డ్లు కనిపిస్తాయి, అంటే, బహుశా డాష్బోర్డ్లు కనిపిస్తాయి. ఇతర డేటాబేస్లతో ఏకీకరణ. నేను దీన్ని చేసాను, కానీ ఇంకా దీనిని OpenSourceలో ప్రచురించలేదు. ఇది MySQL మరియు బహుశా PostgreSQL. అంటే, Tabix నుండి అభ్యర్థనలను క్లిక్హౌస్కు మాత్రమే కాకుండా ఇతర సాధనాలకు కూడా పంపడం సాధ్యమవుతుంది.
భారీ స్థాయిలో పనులు జరిగినట్లు స్పష్టమవుతోంది. ఇది చాలా పూర్తి ఆలోచన అని తేలింది. ఇది బ్రౌజర్లో జరిగింది, స్పష్టంగా, అన్ని రకాల గొడ్డలిపై క్రచెస్ను తొలగించడానికి మరియు మొత్తం విషయాన్ని త్వరగా విసిరేయడానికి. మీరు ఆన్లో ఉన్నారని విన్నానుphpపని చేయండి, కాబట్టి దీన్ని బ్రౌజర్లో టైప్ చేయడం సులభమయిన మార్గం మరియు ఇది ప్రతిచోటా పని చేస్తుంది. దీని గురించి ప్రశ్నలు లేవు. ప్రశ్న ఇది. అక్కడ నిజంగా చాలా జరిగింది. ఇందులో ఎంత మంది పనిచేశారు? మరియు ఇదంతా ఎంత సమయం పట్టింది? ఎందుకంటే కస్టమ్ టూల్స్ సాధారణంగా ఎక్కువ కార్యాచరణను కలిగి ఉండవు.
మా బృందం నుండి ఒక వ్యక్తి వేసవి నుండి శరదృతువు వరకు పనిచేశాడు. ఇది మొదటి వెర్షన్. అప్పుడు నేను ఒంటరిగా 330 కమిట్లు చేశాను. మీరు చూసేది, నా సహోద్యోగి మరియు నేను సగంలో చేసాము. 3 నెలల్లో, మొదటి వెర్షన్ నుండి చివరి వరకు, నేను ఎక్కువగా ఒంటరిగా చేసాను. కానీ నాకు జావాస్క్రిప్ట్ బాగా తెలియదు. ఇది నా ఏకైక మరియు, నేను పనిచేసిన నా చివరి జావాస్క్రిప్ట్ ప్రాజెక్ట్ అని ఆశిస్తున్నాను. నాకు అర్థమైంది, నేను చూశాను - ఓహ్, భయానకం. కానీ నేను నిజంగా ఉత్పత్తిని పూర్తి చేయాలనుకున్నాను మరియు ఇది జరిగింది.
నివేదిక కోసం చాలా ధన్యవాదాలు! ఇది ఒక గొప్ప సాధనం. తోపట్టికమీరు పోల్చారా?
ధన్యవాదాలు. అందుకే మొదటి అక్షరాలు ఒకేలా ఉంటాయి కాబట్టి దానికి టాబిక్స్ అని పేరు పెట్టాను.
పోటీ చేసినందుకా?
పెట్టుబడి చాలా ఉంటుంది, మేము పోటీపడతాము.
ఈ సాధనం పూర్తిగా భర్తీ చేసే అంతర్గత విశ్లేషకులకు విక్రయించడానికి మీరు ఎలా ఆఫర్ చేయవచ్చు *పట్టిక*? వాదనలు ఎలా ఉంటాయి?
ClickHouseతో స్థానికంగా పని చేస్తుంది. నేను Tableauని ప్రయత్నించాను, కానీ మీరు అక్కడ డిక్షనరీలు మరియు ఇలాంటి వాటికి మద్దతుని వ్రాయలేరు. టాబిక్స్తో వ్యక్తులు ఎలా పని చేస్తారో నాకు తెలుసు. వారు ఒక ప్రశ్నను వ్రాసి, దానిని CSVకి అప్లోడ్ చేసి, BIకి అప్లోడ్ చేస్తారు. మరియు వారు ఇప్పటికే అక్కడ ఏదో చేస్తున్నారు. కానీ వారు దీన్ని ఎలా చేస్తారో ఊహించడం చాలా కష్టం, ఎందుకంటే ఇది గ్రాఫికల్ సాధనం. ఇది 5 అడ్డు వరుసలను, గరిష్టంగా 000 అడ్డు వరుసలను అన్లోడ్ చేయగలదు, కానీ ఎక్కువ కాదు, లేకపోతే బ్రౌజర్ భరించదు.
అంటే, డేటా మొత్తంపై కొన్ని తీవ్రమైన పరిమితులు ఉన్నాయి, సరియైనదా?
అవును. మీరు మీ టేబుల్లోకి 10 అడ్డు వరుసలను మీ బ్రౌజర్ స్క్రీన్పై అప్లోడ్ చేయాలనుకుంటున్నారని నేను ఊహించలేను. దేనికోసం?
ఇది డేటాను శీఘ్రంగా వీక్షించడానికి ఇంటర్ఫేస్ అని దీని అర్థం? కొంచెం ట్విస్ట్, ట్విస్ట్?
అవును, ఇది ఎలా పని చేస్తుందో త్వరగా చూడండి మరియు సారాంశ గ్రాఫ్ను రూపొందించండి. ఆపై ఎక్కడో ఇవ్వండి. మేము మా స్వంత రిపోర్టింగ్ సిస్టమ్ని కలిగి ఉన్నాము, నేను ఈ అభ్యర్థనను స్వీకరించాను. నేను టాబిక్స్లో డ్రా చేసి మా రిపోర్టింగ్కి పంపుతాను.
మరియు మరొక ప్రశ్న. సమన్వయ విశ్లేషణ?
ఏవైనా అభ్యర్థనలు ఉంటే, మేము దానిని జోడిస్తాము.
మీరు దీన్ని ఎప్పుడు ఉపయోగించడం ప్రారంభించారు?క్లిక్హౌస్, అమలు చేయడానికి ఎంత సమయం పట్టింది?క్లిక్హౌస్మరియు తీసుకురావడంఉత్పత్తి స్థితి?
నేను చెప్పినట్లుగా, మేము చాలా తక్కువ సమయంలో టెస్ట్ క్లస్టర్ను అమలు చేసాము. మేము దానిని రెండు రోజుల్లో అమలు చేసాము. మరియు మేము దీన్ని మరో రెండు వారాల పాటు పరీక్షించాము. మరియు మేము 3 నెలల్లో ఉత్పత్తిని చేరుకున్నాము. కానీ మాకు మా స్వంత ETL ఉంది, అంటే డేటాను రికార్డ్ చేయడానికి ఒక సాధనం. మరియు అతను చేయగలిగిన ప్రతిదానిలో వ్రాసాడు. అతను MongoDB, Cassandra, MySQLలో వ్రాయగలడు. క్లిక్హౌస్లో ఎలా వ్రాయాలో అతనికి నేర్పించడం సులభం. వేగవంతమైన అమలు కోసం మేము సిద్ధంగా ఉన్న మౌలిక సదుపాయాలను కలిగి ఉన్నాము. 3 నెలల్లో మేము మొదటి భాగాన్ని విసిరేయడం ప్రారంభించాము. 6 నెలల్లో మేము మిగతావన్నీ పూర్తిగా విడిచిపెట్టాము. మాకు ఒక క్లిక్హౌస్ మాత్రమే మిగిలి ఉంది.
ఇగోర్, నివేదిక కోసం చాలా ధన్యవాదాలు. మ్యాప్లను ఉపయోగించి మార్గాలను నిర్మించే కార్యాచరణ నాకు బాగా నచ్చింది. Yandex.Mapsతో మరియు ముఖ్యంగా అనుకూల Yandex.Mapsతో ఏకీకరణ కోసం ఏవైనా ప్రణాళికలు ఉన్నాయా?
నేను Google మ్యాప్కు బదులుగా ఇంటిగ్రేట్ చేయడానికి ప్రయత్నించాను, కానీ నేను Yandex.Mapsలో డార్క్ థీమ్ను కనుగొనలేదు. నేను నీకు ఒక్క ముక్క కూడా చెప్పలేదు. నేను జోడించడానికి రివైండ్ చేస్తాను.
స్లయిడ్ - Google మ్యాప్. "DRAW_GMAPS" కమాండ్ ఉంది, ఇది మ్యాప్ను గీస్తుంది. "DRAW_YMAPS" కమాండ్ ఉంది, అంటే ఇది Yandex.Mapని గీయగలదు. కానీ వాస్తవానికి, ఈ కమాండ్ కింద జావాస్క్రిప్ట్ ఉంది, అంటే మీరు క్లిక్హౌస్ నుండి స్వీకరించే డేటాను మీరు ఇక్కడ వ్రాసే జావాస్క్రిప్ట్కి బదిలీ చేయవచ్చు. మరియు మీకు అవుట్పుట్ ఏరియా ఉంది, అక్కడ అది డ్రా చేయాలి. మీరు ఏదైనా గ్రాఫ్ని గీయవచ్చు, అంటే ఏదైనా గ్రాఫ్, మ్యాప్, మీరు మీ స్వంత భాగాన్ని గీయవచ్చు. దీనికి ముందు, గ్రాఫ్లను స్వయంగా గీయడానికి నాకు మరొక లైబ్రరీ ఉంది.
అంటే, ప్రదర్శన కార్యాచరణను అనుకూలీకరించడానికి ఒక సాధనం ఉందా?
ఏదైనా. మీరు ఈ చుక్కలను తీసుకొని మళ్లీ రంగులు వేయవచ్చు, వాటిని ఎరుపు రంగులో కాకుండా నీలం, ఆకుపచ్చగా మార్చవచ్చు.
నివేదికకు ధన్యవాదాలు! మీరు ప్రత్యామ్నాయ ప్రశ్న సాధనాలను ప్రదర్శించే స్లయిడ్ని కలిగి ఉన్నారుక్లిక్హౌస్డాష్బోర్డ్లు మరియు విశ్లేషణాత్మక నివేదికలను నిర్మించడం కోసం. మీరు పని చేయడం ప్రారంభించిన క్షణంలో నేను అర్థం చేసుకున్నానుClickHouse, ఈ సాధనాల కోసం ఏ అడాప్టర్లు వ్రాయబడలేదు. మరియు మీరు కొన్ని రెడీమేడ్ టూల్ కోసం అడాప్టర్ను వ్రాయడానికి బదులుగా మీ స్వంత సాధనాన్ని ఎందుకు తయారు చేయాలని నిర్ణయించుకున్నారో నేను ఆశ్చర్యపోతున్నాను? టెస్ట్ ఎడిటర్ను ట్వీకింగ్ చేయడం త్వరగా జరుగుతుందని నేను భావిస్తున్నాను. మీరు ఇంత పని చేయాలని ఎందుకు నిర్ణయించుకున్నారు?
ఇక్కడ ఒక ఆసక్తికరమైన అంశం ఉంది - నిజానికి నేను టెక్నికల్ డైరెక్టర్ని, డేటా సైంటిస్ట్ని కాదు. మేము డ్రూయిడ్ని అమలు చేయడం ప్రారంభించే సమయానికి, నా రోడ్మ్యాప్లో దాదాపు 50% టాస్క్లు ఉన్నాయి - దీన్ని గణిద్దాం, లేదా దీన్ని గణిద్దాం లేదా దీన్ని విశ్లేషిద్దాం. మరియు మేము క్లిక్హౌస్ని అమలు చేసినట్లు తేలింది. మరియు అతను త్వరగా ప్రతిదీ నిర్మించడం ప్రారంభించాడు, లెక్కించాడు మరియు త్వరగా తన రోడ్మ్యాప్ను మూసివేసాడు. మరియు ఆ సమయానికి నాకు డేటా సైన్స్ మరియు డేటా విజువలైజేషన్లో జ్ఞానం లేదని గ్రహించాను. టాబిక్స్ అనేది డేటా విజువలైజేషన్ నేర్చుకోవడం కోసం నా హోంవర్క్. నేను జెప్పెలిన్ను ఎలా పూరించాలో చూస్తున్నాను. అతని ప్రోగ్రామింగ్ పట్ల నాకు కొంచెం ఇష్టం లేదు. Redash నేను దీన్ని ఎలా జోడించాలో చూసాను, కానీ నాకు సాధారణ ఎడిటర్ సరిపోతుంది. మరియు సూపర్సెట్ నాకు నిజంగా నచ్చని భాషలో కూడా వ్రాయబడింది. కాబట్టి నేను సైకిల్ చేయాలని నిర్ణయించుకున్నాను మరియు ఇది జరిగింది.
ఇగోర్, మీరు పుల్ అభ్యర్థనలను అంగీకరిస్తారా?
అవును.
నివేదిక కోసం చాలా ధన్యవాదాలు! మరియు రెండు ప్రశ్నలు. మొదట, మీరు చాలా పొగిడేలా మాట్లాడరు జావాస్క్రిప్ట్. మీరు బేర్ జావాస్క్రిప్ట్లో రాశారా లేదా ఇది ఏదైనా ఫ్రేమ్వర్క్లా?*
బేర్ జావాస్క్రిప్ట్లో ఉత్తమం.
కాబట్టి ఏ ఫ్రేమ్వర్క్?
కోణీయ.
అది స్పష్టమైనది. మరియు రెండవ ప్రశ్న. మీరు ఆలోచించారా R и *మెరిసే**?*
పరిగణించారు. ఆడాడు.
మీరు అడాప్టర్ను కూడా వ్రాయవచ్చు.
అతడు. సంఘం దీన్ని రూపొందించినట్లు కనిపిస్తోంది, కానీ, మునుపటి ప్రశ్నకు నేను సమాధానం ఇచ్చినందున, నేనే దీనిని ప్రయత్నించాలనుకుంటున్నాను.
* లేదు, విజువలైజేషన్ గురించి, అది కూడా ఉంది.
మీరు అలాంటిది ఉందని మరియు అది మీకు గ్రాఫ్ గీస్తుందని చెప్పారు. నేను డేటా విజువలైజేషన్పై పుస్తకాన్ని తెరిచాను. మరియు నేను ఇలా అనుకున్నాను: “ఈ డేటాను దృశ్యమానం చేయడానికి నన్ను ప్రయత్నిద్దాం. నేను అతనికి వ్రాస్తాను, తద్వారా అతను డేటాను పునర్నిర్మించగలడు. మరియు నేను డేటా ఫీడ్ టెక్నాలజీని బాగా అర్థం చేసుకోవడం ప్రారంభించాను. మరియు నేను రెడీమేడ్ కాంపోనెంట్ తీసుకున్నట్లయితే, నేను వ్యక్తిగతంగా దాన్ని ఎలా ఉపయోగించాలో అధ్వాన్నంగా నేర్చుకుంటాను, అంటే విజువలైజేషన్. కానీ అవును, నాకు R నచ్చింది, కానీ నేను ఇంకా "R for Dummies" పుస్తకాన్ని చదవలేదు.
ధన్యవాదాలు!
సాధారణ ప్రశ్న. సైన్ లేదా షెడ్యూల్ను త్వరగా అప్లోడ్ చేయడానికి ఏవైనా మార్గాలు ఉన్నాయా?
CSV లేదా Excelకు అప్లోడ్ చేయవచ్చు.
డేటా కాదు, కానీ రెడీమేడ్ ప్లేట్, రెడీమేడ్ గ్రాఫ్? ఉదాహరణకు, యజమానిని చూపించడానికి.
“అప్లోడ్” బటన్ ఉంది మరియు “png లో, jpgలో గ్రాఫ్ని అప్లోడ్ చేయి” బటన్ ఉంది.