
Në fund të marsit një version i ri i platformës së të dhënave InterSystems IRIS 2020.1. Edhe pandemia e coronavirusit nuk e ndali lëshimin.
Nga të rëndësishmet në këtë lëshim të ri — rritja e performancës së bërthamës, gjenerimi i aplikacioneve REST sipas specifikacionit OpenAPI 2.0, sharding për objekte, një lloj i ri i Portalit të Menaxhimit, mbështetje për MQTT, një cache universale për kërkesa, një dhembje e re për krijimin e elementeve të produktit në Java ose .NET. Lista e plotë e ndryshimeve dhe lista e kontrollit të përmirësimeve në anglisht mund të gjendet në . Më shumë — nën këtë titull.
InterSystems IRIS 2020.1 është një lëshim me mbështetje të zgjeruar. InterSystems lëshon dy lloje lëshimesh të InterSystems IRIS:
- Lëshime të shpërndarjes së vazhdueshme. Dalin tri-katër herë në vit në formën e imazheve Docker. Të destinuara për zhvillimin e aplikacioneve dhe për implementimin në cloud ose konteinerë Docker.
- Lëshime me mbështetje të zgjeruar. Dalin më rrallë, por për to lëshohen versione me rregullime. Lëshohen në të gjitha platformat e mbështetura nga InterSystems IRIS.
Ndërmjet lëshimeve me mbështetje të zgjeruar 2019.1 dhe 2020.1, kanë dalë vetëm lëshime në formën e imazheve Docker — 2019.2, 2019.3, 2019.4. Të gjitha funksionalitetet dhe rregullimet e reja nga këto lëshime janë përfshirë në 2020.1. Disa mundësi nga ato të përmendura më poshtë u shfaqën për herë të parë në një nga lëshimet 2019.2, 2019.3, 2019.4.
Kështu.
Zhvillimi i aplikacioneve REST sipas specifikacionit
Së bashku me , mbështetur që nga versioni 2019.1.1, në lëshimin 2020.1 u shfaq mundësia për të gjeneruar skeletin e kodit për shërbimin REST sipas specifikacionit në formatin OpenAPI 2.0. Më shumë shihni në seksionin e dokumentacionit "».
Konvertimi i instalimit Caché ose Ensemble
Ky lëshim lejon që gjatë instalimit të konvertohet një instalim Caché ose Ensemble në InterSystems IRIS. Vetë konvertimi mund të kërkojë ndryshime në kodin e programit, konfigurimet ose skriptet e tjera, por në shumicën e rasteve do të jetë i thjeshtë.
Para konvertimit lexoni Udhëzimin e Konvertimit në Vend të InterSystems IRIS dhe Udhëzimin e Pranimit të InterSystems IRIS. Këto dokumente ndodhen në faqen e Qendrës Botërore të Mbështetjes së InterSystems në seksionin "».
Gjuha të klientëve
InterSystems IRIS Native API për Python
Qasje e shpejtë dhe në nivel të ulët nga Python në matricat shumëdimensionale, në të cilat InterSystems IRIS ruan të dhënat. Më shumë — "».
InterSystems IRIS Native API для Node.js
Qasje e shpejtë dhe në nivel të ulët nga Node.js në matricat shumëdimensionale, në të cilat InterSystems IRIS ruan të dhënat. Më shumë — "».
Реляционный доступ для Node.js
Поддержка ODBC-доступа к InterSystems IRIS для разработчиков на Node.js
Komunikim dypalësh në portat Java dhe .NET
Lidhjet .NET dhe Java tani janë dyanshëm. Kjo do të thotë se një program në .NET ose Java, i thirrur nga IRIS përmes portalit, përdor këtë lidhje për të kontaktuar IRIS. Më shumë - "».
Përmirësime në Native API për Java dhe .NET
IRIS Native API për Java dhe .NET mbështet listat $LIST dhe kalimin e parametrave me referencë.
Pamja e Re e Portës së Menaxhimit
Ky version përfshin ndryshimet e para në Portën e Menaxhimit. Ata përkohësisht prekin vetëm pamjen dhe nuk ndikojnë në funksionalitet.
SQL
Cache universale e kërkesave. Duke filluar nga 2020.1, të gjitha kërkesat, duke përfshirë kërkesat e integruara dhe kërkesat e klasave, do të ruhen si kërkesa të cache. Më parë, përdorimi i kërkesave të integruara kërkonte ribërje të programit për të gjeneruar kodin e ri të kërkesës, për shembull, nëse shfaqej një indeks i ri ose nëse statistikat e tabelës ndryshonin. Tani të gjitha planet e kërkesave ruhen në një cache të vetëm dhe pastrohen pavarësisht nga programi në të cilin përdoret kërkesa.
Numri më i madh i llojeve të kërkesave tani paraleizohet, duke përfshirë kërkesat DML.
Запросы к таблице, разделённой по шардам, теперь могут использовать неявный join "->".
Kërkesat që ekzekutohen nga Porta e Menaxhimit tani realizohen në një proces pasiv. Kërkesat e gjata tani nuk do të bien në skadimin e uebfaqes. Kërkesat e zgjatura tani mund të anullohen.
Mundësitë e Integrimit
Një kornizë e re për krijimin e elementeve të prodhimit në Java ose .NET
Ky version përfshin kornizën e re PEX (Production EXtension), e cila ofron zgjedhje shtesë të gjuhës për implementimin e komponenteve të prodhimit. Në këtë version, PEX mbështet Java dhe .NET për zhvillimin e shërbimeve biznesore, proceseve biznesore dhe operacioneve biznesore, si edhe për adaptuesit hyrës dhe dalës. Më parë, vetëm shërbimet biznesore dhe operacionet biznesore mund të krijoheshin, duke detyruar thirrjen e gjeneruesit të kodit në Portën e Menaxhimit. Korniza PEX ofron mjete më fleksibël për integrimin e kodit në Java dhe .NET në komponentet e prodhimit, shpesh pa programim në ObjectScript. Paketa PEX përfshin klasat e mëposhtme:
Më shumë - "».
Monitorimi i përdorimit të porteve në produkte.
Utilitarja Port Authority ndjek portet e përdorura nga shërbimet e biznesit dhe operacionet e biznesit. Me ndihmën e saj, mund të përcaktoni portet e disponueshme dhe t'i rezervoni ato. Më shumë — «».
Adaptues për MQTT
Në këtë version përfshihen adaptues që mbështesin protokollin MQTT (Message Queuing Telemetry Transport), i cili përdoret shpesh në aplikacionet për Internetin e Gjerave (Internet of Things — IoT). Më shumë — «».
Sharding
Arkitekturë e Thjeshtuar
Në këtë version është krijuar një mënyrë më të thjeshtë dhe më të kuptueshme për të krijuar një grumbull — mbi serverë të veçantë (nivel nxënësi), në vend të zonave, si në versionet e mëparshme. API i ri — . Qasja e re është e përputhshme me të vjetrën — grumbulli mbi baza zonash (nivel emërtimi) — dhe nuk kërkon ndryshime në instalimet ekzistuese. Më shumë — «» dhe "».
Përmirësime të tjera në sharding:
- Tani është e mundur të bashkë-shardoni (ta shpërndani në të njëjtat sharde pjesët e dy tabelave që lidhen shpesh) çdo dy tabela. Më parë kjo mund të bëhej vetëm me tabela që kishin një çelës/shard të përbashkët. Duke filluar nga ky version, sintaksa COSHARD WITH zbatohet edhe për tabelat me ID sistemike. Më shumë — «» dhe "».
- Më parë, shënimi i një tabele si grumbullor mund të bëhej vetëm përmes DDL, tani është e mundur ta bëni këtë edhe në përshkrimin e klasës — fjala e re kyçe Sharded. Më shumë — «».
- Modeli objektor tani mbështet shardingun. Metodat %New(), %OpenId dhe %Save() punojnë me objekte të klasës, të dhënat e së cilës janë shpërndarë në disa sharde. Vini re se kodi ekzekutohet në serverin që është i lidhur me klientin, jo në atë ku ruhet objekti.
- Algoritmi për ekzekutimin e kërkesave në grumbull është përmirësuar. Menaxheri i radhës së kërkesave (Unified Shard Queue Manager) vendos kërkesat në radhë për t'u ekzekutuar nga një grup procesesh, në vend që të niste procese të reja për çdo kërkesë. Numri i proceseve në grup përcaktohet automatikisht, bazuar në burimet e serverit dhe ngarkesën.
Infrastruktura dhe shpërndarja në re.
Ky version përfshin përmirësime në infrastrukturë dhe shpërndarje në re, duke përfshirë:
- Mbështetje për Tencent Cloud. InterSystems Cloud Manager (ICM) tani mbështet krijimin e infrastrukturës dhe shpërndarjen e aplikacioneve mbi bazën e InterSystems IRIS në Tencent Cloud.
- Mbështetje për volumin e emërtuar (named volumes) në Docker, përveç montimit të dosjeve (bind mount).
- ICM mbështet shkallëzim fleksibil - konfigurimet tani mund të shkallëzohen, që do të thotë se ato mund të rinovohet me më shumë ose më pak nyje. Më shumë informacion - "» dhe "».
- Përmirësime në krijimin e kontejnerëve të vet.
- ICM mbështet një arkitekturë të re shpërndarjeje.
- Përdoruesi i parazgjedhur në kontejnerë tani nuk është root.
- ICM mbështet krijimin dhe implementimin e rrjeteve private, në të cilat nyja-bastion lidh rrjetin privat me rrjetin publik dhe ofron mbrojtje shtesë nga sulmet Denial-of-Service.
- Mbështetje për zb discovering shërbimesh përmes RPC të sigurt.
- ICM mbështet implementimin në disa regjione. Kështu sigurohet që sistemi të ketë disponueshmëri të lartë, edhe nëse e gjithë regjioni ndalon së funksionuari.
- Mundësia për të përditësuar ICM dhe për të ruajtur informacionin për sistemet e tashmë implementuara.
- Rezhimi pa kontejner - ICM tani mund të zbatojë konfigurime grumbullore direkt, pa kontejnerë, në Google Cloud Platform, si dhe të instalojë Web Gateway në Ubuntu ose SUSE.
- Mbështetje për bashkimin e iris.cpf nga dy skedarë. Kjo ndihmon ICM të ekzekutojë InterSystems IRIS me konfigurime të ndryshme në varësi të modit në të cilin instalimi funksionon. Kjo mundësi e thjeshton automatizimin dhe mbështetje të ndryshme të mjeteve për menaxhimin e konfigurimeve, si Kubernetes.
Analitika
Rikonstruksioni selektiv i kubit
Duke filluar me këtë version, InterSystems IRIS Business Intelligence (më herët i njohur si DeepSee) mbështet ndërtimin selektiv të kubit - vetëm një tregues ose dimension. Mund të ndryshoni përshkrimin e kubit dhe të rikonstruktoni vetëm atë që ka ndryshuar, duke ruajtur disponueshmërinë e gjithë kubit gjatë rinovimit.
PowerBI konnectori
Microsoft PowerBI tani mbështet punën me tabela dhe kubet e InterSystems IRIS. Konnektori vjen me PowerBI, duke filluar me versionin e prillit 2019. Më shumë informacion - "».
Parashikimi i rezultateve të kërkesës
Në këtë version u prezantua një mod i ri parashikimi gjatë hartimit të tabelave në Analyzer. Kështu mund të vlerësoni shpejt saktësinë e kërkesës, pa pritur rezultatet e plota.
Përmirësime të tjera
- Kalimi nëpër global me funksionin $ORDER në rendin e kundërt (direction = -1) tani është po aq i shpejtë sa në të drejtën.
- Përmirësuar performanca e regjistrimit.
- Shtuar mbështetje për Apache Spark 2.3, 2.4.
- Shtuar mbështetje për klientin WebSocket. Klasa %Net.WebSocket.Client.
- Klasa e kontrollit të versioneve tani përpunon ngjarjet gjatë ndryshimeve në faqen e produktit.
- Listat e bardha për filtrimin e kërkesave të lejuara për CSP, ZEN dhe REST.
- Përkrahja për .NET Core 2.1.
- Përmirësuar performanca e ODBC.
- Logu i strukturuar për lehtësimin e analizës së messages.log.
- API për kontrollin e gabimeve dhe paralajmërimeve. Klasa %SYSTEM.Monitor.GetAlerts().
- Kompiluesi i klasave tani kontrollon që emri i globalit në përshkrimin e ruajtjes të mos tejkalojë gjatësi maksimale (31 karakter) dhe kthen një gabim nëse ndodh kështu. Më parë, emri i globalit shkurtëzohej në 31 karakter pa paralajmërim.
Ku mund ta gjej
Nëse keni mbështetje — shkarkoni distribuimin nga seksioni faqja wrc.intersystems.com
Nëse doni thjesht të provoni InterSystems IRIS —
Akoma më thjeshtë nëpërmjet Docker:
docker run --name iris20 --init --detach --publish 51773:51773 --publish 52773:52773 store/intersystems/iris-community:2020.1.0.215.0Webinar
Më 7 prill në 17:00 sipas orës së Moskës do të mbahet një webinar për lansimin e ri. Do ta drejtojnë Jeff Fried (Drejtor, Menaxhimi i Produkteve) dhe Joe Lichtenberg (Drejtor i Marketingut të Produkteve dhe Industrisë). Webinari do të jetë në anglisht.
Burimi: habr.com
