தொடர்புடைய வரைபடத்தின் வெளியீடு DBMS EdgeDB 2.0

EdgeDB 2.0 DBMS இன் வெளியீடு வழங்கப்படுகிறது, இது தொடர்புடைய வரைபட தரவு மாதிரி மற்றும் EdgeQL வினவல் மொழியை செயல்படுத்துகிறது, இது சிக்கலான படிநிலை தரவுகளுடன் பணிபுரிய உகந்ததாக உள்ளது. குறியீடு பைதான் மற்றும் ரஸ்டில் எழுதப்பட்டுள்ளது (பாகுபடுத்தி மற்றும் செயல்திறன்-முக்கியமான பாகங்கள்) மற்றும் Apache 2.0 உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது. PostgreSQLக்கான துணை நிரலாக இந்த திட்டம் உருவாக்கப்படுகிறது. கிளையன்ட் நூலகங்கள் பைதான், கோ, ரஸ்ட் மற்றும் டைப்ஸ்கிரிப்ட்/ஜாவாஸ்கிரிப்ட் ஆகியவற்றிற்காகத் தயாரிக்கப்படுகின்றன. DBMS மேலாண்மை மற்றும் ஊடாடும் வினவல் செயல்படுத்தல் (REPL) க்கான கட்டளை வரி கருவிகளை வழங்குகிறது.

அட்டவணை அடிப்படையிலான தரவு மாதிரிக்குப் பதிலாக, EdgeDB பொருள் வகைகளின் அடிப்படையில் ஒரு அறிவிப்பு முறையைப் பயன்படுத்துகிறது. வெளிநாட்டு விசைகளுக்குப் பதிலாக, குறிப்புகள் மூலம் இணைப்பது வகைகளுக்கு இடையிலான உறவை வரையறுக்கப் பயன்படுகிறது (ஒரு பொருளை மற்றொரு பொருளின் சொத்தாகப் பயன்படுத்தலாம்).

நபர் {தேவையான சொத்து பெயர் -> str; } வகை மூவி {தேவையான சொத்து தலைப்பு -> str; பல இணைப்பு நடிகர்கள் -> நபர்; }

வினவல் செயலாக்கத்தை விரைவுபடுத்த குறியீடுகளைப் பயன்படுத்தலாம். வலுவான சொத்து தட்டச்சு, சொத்து மதிப்பு கட்டுப்பாடுகள், கணக்கிடப்பட்ட பண்புகள் மற்றும் சேமிக்கப்பட்ட நடைமுறைகள் போன்ற அம்சங்களும் ஆதரிக்கப்படுகின்றன. EdgeDB ஆப்ஜெக்ட் ஸ்டோரேஜ் திட்டத்தின் அம்சங்கள், இது ORMஐ ஓரளவு நினைவூட்டுகிறது, ஸ்கீமாக்களை கலக்கும் திறன், வெவ்வேறு பொருட்களிலிருந்து பண்புகளை இணைக்கும் திறன் மற்றும் ஒருங்கிணைந்த JSON ஆதரவு ஆகியவை அடங்கும்.

ஸ்கீமா மைக்ரேஷனைச் சேமிப்பதற்காக உள்ளமைக்கப்பட்ட கருவிகள் வழங்கப்படுகின்றன - ஒரு தனி esdl கோப்பில் குறிப்பிடப்பட்டுள்ள ஸ்கீமாவை மாற்றிய பின், “edgedb migration create” கட்டளையை இயக்கவும், DBMS ஆனது ஸ்கீமாவில் உள்ள வேறுபாடுகளை பகுப்பாய்வு செய்து, ஊடாடலாக ஒரு ஸ்கிரிப்டை உருவாக்கும். புதிய திட்டம். திட்ட மாற்றங்களின் வரலாறு தானாகவே கண்காணிக்கப்படும்.

வினவல்களை உருவாக்க, GraphQL வினவல் மொழி மற்றும் தனியுரிம EdgeDB மொழி ஆகிய இரண்டும் ஆதரிக்கப்படுகின்றன, இது படிநிலை தரவுகளுக்கான SQL இன் தழுவலாகும். பட்டியல்களுக்குப் பதிலாக, வினவல் முடிவுகள் கட்டமைக்கப்பட்ட முறையில் வடிவமைக்கப்பட்டுள்ளன, மேலும் துணை வினவல்கள் மற்றும் சேர்ப்புகளுக்குப் பதிலாக, ஒரு EdgeQL வினவலை மற்றொரு வினவலுக்குள் ஒரு வெளிப்பாடாகக் குறிப்பிடலாம். பரிவர்த்தனைகள் மற்றும் சுழற்சிகள் ஆதரிக்கப்படுகின்றன.

