bfj Posted August 14, 2009 Report Share Posted August 14, 2009 (edited) Ir sanācis aizdomāties par sekojošu jautājumu: Kā labāk atlasīt datus no db? Veidot vienu milzīgu vaicājumu (ar JOIN) vai vairākus mazākus, programmatiski datus pēc tam savienojot? Kā tas attiektos uz ātrdarbību? Vēl viena lieta. Šobrīd vienai sistēmai esmu realizējis atlasi tā, ka atlasīti tiek tikai tie lauki, kas vajadzīgi (respektīvi - bezmaz vai katrai funkcionalitātei savs "kverijs", kaut arī f-jas izmanto gandrīz vienus un tos pašus datus) un rezultātā ir saveidojušies milzumdaudz dažādi SELECTi tā, ka nu jau paliek pagrūti noorientēties. Varbūt to visu esmu darījis lieki un varētu vienkārši atlasīt visus tabulu laukus uzreiz un tad programmā filtrēt, ko vajag un ko ne? Protams, pastāv variants programmā izveidot savu "kveriju builderi", taču jebkurā gadījumā esošie jautājumi paliek aktuāli :) Edited August 14, 2009 by bfj Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted August 14, 2009 Report Share Posted August 14, 2009 Gandrīz vienmēr labāk ir taisīt vienu lielu vaicājumu, nekā daudzus mazus. Vienīgi protams jāatcerās par vaicājumu optimizāciju: EXPLAIN LIELAIS_BRIESMĪGAIS_SQL_VAICĀJUMS Pareizi ir atlasīt tikai to, kas Tev vajadzīgs un neko vairāk. Quote Link to comment Share on other sites More sharing options...
Gints Plivna Posted August 14, 2009 Report Share Posted August 14, 2009 Datubāzes domātas tam, lai veiktu savienojumus (join), tur piekrītu Aleksejam. Savukārt par to, ka atlasīti tikai to ko vajag un neko citu, es teiktu, ka ir jāatrod kaut kāds zelta vidusceļš. Ja biznesa objektā ir 10 lauki, tad no tiem var izveidot ... šausmas iedomāties cik kombinācijas ;) Attiecīgi varētu piemēram, visus laukus, un vairākas apakškopas, ko visbiežāk lieto. Tad pat, ja formā ir 4 lauki no 5 atlasītajiem, nedomāju, ka trafiks būs pārlieku liels. Jo jāskatās, kā jau autors norādīja arī koda uzturamība. Pie tam kas tādā gadījumā notiek, ja visur/gandrīz visur vēl kaut kas jāpieliek klāt? Galvenais, lai neatlasa kaut kādus monstrozus laukus (komentārus, aprakstus, attēlus), kas galu galā nevajag. No otras puses te ir jautājums par analīzi/biznesu - kāpēc veidojas tāda dīvaina situācija, ka ir n formas, kas atšķiras tikai par dažiem laukiem? Varbūt vajag pieturēties pie dažiem standarta izkārtojumiem, lai šāda problēma programmētājiem vispār neveidotos? Gints Plivna http://datubazes.wordpress.com/ Quote Link to comment Share on other sites More sharing options...
endrju Posted August 14, 2009 Report Share Posted August 14, 2009 Gandrīz vienmēr labāk ir taisīt vienu lielu vaicājumu, nekā daudzus mazus. Man pieredzē ir bijis otrādāk. Bet nu "gandrīz" der. Quote Link to comment Share on other sites More sharing options...
raabis Posted September 17, 2009 Report Share Posted September 17, 2009 Katrā ziņā, nevajadzētu aizmirst tādu lietu kā cache..Tas atvieglo mazliet un mazina to staigāšanu iekšā ārā datubāzēs. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.