Google හි BigQuery දත්ත විශ්ලේෂණය ප්‍රජාතන්ත්‍රීකරණය කළ ආකාරය. 1 කොටස

හේයි හබ්ර්! නව පාඨමාලා ප්‍රවාහයක් සඳහා ලියාපදිංචි වීම දැන් OTUS හි විවෘතයි දත්ත ඉංජිනේරු. පාඨමාලාවේ ආරම්භය අපේක්ෂාවෙන්, අපි සාම්ප්රදායිකව ඔබ සඳහා රසවත් ද්රව්ය පරිවර්තනයක් සකස් කර ඇත.

සෑම දිනකම මිලියන සියයකට අධික ජනතාවක් ට්විටර් වෙත පිවිසෙන්නේ ලෝකයේ සිදුවන්නේ කුමක්ද යන්න සොයා බැලීමට සහ එය සාකච්ඡා කිරීමට ය. සෑම ට්වීට් සහ වෙනත් ඕනෑම පරිශීලක ක්‍රියාවක් ට්විටර් තුළ අභ්‍යන්තර දත්ත විශ්ලේෂණය සඳහා ලබා ගත හැකි සිදුවීමක් ජනනය කරයි. සේවකයින් සිය ගණනක් මෙම දත්ත විශ්ලේෂණය කර දෘශ්‍යමාන කරයි, සහ ඔවුන්ගේ අත්දැකීම් වැඩිදියුණු කිරීම Twitter දත්ත වේදිකා කණ්ඩායම සඳහා ප්‍රමුඛතාවයකි.

පුළුල් පරාසයක තාක්ෂණික කුසලතා ඇති පරිශීලකයින්ට දත්ත සොයා ගැනීමට සහ හොඳින් ක්‍රියාත්මක වන SQL මත පදනම් වූ විශ්ලේෂණ සහ දෘශ්‍යකරණ මෙවලම් වෙත ප්‍රවේශය තිබිය යුතු බව අපි විශ්වාස කරමු. මෙමගින් දත්ත විශ්ලේෂකයින් සහ නිෂ්පාදන කළමනාකරුවන් ඇතුළුව අඩු තාක්ෂණික පරිශීලකයින් කණ්ඩායමකට දත්ත වලින් තීක්ෂ්ණ බුද්ධිය උකහා ගැනීමට ඉඩ සලසයි, ඔවුන්ට Twitter හි බලය වඩා හොඳින් අවබෝධ කර ගැනීමට සහ භාවිතා කිරීමට ඉඩ සලසයි. අපි ට්විටර් හි දත්ත විශ්ලේෂණය ප්‍රජාතන්ත්‍රවාදී කරන්නේ එලෙසයි.

අභ්‍යන්තර දත්ත විශ්ලේෂණය සඳහා අපගේ මෙවලම් සහ හැකියාවන් වැඩිදියුණු වී ඇති හෙයින්, අපි Twitter සේවාවේ දියුණුව දැක ඇත්තෙමු. කෙසේ වෙතත්, වැඩිදියුණු කිරීමට තවමත් ඉඩ තිබේ. Scalding වැනි වත්මන් මෙවලම් සඳහා ක්‍රමලේඛන අත්දැකීම් අවශ්‍ය වේ. Presto සහ Vertica වැනි SQL-පාදක විශ්ලේෂණ මෙවලම් විශාල පරිමාණයේ කාර්ය සාධන ගැටළු ඇත. අපට නිරන්තර ප්‍රවේශයකින් තොරව බහු පද්ධති හරහා දත්ත බෙදා හැරීමේ ගැටලුවක් ද ඇත.

ගිය අවුරුද්දේ අපි නිවේදනය කළා Google සමඟ නව සහයෝගීතාවයක්, ඇතුළත අපි අපගේ කොටස් මාරු කරමු දත්ත යටිතල පහසුකම් Google Cloud Platform (GCP) මත. Google Cloud මෙවලම් බව අපි නිගමනය කළෙමු විශාල දත්ත Twitter හි විශ්ලේෂණය, දෘශ්‍යකරණය සහ යන්ත්‍ර ඉගෙනීම ප්‍රජාතන්ත්‍රීකරණය කිරීමට අපගේ මුලපිරීම් සඳහා අපට උපකාර කළ හැක:

