Kodulehed
[378] - Andmebaasid I (ITI0206) (kevad 2020)
Esiletöstetud Kiirvalik
Lisainfo Kõige olulisemate tegevuste kiirvalik. Failide saatmiseks valige Vastamine alt sobiv ülesanne.
Avaleht
Nagu Moodles
Lindistused
   Loengud
   Praktikumid

Valik materjalidest
   Nädala materjalid
   Minu lemmikud

Vastuste vaatamine
Hinneteleht
Seisuga: 09.06.2020 17:18
Üldist
Materjalid
LisainfoMaterjalide kataloogid.
Hüüumärk (!) tähistab hetkel erilist tähelepanu vajavat kataloogi.
Värvilised mummud tähistavad hinnangulist kataloogide lugemise vajadust. Roheline - suurim, kollane - keskmine, punane või mummuta - väikseim
Isiklik
Lisainfo Info ainult Sulle - teised kasutajad seda ei näe
Abi
Lisainfo Võimalus küsida õppejõult abi (nagu foorum, kus saab küsida küsimusi ja kommenteerida vastuseid)
Mitmesugust
Mitmesugust / Viited

Viited teemade kaupa:
Animatsioonid
Andmebaaside kursused teistes ülikoolides
Andmebaasi mustrid
Andmebaaside projekteerimine
CASE vahendid
CASE vahendid (veebipõhised)
UML
SQL andmebaasikeel
SQL standard
Andmebaasisüsteemide pakkujad ja nende tooted
Andmebaasisüsteemide võrdlus
MS Access
Prototüüpimine ja kasutajaliidese disain
Sõnastikud

Animatsioonid
Byte-sized graphic guide to data storage
https://www.bbc.com/future/article/20130621-byte-sized-guide-to-data-storage
Tegemist pole küll animatsiooniga, kuid see annab mõjusa visuaalse ülevaate andmemahtudest.
Sisukord
Andmebaaside kursused teistes ülikoolides
Andmebaaside kursus Warwicki ülikoolis (2013)
https://www.dcs.warwick.ac.uk/~hugh/
Seda kursust vedas relatsiooniliste andmebaaside ekspert Hugh Darwen. Ta on Kolmanda Manifesti üks autoritest. Ka see kursus keskendus relatsioonilisele mudelile.
Carnegie Mellon ülikooli andmebaasisüsteemide kursuse lindistus
https://www.youtube.com/playlist?list=PLSE8ODhjZXjYutVzTeAds8xUt1rcmyT7x
"Andmebaasid I" kursuse temaatika alla lähevad alla esimesed viis loengut.
CS145 Introduction to Databases (2002)
http://InfoLab.Stanford.EDU/~ullman/dscb/gslides.html
Stanfordi ülikooli sissejuhatav andmebaaside kursus. Erinevatel aastatel viivad seda läbi erinevad inimesed. Igaühel on teemale oma vaatenurk ning omad õppematerjalid ja metoodika.
CS145 Introduction to Databases (2020)
https://cs145-fa20.github.io/
Stanfordi ülikooli sissejuhatav andmebaaside kursus. Erinevatel aastatel viivad seda läbi erinevad inimesed. Igaühel on teemale oma vaatenurk ning omad õppematerjalid ja metoodika.
Sisukord
Andmebaasi mustrid
Andmemudelite kataloog
http://www.databaseanswers.org/data_models/index.htm
Andmete modelleerimise mustrid, mille saab võtta aluseks konkreetse andmete modelleerimisega seotud ülesande lahendamisel.
Look-up Tables in SQL
https://www.red-gate.com/simple-talk/sql/t-sql-programming/look-up-tables-in-sql-/
Selles artiklis kirjeldatakse disaini \"One True look-up Table\", mida ma nimetaksin antimustriks. Selle kohaselt pannakse kõik klassifikaatorite väärtused ühte tabelisse. Nõustun autoriga, et see pole hea disain. Lugege kindlasti ka kommentaaride osa - sealt leiate vastuväiteid.
Relatsioonilise andmebaasi mustrid
https://ask.slashdot.org/story/00/07/17/0451244/relational-database-patterns
Arutelu Slashdot portaalis
schema.org
https://schema.org/docs/schemas.html
Kasulik lehekülg (andmebaasi) kontseptuaalsele modelleerijale ja selle õppijale. Tuuakse välja ettevõtete/äri põhimõisteid ning ka mõningaid valdkonnaspetsiifilisi mõisteid ning iga sellise kohta loetletakse suures koguses "atribuute" (koos sõnalise definitsiooniga, näiteandmetega, tarkvarasüsteemides esitamiseks mõeldud kodeeringute näidetega). Kontseptuaalses mudelis tuleks neid esitada atribuutide/seosetüüpide/olemitüüpidena.
SQLi antimustrid - halvad lahendused korduvatele SQLi andmebaasi disaini probleemidele
https://www.slideshare.net/billkarwin/sql-antipatterns-strike-back

Vertabelo Blog Learn how to design and use database models
https://www.vertabelo.com/blog/
Ajaveeb, milles tuuakse välja mitmete erinevate eluvaldkondade (liising, kogumine, spordikool, tenniseturniirid, e-oksjon jne) andmebaaside andmemudelid. Tegemist on SQL-andmebaaside loogilise disaini mudelitega (seal kirjeldatakse võtmed ja välisvõtmed, kuid ei arvestata konkreetse andmebaasisüsteemi võimaluste ning piirangutega). Esitatud mudelites on nii diagrammid kui tabelite kirjeldused. Nendest mudelitest saab kerge vaevaga tuletada kontseptuaalse andmemudeli.

Igal mudelil on tabelid jaotatud erinevate ainevaldkondade vahel (erineva taustavärviga kastid). Need kastid vastavad üldjoontes registritele. Sageli märkade kastide nimedes AND märki, mis tähendab, et ühte valdkonda on kokku võetud mitmele erinevale põhimõistele vastavad tabelid. See on otstarbe lahususe põhimõtte eiramine. Parem oleks, kui igale põhimõistele vastaks eraldi register.


What are the most common SQL anti-patterns?
https://stackoverflow.com/questions/346659/what-are-the-most-common-sql-anti-patterns
Arendajate arvates kõige sagedasemad SQL-andmebaasi disaini antimustrid. Muster. Antimuster.
Sisukord
Andmebaaside projekteerimine
Anchor Modeling
http://www.anchormodeling.com/
Meetod, keel ja töövahend andmebaaside projekteerimiseks.

Selle põhjal loodud andmebaasid on hästi kohandatud ajalooliste andmete hoidmiseks, andmebaasi struktuuris täienduste tegemiseks ning puuduvate andmetega toimetulemiseks.

Kasutatav töövahend on veebipõhine ja võimaldab genereerida andmebaasi loomise lauseid.


Andmebaaside hügieeni olulisusest
http://www.dbta.com/Columns/Database-Elaborations/Understanding-the-Basics-of-Database-Hygiene-109011.aspx
Nii nagu on oluline puhas rakenduse kood (clean code) on oluline ka puhas andmebaasi disain, puhas andmebaasikeele lausete kood, puhtad andmebaasi disaini mudelid.
Andmebaaside põhimõisteid
https://database.guide/

Andmemudelite kvaliteedi parandamise tehnikad
https://stevehoberman.com/techniques-in-reviewing-a-data-model/
Steve Hoberman on andmete modelleerimise ekspert. Selles ajaveebi postituses toob ta välja tehnikaid, mida tema või teised andmete modelleerijad kasutavad andmemudelite ülevaatamisel ning nende kvaliteedi tõstmisel.
Argumentatsioon, miks jõustada kitsendusi andmebaasi tasemel
https://tdan.com/agile-data-design-august-2013/17031
Agile Data Design – August 2013
A View Review
http://www.craigsmullins.com/bp10.htm
Ülevaade selle kohta, milleks kasutada vaateid.
Bill Karwini ajaveeb
http://karwin.blogspot.com
Bill Karwin on SQL antimustrite raamatu autor ja tema ajaveebis on palju infot nii tarkvaraarenduse kohta üldiselt kui SQL-andmebaaside kavandamise kohta spetsiifiliselt.
Business Logic in the Database
https://pyrseas.wordpress.com/2012/01/02/business-logic-in-the-database/
Ajaveebi postitus ning pikk arutelu selle üle, kas (ja milliseid) kitsendusi on mõistlik jõustada andmebaasi tasemel ning milliseid kitsendusi peaksid jõustama rakendused.
Common Information Model (CIM) Standards
https://www.dmtf.org/standards/cim
Standardiseeritud CIM Schema kirjeldab klassidiagrammide abil andmeid, mida tuleks koguda ja vahendada süsteemis, mis peab arvestust ettevõtte käsutuses olevate IT varade kohta.
Vajalikud mudelid saab alla laadida pdf või Visio failidena.
Contiguous Time Periods
https://www.red-gate.com/simple-talk/sql/t-sql-programming/contiguous-time-periods/
Kolm disaini kuidas hoida SQL-andmebaasi tabelites infot ajaperioodide kohta. Lisaks tehnilist infot selliste tabelite realiseerimise kohta MS SQL Server andmebaasisüsteemis. Autoriks on tuntud SQLi ekspert Joe Celko.
Database Debunkings
https://www.dbdebunk.com/
Põhjendatud kriitika olemasolevate andmebaasisüsteemide ja andmebaaside projekteerimise käsitluste aadressil.
Define a "Thing"
https://stevehoberman.com/define-a-thing/
Steve Hoberman on andmete modelleerimise ekspert. Selles ajaveebi postituses toob ta välja selliste üldmõistete nagu Osapool, Klassifikaator, Seos, Dokument, Tehing definitsioonid.
Developing Low-Maintenance Databases
https://www.red-gate.com/simple-talk/sql/database-administration/developing-low-maintenance-databases/
Kuidas luua hästi hooldatavaid ja edasiarendatavaid andmebaase? Loo andmebaasi avalik liides; jõusta kitsendusi andmebaasi tasemel; võtmete valimisel ürita teha valikuid, et võtit poleks vaja peagi muuta (väga tülikas, eriti kuna sellele viitavad välisvõtmed); logi veateateid; väldi tupikuid.
Hinnangud suurte organisatsioonide töödeldavate ja salvestatavate andmete mahule
https://followthedata.wordpress.com/2014/06/24/data-size-estimates/

How to Produce Adequate Definitions
https://www.information-management.com/news/how-to-produce-adequate-definitions
Kuidas koostada häid definitsioone on vajalik teadmine kõigile kontseptuaalse andmemudeli koostajatele.
InformationWeek, Software
https://www.informationweek.com/software.asp
Ajakiri, kus on ka palju artikleid andmebaaside viimaste arengusuundade kohta.
IT eBooks
https://it-ebooks.info/
Keskkond, kus on muljetavaldav hulk e-raamatuid, sealhulgas raamatud relatsioonilise mudeli, SQL ja andmebaaside disaini kohta. Osade raamatute puhul saab alla laadida peatükke või muid seotud materjale.
Kasutusjuhtude kontsentreeritud kokkuvõte
http://www.cs.uno.edu/~jaime/Courses/4210/useCaseFundamentals.html
Andmebaas peab võimaldama täita kõik süsteemile esitatavad funktsionaalsed nõuded. Selleks, et saaksime andmebaasi kavandama hakata tuleb need nõudmised formuleerida. Üks meetod selleks on kasutada kasutusjuhtude modelleerimist. Alistair Cockburn on kasutusjuhtude ekspert ning autoriteet. Sellel lehele on kontsentreeritud kokkuvõte kasutusjuhtude mudelite kohta.
Kolmanda Manifesti parafraseering
http://www.andl.org/2015/04/a-paraphrase-of-the-third-manifesto/
Loengutes räägitakse relatsioonilisest mudelist ja tehakse seda Kolmanda Manifesti põhjal. Siin on manifesti dokument "suupärasemaks" kirjutatud ja akadeemilist kuivust vähendatud.
Kolmas Manifest
http://www.thethirdmanifesto.com/
Terviklik käsitlus selle kohta, millistest põhimõtetest lähtuvalt tuleb luua relatsioonilised andmebaasisüsteemid.
Kuidas tellida tarkvaraprojekti?
http://www.targotennisberg.com/tarkvara/2013/01/22/kuidas-tellida-tarkvaraprojekti/
Kogenud praktiku sissevaade sellesse, kuidas "päris maailmas" "asjad käivad".
Looking at VIEWs, Close Up
https://www.red-gate.com/simple-talk/sql/t-sql-programming/looking-at-views-close-up/
SQL spetsialisti Joe Celko artikkel vaadete kohta.
Majandustarkvara kataloog
https://www.rmp.ee/tarkvara/
Infosüsteemi looja on valiku ees, kas osta olemasolev tarkvarasüsteem ja kohandada seda konkreetse organisatsiooni vajadustega või projekteerida ja ehitada täiesti uus tarkvara. Isegi kui otsustatakse uue tarkvara loomise kasuks, on kasulik uurida olemasolevat tarkvara, et saada teada nende eelised ja puudused.
Microsoft Data Platform Developer Center
https://docs.microsoft.com/en-us/sql/connect/sql-data-developer?view=sql-server-ver15
Microsofti andmeplatvorm andmekesksete süsteemide loomiseks.
Miks on oluline jõustada kitsendusi andmebaasi tasemel?
http://www.thatjeffsmith.com/archive/2011/06/response-normalization-myths-that-really-make-me-crazy/
Sisaldab muuhulgas viidet näitele, kuidas kitsendused aitavad parandada päingute jõudlust.
Miks programmeerijatele ei meeldi relatsioonilised andmebaasid?
https://typicalprogrammer.com/why-programmers-dont-like-relational-databases

NoSQL and Technical Debt
https://fredtrotter.com/2017/03/02/nosql-and-technical-debt/
Ajaveebi postitus, mis selgitab, miks NoSQL süsteemide ilmumine pole muutnud väärtusetuks SQLi ning andmebaaside projekteerimise õppimist. Nende oskuste puudumine on arendajatel võlg, mis tuleb hiljem intressidega tagasi maksta. NoSQL oma "skeemitute" andmetega loob tegelikult tehnilist võlga.
Rahvusvaheline riikide ja territooriumite klassifikaator
https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes
Ärge leiutage klassifikaatorite puhul jalgratast, vaid kasutage võimalusel olemasolevaid. Riik, riigid, territoorium, territooriumid, klassifikaator.
Revision-Zero. Talking about computer science
http://www.revision-zero.org/individuals-and-interactions
Ajaveeb, kus on mitmeid olulisi andmebaaside teemalisi sissekandeid (jaotis Databases).
(Some) ORM Haters Do Get It
http://www.revision-zero.org/orm-haters-do-get-it
Object-Relational Mappers vahendite probleemid.
SQL stiilireeglid
https://github.com/pgulutzan/descriptive-sql-style-guide
Põhjalik soovituste kogum, mis koondab kokku arvamusi ja soovitusi väga paljudest allikatest.
Tarkvaraarenduse 10 seaduspärasust
https://productcoalition.com/ten-laws-of-software-development-cbd72db0f85c
Kehtivad tarkvaras üldiselt, sh ka andmebaaside ja andmebaasirakenduste arendamisel.
Tarkvaraarenduse 15 fundamentaalset seaduspärasust
https://exceptionnotfound.net/fundamental-laws-of-software-development/
Kehtivad tarkvaras üldiselt, sh ka andmebaaside ja andmebaasirakenduste arendamisel. Paljud nendest kehtivad ka väljapool tarkvaraarenduse valdkonda.
Temporal Data and the Relational Model
https://www.dcs.warwick.ac.uk/~hugh/TTM/TemporalData.Warwick.pdf
Ülevaade raamatust "Temporal Data and the Relational Model". Autorid C.J. Date, Hugh Darwen, and Nikos A. Lorentzos. See raamat pakub käsitluse, kuidas hoida relatsioonilises andmebaasis ajaga seotud andmeid.
The case against ORMs
https://korban.net/posts/postgres/2017-11-02-the-case-against-orms/
Arendaja põhjendused, miks ta on loobunud ORM vahendite kasutamisest.
The Data-Centric Revolution: Data-Centric vs. Application-Centric
https://tdan.com/the-data-centric-revolution-data-centric-vs-application-centric/22920
Andmekesksuse revolutsioon. Enamik tänapäeva andmebaasirakendusi on loodud protsessikesksest, mitte andmekesksest vaatest lähtuvalt. Protsessikeskse nägemuse kohaselt realiseerib iga rakendus üks või mitu vormi. Sisuliselt automatiseerivad need rakendused tegevusi, mida enne arvutisüsteemi kasutuselevõttu tehti paberil (vorme täites). Selliste süsteemide andmebaasi andmestruktuurid tulenevad vormidest ja pahatihti dubleerivad nende struktuuri. Selle eriti heaks näiteks on dokumendid dokumendipõhises andmebaasis. Näiteks ekraanivormil on üheskoos andmed kliendi, tema tellimuse ja tellitud kaupade kohta ning seetõttu on andmebaasis samad andmed koos ka ühes ning samas dokumendis.

Selle tulemuseks on andmete dubleerimine andmebaasi sees ja üle erinevate andmebaaside. Selliselt struktureeritud andmed ei ole kõrge tasemeni normaliseeritud ja lähevad vastuollu ortogonaalse andmebaasi disaini printsiibiga (vt teema 9). Sellised rakendused peaksid omavahel suhtlema läbi selleks otstarbeks loodud programmiliideste. Andmevahetust pole lihtne tööle panna ning seetõttu vahetavad rakendused palju vähem andmeid kui need võiksid. Tulemuseks on infosüsteemid, kus lõppkasutajatelt küsitakse erinevates kohtades samu andmeid aina uuesti, st ei kehti "Ainult Üks Kord" printsiip.

Alternatiiviks oleks süsteemide disainimine andmetest lähtuvalt. Leia andmed, mida süsteem peab haldama. Vii andmestruktuurid kõrge normaliseerituse tasemeni ning järgi, et andmeid ei dubleeritaks sama andmebaasi erinevates osades või üle erinevate andmebaaside. Lõpuks ehita sinna peale rakendused, mis järgivad kasutajatelt andmete küsimisel "Ainult Üks Kord" põhimõtet.


The History of Time in Data Models
https://www.dataversity.net/the-history-of-time-in-data-models/#
Ülevaade ajaloost ja tänapäevast selle kohta, kuidas erinevad andmemudelid toetavad ajaandmete (temporaalsete) andmete esitamist.
The Seven Information Smells of Domain Modelling
https://www.infoq.com/articles/seven-modelling-smells/
Viited andmemudelites sageli esinevatele võimalikele vigadele.
The Third Manifesto forum
https://forum.thethirdmanifesto.com/
Kolmanda manifesti veebifoorum, kust leiab huvitavaid arutelusid relatsioonilise mudeli ja relatsiooniliste andmebaaside disaini teooria ja praktika kohta.
Thoughts on what to put in the database
http://ledgersmbdev.blogspot.com/2012/01/thoughts-on-what-to-put-in-database.html
Mõtteid selle kohta kuidas jaotada koodi andmebaasi ja rakenduse vahel.
TIOBE Programming Community Index
https://www.tiobe.com/tiobe-index/
Programmeerimiskeelte populaarsuse indeks
Ärireeglite kirjeldamine
https://www.brcommunity.com/
Ärireeglid on süsteemi projekteerimise oluliseks sisendiks, nendest peab juhinduma loodava süsteemi töö ning paljusid ärireegleid on võimalik kontrollida andmebaasi tasemel.
Sisukord
CASE vahendid Computer Aided System Engineering
Andmete modelleerimine ja SQL koodi genereerimine Enterprise Architect abil
http://www.marcusnordquist.com/?p=112

Artikkel, kus nimetatakse mõningaid andmete modelleerimiseks mõeldud CASE vahendeid ja iseloomustatakse neid
https://www.databasejournal.com/features/oracle/article.php/3525621/Making-the-Case-for-CASE-Tools.htm

Clay Mark II - Eclipse plugin
https://marketplace.eclipse.org/content/clay-mark-ii
Kommertsvahend, mis on mõeldud andmete modelleerimiseks ning SQL koodi genereerimiseks
DBDesigner
http://fabforce.eu/dbdesigner4/
Andmete modelleerimiseks mõeldud CASE vahend. Võimaldab ka SQL lausete genereerimist ja mudeli ning andmebaasi sünkroniseerimist. Seda levitatakse GPL (General Public Licence) litsentsi alusel ja saab tasuta alla laadida.
DB-MAIN - andmete modelleerimiseks mõeldud CASE vahend
https://www.dataengineers.eu/en/db-main/
See on CASE vahend, mida õppejõud soovitab kasutada tasuta alternatiivina Rational Rose Data Modelerile.
DeZign for databases
https://www.datanamic.com/
Kommertsvahend andmemudelite loomiseks ja selle põhjal andmebaasi skripti genereerimiseks.
DIA
https://wiki.gnome.org/action/show/Apps/Dia?action=show&redirect=Dia
Diagrammide joonistamise programm, mida levitatakse GPL (General Public Licence) litsentsi alusel ja saab tasuta alla laadida.
ERWin Data Modeler
https://erwin.com/products/
Väga tuntud andmete modelleerimiseks mõeldud kommertssüsteem.
GNU Ferret (formerly known as GerWin)
http://savannah.gnu.org/p/ferret
Andmemudeli joonistamiseks mõeldud programm, mida levitatakse GPL (General Public Licence) litsentsi alusel ja saab tasuta alla laadida.
PlantUML
https://plantuml.com
Vahend, mis genereerib UML diagrammi tekstilisest kirjeldusest (mis peab olema kirja pandud spetsiaalselt selleks otstarbeks loodud keeles) selle diagrammi pildi.
Poseidon for UML
http://freshmeat.sourceforge.net/projects/poseidon
CASE vahend objekt-orienteeritud disaini läbiviimiseks. ArgoUMLi edasiarendus.
StarUML 5.0 (vanem projekt)
http://staruml.sourceforge.net/v1/

Staruml 5.0 (vanem projekt) lisamoodul SQL andmebaaside tehniliseks kavandamiseks ja PostgreSQL jaoks koodi genereerimiseks
http://staff.ttu.ee/~eessaar/SQL_profile/

StarUML (uuem projekt)
https://staruml.io/

StarUML (uuem projekt) lisamoodulid
https://staruml.io/extensions
Olemas nii lisamoodulid olemi-suhte diagrammide loomiseks kui ka olemi-suhte diagrammidel esitatud info alusel PostgreSQL andmekirjelduskeele lausete genereerimiseks
UMLet
http://www.umlet.com/
Võimaldab joonistada põhilisi UML diagramme. Akendes erinevate elementide omaduste muutmise asemel tuleb diagrammi kirjeldada tekstiliste käskude jadana (skriptina) ja selle alusel joonistatakse diagramm automaatselt valmis.
Sisukord
CASE vahendid (veebipõhised) Computer Aided System Engineering
Cacoo
https://cacoo.com/
Veebipõhine modelleerimisvahend, sobib kasutamiseks andmebaaside õppeainetes mudelite loomiseks.
Creately
https://creately.com/
Veebipõhine modelleerimisvahend, sobib kasutamiseks andmebaaside õppeainetes mudelite loomiseks.
Gliffy. Veebipõhine diagrammide joonistamise vahend.
https://www.gliffy.com

UMLetino
http://www.umlet.com/umletino/
Võimaldab joonistada põhilisi UML diagramme. Akendes erinevate elementide omaduste muutmise asemel tuleb diagrammi kirjeldada tekstiliste käskude jadana (skriptina) ja selle alusel joonistatakse diagramm automaatselt valmis.
WWW SQL Designer
https://ondras.zarovi.cz/sql/demo/
Veebipõhine SQL-andmebaasi disaini modelleerimise ja koodi genereerimise vahend.
Sisukord
UML
Dear Dr. Use Case: Is the Clock an Actor ?
https://www.ibm.com/developerworks/rational/library/content/RationalEdge/jun02/DrUseCaseJun02.pdf
Automaatselt käivituvate protsesside modelleerimine kasutusjuhtude mudelis.
Eestikeelne raamat \"UMLi kontsentraat\"
https://www.apollo.ee/umli-kontsentraat.html

Mudelite halbade lõhnade kataloog
https://github.com/erki77/model-smells
Nende halbade lõhnade kirjeldus on koostatud hulga lähtekoodi halbade lõhnade põhjal. Viidatud kataloog on selle lõputöö edasiarendus.
The Diagrams of UML 2.0
http://www.agilemodeling.com/essays/umlDiagrams.htm
Näiteid erinevate UML 2.0 diagrammide kohta.
Tool Mentor: Designing and Modeling Databases Using Rational Rose Data Modeler
https://sce.uhcl.edu/helm/rationalunifiedprocess/toolment/rose/tm_dtmod.htm

UML as a Data Modeling Notation, Part 1
https://tdan.com/uml-as-a-data-modeling-notation-part-1/8457
Põhjalik ülevaade UMLi kasutamisest andmete modelleerimiseks. See on esimene osa neljaosalisest artiklite seeriast. Sellest artiklist leiab viited ka ülejäänud kolmele artiklile. Artiklite autor on David Hay, kes on kirjutanud mitmed andmete modelleerimise mustrite raamatud (st kindlasti ta tunneb asja).
Sisukord
SQL andmebaasikeel
SQL Bible
http://etutorials.org/SQL/sql+bible/SQL+Bible/
SQL-keele kirjeldus SQL:1999 põhjal
C.J. Date loeng SQLi kohta
https://www.oreilly.com/library/view/cj-dates-sql/9781449389659/
Videoseeria, kus C.J. Date räägib, kuidas kasutada SQLi nii, et see tekitaks võimalikult vähe peavalu ja halle juukseid.
Vastus on, et selleks tuleb SQLi kasutada relatsiooniliselt.
Hoffman, J., Introduction to Structured Query Language
http://www.dbbm.fiocruz.br/class/Lecture/d17/sql/jhoffman/sqltut.html
Väga põhjalik ülevaade SQL keelest.
Lisaks sisaldab hulgaliselt viiteid teistele allikatele.
Interaktiivne SQLi raamat (inglise keeles)
http://www.sql-tutorial.ru/en
S.I. Moiseenko. SQL Problems and Solutions
Interaktiivne SQLi raamat (vene keeles)
http://www.sql-tutorial.ru/ru
S.I. Moiseenko. SQL Problems and Solutions
Interaktiivne SQL õpik
http://www.sqlcourse.com/
Võimalus on läbi veebi teha kohe ka SQL päringuid.
Jet SQL
https://www.devguru.com/content/technologies/jetsql/home.html
MS Access andmebaasisüsteemis kasutusel oleva SQL dialekti - Jet SQL - kirjeldus.
Kümme tavalist SQLi viga
https://www.red-gate.com/simple-talk/sql/t-sql-programming/ten-common-sql-programming-mistakes/
Näited ja kasutatav SQLi mägimurrak pärinevad MS SQL Serveri andmebaasisüsteemist, kuid väljatoodavad vead ei ole spetsiifilised sellele platvormile.
Mis on SQL? [nelja minuti pikkune selgitus algajatele]
https://www.youtube.com/watch?v=27axs9dO7AE

