Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.
Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.
Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.
Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.
O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.
Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.
Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
"user1";"1";"7" "user2";"2";"6" "user3";"3";"5" "user4";"3";"4" "user5";"4";"3" "user6";"4";"2" "user7";"4";"1"Pokud chci 3 záznamy řazené podle 2. sloupce a potom 3. sloupce, tak to musí vrátit user1, user2, user4. Nepřišel jsem na optimální algoritmus jak dostat 3 záznamy aniž bych musel přečíst celý 1. soubor, celý 2. soubor a pak to limitovat až ve výsledku, což je ale velice datově a výpočetně náročné pro větší množství dat. Určitě už někdo podobný problém řešil. Prosím o pomoc/popis algoritmu pro toto řazení.
sloupec1+sloupec2 = soubor1, řazený vzestupně podle 2. sloupce sloupec1+sloupec3 = soubor2, řazený vzestupně podle 3. sloupce "user1";"1";"7" "user2";"2";"6" "user3";"3";"5" "user4";"3";"4" "user5";"4";"3" "user6";"4";"2" "user7";"4";"1" 1. z prvního souboru vyberu první 3 => user1, user2, user3 2. z druhého souboru vyberu první 3 => user7, user6, user5 3. spojím a zobrazím všechna data "user1";"1";"7" "user2";"2";"6" "user3";"3";"5" "user7";"4";"1" "user6";"4";"2" "user5";"4";"3" 4. omezím na první 3 => user1, user2, user3 = CHYBANeboť primárně řadím podle 2. sloupce, tak user3 a user4 jsou nerozhodně (oba = 3), pomocí druhého sloupce ale zjistím, že user4 je před user3, což se ale při tomto algoritmu neprojeví.
n
plus všechny, co mají stejný druhý sloupec jak n
-tý
což je ale velice datově a výpočetně náročné pro větší množství datProto je dobré mít ta data v dobře zpracovatelném formátu a udržovat další informace pro jejich rychlé prohledávání a propojování. A tak vznikly databáze.
1. vyberu n řádků ze zdroje 1 .. - zjistím že m z n řádků nemají jednoznačné pořadí, tak prohledám zdroj 1 znovu a vyberu z n řádky které nemají jednoznačné pořadí + řádky s tímto "indexem", ale za limitem dotazu a postoupím dalšímu zdroji 2. to samé .......
sloupec1+sloupec2 = soubor1, řazený vzestupně podle 2. sloupcetzn. ze vuci sobe nejsou serazeny vubec (teda ano 1. sloupcem) -> to musis imho projit vsechny zaznamy ...
sloupec1+sloupec3 = soubor2, řazený vzestupně podle 3. sloupce
jmeno; cislo; cislo2 ----------------------- "user1";"1";"7" "user2";"2";"6" "user3";"3";"5" "user4";"3";"4" "user5";"4";"3" "user6";"4";"2" "user7";"4";"1" order by cislo, cislo2 limit 3 = user1, user2, user4 teď ten algoritmus: - select cislo ... order by cislo limit 3 1 2 3 - select jmeno ... where cislo in (1,2,3) => user1, user2, user3, user4 - pak zjistim ze sporne cislo je u user3 a user4 - select jmeno ... where jmeno in ("user3", "user4") order by cislo2 limit3 => user4, user3 => prerovnam puvodni vyber "user1, user2, user3, user4" na "user1, user2, user4, user3" a omezim na 3 => "user1, user2, user4"Zásadní vada na kráse je ale ta že tento algoritmus je docela složitý.
Většinou se bude jednat o různé typy relačních databází.Tak pri dotaze z kazdej databazy treba prvych n riadkov utriedenych podla vyslednych ziadanych stlpcov. A nasledne utriedit vsetky takto ziskane riadky (pri 3 databazach teda 3*n riadkov). To je algoritmus uvedeny uz v otazke (a takisto posledny sposob uvedeny v 1. komentari). Ale to utriedenie musi byt vsade rovnake ako vysledne ziadane.
Tiskni Sdílej: