திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

பின்வரும் தரவுத்தளங்களில் Yandex இன் பங்களிப்பு மதிப்பாய்வு செய்யப்படும்.

  • கிளிக்ஹவுஸ்
  • ஒடிஸி
  • ஒரு கட்டத்தில் மீட்பு (WAL-G)
  • PostgreSQL (logerrors, Amcheck, heapcheck உட்பட)
  • கிரீன்பிளம்

வீடியோக்கள்:

வணக்கம் உலகம்! என் பெயர் ஆண்ட்ரி போரோடின். மேலும் Yandex.Cloud இல் நான் செய்வது Yandex.Cloud மற்றும் Yandex.Cloud வாடிக்கையாளர்களின் நலன்களுக்காக திறந்த தொடர்புடைய தரவுத்தளங்களை உருவாக்குவதாகும்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

இந்த உரையாடலில், திறந்த தரவுத்தளங்கள் அளவில் எதிர்கொள்ளும் சவால்களைப் பற்றி பேசுவோம். அது ஏன் முக்கியம்? ஏனென்றால், கொசுக்கள் போல, யானைகளாக மாறும் சிறிய, சிறிய பிரச்சனைகள். உங்களிடம் பல கொத்துக்கள் இருக்கும்போது அவை பெரிதாகின்றன.

ஆனால் முக்கிய விஷயம் அதுவல்ல. நம்பமுடியாத விஷயங்கள் நடக்கும். லட்சத்தில் ஒருவருக்கு நடக்கும் விஷயங்கள். ஒரு மேகக்கணி சூழலில், நீங்கள் அதற்குத் தயாராக இருக்க வேண்டும், ஏனென்றால் ஏதாவது அளவில் இருக்கும் போது நம்பமுடியாத விஷயங்கள் மிகவும் சாத்தியமாகின்றன.

ஆனாலும்! திறந்த தரவுத்தளங்களின் நன்மை என்ன? எந்தவொரு பிரச்சனையையும் சமாளிக்க உங்களுக்கு ஒரு தத்துவார்த்த வாய்ப்பு உள்ளது என்பதே உண்மை. உங்களிடம் மூல குறியீடு உள்ளது, உங்களுக்கு நிரலாக்க அறிவு உள்ளது. நாங்கள் அதை இணைக்கிறோம், அது வேலை செய்கிறது.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

திறந்த மூல மென்பொருளில் வேலை செய்வதில் என்ன அணுகுமுறைகள் உள்ளன?

  • மென்பொருளைப் பயன்படுத்துவது மிகவும் எளிமையான அணுகுமுறை. நீங்கள் நெறிமுறைகளைப் பயன்படுத்தினால், நீங்கள் தரங்களைப் பயன்படுத்தினால், நீங்கள் வடிவங்களைப் பயன்படுத்தினால், திறந்த மூல மென்பொருளில் வினவல்களை எழுதினால், நீங்கள் ஏற்கனவே அதை ஆதரிக்கிறீர்கள்.
  • நீங்கள் அதன் சுற்றுச்சூழல் அமைப்பை பெரிதாக்குகிறீர்கள். நீங்கள் ஒரு பிழையை முன்கூட்டியே கண்டறிவதற்கான வாய்ப்பை அதிகரிக்கிறீர்கள். இந்த அமைப்பின் நம்பகத்தன்மையை அதிகரிக்கிறீர்கள். சந்தையில் டெவலப்பர்கள் கிடைப்பதை அதிகரிக்கிறீர்கள். நீங்கள் இந்த மென்பொருளை மேம்படுத்துகிறீர்கள். நீங்கள் ஸ்டைலை உருவாக்கி, அங்கே ஏதாவது ஒன்றைப் பயன்படுத்தினால், நீங்கள் ஏற்கனவே பங்களிப்பாளராகிவிட்டீர்கள்.
  • மற்றொரு புரிந்துகொள்ளக்கூடிய அணுகுமுறை திறந்த மூல மென்பொருளுக்கு நிதியளிப்பதாகும். எடுத்துக்காட்டாக, நன்கு அறியப்பட்ட கூகுள் சம்மர் ஆஃப் கோட் திட்டம், கூகுள் உலகம் முழுவதிலுமிருந்து ஏராளமான மாணவர்களுக்குப் புரிந்துகொள்ளக்கூடிய பணத்தைச் செலுத்தும் போது, ​​அவர்கள் குறிப்பிட்ட உரிமத் தேவைகளைப் பூர்த்தி செய்யும் திறந்த மென்பொருள் திட்டங்களை உருவாக்குகிறார்கள்.
  • இது மிகவும் சுவாரஸ்யமான அணுகுமுறையாகும், ஏனெனில் இது சமூகத்திலிருந்து கவனத்தை மாற்றாமல் மென்பொருளை உருவாக்க அனுமதிக்கிறது. கூகுள், தொழில்நுட்ப ஜாம்பவானாக, இந்த அம்சம் எங்களுக்கு வேண்டும் என்று கூறவில்லை, இந்த பிழையை சரிசெய்ய விரும்புகிறோம், இங்குதான் நாம் தோண்ட வேண்டும். கூகுள் கூறுகிறது: “நீங்கள் செய்வதை செய்யுங்கள். நீங்கள் எப்படி வேலை செய்தீர்களோ, அப்படியே வேலை செய்யுங்கள், எல்லாம் சரியாகிவிடும்."
  • திறந்த மூலத்தில் பங்கேற்பதற்கான அடுத்த அணுகுமுறை பங்கேற்பு ஆகும். ஓப்பன் சோர்ஸ் மென்பொருளில் உங்களுக்கு சிக்கல் இருக்கும்போது டெவலப்பர்கள் இருக்கும்போது, ​​உங்கள் டெவலப்பர்கள் சிக்கல்களைத் தீர்க்கத் தொடங்குவார்கள். அவை உங்கள் உள்கட்டமைப்பை மிகவும் திறமையாகவும், உங்கள் திட்டங்களை வேகமாகவும், நம்பகமானதாகவும் மாற்றத் தொடங்குகின்றன.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

திறந்த மூல மென்பொருள் துறையில் மிகவும் பிரபலமான யாண்டெக்ஸ் திட்டங்களில் ஒன்று ClickHouse ஆகும். இது Yandex.Metrica எதிர்கொள்ளும் சவால்களுக்கு விடையிறுப்பாக பிறந்த தரவுத்தளமாகும்.

ஒரு தரவுத்தளமாக, இது ஒரு சுற்றுச்சூழல் அமைப்பை உருவாக்குவதற்கும் மற்ற டெவலப்பர்களுடன் (யாண்டெக்ஸில் மட்டும் அல்ல) அதை உருவாக்குவதற்கும் திறந்த மூலத்தில் உருவாக்கப்பட்டது. இப்போது இது ஒரு பெரிய திட்டமாகும், இதில் பல்வேறு நிறுவனங்கள் ஈடுபட்டுள்ளன.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

Yandex.Cloud இல், Yandex ஆப்ஜெக்ட் சேமிப்பகத்தின் மேல், அதாவது கிளவுட் சேமிப்பகத்தின் மேல் கிளிக்ஹவுஸை உருவாக்கினோம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

மேகத்தில் இது ஏன் முக்கியமானது? ஏனெனில் எந்த தரவுத்தளமும் இந்த முக்கோணத்தில், இந்த பிரமிடில், இந்த நினைவக வகைகளின் படிநிலையில் வேலை செய்கிறது. உங்களிடம் வேகமான ஆனால் சிறிய பதிவேடுகள் மற்றும் மலிவான பெரிய ஆனால் மெதுவான SSDகள், ஹார்ட் டிரைவ்கள் மற்றும் வேறு சில பிளாக் சாதனங்கள் உள்ளன. நீங்கள் பிரமிட்டின் உச்சியில் திறமையாக இருந்தால், உங்களுக்கு வேகமான தரவுத்தளம் உள்ளது. இந்த பிரமிட்டின் அடிப்பகுதியில் நீங்கள் திறமையாக இருந்தால், உங்களிடம் அளவிடப்பட்ட தரவுத்தளம் உள்ளது. இது சம்பந்தமாக, கீழே இருந்து மற்றொரு அடுக்கைச் சேர்ப்பது தரவுத்தளத்தின் அளவிடுதலை அதிகரிப்பதற்கான ஒரு தர்க்கரீதியான அணுகுமுறையாகும்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

அது எப்படி முடிந்தது? இந்த அறிக்கையில் இது ஒரு முக்கியமான விஷயம்.

  • எம்டிஎஸ் மூலம் கிளிக்ஹவுஸைச் செயல்படுத்தலாம். MDS என்பது உள் Yandex கிளவுட் ஸ்டோரேஜ் இடைமுகம். இது பொதுவான S3 நெறிமுறையை விட மிகவும் சிக்கலானது, ஆனால் இது ஒரு தொகுதி சாதனத்திற்கு மிகவும் பொருத்தமானது. தரவைப் பதிவு செய்வது சிறந்தது. இதற்கு அதிக நிரலாக்கம் தேவைப்படுகிறது. புரோகிராமர்கள் நிரல் செய்வார்கள், இது கூட நல்லது, இது சுவாரஸ்யமானது.
  • S3 என்பது மிகவும் பொதுவான அணுகுமுறையாகும், இது சில வகையான பணிச்சுமைகளுக்கு குறைவான தழுவல் செலவில் இடைமுகத்தை எளிதாக்குகிறது.

இயற்கையாகவே, முழு ClickHouse சுற்றுச்சூழலுக்கும் செயல்பாட்டை வழங்கவும், Yandex.Cloud க்குள் தேவையான பணியைச் செய்யவும் விரும்புவதால், முழு ClickHouse சமூகமும் பயனடையும் என்பதை உறுதிப்படுத்த முடிவு செய்தோம். நாங்கள் கிளிக்ஹவுஸை S3 இல் செயல்படுத்தினோம், MDS இல் ClickHouse அல்ல. மேலும் இது நிறைய வேலை.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

மேற்கோள்கள்:

https://github.com/ClickHouse/ClickHouse/pull/7946 "கோப்பு அமைப்பு சுருக்க அடுக்கு"
https://github.com/ClickHouse/ClickHouse/pull/8011 "AWS SDK S3 ஒருங்கிணைப்பு"
https://github.com/ClickHouse/ClickHouse/pull/8649 "S3க்கான IDisk interfce இன் அடிப்படை செயல்படுத்தல்"
https://github.com/ClickHouse/ClickHouse/pull/8356 "IDisk இடைமுகத்துடன் பதிவு சேமிப்பக இயந்திரங்களின் ஒருங்கிணைப்பு"
https://github.com/ClickHouse/ClickHouse/pull/8862 "S3 மற்றும் SeekableReadBuffer க்கான பதிவு இயந்திர ஆதரவு"
https://github.com/ClickHouse/ClickHouse/pull/9128 "ஸ்டோரேஜ் ஸ்ட்ரைப் பதிவு S3 ஆதரவு"
https://github.com/ClickHouse/ClickHouse/pull/9415 "S3 க்கான சேமிப்பு MergeTree ஆரம்ப ஆதரவு"
https://github.com/ClickHouse/ClickHouse/pull/9646 "S3க்கு MergeTree முழு ஆதரவு"
https://github.com/ClickHouse/ClickHouse/pull/10126 "S3 மீது பிரதிபலித்த MergeTree ஆதரவு"
https://github.com/ClickHouse/ClickHouse/pull/11134 "s3 சேமிப்பகத்திற்கான இயல்பு சான்றுகள் மற்றும் தனிப்பயன் தலைப்புகளைச் சேர்க்கவும்"
https://github.com/ClickHouse/ClickHouse/pull/10576 "டைனமிக் ப்ராக்ஸி உள்ளமைவுடன் S3"
https://github.com/ClickHouse/ClickHouse/pull/10744 "S3 உடன் ப்ராக்ஸி ரிசல்வர்"

இது கிளிக்ஹவுஸில் மெய்நிகர் கோப்பு முறைமையை செயல்படுத்துவதற்கான இழுக்கும் கோரிக்கை பட்டியல். இது அதிக எண்ணிக்கையிலான இழுக்கும் கோரிக்கைகள்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

மேற்கோள்கள்:

https://github.com/ClickHouse/ClickHouse/pull/9760 "DiskS3 ஹார்ட்லிங்க்ஸ் உகந்த செயலாக்கம்"
https://github.com/ClickHouse/ClickHouse/pull/11522 "S3 HTTP கிளையன்ட் - மறுமொழி ஸ்ட்ரீமை நினைவகத்தில் நகலெடுப்பதைத் தவிர்க்கவும்"
https://github.com/ClickHouse/ClickHouse/pull/11561 “S3 HTTP இல் முழு மறுமொழி ஸ்ட்ரீமையும் நினைவகத்தில் நகலெடுப்பதைத் தவிர்க்கவும்
வாடிக்கையாளர்"
https://github.com/ClickHouse/ClickHouse/pull/13076 "S3 வட்டுக்கான கேச் மார்க் மற்றும் இன்டெக்ஸ் கோப்புகளை உருவாக்கும் திறன்"
https://github.com/ClickHouse/ClickHouse/pull/13459 "பகுதிகளை DiskLocal இலிருந்து DiskS3க்கு இணையாக நகர்த்தவும்"

ஆனால் வேலை அங்கு முடிவடையவில்லை. அம்சம் உருவாக்கப்பட்ட பிறகு, இந்த செயல்பாட்டை மேம்படுத்த இன்னும் சில வேலைகள் தேவைப்பட்டன.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

மேற்கோள்கள்:

https://github.com/ClickHouse/ClickHouse/pull/12638 "தேர்ந்தெடுக்கப்பட்ட வரிசைகள் மற்றும் தேர்ந்தெடுக்கப்பட்ட பைட்ஸ் நிகழ்வுகளைச் சேர்"
https://github.com/ClickHouse/ClickHouse/pull/12464 "S3 கோரிக்கையிலிருந்து system.events க்கு விவரக்குறிப்பு நிகழ்வுகளைச் சேர்"
https://github.com/ClickHouse/ClickHouse/pull/13028 "QueryTimeMicroseconds, SelectQueryTimeMicroseconds மற்றும் InsertQueryTimeMicroseconds"

பின்னர் அதை கண்டறியக்கூடியதாக மாற்றவும், கண்காணிப்பை அமைக்கவும் மற்றும் அதை நிர்வகிக்கவும் அவசியம்.

முழு சமூகமும், முழு கிளிக்ஹவுஸ் சுற்றுச்சூழல் அமைப்பும் இந்த வேலையின் முடிவைப் பெறும் வகையில் இவை அனைத்தும் செய்யப்பட்டன.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

பரிவர்த்தனை தரவுத்தளங்களுக்கு, OLTP தரவுத்தளங்களுக்கு செல்லலாம், அவை தனிப்பட்ட முறையில் எனக்கு நெருக்கமானவை.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

இது ஓப்பன் சோர்ஸ் டிபிஎம்எஸ் மேம்பாட்டுப் பிரிவு. பரிவர்த்தனை திறந்த தரவுத்தளங்களை மேம்படுத்த இவர்கள் தெரு மாயாஜாலம் செய்கிறார்கள்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

திட்டங்களில் ஒன்று, நாம் எப்படி, என்ன செய்கிறோம் என்பதைப் பற்றி பேசக்கூடிய ஒரு உதாரணத்தைப் பயன்படுத்தி, Postgres இல் உள்ள இணைப்பு பூலர் ஆகும்.

Postgres ஒரு செயல்முறை தரவுத்தளமாகும். தரவுத்தளமானது பரிவர்த்தனைகளைக் கையாளக்கூடிய சில பிணைய இணைப்புகளைக் கொண்டிருக்க வேண்டும் என்பதே இதன் பொருள்.

மறுபுறம், ஒரு கிளவுட் சூழலில், ஒரு பொதுவான சூழ்நிலை என்பது ஒரு கிளஸ்டருக்கு ஒரே நேரத்தில் ஆயிரம் இணைப்புகள் வரும்போது. ஒரு சிறிய எண்ணிக்கையிலான சர்வர் இணைப்புகளில் ஆயிரம் இணைப்புகளை அடைப்பதே இணைப்பு பூலரின் பணி.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

பைட்டுகளை மறுசீரமைக்கும் தொலைபேசி ஆபரேட்டர் தான் இணைப்பு பூலர் என்று நாம் கூறலாம், இதனால் அவை தரவுத்தளத்தை திறமையாக அடையும்.

துரதிர்ஷ்டவசமாக, இணைப்பு பூலர் என்பதற்கு நல்ல ரஷ்ய வார்த்தை இல்லை. சில நேரங்களில் இது மல்டிபிளெக்சர் இணைப்புகள் என்று அழைக்கப்படுகிறது. இணைப்பு பூலரை என்ன அழைப்பது என்று உங்களுக்குத் தெரிந்தால், என்னிடம் சொல்லுங்கள், சரியான ரஷ்ய தொழில்நுட்ப மொழியைப் பேசுவதில் நான் மிகவும் மகிழ்ச்சியடைவேன்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://pgconf.ru/2017/92899

நிர்வகிக்கப்பட்ட போஸ்ட்கிரெஸ் கிளஸ்டருக்கு ஏற்ற இணைப்பு பூலர்களை நாங்கள் ஆய்வு செய்தோம். மேலும் PgBouncer எங்களுக்கு சிறந்த தேர்வாக இருந்தது. ஆனால் நாங்கள் PgBouncer இல் பல சிக்கல்களை எதிர்கொண்டோம். பல ஆண்டுகளுக்கு முன்பு, வோலோடியா போரோடின் நாங்கள் PgBouncer ஐப் பயன்படுத்துகிறோம், எல்லாவற்றையும் விரும்புகிறோம், ஆனால் நுணுக்கங்கள் உள்ளன, வேலை செய்ய ஏதாவது இருக்கிறது என்று அறிக்கைகளை அளித்தார்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://pgconf.ru/media/2017/04/03/20170316H1_V.Borodin.pdf

மற்றும் நாங்கள் வேலை செய்தோம். நாங்கள் எதிர்கொண்ட சிக்கல்களைச் சரிசெய்தோம், பவுன்சரைப் பொருத்தினோம், மேலும் கோரிக்கைகளை மேலே இழுக்க முயற்சித்தோம். ஆனால் அடிப்படை ஒற்றை-திரிடிங் வேலை செய்வது கடினமாக இருந்தது.

பேட்ச் செய்யப்பட்ட பவுன்சர்களிடமிருந்து நாங்கள் கேஸ்கேட்களை சேகரிக்க வேண்டியிருந்தது. எங்களிடம் பல ஒற்றை-திரிக்கப்பட்ட பவுன்சர்கள் இருக்கும்போது, ​​மேல் அடுக்கில் உள்ள இணைப்புகள் பவுன்சர்களின் உள் அடுக்குக்கு மாற்றப்படும். இது ஒரு மோசமாக நிர்வகிக்கப்பட்ட அமைப்பாகும், இது முன்னும் பின்னுமாக உருவாக்க மற்றும் அளவிட கடினமாக உள்ளது.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

ஒடிஸி என்று அழைக்கப்படும் எங்கள் சொந்த இணைப்பு பூலரை நாங்கள் உருவாக்கியுள்ளோம் என்ற முடிவுக்கு வந்தோம். புதிதாக எழுதினோம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://www.pgcon.org/2019/schedule/events/1312.en.html

2019 இல், PgCon மாநாட்டில், டெவலப்பர் சமூகத்திற்கு இந்த பூலரை வழங்கினேன். இப்போது எங்களிடம் GitHub இல் 2 நட்சத்திரங்களுக்கும் குறைவாகவே உள்ளன, அதாவது திட்டம் உயிருடன் உள்ளது, திட்டம் பிரபலமானது.

நீங்கள் Yandex.Cloud இல் ஒரு Postgres கிளஸ்டரை உருவாக்கினால், அது உள்ளமைக்கப்பட்ட ஒடிஸியுடன் கூடிய ஒரு கிளஸ்டராக இருக்கும், இது கிளஸ்டரை முன்னும் பின்னும் அளவிடும் போது மறுகட்டமைக்கப்படும்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

இந்த திட்டத்திலிருந்து நாம் என்ன கற்றுக்கொண்டோம்? ஒரு போட்டித் திட்டத்தைத் தொடங்குவது எப்போதுமே ஒரு ஆக்ரோஷமான நடவடிக்கையாகும், போதுமான அளவு விரைவாக தீர்க்கப்படாத, நமக்கு ஏற்ற கால இடைவெளியில் தீர்க்கப்படாத பிரச்சினைகள் உள்ளன என்று நாம் கூறும்போது இது ஒரு தீவிர நடவடிக்கையாகும். ஆனால் இது ஒரு பயனுள்ள நடவடிக்கை.

PgBouncer வேகமாக உருவாகத் தொடங்கியது.

இப்போது மற்ற திட்டங்கள் தோன்றியுள்ளன. எடுத்துக்காட்டாக, pgagroal, இது Red Hat டெவலப்பர்களால் உருவாக்கப்பட்டது. அவர்கள் ஒரே மாதிரியான இலக்குகளைத் தொடர்கிறார்கள் மற்றும் ஒத்த யோசனைகளைச் செயல்படுத்துகிறார்கள், ஆனால், நிச்சயமாக, அவர்களின் சொந்த விவரங்களுடன், அவை pgagroal டெவலப்பர்களுக்கு நெருக்கமாக உள்ளன.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

போஸ்ட்கிரெஸ் சமூகத்துடன் பணிபுரியும் மற்றொரு நிகழ்வு, ஒரு கட்டத்தில் மீண்டும் வருகிறது. இது தோல்விக்குப் பிறகு மீட்டெடுப்பு, இது காப்புப்பிரதியிலிருந்து மீட்பு.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

பல காப்புப்பிரதிகள் உள்ளன மற்றும் அவை அனைத்தும் வேறுபட்டவை. கிட்டத்தட்ட ஒவ்வொரு போஸ்ட்கிரெஸ் விற்பனையாளருக்கும் அதன் சொந்த காப்பு தீர்வு உள்ளது.

எல்லா பேக்அப் சிஸ்டங்களையும் எடுத்து, ஃபீச்சர் மேட்ரிக்ஸை உருவாக்கி, இந்த மேட்ரிக்ஸில் டிடர்மினன்ட்டை நகைச்சுவையாகக் கணக்கிட்டால், அது பூஜ்ஜியமாக இருக்கும். இதன் பொருள் என்ன? நீங்கள் ஒரு குறிப்பிட்ட காப்பு கோப்பை எடுத்தால், மற்ற எல்லாவற்றிலிருந்தும் அதை இணைக்க முடியாது. அதைச் செயல்படுத்துவதில் தனித்தன்மை வாய்ந்தது, அதன் நோக்கத்தில் தனித்தன்மை வாய்ந்தது, அதில் பொதிந்துள்ள கருத்துக்களில் தனித்தன்மை வாய்ந்தது. மேலும் அவை அனைத்தும் குறிப்பிட்டவை.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://www.citusdata.com/blog/2017/08/18/introducing-wal-g-faster-restores-for-postgres/

இந்தச் சிக்கலில் நாங்கள் பணிபுரியும் போது, ​​CitusData WAL-G திட்டத்தை அறிமுகப்படுத்தியது. இது கிளவுட் சூழலைக் கருத்தில் கொண்டு உருவாக்கப்பட்ட காப்புப்பிரதி அமைப்பு. இப்போது CitusData ஏற்கனவே மைக்ரோசாப்டின் ஒரு பகுதியாக உள்ளது. அந்த நேரத்தில், WAL-G இன் ஆரம்ப வெளியீடுகளில் குறிப்பிடப்பட்ட யோசனைகளை நாங்கள் மிகவும் விரும்பினோம். இந்த திட்டத்திற்கு நாங்கள் பங்களிக்க ஆரம்பித்தோம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://github.com/wal-g/wal-g/graphs/contributors

இப்போது இந்த திட்டத்தில் பல டஜன் டெவலப்பர்கள் உள்ளனர், ஆனால் WAL-G க்கு முதல் 10 பங்களிப்பாளர்களில் 6 Yandexoids அடங்கும். நாங்கள் நிறைய யோசனைகளை அங்கு கொண்டு வந்தோம். மற்றும், நிச்சயமாக, அவற்றை நாமே செயல்படுத்தினோம், அவற்றை நாமே சோதித்தோம், அவற்றை நாமே உற்பத்தி செய்தோம், அவற்றை நாமே பயன்படுத்துகிறோம், பெரிய WAL-G சமூகத்துடன் தொடர்பு கொள்ளும்போது அடுத்து எங்கு செல்ல வேண்டும் என்பதைக் கண்டுபிடிப்போம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

எங்கள் பார்வையில், இப்போது இந்த காப்பு அமைப்பு, எங்கள் முயற்சிகளை கணக்கில் எடுத்துக்கொள்வது உட்பட, கிளவுட் சூழலுக்கு உகந்ததாக மாறியுள்ளது. மேகக்கணியில் Postgres ஐ காப்புப் பிரதி எடுப்பதற்கான சிறந்த செலவு இதுவாகும்.

இதற்கு என்ன அர்த்தம்? நாங்கள் ஒரு பெரிய யோசனையை விளம்பரப்படுத்துகிறோம்: காப்புப்பிரதி பாதுகாப்பானதாகவும், செயல்படுவதற்கு மலிவானதாகவும், முடிந்தவரை விரைவாக மீட்டெடுக்கவும் இருக்க வேண்டும்.

செயல்படுவதற்கு ஏன் மலிவானதாக இருக்க வேண்டும்? எதுவும் உடைக்கப்படாதபோது, ​​உங்களிடம் காப்புப்பிரதிகள் இருப்பதை நீங்கள் அறியக்கூடாது. எல்லாம் நன்றாக வேலை செய்கிறது, நீங்கள் முடிந்தவரை குறைந்த CPU ஐ வீணடிக்கிறீர்கள், உங்கள் வட்டு வளங்களை முடிந்தவரை குறைவாகப் பயன்படுத்துகிறீர்கள், மேலும் உங்கள் மதிப்புமிக்க சேவைகளின் பேலோடில் தலையிடாதபடி முடிந்தவரை சில பைட்டுகளை நெட்வொர்க்கிற்கு அனுப்புகிறீர்கள்.

