29.12.2012

Exchange ESE, osa 3


TRANSAKTIO


Johdanto
Ensinmäisessä artikkelissa on mainittu keskeiset lähteet ESE:en liittyen. Varsinaiset artikkelit ovat hyvin niukkasanaisia, mutta mainitut kaksi esitystä selvittävät jonkin verran asiaa syvemmältä. Tosin allekirjoittaneelle niistä herää lähinnä lisää kysymyksiä.

Transaktio
Transaktio on yksinkertaisuudessa toimenpide tai sarja toimenpiteitä (transactions), joilla muokataan fyysistä tietokantaa ts. tehdään muutoksia tietokantasivuihin (page). Tärkeimpiä toimenpiteitä ovat:

  • Insert - Lisätään tauluun uusi tieto esim. viesti.
  • Replace - Päivitetään olemassa oleva tieto esim. kansion viestien määrä.
  • Delete - Poistetaan olemassa oleva tieto esim. viesti.

Toimenpiteet, muutokset eli transaktiot kirjoitetaan ensin lokiin, jonka jälkeen muutokset kirjoitetaan muistista levylle, tietokantaan. Tätä kutsutaan myös nimellä Write ahead logging. Jokainen transaktio toteuttaa ns. ACID-mallia:

  • Atomic (all or nothing) – Joko kaikki toimenpiteet toteutuvat tai jonkun puuttuessa, mikään yksittäinen toimenpide ei toteudu.
  • Consistent – Tietokanta muuttuu eheästä tilasta toiseen eheään tilaan.
  • Isolated – Muutokset eivät ole näkyviä, kunnes toimenpiteet ovat onnistuneesti suoritettu. Jokainen transaktio suoritetaan aina eri aikaan, vaikka niitä näyttäisi olevan useita yhtä aikaan. Näin ollen yksittäinen transaktio (t) suoritetaan aina joko ennen (t) tai jälkeen toisen transaktion (t).
  • Durable – Onnistuneet toimenpiteet tulee pysyä tietokannassa järjestelmän vikaantuessa.

10.9.2012

Exchange ESE, osa 2


FYYSINEN RAKENNE

Mikä on ESE?
Microsoft Exchange käyttää alustanaan ns. JET-tietokantaa. JET-tietokannasta käytetään myös nimitystä ESE (Extensible Storage Engine), joka viittaa Store-palveluun ja sen ESE.dll-komponenttiin. JET-tietokantaa käytetään muissakin Windows-pohjaisissa järjestelmissä ja palveluissa kuten esim. Active Directory, DNS, WINS ja DHCP. Exchangen tietokannasta käytetään nimitystä ESE98, jolla viitataan Exchange 2000 ja sitä uudempiin versioihin. Exchange 2010 myötä tietokannan rakenteeseen, Schemaan, on tullut merkittäviä muutoksia, jotka poikkeavat aikaisemmista versioista. Nimitys ESE98 on silti säilynyt samana.

ESE-tietokantaa kuvataan, että se on “multi-user ISAM (Indexed Sequential Access Method) database with full Data Manipulation Language (DML) and Data Definition Language (DDL) capabilities”. ISAM tarkoittaa Indexeihin perustuvaa nopeaa tiedonhakua ja Indexin avulla paikallistetaan tietue tietokannasta. ISAM on alun perin IBM:n kehittämä menetelmä Mainframe-tietokoneita varten. DLM tarkoittaa syntaksia, jolla tietokantaan voidaan lisätä, poistaa tai päivittää tietoa. DDL on syntaksi, jolla voidaan määritellä tietokannan rakenteita kuten esim. tietokantatauluja.

ESE:n fyysinen toteutus perustuu ns. B+Tree (Balanced)-puumalliin. Siinä tiedot järjestetään Blockeiksi tiedostojärjestelmän mukaisesti. Tehokkuus perustuu siihen, että tiedot tallennetaan syvyyssuunnassa mahdollisimman matalaan hierarkiaan, jotta tiedon palauttamiseen tarvitaan mahdollisimman vähän levyn I/O-operaatioita.

Tietokannan loogista rakennetta kuvaavat tietokantataulut, tietueet ja sarakkeet. Tietokanta sisältää postilaatikoita, jotka sisältävät kansioita, jotka taas sisältävät viestejä. Rakenne on hierarkkinen.

Tietokannan toiminta perustuu transaktioihin eli tietokantaan kohdistuvista sivujen muutoksista, jotka kirjoitetaan ensin transaktiolokiin ja sen jälkeen tietokantaan. Koko tietokanta voidaan palauttaa tarvittaessa lokeista.

21.8.2012

Exchange ESE, osa1


Saatteeksi
Myönnetään, että aihe on vähintäänkin haastava, mutta samalla erittäin mielenkiintoinen. Tarkoituksena on tarkastella Exchangen ESE-tietokantaa kolmesta eri näkökulmasta: fyysinen topologia, transaktiomalli ja looginen topologia. Esimerkit käsittelevät Exchange 2003, 2010 ja 2013 versioita ja ne on mainittu kussakin yhteydessä. Tietokannan toimintaa on hyvä ymmärtää, jotta ongelmatilanteissa ymmärretään, mitä pitää tehdä. Kun tilanne on ns. päällä, ei tällaisen aiheeseen tutustumiseen ole yksinkertaisesti silloin enää mahdollisuuksia, koska jokainen minuutti ja tunti on tärkeä.

6.8.2012

Exchange 2013 Preview - asennus (Unattended Mode)

Johdanto

Tarkoitus on rakentaa kahden Exchange-palvelimen (aluksi yksi) HA-ympäristö. Valitsin pohjaksi Windows Server 2008 R2 SP1 Windows Server 2012 Previewin sijaan, jotta käyttöjärjestelmään liittyvät mahdolliset bugit eivät haittaisi testaamista. Tässä vaiheessa asennusta ei voi vielä testata Exchange 2007 tai 2010 rinnalle tuen puuttuessa. Domain Controller-palvelin on erillinen ja se on myös Windows Server 2008 R2 SP1-tasolla. Active Directoryn toiminallinen taso on Windows Server 2003.

2.8.2012

Exchange 2013 Preview ja asiantuntijan tulevaisuus


Microsoft julkisti pari viikkoa sitten tiedon uudesta Office-paketista nimeltä Microsoft Office 2013. Paketista on ladattavissa esikatseluversio. Samalla julkaistiin muita esikatseluversioita eri tuoteista, yhtenä Exchange Server 2013 Preview. Kaiken kaikkiaan Microsoftin viesti on selkeä, tulevaisuuden palvelut ovat pilvessä ja nämä uudet tuotteet tukevat yhä paremmin tätä tilaa. Vaikka Microsoft julkaisee palvelintuotteistaan uusia versioita, joita voidaan ajaa omissa ympäristössä ja konesaleissa, alkaa sähköpostin (Exchange) ja viestinnän (Lync) osalta tilanne olla se, että nämä ovat niitä viimeisiä omia asennuksia. Yhä useampi organisaatio miettii siirtymistä pilvipalvelujen käyttöön. Kynnys vain madaltuu, kun ohjelmat ja työkalut kehittyvät entisestään ja helpottavat siirtymistä.