Puuduvad andmed ja nendega toimetulek relatsioonilistes andmebaasides
https://www.youtube.com/watch?v=kSZX3fBgg1A&index=5&list=PLWIxuiyTh_yY3w26sJMbdTDXuEYJp-GxT
Lektoriks on C.J. Date, kes on kursuse põhiõpikute autoriks ja kellel on hea selgitamisoskus.
Relational Theory for Computer Professionals A Hands-On Video Workshop
https://learning.oreilly.com/videos/relational-theory-for/9781449369781
Andmebaaside eksperdi C.J. Date'i videoloengute seeria relatsioonilisest mudelist ja SQList. Teooria on praktiline!
SQL eksperdi Joe Celko antud vastuseid sisaldav ajaveeb
http://joecelkothesqlapprentice.blogspot.com/

SQLi harjutamise keskkond
https://www.sql-ex.ru/

SQLi mõrvamüsteerium
https://mystery.knightlab.com/
Kasutage SQL päringuid mõrvari leidmiseks.
SQLi teemaline ajaveeb
https://vadimtropashko.wordpress.com/
Ajaveebi autori Vadim Tropashko sulest on ilmunud raamat SQLi disainimustrite kohta "SQL Design Patterns: Expert Guide to SQL Programming"
SQL koodi vormindamine (1. osa)
https://www.red-gate.com/simple-talk/sql/t-sql-programming/formatting-sql-code-part-the-first/
Ajalooline pilguheit, kuidas on jõutud tänapäevase lähtekoodi kirjutamiseni ning selle koodi vormindamise reegliteni. Artikli autor Joe Celko on tuntud SQLi ekspert.
SQL koodi vormindamine (2. osa)
https://www.red-gate.com/simple-talk/sql/t-sql-programming/formatting-sql-code-part-second/
Konkreetsed vormindamise nõuanded. Artikli autor Joe Celko on tuntud SQLi ekspert.
SQL Reference and Examples
http://www.fluffycat.com/sql/

SQL õpetus (inglise keeles) teemade kaupa
https://www.techonthenet.com/sql/index.php

Wikipedia artikkel SQLi kohta
https://en.wikipedia.org/wiki/SQL

Ühendamisoperatsioonide kirjeldus kasutades ühendamise diagramme (join diagrams)
https://blog.jooq.org/2016/07/05/say-no-to-venn-diagrams-when-explaining-joins/

Sisukord
SQL standard
JCC
http://www.jcc.com/resources/sql-standards
SQL standardid, areng ja praegune olukord.
Kirjutisi ja ülevaateid SQL standardi kohta
https://www.wiscorp.com/SQLStandards.html