திரைப்படத்தைத் தேர்ந்தெடு {தலைப்பு, நடிகர்கள்: {பெயர்}} வடிகட்டி .title = "தி மேட்ரிக்ஸ்" திரைப்படத்தைச் செருகவும் {தலைப்பு := "தி மேட்ரிக்ஸ் மறுமலர்ச்சிகள்", நடிகர்கள் := ( {'கீனு ரீவ்ஸ்', 'கேரி-இல் நபர் வடிகட்டி .பெயரை தேர்ந்தெடுக்கவும் அன்னே மோஸ்', 'லாரன்ஸ் ஃபிஷ்பர்ன்' } ) {0, 1, 2, 3} யூனியனில் உள்ள எண்ணுக்கு ( {எண், எண் + 0.5 } என்பதைத் தேர்ந்தெடுக்கவும்);

புதிய பதிப்பில்:

  • தரவுத்தள நிர்வாகத்திற்காக ஒரு உள்ளமைக்கப்பட்ட இணைய இடைமுகம் சேர்க்கப்பட்டுள்ளது, இது தரவைப் பார்க்கவும் திருத்தவும் அனுமதிக்கிறது, EdgeQL வினவல்களை இயக்கவும் மற்றும் பயன்படுத்தப்படும் சேமிப்பகத் திட்டத்தை பகுப்பாய்வு செய்யவும். இடைமுகம் “edgedb ui” கட்டளையால் தொடங்கப்பட்டது, அதன் பிறகு லோக்கல் ஹோஸ்ட்டை அணுகும்போது அது கிடைக்கும்.
    தொடர்புடைய வரைபடத்தின் வெளியீடு DBMS EdgeDB 2.0
  • "GROUP" வெளிப்பாடு செயல்படுத்தப்பட்டது, SELECT செயல்பாட்டில் குழுவாக்குவது போன்ற தன்னிச்சையான EdgeQL வெளிப்பாடுகளைப் பயன்படுத்தி தரவு மற்றும் குழுத் தரவைப் பிரித்து ஒருங்கிணைக்க உங்களை அனுமதிக்கிறது.
  • பொருள் மட்டத்தில் அணுகலைக் கட்டுப்படுத்தும் திறன். அணுகல் விதிகள் சேமிப்பகத் திட்ட மட்டத்தில் வரையறுக்கப்பட்டு, பெறுதல், செருகுதல், நீக்குதல் மற்றும் புதுப்பித்தல் செயல்பாடுகளில் குறிப்பிட்ட பொருட்களைப் பயன்படுத்துவதற்கான திறனைக் கட்டுப்படுத்த உங்களை அனுமதிக்கிறது. எடுத்துக்காட்டாக, வெளியீட்டைப் புதுப்பிக்க ஆசிரியரை மட்டுமே அனுமதிக்கும் விதியை நீங்கள் சேர்க்கலாம்.
  • சேமிப்பகத் திட்டத்தில் உலகளாவிய மாறிகளைப் பயன்படுத்தும் திறன் சேர்க்கப்பட்டது. ஒரு புதிய உலகளாவிய மாறி தற்போதைய_பயனர் பயனருடன் பிணைக்க முன்மொழியப்பட்டது.
  • மதிப்புகளின் வரம்புகளை வரையறுக்கும் வகைகளுக்கான ஆதரவு சேர்க்கப்பட்டது.
  • ரஸ்ட் மொழிக்கான அதிகாரப்பூர்வ கிளையன்ட் லைப்ரரி தயார் செய்யப்பட்டுள்ளது.
  • EdgeDB பைனரி நெறிமுறை நிலைப்படுத்தப்பட்டுள்ளது, ஒரே நெட்வொர்க் இணைப்பிற்குள் பல்வேறு அமர்வுகளை ஒரே நேரத்தில் செயலாக்குவது, HTTP மூலம் முன்னோக்கி, உலகளாவிய மாறிகள் மற்றும் உள்ளூர் நிலைகளைப் பயன்படுத்துவதை சாத்தியமாக்குகிறது.
  • சாக்கெட் செயல்படுத்தலுக்கான ஆதரவு சேர்க்கப்பட்டது, இது சர்வர் ஹேண்ட்லரை நினைவகத்தில் வைத்திருக்காமல், இணைப்பை நிறுவ முயற்சிக்கும்போது மட்டுமே அதை இயக்க அனுமதிக்கிறது (டெவலப்பர் சிஸ்டங்களில் வளங்களைச் சேமிக்கப் பயன்படும்).

ஆதாரம்: opennet.ru

கருத்தைச் சேர்