{"id":29,"date":"2024-04-04T03:25:15","date_gmt":"2024-04-04T00:25:15","guid":{"rendered":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/42-andmemudeli-koostamine\/"},"modified":"2024-04-04T03:25:27","modified_gmt":"2024-04-04T00:25:27","slug":"42-andmemudeli-koostamine","status":"publish","type":"page","link":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/42-andmemudeli-koostamine\/","title":{"rendered":"4.2. Andmemudeli koostamine"},"content":{"rendered":"<p><\/p><div class=\"ratio ratio-16x9 mb-3\"><div class=\"video-placeholder-wrapper video-placeholder-wrapper--16x9\">\n\t\t\t    <div class=\"video-placeholder d-flex justify-content-center align-items-center\">\n\t\t\t        <div class=\"overlay text-white p-2 w-100 text-center d-block justify-content-center align-items-center\">\n\t\t\t            <div>Kolmandate osapoolte sisu n\u00e4gemiseks palun n\u00f5ustu k\u00fcpsistega.<\/div>\n\t\t\t            <button class=\"btn btn-secondary btn-sm mt-1 consent-change\">Muuda n\u00f5usolekut<\/button>\n\t\t\t        <\/div>\n\t\t\t    <\/div>\n\t\t\t<\/div>\n<\/div>\n<p>Informatsioon salvestatakse andmetena. Andmetena toimub ka informatsiooni edastamine hoidmine ja t\u00f6\u00f6tlemine. Seega on \u00f5igem r\u00e4\u00e4kida andmet\u00f6\u00f6tlusest, mitte informatsiooni t\u00f6\u00f6tlemisest.<\/p>\n<p>Andmed organiseeritakse <strong>andmebaasideks<\/strong>, et neid oleks lihtsam hallata. Andmebaas on <strong>infos\u00fcsteemi<\/strong> keskne osa. Peale andmebaasi kuulub infos\u00fcsteemi veel <strong>kasutajaliides<\/strong>. T\u00e4nap\u00e4eval on selleks tihti veeb (veebibrauseri vahendusel vaadeldav veebileht, mida edastab veebiserver koos kliendiga. Viimane oskab olla \u00fchenduses andmebaasiga. Selliseid infos\u00fcsteeme nimetatakse <strong>veebi-infos\u00fcsteemideks<\/strong>. Kokkuv\u00f5tvalt v\u00f5ime \u00f6elda, et infos\u00fcsteem = kasutajaliides + andmebaas. Edaspidi keskendume s\u00fcsteemi kesksele osale \u2013 andmebaasile.<\/p>\n<h3>P\u00f5hiterminid<\/h3>\n<p>Alustuseks tuleb vahet teha kahel m\u00f5istel: <strong>tarkvara<\/strong> ja andmetega t\u00e4idetud <strong>andmebaas<\/strong> ise.\u00a0(V\u00f5rdle: tekstiredaktor ja selle abil loodud tekstidokumendid.)<\/p>\n<p>Seda tarkvara, mille abil andmebaase luuakse ja loodud andmebaase kasutatakse, nimetatakse <strong>andmebaaside juhtimiss\u00fcsteem<\/strong> e. ABJS (ingl.k. database management systems e. DBMS).\u00a0Populaarsemad t\u00e4nap\u00e4eval kasutatavad s\u00fcsteemid on n\u00e4iteks: Oracle, MySQL, MS Server, SyBase jne.<\/p>\n<h3>Kuidas toimub andmebaasi loomine ja kasutamine?<\/h3>\n<p>Andmebaas luuakse mingi valdkonna probleemide lahendamiseks. Andmebaasi loomine algab valdkonna ja selle probleemide <strong>anal\u00fc\u00fcsiga<\/strong>. Anal\u00fc\u00fcsi k\u00e4igus p\u00fc\u00fctakse anda vastus k\u00fcsimusele, mida andmebaas peab v\u00f5imaldama teha ja milliseid andmeid peab see sisaldama (<strong>n\u00f5uded<\/strong> infos\u00fcsteemile). See etapp on infos\u00fcsteemi koostamisel k\u00f5ige olulisem. Vead anal\u00fc\u00fcsil l\u00e4hevad v\u00e4ga kalliks maksma. Anal\u00fc\u00fcsi tulemusel koostatakse n\u00f5uded s\u00fcsteemile ja neist l\u00e4htuvalt disainitakse andmebaas ja kasutajaliides.<\/p>\n<p>Andmeid hoitakse andmebaasis tabelitena selliselt, et andmed oleksid vaid \u00fches kohas. See h\u00f5lbustab andmete hoidmist, otsimist ja muutmist. Andmete esituse m\u00e4\u00e4ramist (andmete tabeliteks jaotamise ja tabelite omavahelise sidestuse fikseerimist) nimetatakse <strong>andmete modelleerimiseks<\/strong> ja selle t\u00f6\u00f6 tulemust <strong>andmemudeliks<\/strong>. Andmemudeli kvaliteedist s\u00f5ltub edasine andmebaasi ja kogu infos\u00fcsteemi v\u00f5imekus. Andmemudelis kasutatakse tabeli asemel terminit olem (ingl.k. entity). Andmemudelist parema \u00fclevaate saamiseks koostatakse see graafiliselt (olemi-suhte diagramm (ingl.k. entity- relation diagram (ERD))). Graafilise andmemudeleid tehakse andmebaasi disainimise juures erineva detailsusastmega. K\u00f5ige \u00fcldisem on nn Kontseptuaalne andmemudel (Conceptual ERD) ja k\u00f5ige detailsem F\u00fc\u00fcsilineandmemudel (Physical ERD). M\u00f5nikord luuakse ka vahepealse detailsusastmega Loogiline andmemudel (Logical ERD). F\u00fc\u00fcsilise andmemudeli pealt on v\u00f5imalik luua andmebaas. Kui (f\u00fc\u00fcsiline) andmemudel on joonistatud paberile, siis seda on v\u00f5imalik kasutada anal\u00fc\u00fcsi ja disaini k\u00e4igus ideede edastuseks arutlustel ja modelleerimise hetkeseisu fikseerimiseks. T\u00e4nap\u00e4eval on olemas vahendid, mis v\u00f5imaldavad andmemudelite koostamist otse arvutis ja siis on lisaks pildile v\u00f5imalus saada ka automaatselt valmis andmebaas v\u00f5i andmebaasi objektide kirjeldused (andmete kirjeldamise keeles), mida andmebaaside juhts\u00fcsteemid oskavad kasutada andmebaasi loomisel.<\/p>\n<p>Vahendeid graafiliste mudelite koostamiseks (neid on palju, valisin kaks lihtsamat, mugavamat ja lisaks ka vabavaralist) :<\/p>\n<ul>\n<li>MYSQL Workbench \u2013 <a href=\"https:\/\/www.mysql.com\/products\/workbench\/\" target=\"_blank\" rel=\"noopener\">https:\/\/www.mysql.com\/products\/workbench\/<\/a><\/li>\n<li>DB Designer \u2013 <a href=\"https:\/\/dbdesigner.net\/\" target=\"_blank\" rel=\"noopener\">https:\/\/dbdesigner.net\/<\/a><\/li>\n<\/ul>\n<p>Neist esimene tuleb installeerida, teine t\u00f6\u00f6tab otse veebis.<\/p>\n<p>Nende v\u00f5imekuses veendumiseks tuleb teil neid katsetada, aga toon \u00e4ra ka 2 n\u00e4idet.<\/p>\n<p>Raamatulaenutuse andmemudel:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"810\" height=\"410\" class=\"alignnone wp-image-48\" src=\"https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/222\/j1.png\" title=\"j1.png\" alt=\"j1.png\" srcset=\"https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/222\/j1.png 810w, https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/222\/j1-300x152.png 300w, https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/222\/j1-768x389.png 768w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\"><\/p>\n<p>Andmemudel toit ja toitained (<em>MySQL Workbence<\/em>):<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"641\" height=\"610\" class=\"alignnone wp-image-49\" src=\"https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/222\/j2.png\" title=\"j2.png\" alt=\"j2.png\" srcset=\"https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/222\/j2.png 641w, https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/222\/j2-300x285.png 300w\" sizes=\"auto, (max-width: 641px) 100vw, 641px\"><\/p>\n<p>Viimati vaadeldud andmemudel on tegelikult fragment Tervise Arengu Instituut andmebaasist: NutriData \u2013 t\u00f5endusp\u00f5hine Eesti toidu koostise andmebaas, mis asub veebiaadressil (tegemist on veebi-infos\u00fcsteemiga) <a href=\"http:\/\/tka.nutridata.ee\/index.action\" target=\"_blank\" rel=\"noopener\">http:\/\/tka.nutridata.ee\/index.action<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kolmandate osapoolte sisu n\u00e4gemiseks palun n\u00f5ustu k\u00fcpsistega. Muuda n\u00f5usolekut Informatsioon salvestatakse andmetena. Andmetena toimub ka informatsiooni edastamine hoidmine ja t\u00f6\u00f6tlemine. Seega on \u00f5igem r\u00e4\u00e4kida andmet\u00f6\u00f6tlusest, mitte informatsiooni t\u00f6\u00f6tlemisest. Andmed organiseeritakse andmebaasideks, et neid oleks lihtsam hallata. Andmebaas on infos\u00fcsteemi keskne &#8230;<\/p>\n","protected":false},"author":111,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"class_list":["post-29","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/wp-json\/wp\/v2\/pages\/29","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/wp-json\/wp\/v2\/users\/111"}],"replies":[{"embeddable":true,"href":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/wp-json\/wp\/v2\/comments?post=29"}],"version-history":[{"count":1,"href":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/wp-json\/wp\/v2\/pages\/29\/revisions"}],"predecessor-version":[{"id":112,"href":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/wp-json\/wp\/v2\/pages\/29\/revisions\/112"}],"wp:attachment":[{"href":"https:\/\/sisu.ut.ee\/soomisest-joomisest-informatsioonist\/wp-json\/wp\/v2\/media?parent=29"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}