මෙම ලිපියෙන් ඔබ මෙම මෙවලම් සමඟ අපගේ අත්දැකීම් ගැන ඉගෙන ගනු ඇත: අප කර ඇති දේ, අප ඉගෙන ගත් දේ සහ අපි ඊළඟට කරන්නේ කුමක්ද යන්න. අපි දැන් කණ්ඩායම සහ අන්තර්ක්‍රියාකාරී විශ්ලේෂණ කෙරෙහි අවධානය යොමු කරමු. තත්‍ය කාලීන විශ්ලේෂණ ඊළඟ ලිපියෙන් සාකච්ඡා කෙරේ.

Twitter හි දත්ත ගබඩා වල ඉතිහාසය

BigQuery වෙත කිමිදීමට පෙර, Twitter හි දත්ත ගබඩාවල ඉතිහාසය කෙටියෙන් නැවත පැවසීම වටී. 2011 දී, ට්විටර් දත්ත විශ්ලේෂණය Vertica සහ Hadoop හි සිදු කරන ලදී. MapReduce Hadoop රැකියා නිර්මාණය කිරීමට, අපි Pig භාවිතා කළෙමු. 2012 දී, අපි Pig වෙනුවට Scalding ආදේශ කළෙමු, එහි Scala API සංකීර්ණ නල මාර්ග නිර්මාණය කිරීමේ හැකියාව සහ පරීක්ෂා කිරීමේ පහසුව වැනි ප්‍රතිලාභ සහිතයි. කෙසේ වෙතත්, SQL සමඟ වැඩ කිරීමට වඩාත් පහසු වූ බොහෝ දත්ත විශ්ලේෂකයින් සහ නිෂ්පාදන කළමනාකරුවන් සඳහා, එය තරමක් දැඩි ඉගෙනුම් වක්‍රයක් විය. 2016 දී පමණ, අපි Hadoop දත්ත සඳහා අපගේ SQL ඉදිරිපස අන්තය ලෙස Presto භාවිතා කිරීමට පටන් ගත්තෙමු. Spark විසින් Python අතුරුමුහුණතක් ලබා දුන් අතර එය තාවකාලික දත්ත විද්‍යාව සහ යන්ත්‍ර ඉගෙනීම සඳහා හොඳ තේරීමක් කරයි.

2018 සිට, අපි දත්ත විශ්ලේෂණය සහ දෘශ්‍යකරණය සඳහා පහත මෙවලම් භාවිතා කර ඇත:

  • නිෂ්පාදන රේඛා සඳහා පුළුස්සා දැමීම
  • තාවකාලික දත්ත විශ්ලේෂණ සහ යන්ත්‍ර ඉගෙනීම සඳහා Scalding සහ Spark
  • තාවකාලික සහ අන්තර්ක්‍රියාකාරී SQL විශ්ලේෂණය සඳහා Vertica සහ Presto
  • කාල ශ්‍රේණි ප්‍රමිතික සඳහා අඩු අන්තර්ක්‍රියාකාරී, ගවේෂණාත්මක සහ අඩු ප්‍රමාද ප්‍රවේශයක් සඳහා Druid
  • දත්ත දෘශ්‍යකරණය සඳහා Tableau, Zeppelin සහ Pivot

මෙම මෙවලම් ඉතා ප්‍රබල විශේෂාංග ලබා දෙන අතර, Twitter හි පුළුල් ප්‍රේක්ෂක පිරිසකට මෙම විශේෂාංග ලබා දීමට අපට අපහසු වී ඇති බව අපට පෙනී ගොස් ඇත. ගූගල් ක්ලවුඩ් සමඟ අපගේ වේදිකාව දිගු කිරීමෙන්, අපි ට්විටර් සියල්ල සඳහා අපගේ විශ්ලේෂණ මෙවලම් සරල කිරීමට අවධානය යොමු කරමු.

Google හි BigQuery දත්ත ගබඩාව

Twitter හි කණ්ඩායම් කිහිපයක් දැනටමත් ඔවුන්ගේ නිෂ්පාදන නල මාර්ගවල BigQuery ඇතුළත් කර ඇත. ඔවුන්ගේ අත්දැකීම් භාවිතා කරමින්, අපි සියලු Twitter භාවිත අවස්ථා සඳහා BigQuery හි හැකියාවන් ඇගයීමට පටන් ගත්තෙමු. අපගේ ඉලක්කය වූයේ මුළු සමාගමටම BigQuery පිරිනැමීම සහ Data Platform මෙවලම් කට්ටලය තුළ එය ප්‍රමිතිගත කිරීම සහ සහාය දැක්වීමයි. බොහෝ හේතු නිසා මෙය දුෂ්කර විය. විශාල දත්ත ප්‍රමාණයක් විශ්වසනීයව ලබා ගැනීමට, සමාගම පුරා දත්ත කළමනාකරණයට සහාය වීමට, නිසි ප්‍රවේශ පාලනයන් සහතික කිරීමට සහ පාරිභෝගික පෞද්ගලිකත්වය සහතික කිරීමට අපට යටිතල පහසුකම් සංවර්ධනය කිරීමට අවශ්‍ය විය. කණ්ඩායම්වලට BigQuery ඵලදායි ලෙස භාවිත කළ හැකි වන පරිදි සම්පත් වෙන් කිරීම, අධීක්ෂණය සහ අයකිරීම් සඳහා පද්ධති නිර්මාණය කිරීමට ද අපට සිදු විය.

2018 නොවැම්බර් මාසයේදී, අපි මුළු සමාගම සඳහාම BigQuery සහ Data Studio හි ඇල්ෆා නිකුතුවක් නිකුත් කළෙමු. අපි Twitter කාර්යමණ්ඩලයට අපගේ වැඩිපුරම භාවිත කරන පුද්ගලික දත්ත-නිෂ්කාශනය කළ පැතුරුම්පත් කිහිපයක් පිරිනමමු. BigQuery ඉංජිනේරු, මූල්‍ය සහ අලෙවිකරණය ඇතුළු විවිධ කණ්ඩායම් වලින් 250 කට අධික පරිශීලකයින් විසින් භාවිතා කර ඇත. ඉතා මෑතක දී, ඔවුන් මසකට PB 8 ක් පමණ සකසමින්, නියමිත ඉල්ලීම් ගණන් නොගෙන ඉල්ලීම් 100ක් පමණ ධාවනය කරමින් සිටියහ. ඉතා ධනාත්මක ප්‍රතිපෝෂණ ලැබීමෙන් පසු, අපි ඉදිරියට යාමට තීරණය කර Twitter මත දත්ත සමඟ අන්තර් ක්‍රියා කිරීම සඳහා මූලික සම්පත ලෙස BigQuery පිරිනැමීමට තීරණය කළෙමු.

මෙන්න අපගේ Google BigQuery දත්ත ගබඩාවේ ඉහළ මට්ටමේ ගෘහ නිර්මාණ ශිල්පයේ රූප සටහනකි.

Google හි BigQuery දත්ත විශ්ලේෂණය ප්‍රජාතන්ත්‍රීකරණය කළ ආකාරය. 1 කොටස
අපි අභ්‍යන්තර Cloud Replicator මෙවලම භාවිතයෙන් දේශීය Hadoop පොකුරු වලින් දත්ත Google Cloud Storage (GCS) වෙත පිටපත් කරමු. පසුව අපි Apache Airflow භාවිතා කර නල මාර්ග නිර්මාණය කරන්නෙමු "bq_load»GCS වෙතින් දත්ත BigQuery වෙත පූරණය කිරීමට. GCS හි Parquet හෝ Thrift-LZO දත්ත කට්ටල විමසීමට අපි Presto භාවිතා කරමු. BQ Blaster යනු HDFS Vertica සහ Thrift-LZO දත්ත කට්ටල BigQuery වෙත පැටවීම සඳහා වන අභ්‍යන්තර Scalding මෙවලමකි.