Modern SQL
https://modern-sql.com/
SQL standardi teemaline ajaveeb, mis käsitleb ka standardi viimaseid arenguid.
SQL:2011 üsna lõpptulemuse lähedane redaktsioon
https://www.wiscorp.com/sql20nn.zip
NB! Suurus 13.3 MB
Structured Query Language Wikibook
https://en.wikibooks.org/wiki/Structured_Query_Language
Ülevaade SQLi minevikust, olevikust ja tulevikust SQL:2011 standardi versiooni põhjal.
The 1995 SQL Reunion: People, Projects, and Politics
https://www.mcjones.org/System_R/SQL_Reunion_95/
Ülevaade SQLi arenguloost
Sisukord
Andmebaasisüsteemide pakkujad ja nende tooted
Apache Derby
http://db.apache.org/derby/index.html
Avatud lähtekoodiga, relatsiooniline manusandmebaasisüsteem
CUBRID
https://www.cubrid.org/
Avatud lähtekoodiga SQL-andmebaasisüsteem.
Dataphor SQL RAC (Relational Application Companion)
http://beyondsql.blogspot.com/
Ajaveeb, kus tutvustatakse tõeliselt relatsioonilist andmebaasisüsteemi Dataphor
EnterpriseDB
https://www.enterprisedb.com/
Pakub PostgreSQLil põhinevat andmebaasisüsteemi Postgres Plus Advanced Server, mille pakutavad täiendused muudavad PostgreSQL sarnasemaks Oracle andmebaasisüsteemile.
Firebird
http://www.firebirdsql.org/
Avatud lähtekoodiga SQL-andmebaasisüsteem
FrontBase
http://www.frontbase.com/cgi-bin/WebObjects/FBWebSite.woa
Andmebaasisüsteem Mac OS X operatsioonisüsteemile
Google Spanner
https://www.youtube.com/watch?v=NthK17nbpYs
Google Spanner on hajus andmebaasisüsteem. Käesolevas videos annab üks süsteemi loojatest sellest ülevaate.
HadoopDB
http://dbmsmusings.blogspot.com/2009/07/announcing-release-of-hadoopdb-longer.html
Avatud lähtekoodiga andmebaasisüsteem, mis on optimeeritud andmeanalüüsi läbiviimiseks.
History Repeats Itself: Sensible and NonsenSQL Aspects of the NoSQL Hoopla
https://openproceedings.org/2013/conf/edbt/Mohan13.pdf
Realistlik vaade NoSQL süsteemidele
HSQLDB
http://hsqldb.org/
Avatud lähtekoodiga SQL-andmebaasisüsteem
IBM:DB2
https://www.ibm.com/analytics/db2
Üks \"suurde kolmikusse\" kuuluv kommertsandmebaasisüsteem.
IBM Netezza Data Warehouse Appliances
https://www.ibm.com/products/netezza
Vahend andmeaitade loomiseks.
Ingres (Actian X)
https://communities.actian.com/s/
Alates augustist 2004 avatud lähtekoodiga andmebaasisüsteem.
Mckoi SQL
http://mckoi.com/originalmckoisql/index.html
Avatud lähtekoodiga SQL-andmebaasisüsteem
Microsoft SQL Server.
https://www.microsoft.com/en-us/sql-server/sql-server-2019
Üks "suurde kolmikusse" kuuluv kommertsandmebaasisüsteem.
MySQL
https://www.mysql.com/
Avatud lähtekoodiga andmebaasisüsteem.
NewSQL liikumine
https://readwrite.com/2011/04/06/the-newsql-movement/
Selle ühisnimetaja alla kuuluvad andmebaasisüsteemid võimaldavad endiselt kasutada SQL keelt (mille oskajate hulk on suur). Sisemiselt on need andmebaasisüsteemid disainitud suurte andmehulkade töötlemist, jõudlust ja skaleeritavust silmas pidades.
Object Store
https://www.ignitetech.com/objectstore/
Objektorienteeritud andmebaasisüsteemi näide.
Oracle
https://www.oracle.com/index.html
Üks "suurde kolmikusse" kuuluv kommertsandmebaasisüsteem (õigem on öelda andmebaasisüsteemide perekond).
Oracle Berkeley DB
https://www.oracle.com/database/technologies/related/berkeleydb.html
Avatud lähtekoodiga manusandmebaasisüsteem.
PostgreSQL.
https://www.postgresql.org/
Avatud lähtekoodiga SQL-andmebaasisüsteem.
PredictiveDB
http://www.predictivedb.com/
Eksperimentaalne SQL-andmebaasisüsteem, mis võimaldab olemasolevate andmete põhjal teatud tõenäosusega prognoosida, milline väärtus peaks olema NULLi asemel.
SQLite
https://www.sqlite.org/index.html
SQL manusandmebaasisüsteem
Teradata
https://www.teradata.com/?LangType=1033
Andmebaasisüsteem, mis on optimeeritud väga suure andmemahuga andmebaaside (näiteks andmeaitade) loomisele ja kasutamisele.
The Ocelot SQL DBMS
http://www.ocelot.ca/dbms.htm
Väike andmebaasisüsteem, mis üritab võimalikult täpselt vastata SQL standardile ja on seega hea õppeotstarbel kasutamiseks.
The SAP (Sybase) Adaptive Server Enterprise (ASE)
https://www.sap.com/products/sybase-ase.html

Tõeliselt relatsioonilised andmebaasisüsteemid
https://www.dcs.warwick.ac.uk/~hugh/TTM/projects.html
Erinevad huviliste ja asjaarmastajate tehtud projektid, mis on ammutanud inspiratsiooni Kolmandast Manifestist.
VoltDB
https://www.voltdb.com/
NewSQL süsteemi näide. NewSQL süsteemide juures ei ole uus mitte SQL,
vaid uued on neid vahendeid loovad firmad ning andmebaasisüsteemide ja andmebaaside sisemine ülesehitus ning tööpõhimõtted.
Windows Azure SQL Database
https://azure.microsoft.com/en-us/

Sisukord
Andmebaasisüsteemide võrdlus
Andmebaasisüsteemide populaarsuse pingerida
https://db-engines.com/en/ranking
Populaarsust arvutatakse veebilehtedel mainimise, otsingute sageduse, arutelude sageduse, tööpakkumiste arvu ning isiklike oskuste profiilis mainimiste alusel.
Comparison of different SQL implementations
http://troels.arvin.dk/db/rdbms/

PostgreSQL vs. MySQL
https://vimeo.com/43536445
Rob Conery poolt Norwegian Developers Conference konverentsil peetud ettekande salvestus. Ettekande esimesed 15 minutit demonstreerivad väga ilmekalt MySQLi puuduseid.
Sisukord
MS Access
Attaching Logic to Data Using Data Macros in Access 2010 Applications
https://docs.microsoft.com/en-us/previous-versions/office/developer/office-2010/ff973807(v=office.14)
Andmete makrode kasutamine MS Access 2010 andmebaasis
Changes in Access 2010 (for ITPros)
https://docs.microsoft.com/en-us/previous-versions/office/office-2010/cc179181(v=office.14)
Access 2010 pakutavate uute võimaluste ülevaade
Kirjeldus ja näited selle kohta kuidas MS Accessis koostada SQL lauseid
http://www.fmsinc.com/tpapers/queries/