எல்லாவற்றையும் உடைக்கும்போது, ​​எடுத்துக்காட்டாக, நிர்வாகி தரவைக் கைவிட்டார், ஏதோ தவறு ஏற்பட்டது, மேலும் நீங்கள் அவசரமாக கடந்த காலத்திற்குச் செல்ல வேண்டும், நீங்கள் எல்லாப் பணத்தையும் மீட்டெடுக்கிறீர்கள், ஏனென்றால் உங்கள் தரவை விரைவாகவும் அப்படியேவும் திரும்பப் பெற வேண்டும்.

இந்த எளிய யோசனையை நாங்கள் விளம்பரப்படுத்தினோம். மேலும், எங்களுக்குத் தோன்றுகிறது, நாங்கள் அதைச் செயல்படுத்த முடிந்தது.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

ஆனால் அதெல்லாம் இல்லை. நாங்கள் இன்னும் ஒரு சிறிய விஷயத்தை விரும்பினோம். நாங்கள் பல்வேறு தரவுத்தளங்களை விரும்பினோம். எங்கள் வாடிக்கையாளர்கள் அனைவரும் Postgres ஐப் பயன்படுத்துவதில்லை. சிலர் MySQL, MongoDB ஆகியவற்றைப் பயன்படுத்துகின்றனர். சமூகத்தில், பிற டெவலப்பர்கள் FoundationDB ஐ ஆதரித்துள்ளனர். இந்த பட்டியல் தொடர்ந்து விரிவடைகிறது.

மேகக்கணியில் நிர்வகிக்கப்பட்ட சூழலில் தரவுத்தளத்தை இயக்கும் யோசனையை சமூகம் விரும்புகிறது. டெவலப்பர்கள் தங்கள் தரவுத்தளங்களை பராமரிக்கிறார்கள், இது எங்கள் காப்பு அமைப்புடன் போஸ்ட்கிரெஸுடன் ஒரே மாதிரியாக காப்புப் பிரதி எடுக்கப்படலாம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

இந்தக் கதையிலிருந்து நாம் என்ன கற்றுக்கொண்டோம்? எங்கள் தயாரிப்பு, ஒரு மேம்பாட்டுப் பிரிவாக, குறியீட்டின் கோடுகள் அல்ல, அது அறிக்கைகள் அல்ல, கோப்புகள் அல்ல. எங்கள் தயாரிப்பு கோரிக்கைகளை இழுக்கவில்லை. இவைதான் நாம் சமூகத்திற்கு எடுத்துரைக்கும் கருத்துக்கள். இது தொழில்நுட்ப நிபுணத்துவம் மற்றும் கிளவுட் சூழலை நோக்கி தொழில்நுட்பத்தின் இயக்கம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

Postgres போன்ற ஒரு தரவுத்தளம் உள்ளது. எனக்கு Postgres கோர் மிகவும் பிடிக்கும். நான் சமூகத்துடன் Postgres மையத்தை உருவாக்க நிறைய நேரம் செலவிடுகிறேன்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

ஆனால் இங்கே Yandex.Cloud நிர்வகிக்கப்பட்ட தரவுத்தளங்களின் உள் நிறுவலைக் கொண்டுள்ளது என்று சொல்ல வேண்டும். இது நீண்ட காலத்திற்கு முன்பு Yandex.Mail இல் தொடங்கியது. அஞ்சல் போஸ்ட்கிரெஸுக்கு செல்ல விரும்பியபோது, ​​இப்போது நிர்வகிக்கப்பட்ட போஸ்ட்கிரெஸுக்கு வழிவகுத்த நிபுணத்துவம் திரட்டப்பட்டது.

அஞ்சலுக்கு மேகக்கணிக்கு மிகவும் ஒத்த தேவைகள் உள்ளன. உங்கள் தரவின் எந்தப் புள்ளியிலும் எதிர்பாராத அதிவேக வளர்ச்சிக்கு நீங்கள் அளவிட முடியும். தொடர்ந்து பல கோரிக்கைகளைச் செய்யும் ஏராளமான பயனர்களின் சில நூற்றுக்கணக்கான மில்லியன் அஞ்சல் பெட்டிகளுடன் மின்னஞ்சலில் ஏற்கனவே சுமை உள்ளது.

போஸ்ட்கிரெஸை உருவாக்கும் அணிக்கு இது மிகவும் கடுமையான சவாலாக இருந்தது. அப்போது, ​​நாங்கள் எதிர்கொள்ளும் எந்தப் பிரச்சனையும் சமூகத்திற்கு தெரிவிக்கப்பட்டது. இந்த சிக்கல்கள் சரி செய்யப்பட்டு, சில இடங்களில் சமூகத்தால் சரி செய்யப்பட்டன, வேறு சில தரவுத்தளங்களுக்கான கட்டண ஆதரவின் அளவிலும் இன்னும் சிறப்பாகவும் உள்ளன. அதாவது, நீங்கள் PgSQL ஹேக்கருக்கு ஒரு கடிதத்தை அனுப்பலாம் மற்றும் 40 நிமிடங்களுக்குள் பதிலைப் பெறலாம். சில தரவுத்தளங்களில் கட்டண ஆதரவு உங்கள் பிழையை விட அதிக முன்னுரிமை விஷயங்கள் இருப்பதாக நினைக்கலாம்.

இப்போது Postgres இன் உள் நிறுவல் தரவு சில பெட்டாபைட்கள் ஆகும். இவை வினாடிக்கு சில மில்லியன் கோரிக்கைகள். இவை ஆயிரக்கணக்கான கொத்துக்கள். இது மிகப் பெரிய அளவில் உள்ளது.

ஆனால் ஒரு நுணுக்கம் உள்ளது. இது ஆடம்பரமான நெட்வொர்க் டிரைவ்களில் அல்ல, ஆனால் மிகவும் எளிமையான வன்பொருளில் வாழ்கிறது. மேலும் சுவாரஸ்யமான புதிய விஷயங்களுக்கு குறிப்பாக ஒரு சோதனை சூழல் உள்ளது.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

சோதனைச் சூழலில் ஒரு குறிப்பிட்ட தருணத்தில், தரவுத்தள குறியீடுகளின் உள் மாறுபாடுகள் மீறப்பட்டதைக் குறிக்கும் செய்தியைப் பெற்றோம்.

மாறாதது என்பது நாம் எப்போதும் வைத்திருக்க எதிர்பார்க்கும் ஒருவித உறவு.

எங்களுக்கு மிகவும் நெருக்கடியான சூழ்நிலை. சில தரவுகள் இழக்கப்பட்டிருக்கலாம் என்பதைக் குறிக்கிறது. தரவு இழப்பு என்பது முற்றிலும் பேரழிவு தரும் ஒன்று.

நிர்வகிக்கப்பட்ட தரவுத்தளங்களில் நாம் பின்பற்றும் பொதுவான கருத்து என்னவென்றால், முயற்சி செய்தாலும், தரவை இழப்பது கடினம். நீங்கள் வேண்டுமென்றே அவற்றை அகற்றினாலும், நீண்ட காலத்திற்கு அவை இல்லாததை நீங்கள் புறக்கணிக்க வேண்டும். தரவு பாதுகாப்பு என்பது நாம் மிகவும் விடாமுயற்சியுடன் பின்பற்றும் ஒரு மதம்.

இங்கே ஒரு சூழ்நிலை எழுகிறது, அதற்கு நாம் தயாராக இல்லாத ஒரு சூழ்நிலை இருக்கலாம். இந்த சூழ்நிலைக்கு நாங்கள் தயார் செய்ய ஆரம்பித்தோம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://commitfest.postgresql.org/23/2171/

நாங்கள் செய்த முதல் காரியம், இந்த ஆயிரக்கணக்கான கொத்துக்களில் இருந்து மரக்கட்டைகளை புதைப்பதுதான். தரவுப் பக்க புதுப்பிப்புகளை இழக்கும் பிரச்சனைக்குரிய ஃபார்ம்வேர் உள்ள வட்டுகளில் எந்த கிளஸ்டர்கள் அமைந்துள்ளன என்பதைக் கண்டறிந்தோம். அனைத்து Postgres தரவுக் குறியீடும் குறிக்கப்பட்டது. தரவு ஊழலைக் கண்டறிய வடிவமைக்கப்பட்ட குறியீட்டைக் கொண்டு உள் மாறுபாடுகளின் மீறல்களைக் குறிக்கும் செய்திகளைக் குறித்தோம்.