පහත කොටස්වලදී, භාවිතයේ පහසුව, කාර්ය සාධනය, දත්ත කළමනාකරණය, පද්ධති සෞඛ්‍යය සහ පිරිවැය පිළිබඳ අපගේ ප්‍රවේශය සහ විශේෂඥතාව පිළිබඳව අපි සාකච්ඡා කරමු.

භාවිතයේ පහසුව

මෘදුකාංග ස්ථාපනය අවශ්‍ය නොවන බැවින් පරිශීලකයින්ට BigQuery සමඟ ආරම්භ කිරීම පහසු බව අපට පෙනී ගොස් ඇති අතර පරිශීලකයින්ට ප්‍රතිභාන වෙබ් අතුරු මුහුණතක් හරහා ප්‍රවේශ විය හැක. කෙසේ වෙතත්, පරිශීලකයින්ට ව්‍යාපෘති, දත්ත කට්ටල සහ වගු වැනි සම්පත් ඇතුළු සමහර GCP විශේෂාංග සහ සංකල්ප සමඟ හුරු වීමට අවශ්‍ය විය. පරිශීලකයින්ට ආරම්භ කිරීමට උපකාර කිරීම සඳහා අපි නිබන්ධන සහ නිබන්ධන සංවර්ධනය කර ඇත. ලබාගත් මූලික අවබෝධයක් සමඟින්, පරිශීලකයින්ට දත්ත කට්ටල සැරිසැරීමට, ක්‍රමලේඛන සහ වගු දත්ත බැලීමට, සරල විමසුම් ධාවනය කිරීමට සහ Data Studio හි ප්‍රතිඵල දෘශ්‍යමාන කිරීමට පහසු වේ.

BigQuery හි දත්ත ඇතුළත් කිරීමේ අපගේ ඉලක්කය වූයේ HDFS හෝ GCS දත්ත කට්ටලවල බාධාවකින් තොරව තනි ක්ලික් කිරීමකින් පැටවීම සැපයීමයි. අපි සලකා බැලුවා Cloud Composer (Airflow මගින් කළමනාකරණය කර ඇත) නමුත් අපගේ "Domain Restricted Sharing" ආරක්ෂක මාදිලිය හේතුවෙන් එය භාවිතා කිරීමට නොහැකි විය (මේ පිළිබඳව වැඩි විස්තර පහත දත්ත කළමනාකරණ කොටසේ). අපි BigQuery පැටවුම් කාර්යයන් සංවිධානය කිරීමට Google දත්ත හුවමාරු සේවාව (DTS) භාවිතා කිරීම අත්හදා බැලුවෙමු. DTS පිහිටුවීමට ඉක්මන් වූ අතර, යැපීම් සහිත නල මාර්ග ගොඩනැගීම සඳහා එය නම්‍යශීලී නොවීය. අපගේ ඇල්ෆා නිකුතුව සඳහා, අපි අ.පො.ස. තුළ අපගේම Apache Airflow පරිසරයක් නිර්මාණය කර ඇති අතර එය නිෂ්පාදනය සඳහා සූදානම් කරමින් සිටින අතර Vertica වැනි තවත් දත්ත මූලාශ්‍ර සඳහා සහය දැක්වීමේ හැකියාව ඇත.

දත්ත BigQuery බවට පරිවර්තනය කිරීම සඳහා, පරිශීලකයන් කාලසටහන්ගත විමසුම් භාවිතයෙන් සරල SQL දත්ත නල මාර්ග නිර්මාණය කරයි. පරායත්තතා සහිත සංකීර්ණ බහු-අදියර නල මාර්ග සඳහා, අපි අපගේම වායු ප්‍රවාහ රාමුවක් හෝ Cloud Composer එකක් භාවිතා කිරීමට සැලසුම් කරමු. වලාකුළු දත්ත ප්‍රවාහය.