Microsoft Accessi (2007) samm-sammult õpetav kursus
http://www.functionx.com/access2007/index.htm

MS Access õpetus (teemade kaupa) - inglise keeles
https://www.techonthenet.com/access/index.php

New in Access for developers
https://docs.microsoft.com/et-ee/office/vba/access/concepts/miscellaneous/new-in-access-for-developers
Uued võimalused, mida MS Access 2013 ja 2016 arendajatele pakuvad.
Replacing the Calendar Control in Access 2010 Applications
https://docs.microsoft.com/en-us/previous-versions/office/developer/office-2010/gg251104(v=office.14)
Kuidas realiseerida MS Accessi rakendustes kuupäeva valimist?
The Access Web
http://access.mvps.org/access/
See FAQ sait on loodud aitamaks MS Accessi
arendajaid, et leida vastuseid sagedamini esile kerkivatele küsimustele.
Sisukord
Prototüüpimine ja kasutajaliidese disain
Adobe neli kuldreeglit kasutajaliidese disaini kohta
https://xd.adobe.com/ideas/process/ui-design/4-golden-rules-ui-design/
Babich, N., 2019. The 4 Golden Rules of UI Design
A Pattern Language for Human-Computer Interface Design
http://www.mit.edu/~jtidwell/interaction_patterns.html

Kümme käsku andmete haldamiseks mõeldud veebivormide kasutatavuse kohta
https://mono.company/design-practice/the-10-commandments-of-good-form-design-on-the-web/
Ekraanivorm, vorm, kasutatavus
Nielsen Norman Group
https://www.nngroup.com/articles/
Tuntud kasutatavuse eksperdi ettevõte, mille lehelt leiab ka palju kasulikku avalikku informatsiooni.
Official Guidelines for Windows User Interface Developers and Designers
https://rauterberg.employee.id.tue.nl/lecturenotes/MS-Official-GUI-2001.pdf

The Analysis and Prototyping of Effective Graphical User Interfaces
http://www.umsl.edu/~sauterv/analysis/prototyping/intro.html
Põhjalik jutt prototüüpimise kohta.
UI Patterns. Dealing with data
http://ui-patterns.com/patterns/dealing-with-data/list
Kasutajaliidese disainimustrid, mis on seotud andmete sisestamise ja vaatamisega
Usability First.
https://www.usabilityfirst.com/
Veel üks veebisait, kus antakse nõuandeid,
kuidas muuta programmi kasutajaliides võimalikult lihtsalt kasutatavaks.
User Interface Design patterns
http://ui-patterns.com/
Kasutajaliidese disainimustrid
Web Application Form Design
https://www.lukew.com/ff/entry.asp?1502
Veebipõhiste sisestusvormide kasutatavuse küsimused.
Sisukord
Sõnastikud
COBIT seletussõnastik (inglise keeles)
https://www.isaca.org/resources/glossary

Eesti keele seletavast sõnaraamat
http://www.eki.ee/dict/ekss/index.cgi?Q=&F=M
On abiks olemitüüpide ja atribuutide definitsioonide kirjapanekul.
Eesti standard EVS-ISO/IEC 2382. Infotehnoloogia. Sõnastik. Andmebaasid (eesti- ja inglise keeles) (koos seletustega)
http://www.keeleveeb.ee/dict/speciality/itstandard/

Eesti õigekeelsussõnaraamat ÕS 2006
http://www.eki.ee/dict/qs/

ESTERM
http://termin.eki.ee/esterm/
Olemitüüpide ja atribuutide definitsioonide leidmisel võib olla abiks tõlkepõhine terminibaas ESTERM, kus lisaks definitsioonile esitatakse selle termini kasutamise kontekst õigustekstides.
Info- ja sidetehnoloogia terminite seletav sõnaraamat (eesti- ja inglise keeles)
http://www.vallaste.ee

ISO terminite andmebaas koos seletustega (inglise keeles)
https://www.iso.org/obp/ui

ITIL seletussõnastik (inglise keeles ja teistes keeltes)
https://www.axelos.com/glossaries-of-terms

IT terministandardi seletussõnastik (eesti- ja inglise keeles)
http://eki.ee/dict/its/
Terminid ja nende seletused eesti- ja inglise keeles.
Merriam-Webster sõnaraamat (inglise keeles)
https://www.merriam-webster.com/
Koht, kust otsida olemitüüpide ja atribuutide definitsioone. Kui leiate siit või mujalt definitsiooni, siis ärge unustage algallikale viidata!
SQL mõistete seletussõnastik (inglise keeles)
http://www.ocelot.ca/glossary.htm

Standardipõhine tarkvaratehnika sõnastik (eesti-inglise-eesti)
https://stats.cyber.ee/

Sõna "andmebaas" erinevates Euroopa keeltes
https://ukdataexplorer.com/european-translator/?word=database

The Oxford Advanced Learner’s Dictionary (inglise keeles)
https://www.oxfordlearnersdictionaries.com/
Koht, kust otsida olemitüüpide ja atribuutide definitsioone. Kui leiate siit või mujalt definitsiooni, siis ärge unustage algallikale viidata!
Sisukord