இந்த இணைப்பு சமூகத்தால் அதிக விவாதம் இல்லாமல் நடைமுறையில் ஏற்றுக்கொள்ளப்பட்டது, ஏனெனில் ஒவ்வொரு குறிப்பிட்ட சந்தர்ப்பத்திலும் ஏதோ மோசமானது நடந்துள்ளது மற்றும் பதிவில் தெரிவிக்கப்பட வேண்டும் என்பது தெளிவாகத் தெரிந்தது.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

இதற்குப் பிறகு, பதிவுகளை ஸ்கேன் செய்யும் கண்காணிப்பு உள்ளது என்ற நிலைக்கு வந்தோம். மேலும் சந்தேகத்திற்கிடமான செய்திகள் ஏற்பட்டால், அவர் கடமை அதிகாரியை எழுப்புகிறார், மேலும் கடமை அதிகாரி அதை சரிசெய்கிறார்.

ஆனாலும்! பதிவுகளை ஸ்கேன் செய்வது என்பது ஒரு கிளஸ்டரில் ஒரு மலிவான செயல்பாடு மற்றும் ஆயிரம் கிளஸ்டர்களுக்கு பேரழிவு தரும் வகையில் விலை உயர்ந்தது.

என்ற நீட்டிப்பை எழுதினோம் லாகர்ர்கள். இது தரவுத்தளத்தின் பார்வையை உருவாக்குகிறது, அதில் நீங்கள் கடந்த கால பிழைகள் குறித்த புள்ளிவிவரங்களை மலிவாகவும் விரைவாகவும் தேர்ந்தெடுக்கலாம். நாம் கடமை அதிகாரியை எழுப்ப வேண்டும் என்றால், ஜிகாபைட் கோப்புகளை ஸ்கேன் செய்யாமல், ஹாஷ் டேபிளில் இருந்து சில பைட்டுகளை பிரித்தெடுப்பதன் மூலம் இதைப் பற்றி கண்டுபிடிப்போம்.

இந்த நீட்டிப்பு, எடுத்துக்காட்டாக, களஞ்சியத்தில் ஏற்றுக்கொள்ளப்பட்டது CentOS. நீங்கள் அதைப் பயன்படுத்த விரும்பினால், அதை நீங்களே நிறுவலாம். நிச்சயமாக இது திறந்த மூலமாகும்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/[மின்னஞ்சல் பாதுகாக்கப்பட்டது]

ஆனால் அதெல்லாம் இல்லை. குறியீடுகளில் மாறாத மீறல்களைக் கண்டறிய, சமூகத்தால் கட்டமைக்கப்பட்ட நீட்டிப்பான ஆம்செக்கைப் பயன்படுத்தத் தொடங்கினோம்.

நீங்கள் அதை அளவில் இயக்கினால், பிழைகள் இருப்பதை நாங்கள் கண்டுபிடித்தோம். அவற்றை சரிசெய்ய ஆரம்பித்தோம். எங்கள் திருத்தங்கள் ஏற்கப்பட்டன.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/[மின்னஞ்சல் பாதுகாக்கப்பட்டது]

இந்த நீட்டிப்பு GiST & GIT குறியீடுகளை பகுப்பாய்வு செய்ய முடியாது என்பதைக் கண்டறிந்தோம். அவர்களுக்கு ஆதரவை வழங்கினோம். ஆனால் இந்த ஆதரவு இன்னும் சமூகத்தால் விவாதிக்கப்படுகிறது, ஏனெனில் இது ஒப்பீட்டளவில் புதிய செயல்பாடு மற்றும் நிறைய விவரங்கள் உள்ளன.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://commitfest.postgresql.org/29/2667/

மேலும், நகலெடுக்கும் தலைவர், மாஸ்டரில் மீறல்களுக்கான குறியீடுகளைச் சரிபார்க்கும்போது, ​​​​எல்லாம் நன்றாக வேலை செய்கிறது, ஆனால் பிரதிகளில், பின்தொடர்பவர் மீது, ஊழலைத் தேடுவது அவ்வளவு பயனுள்ளதாக இல்லை என்பதையும் நாங்கள் கண்டுபிடித்தோம். அனைத்து மாறுபாடுகளும் சரிபார்க்கப்படவில்லை. மேலும் ஒரு மாறாதவர் எங்களை மிகவும் தொந்தரவு செய்தார். மேலும், பிரதிகளை இந்தச் சரிபார்ப்பைச் செயல்படுத்துவதற்காக சமூகத்துடன் ஒன்றரை வருடங்கள் தொடர்புகொண்டோம்.

அனைத்து முடியும்... நெறிமுறைகளையும் பின்பற்ற வேண்டிய குறியீட்டை நாங்கள் எழுதினோம். க்ரஞ்சி டேட்டாவில் இருந்து பீட்டர் ககனுடன் இந்த பேட்சை சிறிது நேரம் விவாதித்தோம். இந்த பேட்சை ஏற்றுக்கொள்வதற்கு அவர் போஸ்ட்கிரெஸில் இருக்கும் பி-ட்ரீயை சிறிது மாற்றியமைக்க வேண்டியிருந்தது. அவர் ஏற்றுக்கொள்ளப்பட்டார். இப்போது பிரதிகளில் குறியீடுகளைச் சரிபார்ப்பதும் நாங்கள் சந்தித்த மீறல்களைக் கண்டறியும் அளவுக்கு பயனுள்ளதாகிவிட்டது. அதாவது, டிஸ்க் ஃபார்ம்வேரில் உள்ள பிழைகள், போஸ்ட்கிரெஸில் உள்ள பிழைகள், லினக்ஸ் கர்னலில் உள்ள பிழைகள் மற்றும் வன்பொருள் சிக்கல்கள் ஆகியவற்றால் ஏற்படக்கூடிய மீறல்கள் இவை. நாங்கள் தயாரிக்கும் சிக்கல்களின் ஆதாரங்களின் விரிவான பட்டியல்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/38AF687F-8F6B-48B4-AB9E-A60CFD6CC261%40enterprisedb.com#0e86a12c01d967bac04a9bf83cd337cb

ஆனால் குறியீடுகளைத் தவிர, குவியல் போன்ற ஒரு பகுதி உள்ளது, அதாவது தரவு சேமிக்கப்படும் இடம். மேலும் சரிபார்க்கக்கூடிய பல மாறுதல்கள் இல்லை.

எங்களிடம் Heapcheck என்ற நீட்டிப்பு உள்ளது. நாங்கள் அதை வளர்க்க ஆரம்பித்தோம். அதற்கு இணையாக, எங்களுடன் சேர்ந்து, EnterpriseDB நிறுவனமும் ஒரு தொகுதியை எழுதத் தொடங்கியது, அதை அவர்கள் அதே வழியில் Heapcheck என்று அழைத்தனர். நாங்கள் அதை PgHeapcheck என்று மட்டுமே அழைத்தோம், அவர்கள் அதை Heapcheck என்று அழைத்தார்கள். அவர்கள் அதை ஒத்த செயல்பாடுகளுடன், சற்று வித்தியாசமான கையொப்பத்துடன், ஆனால் அதே யோசனைகளுடன் உள்ளனர். சில இடங்களில் இன்னும் கொஞ்சம் சிறப்பாக செயல்படுத்தினார்கள். அவர்கள் அதை முன்பு திறந்த மூலத்தில் வெளியிட்டனர்.

இப்போது நாம் அவர்களின் விரிவாக்கத்தை வளர்த்து வருகிறோம், ஏனென்றால் அது அவர்களின் விரிவாக்கம் அல்ல, மாறாக சமூகத்தின் விரிவாக்கம். எதிர்காலத்தில், இது கர்னலின் ஒரு பகுதியாகும், இது அனைவருக்கும் வழங்கப்படும், இதனால் அவர்கள் எதிர்கால சிக்கல்களைப் பற்றி முன்கூட்டியே தெரிந்துகொள்ள முடியும்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/fe9b3722df94f7bdb08768f50ee8fe59%40postgrespro.ru

சில இடங்களில், எங்கள் கண்காணிப்பு அமைப்புகளில் தவறான நேர்மறைகள் உள்ளன என்ற முடிவுக்கு கூட வந்தோம். உதாரணமாக, 1C அமைப்பு. ஒரு தரவுத்தளத்தைப் பயன்படுத்தும் போது, ​​Postgres சில சமயங்களில் அது படிக்கக்கூடிய தரவை அதில் எழுதுகிறது, ஆனால் pg_dump ஐ படிக்க முடியாது.

இந்தச் சூழல் எங்களின் சிக்கலைக் கண்டறியும் அமைப்பிற்கு ஊழலாகத் தோன்றியது. கடமை அதிகாரி எழுந்தார். டியூட்டி ஆபீசர் என்ன நடக்கிறது என்று பார்த்தார். சிறிது நேரம் கழித்து, ஒரு வாடிக்கையாளர் வந்து எனக்கு சிக்கல் இருப்பதாக கூறினார். என்ன பிரச்சனை என்று உதவியாளர் விளக்கினார். ஆனால் பிரச்சனை Postgres மையத்தில் உள்ளது.