ඵලදායිතාව

BigQuery නිර්මාණය කර ඇත්තේ විශාල දත්ත ප්‍රමාණයක් සකසන සාමාන්‍ය කාර්ය SQL විමසුම් සඳහාය. එය ගනුදෙනු දත්ත ගබඩාවකට අවශ්‍ය අඩු ප්‍රමාදය, ඉහළ ප්‍රතිදාන විමසුම් හෝ ක්‍රියාත්මක කරන ලද අඩු ප්‍රමාද කාල ශ්‍රේණි විශ්ලේෂණය සඳහා අදහස් නොකෙරේ. Apache Druid. අන්තර්ක්‍රියාකාරී විශ්ලේෂණ විමසුම් සඳහා, අපගේ පරිශීලකයින් විනාඩියකට වඩා අඩු ප්‍රතිචාර කාලයක් අපේක්ෂා කරයි. මෙම අපේක්ෂාවන් සපුරාලීම සඳහා අපට BigQuery භාවිතය සැලසුම් කිරීමට සිදු විය. අපගේ පරිශීලකයින් සඳහා පුරෝකථනය කළ හැකි කාර්ය සාධනයක් සැපයීම සඳහා, අපි ව්‍යාපෘති හිමිකරුවන්ට ඔවුන්ගේ විමසුම් සඳහා අවම ස්ථාන වෙන් කර ගැනීමට ඉඩ සලසන ස්ථාවර ගාස්තු පදනමක් මත පාරිභෝගිකයින්ට ලබා ගත හැකි BigQuery ක්‍රියාකාරීත්වය භාවිතා කර ඇත. තව් BigQuery යනු SQL විමසුම් ක්‍රියාත්මක කිරීමට අවශ්‍ය පරිගණක බලයේ ඒකකයකි.

අපි විමසුම් 800 කට වඩා වැඩි ප්‍රමාණයක් විශ්ලේෂණය කර TB දත්ත 1 බැගින් සකසන අතර සාමාන්‍ය ක්‍රියාත්මක කිරීමේ කාලය තත්පර 30 ක් බව සොයා ගත්තෙමු. විවිධ ව්‍යාපෘති සහ කර්තව්‍යයන්හිදී අපගේ ස්ලොට් භාවිතය මත කාර්ය සාධනය බෙහෙවින් රඳා පවතින බව ද අපි ඉගෙන ගත්තෙමු. නිෂ්පාදන භාවිත අවස්ථා සහ අන්තර්ක්‍රියාකාරී විශ්ලේෂණ සඳහා කාර්ය සාධනය පවත්වා ගැනීම සඳහා අපගේ නිෂ්පාදන සහ තාවකාලික තව් සංචිත පැහැදිලිව වෙන් කිරීමට අපට සිදු විය. මෙය තව් වෙන් කිරීම් සහ ව්‍යාපෘති ධුරාවලිය සඳහා අපගේ සැලසුමට බෙහෙවින් බලපෑවේය.

අපි පරිවර්තන දෙවන කොටසේ ඉදිරි දිනවලදී දත්ත කළමනාකරණය, ක්‍රියාකාරීත්වය සහ පද්ධතිවල පිරිවැය ගැන කතා කරන්නෙමු, දැන් අපි සැමට ආරාධනා කරන්නෙමු නොමිලේ සජීවී webinar, ඔබට පාඨමාලාව ගැන වැඩිදුර ඉගෙන ගත හැකි අතර, අපගේ විශේෂඥයාගෙන් ප්රශ්න අසන්න - Egor Mateshuk (ජ්යෙෂ්ඨ දත්ත ඉංජිනේරු, MaximaTelecom).

තවත් කියවන්න:

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න