இந்த அம்சத்தைப் பற்றிய விவாதத்தை நான் கண்டேன். இந்த அம்சத்தை நாங்கள் சந்தித்தோம், அது விரும்பத்தகாதது என்று அவர் எழுதினார், அது என்ன என்பதைக் கண்டுபிடிக்க ஒரு நபர் இரவில் எழுந்தார்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://www.postgresql.org/message-id/flat/fe9b3722df94f7bdb08768f50ee8fe59%40postgrespro.ru

சமூகம் பதிலளித்தது, "ஓ, நாங்கள் அதை சரிசெய்ய வேண்டும்."

எனக்கு ஒரு எளிய ஒப்புமை உள்ளது. நீங்கள் ஒரு ஷூவில் நடந்து கொண்டிருந்தால், அதில் மணல் தானியங்கள் உள்ளன, பின்னர், கொள்கையளவில், நீங்கள் செல்லலாம் - எந்த பிரச்சனையும் இல்லை. நீங்கள் ஆயிரக்கணக்கான மக்களுக்கு பூட்ஸை விற்றால், மணல் இல்லாமல் பூட்ஸ் தயாரிப்போம். உங்கள் காலணிகளைப் பயன்படுத்துபவர்களில் ஒருவர் மராத்தான் ஓட்டப் போகிறார் என்றால், நீங்கள் மிகச் சிறந்த காலணிகளை உருவாக்க விரும்புகிறீர்கள், பின்னர் அவற்றை உங்கள் பயனர்கள் அனைவருக்கும் அளவிடவும். மேலும் இதுபோன்ற எதிர்பாராத பயனர்கள் எப்போதும் கிளவுட் சூழலில் இருப்பார்கள். சில அசல் வழியில் கிளஸ்டரைப் பயன்படுத்தும் பயனர்கள் எப்போதும் இருக்கிறார்கள். இதற்கு நீங்கள் எப்போதும் தயாராக வேண்டும்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

நாம் இங்கே என்ன கற்றுக்கொண்டோம்? நாங்கள் ஒரு எளிய விஷயத்தைக் கற்றுக்கொண்டோம்: மிக முக்கியமான விஷயம் என்னவென்றால், ஒரு பிரச்சனை இருக்கிறது என்பதை சமூகத்திற்கு விளக்குவது. சமூகம் பிரச்சினையை அங்கீகரித்திருந்தால், பிரச்சனையைத் தீர்ப்பதில் இயற்கையான போட்டி எழுகிறது. ஏனென்றால் எல்லோரும் ஒரு முக்கியமான பிரச்சனையை தீர்க்க விரும்புகிறார்கள். அனைத்து விற்பனையாளர்களும், அனைத்து ஹேக்கர்களும் தாங்கள் இந்த ரேக்கில் அடியெடுத்து வைக்க முடியும் என்பதை புரிந்துகொள்கிறார்கள், எனவே அவர்கள் அவற்றை அகற்ற விரும்புகிறார்கள்.

நீங்கள் ஒரு பிரச்சனையில் வேலை செய்கிறீர்கள், ஆனால் அது உங்களைத் தவிர வேறு யாரையும் தொந்தரவு செய்யவில்லை, ஆனால் நீங்கள் அதை முறையாகச் செய்து, இறுதியில் அது ஒரு பிரச்சனையாகக் கருதப்பட்டால், உங்கள் இழுத்தல் கோரிக்கை நிச்சயமாக ஏற்றுக்கொள்ளப்படும். உங்கள் இணைப்பு ஏற்றுக்கொள்ளப்படும், உங்கள் மேம்பாடுகள் அல்லது மேம்பாடுகளுக்கான கோரிக்கைகள் கூட சமூகத்தால் மதிப்பாய்வு செய்யப்படும். நாளின் முடிவில், தரவுத்தளத்தை ஒருவருக்கொருவர் சிறந்ததாக்குகிறோம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

ஒரு சுவாரஸ்யமான தரவுத்தளமானது Greenplum ஆகும். இது போஸ்ட்கிரெஸ் கோட்பேஸ் அடிப்படையிலான மிகவும் இணையான தரவுத்தளமாகும், இது எனக்கு மிகவும் பரிச்சயமானது.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://greenplum.org/greenplum-database-tables-compression/

மற்றும் Greenplum சுவாரஸ்யமான செயல்பாடு உள்ளது - உகந்த அட்டவணைகள் இணைக்கவும். நீங்கள் விரைவாகச் சேர்க்கக்கூடிய அட்டவணைகள் இவை. அவை நெடுவரிசையாகவோ அல்லது வரிசையாகவோ இருக்கலாம்.

ஆனால் கிளஸ்டரிங் எதுவும் இல்லை, அதாவது அட்டவணையில் உள்ள தரவை அட்டவணையில் உள்ள வரிசைக்கு ஏற்ப நீங்கள் ஏற்பாடு செய்யக்கூடிய செயல்பாடு எதுவும் இல்லை.

டாக்ஸியில் இருந்து வந்தவர்கள் என்னிடம் வந்து சொன்னார்கள்: “ஆண்ட்ரே, போஸ்ட்கிரெஸ் உங்களுக்குத் தெரியும். இங்கே அது கிட்டத்தட்ட அதே தான். 20 நிமிடங்களுக்கு மாறவும். நீ எடுத்துச் செய்” என்றார். ஆம், எனக்கு போஸ்ட்கிரெஸ் தெரியும் என்று நினைத்தேன், 20 நிமிடங்களுக்கு மாறுகிறேன் - நான் இதைச் செய்ய வேண்டும்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://github.com/greenplum-db/gpdb/commit/179feb77a034c2547021d675082aae0911be40f7

ஆனால் இல்லை, அது 20 நிமிடங்கள் அல்ல, நான் அதை பல மாதங்கள் எழுதினேன். PgConf.Russia மாநாட்டில், நான் பிவோட்டலில் இருந்து ஹெய்க்கி லினகங்காஸை அணுகி கேட்டேன்: “இதில் ஏதேனும் சிக்கல்கள் உள்ளதா? ஏன் append optimized table clustering இல்லை?" அவர் கூறுகிறார்: “நீங்கள் தரவுகளை எடுத்துக் கொள்ளுங்கள். நீங்கள் வரிசைப்படுத்துங்கள், மறுசீரமைக்கவும். இது ஒரு வேலை மட்டுமே. நான்: "ஓ, ஆமாம், நீங்கள் அதை எடுத்து அதை செய்ய வேண்டும்." அவர் கூறுகிறார்: "ஆம், இதைச் செய்ய எங்களுக்கு சுதந்திரமான கைகள் தேவை." இதை கண்டிப்பாக செய்ய வேண்டும் என்று நினைத்தேன்.

சில மாதங்களுக்குப் பிறகு, இந்த செயல்பாட்டைச் செயல்படுத்தும் ஒரு இழுவை கோரிக்கையை நான் சமர்ப்பித்தேன். இந்த இழுப்புக் கோரிக்கை சமூகத்துடன் சேர்ந்து Pivotal ஆல் மதிப்பாய்வு செய்யப்பட்டது. நிச்சயமாக, பிழைகள் இருந்தன.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://github.com/greenplum-db/gpdb/issues/10150

ஆனால் மிகவும் சுவாரசியமான விஷயம் என்னவென்றால், இந்த இழுப்பு கோரிக்கை இணைக்கப்பட்டபோது, ​​​​கிரீன்பிளமிலேயே பிழைகள் காணப்பட்டன. குவியல் அட்டவணைகள் சில நேரங்களில் கொத்தாக இருக்கும் போது பரிவர்த்தனையை உடைப்பதை நாங்கள் கண்டறிந்துள்ளோம். மேலும் இது சரி செய்யப்பட வேண்டிய ஒரு விஷயம். நான் தொட்ட இடத்தில் அவள் இருக்கிறாள். என் இயல்பான எதிர்வினை என்னவென்றால் - சரி, நானும் இதைச் செய்யட்டும்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://github.com/greenplum-db/gpdb/pull/10290

இந்த பிழையை சரி செய்துவிட்டேன். திருத்துபவர்களுக்கு இழுக்க கோரிக்கை அனுப்பப்பட்டது. அவர் கொல்லப்பட்டார்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://github.com/greenplum-db/gpdb-postgres-merge/pull/53

அதன் பிறகு இந்த செயல்பாடு PostgreSQL 12 க்கான Greenplum பதிப்பில் பெறப்பட வேண்டும் என்று மாறியது. அதாவது, 20 நிமிட சாகசம் புதிய சுவாரஸ்யமான சாகசங்களுடன் தொடர்கிறது. சமூகம் புதிய மற்றும் மிக முக்கியமான அம்சங்களைக் குறைக்கும் தற்போதைய வளர்ச்சியைத் தொடுவது சுவாரஸ்யமானது. உறைந்துவிட்டது.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

https://github.com/greenplum-db/gpdb/pull/10565

ஆனால் அது அங்கு முடிவடையவில்லை. எல்லாவற்றிற்கும் மேலாக, இதற்கெல்லாம் நாங்கள் ஆவணங்களை எழுத வேண்டும் என்று மாறியது.

ஆவணங்களை எழுத ஆரம்பித்தேன். அதிர்ஷ்டவசமாக, பிவோட்டலில் இருந்து ஆவணப்படக்காரர்கள் வந்தனர். ஆங்கிலம் அவர்களின் தாய்மொழி. அவர்கள் எனக்கு ஆவணப்படுத்த உதவினார்கள். உண்மையில், நான் முன்மொழிந்ததை அவர்களே உண்மையான ஆங்கிலத்தில் மாற்றி எழுதினர்.

இங்கே, சாகசம் முடிந்தது என்று தோன்றுகிறது. பின்னர் என்ன நடந்தது தெரியுமா? டாக்ஸியில் இருந்து வந்தவர்கள் என்னிடம் வந்து சொன்னார்கள்: "இன்னும் இரண்டு சாகசங்கள் உள்ளன, ஒவ்வொன்றும் 10 நிமிடங்களுக்கு." மேலும் நான் அவர்களுக்கு என்ன சொல்ல வேண்டும்? நான் இப்போது ஒரு அறிக்கையை தருகிறேன் என்று சொன்னேன், பின்னர் உங்கள் சாகசங்களைப் பார்ப்போம், ஏனென்றால் இது ஒரு சுவாரஸ்யமான வேலை.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

இந்த வழக்கில் இருந்து நாம் என்ன கற்றுக்கொண்டோம்? ஓப்பன் சோர்ஸ் உடன் பணிபுரிவது எப்போதும் ஒரு குறிப்பிட்ட நபருடன் வேலை செய்வதால், அது எப்போதும் சமூகத்துடன் இணைந்து செயல்படுகிறது. ஏனென்றால் ஒவ்வொரு கட்டத்திலும் நான் சில டெவலப்பர்கள், சில சோதனையாளர், சில ஹேக்கர், சில ஆவணப்படம், சில கட்டிடக் கலைஞர்களுடன் பணிபுரிந்தேன். நான் கிரீன்பிளமுடன் வேலை செய்யவில்லை, கிரீன்பிளமைச் சுற்றியுள்ளவர்களுடன் வேலை செய்தேன்.

ஆனாலும்! மற்றொரு முக்கியமான விஷயம் உள்ளது - இது வெறும் வேலை. அதாவது, நீ வா, காபி குடி, குறியீடு எழுது. அனைத்து வகையான எளிய மாறுபாடுகளும் வேலை செய்கின்றன. அதை சாதாரணமாக செய்யுங்கள் - அது நன்றாக இருக்கும்! மேலும் இது ஒரு சுவாரஸ்யமான வேலை. Yandex.Cloud கிளையன்ட்கள், Yandex இன் உள்ளேயும் வெளியேயும் எங்கள் கிளஸ்டர்களைப் பயன்படுத்துபவர்களிடமிருந்து இந்தப் பணிக்கான கோரிக்கை உள்ளது. மேலும் நாங்கள் பங்கேற்கும் திட்டங்களின் எண்ணிக்கை அதிகரிக்கும் மற்றும் எங்கள் ஈடுபாட்டின் ஆழமும் அதிகரிக்கும் என்று நான் நினைக்கிறேன்.

அவ்வளவுதான். கேள்விகளுக்கு செல்வோம்.

திறந்த மூல தரவுத்தளங்களில் நாம் என்ன, ஏன் செய்கிறோம். ஆண்ட்ரி போரோடின் (Yandex.Cloud)

கேள்விகள் அமர்வு

வணக்கம்! எங்களுக்கு மற்றொரு கேள்வி பதில் அமர்வு உள்ளது. மற்றும் ஸ்டுடியோவில் ஆண்ட்ரி போரோடின். திறந்த மூலத்திற்கு Yandex.Cloud மற்றும் Yandex இன் பங்களிப்பைப் பற்றி உங்களுக்குச் சொன்னவர் இவர்தான். எங்கள் அறிக்கை இப்போது கிளவுட் பற்றியது அல்ல, ஆனால் அதே நேரத்தில் நாங்கள் அத்தகைய தொழில்நுட்பங்களை அடிப்படையாகக் கொண்டுள்ளோம். Yandex இல் நீங்கள் செய்தது இல்லாமல், Yandex.Cloud இல் எந்த சேவையும் இருக்காது, எனவே தனிப்பட்ட முறையில் என்னிடமிருந்து நன்றி. ஒளிபரப்பிலிருந்து முதல் கேள்வி: "நீங்கள் குறிப்பிட்டுள்ள திட்டங்கள் ஒவ்வொன்றும் என்ன எழுதப்பட்டுள்ளன?"

WAL-G இல் உள்ள காப்புப்பிரதி அமைப்பு Go இல் எழுதப்பட்டுள்ளது. நாங்கள் பணியாற்றிய புதிய திட்டங்களில் இதுவும் ஒன்று. அவருக்கு உண்மையில் 3 வயதுதான். ஒரு தரவுத்தளமானது பெரும்பாலும் நம்பகத்தன்மையைப் பற்றியது. இதன் பொருள் தரவுத்தளங்கள் மிகவும் பழமையானவை மற்றும் அவை வழக்கமாக C இல் எழுதப்படுகின்றன. Postgres திட்டம் சுமார் 30 ஆண்டுகளுக்கு முன்பு தொடங்கியது. பின்னர் C89 சரியான தேர்வாக இருந்தது. மற்றும் Postgres அதில் எழுதப்பட்டுள்ளது. ClickHouse போன்ற நவீன தரவுத்தளங்கள் பொதுவாக C++ இல் எழுதப்படுகின்றன. அனைத்து கணினி வளர்ச்சியும் C மற்றும் C++ ஐ அடிப்படையாகக் கொண்டது.

Cloud இல் செலவினங்களுக்குப் பொறுப்பான எங்கள் நிதி மேலாளரிடமிருந்து ஒரு கேள்வி: "Open Source ஐ ஆதரிக்க Cloud ஏன் பணம் செலவழிக்கிறது?"

நிதி மேலாளருக்கான எளிய பதில் இங்கே உள்ளது. எங்கள் சேவைகளை மேம்படுத்துவதற்காக இதைச் செய்கிறோம். எந்தெந்த வழிகளில் நாம் சிறப்பாகச் செய்யலாம்? நாம் விஷயங்களை மிகவும் திறமையாகவும், வேகமாகவும், மேலும் அளவிடக்கூடியதாகவும் செய்யலாம். ஆனால் எங்களைப் பொறுத்தவரை, இந்த கதை முதன்மையாக நம்பகத்தன்மையைப் பற்றியது. எடுத்துக்காட்டாக, காப்புப்பிரதி அமைப்பில், அதற்குப் பொருந்தும் 100% இணைப்புகளை மதிப்பாய்வு செய்கிறோம். குறியீடு என்னவென்று எங்களுக்குத் தெரியும். புதிய பதிப்புகளை உற்பத்திக்கு வெளியிடுவதில் நாங்கள் மிகவும் வசதியாக இருக்கிறோம். அதாவது, முதலில், இது நம்பிக்கையைப் பற்றியது, வளர்ச்சிக்கான தயார்நிலை மற்றும் நம்பகத்தன்மை பற்றியது

மற்றொரு கேள்வி: "Yandex.Cloud இல் வசிக்கும் வெளிப்புற பயனர்களின் தேவைகள், உள் கிளவுட்டில் வசிக்கும் உள் பயனர்களிடமிருந்து வேறுபட்டதா?"

சுமை சுயவிவரம், நிச்சயமாக, வேறுபட்டது. ஆனால் எனது துறையின் பார்வையில், அனைத்து சிறப்பு மற்றும் சுவாரஸ்யமான வழக்குகளும் தரமற்ற சுமைகளில் உருவாக்கப்படுகின்றன. கற்பனைத்திறன் கொண்ட டெவலப்பர்கள், எதிர்பாராததைச் செய்யும் டெவலப்பர்கள், உள்நாட்டிலும் வெளிப்புறத்திலும் காணப்பட வாய்ப்புள்ளது. இது சம்பந்தமாக, நாம் அனைவரும் ஏறக்குறைய ஒரே மாதிரியாக இருக்கிறோம். மேலும், அனேகமாக, தரவுத்தளங்களின் யாண்டெக்ஸ் செயல்பாட்டிற்குள் இருக்கும் ஒரே முக்கியமான அம்சம் யாண்டெக்ஸில் நமக்கு ஒரு போதனை உள்ளது. ஒரு கட்டத்தில், சில கிடைக்கும் மண்டலம் முற்றிலும் நிழலில் செல்கிறது, மேலும் அனைத்து யாண்டெக்ஸ் சேவைகளும் எப்படியாவது தொடர்ந்து செயல்பட வேண்டும். இது ஒரு சிறிய வித்தியாசம். ஆனால் இது தரவுத்தளம் மற்றும் பிணைய அடுக்கின் இடைமுகத்தில் நிறைய ஆராய்ச்சி வளர்ச்சியை உருவாக்குகிறது. இல்லையெனில், வெளிப்புற மற்றும் உள் நிறுவல்கள் அம்சங்களுக்கான அதே கோரிக்கைகள் மற்றும் நம்பகத்தன்மை மற்றும் செயல்திறனை மேம்படுத்துவதற்கான ஒத்த கோரிக்கைகளை உருவாக்குகின்றன.

அடுத்த கேள்வி: "நீங்கள் செய்வதில் பெரும்பாலானவை மற்ற மேகங்களால் பயன்படுத்தப்படுகின்றன என்பதைப் பற்றி நீங்கள் தனிப்பட்ட முறையில் எப்படி உணருகிறீர்கள்?" குறிப்பிட்டவற்றை நாங்கள் பெயரிட மாட்டோம், ஆனால் Yandex.Cloud இல் செய்யப்பட்ட பல திட்டங்கள் மற்றவர்களின் மேகங்களில் பயன்படுத்தப்படுகின்றன.

இது குளிர்ச்சியானது. முதலில், நாம் எதையாவது சரியாகச் செய்துவிட்டோம் என்பதற்கான அடையாளம். மேலும் அது ஈகோவைக் கீறுகிறது. மேலும் நாங்கள் சரியான முடிவை எடுத்தோம் என்பதில் அதிக நம்பிக்கை உள்ளது. மறுபுறம், இது எதிர்காலத்தில் எங்களுக்கு புதிய யோசனைகள், மூன்றாம் தரப்பு பயனர்களிடமிருந்து புதிய கோரிக்கைகளைக் கொண்டுவரும் என்ற நம்பிக்கை இதுவாகும். GitHub இல் உள்ள பெரும்பாலான சிக்கல்கள் தனிப்பட்ட கணினி நிர்வாகிகள், தனிப்பட்ட DBAகள், தனிப்பட்ட கட்டிடக் கலைஞர்கள், தனிப்பட்ட பொறியாளர்கள் ஆகியோரால் உருவாக்கப்படுகின்றன, ஆனால் சில நேரங்களில் முறையான அனுபவம் உள்ளவர்கள் வந்து 30% சில நிகழ்வுகளில் இந்தப் பிரச்சனை இருப்பதாகச் சொல்கிறார்கள், அதை எவ்வாறு தீர்ப்பது என்று யோசிப்போம். இதைத்தான் நாங்கள் அதிகம் எதிர்பார்க்கிறோம். மற்ற கிளவுட் பிளாட்ஃபார்ம்களுடன் அனுபவங்களைப் பகிர்ந்து கொள்ள ஆவலுடன் காத்திருக்கிறோம்.

மாரத்தான் பற்றி நிறைய பேசினீர்கள். நீங்கள் மாஸ்கோவில் ஒரு மாரத்தான் ஓடியது எனக்குத் தெரியும். அதன் விளைவாக? PostgreSQL இன் தோழர்களை முந்திவிட்டீர்களா?

இல்லை, Oleg Bartunov மிக வேகமாக ஓடுகிறார். அவர் எனக்கு ஒரு மணி நேரம் முன்னதாகவே முடித்தார். மொத்தத்தில், நான் எவ்வளவு தூரம் வந்தேன் என்பதில் நான் மகிழ்ச்சியடைகிறேன். என்னைப் பொறுத்தவரை, முடித்தது ஒரு சாதனை. ஒட்டுமொத்தமாக, போஸ்ட்கிரெஸ் சமூகத்தில் பல ரன்னர்கள் இருப்பது ஆச்சரியமாக இருக்கிறது. ஏரோபிக் ஸ்போர்ட்ஸ் மற்றும் சிஸ்டம்ஸ் புரோகிராமிங் ஆசைக்கு இடையே ஒருவித தொடர்பு இருப்பதாக எனக்குத் தோன்றுகிறது.

ClickHouse இல் ரன்னர்கள் இல்லை என்று சொல்கிறீர்களா?

அவர்கள் அங்கே இருக்கிறார்கள் என்பது எனக்குத் தெரியும். ClickHouse ஒரு தரவுத்தளமாகும். மூலம், ஓலெக் இப்போது எனக்கு எழுதுகிறார்: "அறிக்கைக்குப் பிறகு நாங்கள் ஓடலாமா?" இது ஒரு சிறந்த யோசனை.

நிகிதாவின் ஒளிபரப்பில் இருந்து மற்றொரு கேள்வி: "கிரீன்பிளமில் உள்ள பிழையை நீங்களே ஏன் சரிசெய்தீர்கள், அதை ஜூனியர்களுக்கு கொடுக்கவில்லை?" உண்மை, பிழை என்ன, எந்த சேவையில் உள்ளது என்பது தெளிவாகத் தெரியவில்லை, ஆனால் நீங்கள் பேசியதை இது குறிக்கலாம்.

ஆம், கொள்கையளவில், அது யாருக்காவது கொடுக்கப்பட்டிருக்கலாம். நான் மாற்றிய குறியீடு தான். உடனே அதைத் தொடர்வது இயல்பாக இருந்தது. கொள்கையளவில், குழுவுடன் நிபுணத்துவத்தைப் பகிர்ந்து கொள்ளும் யோசனை ஒரு நல்ல யோசனை. எங்கள் பிரிவின் அனைத்து உறுப்பினர்களுக்கும் கிரீன்பிளம் பணிகளை நிச்சயமாகப் பகிர்ந்து கொள்வோம்.

நாம் ஜூனியர்களைப் பற்றி பேசுவதால், இங்கே ஒரு கேள்வி. போஸ்ட்கிரெஸில் முதல் கமிட்டை உருவாக்க அந்த நபர் முடிவு செய்தார். அவர் முதல் உறுதி செய்ய என்ன செய்ய வேண்டும்?

இது ஒரு சுவாரஸ்யமான கேள்வி: "எங்கிருந்து தொடங்குவது?" கர்னலில் எதையாவது தொடங்குவது பொதுவாக மிகவும் கடினம். உதாரணமாக, Postgres இல் செய்ய வேண்டிய பட்டியல் உள்ளது. ஆனால் உண்மையில், இது அவர்கள் என்ன செய்ய முயற்சித்தார்கள் என்பதற்கான ஒரு தாள், ஆனால் வெற்றிபெறவில்லை. இவை சிக்கலான விஷயங்கள். பொதுவாக நீங்கள் சுற்றுச்சூழல் அமைப்பில் சில பயன்பாடுகளைக் காணலாம், மேம்படுத்தக்கூடிய சில நீட்டிப்புகள், கர்னல் டெவலப்பர்களிடமிருந்து குறைந்த கவனத்தை ஈர்க்கும். மேலும், அதன்படி, அங்கு வளர்ச்சிக்கு அதிக புள்ளிகள் உள்ளன. கூகுள் சம்மர் ஆஃப் கோட் திட்டத்தில், ஒவ்வொரு ஆண்டும் போஸ்ட்கிரெஸ் சமூகம் பல்வேறு தலைப்புகளை முன்வைக்கிறது. இந்த ஆண்டு நாங்கள் மூன்று மாணவர்கள் என்று நினைக்கிறேன். Yandex க்கு முக்கியமான தலைப்புகளில் WAL-G இல் கூட ஒருவர் எழுதினார். க்ரீன்பிளமில், போஸ்ட்கிரெஸ் சமூகத்தை விட எல்லாம் எளிமையானது, ஏனெனில் க்ரீன்ப்ளம் ஹேக்கர்கள் இழுக்கும் கோரிக்கைகளை நன்றாகக் கருதி உடனடியாக மதிப்பாய்வு செய்யத் தொடங்குகின்றனர். Postgres க்கு பேட்ச் அனுப்புவது பல மாதங்கள் ஆகும், ஆனால் Greenplum ஒரு நாளில் வந்து நீங்கள் என்ன செய்தீர்கள் என்று பார்க்கலாம். மற்றொரு விஷயம் என்னவென்றால், கிரீன்ப்ளம் தற்போதைய பிரச்சினைகளை தீர்க்க வேண்டும். Greenplum பரவலாகப் பயன்படுத்தப்படவில்லை, எனவே உங்கள் சிக்கலைக் கண்டுபிடிப்பது மிகவும் கடினம். முதலில், நாம் நிச்சயமாக பிரச்சினைகளை தீர்க்க வேண்டும்.

ஆதாரம்: www.habr.com