FI111195B - Älykäs transaktio - Google Patents

Älykäs transaktio Download PDF

Info

Publication number
FI111195B
FI111195B FI970777A FI970777A FI111195B FI 111195 B FI111195 B FI 111195B FI 970777 A FI970777 A FI 970777A FI 970777 A FI970777 A FI 970777A FI 111195 B FI111195 B FI 111195B
Authority
FI
Finland
Prior art keywords
transaction
database
version
sentences
statements
Prior art date
Application number
FI970777A
Other languages
English (en)
Swedish (sv)
Other versions
FI970777A (fi
FI970777A0 (fi
Inventor
Timo Hotti
Jarmo Parkkinen
Original Assignee
Solid Information Technology O
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Solid Information Technology O filed Critical Solid Information Technology O
Priority to FI970777A priority Critical patent/FI111195B/fi
Publication of FI970777A0 publication Critical patent/FI970777A0/fi
Priority to AT98660005T priority patent/ATE508420T1/de
Priority to DE69842248T priority patent/DE69842248D1/de
Priority to EP98660005A priority patent/EP0860788B1/en
Priority to US09/028,940 priority patent/US6144941A/en
Publication of FI970777A publication Critical patent/FI970777A/fi
Application granted granted Critical
Publication of FI111195B publication Critical patent/FI111195B/fi

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/08Insurance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/12Accounting

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Technology Law (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Control Of Eletrric Generators (AREA)
  • Amplifiers (AREA)
  • Control Of Motors That Do Not Use Commutators (AREA)

Description

111195 Älykäs transaktio - Intelligent transaktion k
Keksintö koskee yleisesti tietokantojen tietosisällön muutoksiin käytettäviä trans-5 aktioita. Erityisesti keksintö koskee transaktioihin liittyvää menetelmää ja järjestelmää, joilla mahdollistetaan pitkäkestoisten transaktioiden joustava määrittely sekä tietokannan laillisen tilan säilyminen näitä transaktioita käytettäessä.
Tässä patenttihakemuksessa käytetään seuraavia käsitteitä: 10
Tiedonhallintajärjestelmä = kokonaisuus, joka koostuu yhdestä tai useammasta tietokannasta ja/tai tiedonhallintajärjestelmästä, joiden sisältämien tietorakenteiden lukemisesta ja muutoksista järjestelmä vastaa.
15 Tietokanta = tietorakenne, joka koostuu yhdestä tai useammasta tietoelementistä ja jonka käyttöä tiedonhallintajärjestelmä hallitsee. Keksintö soveltuu käytettäväksi sekä relaatiotietokannoissa että muissa tietokantamuodoissa, kuten esimerkiksi oliotie-tokannoissa.
20 Tietoelementti - tietorakenne, joka voi koostua muista tietoelementeistä tai atomaarisiksi käsitettävistä tietoalkioista. Esimerkiksi relaatiotietokannassa tietoelementtejä ovat taulut, jotka koostuvat riveistä. Rivit koostuvat kentistä, jotka ovat tyypillisesti atomaarisia tietoalkioita.
25 Tiedonhallintajärjestelmän laillinen tila = tila, jossa tiedonhallintajärjestelmän tietosisältö ei loukkaa tiedonhallintajärjestelmälle voimassa olevia laillisuusehtoja. Ehdot voivat olla sekä tietokantaa hyödyntävistä sovelluksista riippumattomia ehtoja, kuten esimerkiksi relaatiotietokannan viite-eheyssäännöt, että sovelluskohtaisia ehtoja, esimerkiksi sovelluksen liiketoimintasäännöt.
30
Tietokantaoperaatio = tapahtuma, jossa luetaan tietokannasta tietoelementtejä, muu-v tetaan tietokannan tietoelementtejä, poistetaan tietokannasta tietoelementtejä ja/tai lisätään tietokantaan tietoelementtejä.
35 Transaktio = joukko tietoelementteihin kohdistuvia tietokantaoperaatioita. Transaktio voi koostua myös transaktioista.
111195 2
Laillinen transaktio = transaktio, joka siirtää tiedonhallintajärjestelmän laillisesta tilasta toiseen lailliseen tilaan.
Pitkäkestoinen transaktio = transaktio, jonka sisältö voidaan rakentaa yhdessä tai 5 useammassa erässä, yhdessä tai useammassa tiedonhallintajärjestelmässä ja joka voidaan erien välillä tallentaa pysyvästi myöhempää täydentämistä tai suorittamista varten. Valmiiksi rakennettu transaktio voidaan siirtää myöhemmin yhteen tai useampaan tiedonhallintajärjestelmään suoritettavaksi.
10 Kuva 1 esittää esimerkkiä tunnetusta tietokannasta 10, joka sisältää kolme taulua 11, 12 ja 13. Oletetaan, että kyseessä on pankin asiakas- ja tilitietokanta, jolloin taulu 11 voi olla asiakastaulu, taulu 12 voi olla tilitaulu ja taulu 13 voi olla tilitapahtumien taulu. Kukin taulu jakaantuu edelleen riveiksi, jotka koostuvat edelleen kentistä. Käytännössä taulut ovat olemassa vain digitaalisessa muodossa tietokoneen muistis-15 sa, joten kuvan 1 mukainen geometrinen organisaatio on ymmärrettävä vain käsitteitä havainnollistavana graafisena esityksenä.
Asiakastaulun 11 kukin rivi edustaa yhtä asiakasta. Rivin kenttiä ovat esimerkiksi asiakkaan nimi, osoite ja asiakasnumero. Tilitaulussa 12 kukin rivi vastaa yhtä tiliä 20 ja sen kenttiä ovat esimerkiksi tilinumero, tilinomistajan asiakasnumero ja tilin saldo. Tilitapahtumien taulussa 13 kukin rivi vastaa yhtä tilitapahtumaa ja sen kenttiä ovat esimerkiksi sen tilin tilinumero, jota tilitapahtuma koskee, tilitapahtuman päivämäärä ja kellonaika sekä tilitapahtumassa siirretty rahasumma. Kuvan 1 tietokannan riveillä on taulusta toiseen ulottuvia keskinäisiä riippuvuussuhteita eli relaatioi-. 25 ta. Esimerkiksi tietyn asiakkaan asiakasrivillä taulussa 11 on relaatio kaikkiin tili- taulun 12 niihin riveihin, joiden asiakasnumero-kentässä on kyseistä asiakasta tarkoittava numero. Vastaavasti kukin tilitapahtumien taulun 13 rivi on suhteessa siihen tilitaulun 12 riviin, jonka edustamaa tiliä kyseinen tilitapahtuma koskee.
30 Oletetaan seuraavaksi tilanne, jossa asiakas nostaa tililtään rahaa. Nosto on uusi tilitapahtuma, joten se synnyttää tilitapahtumien tauluun 13 uuden rivin. Tämä toimenpide kohdistuu vain yhteen tietokannan tauluun ja sitä voidaan nimittää yleisesti tietokantaoperaatioksi. Tietokantaoperaatiot sinänsä voivat kohdistua yhteen tai useampaan riviin yhdessä tai useammassa tietokannan taulussa. Koska nosto pienentää 35 kyseisen tilin saldoa, uuden tilitapahtumarivin luomista tarkoittava tietokantaoperaa-tio on sidoksissa toiseen tietokantaoperaatioon, joka kohdistuu tilitauluun 12 ja pienentää siellä erään ennestään olemassaolevan tietueen saldo-kentän arvoa. Jos syystä tai toisesta vain toinen näistä tietokantaoperaatioista onnistuisi, tietokanta ei olisi 111195 3 laillisessa tilassa, koska tilitaulusta 12 luettu tilin saldoja tilitapahtumien taulusta 13 saatava saldo, joka saadaan laskemalla kyseiseen tiliin kohdistuneet tilitapahtumat , yhteen, olisivat erisuuruiset. Alalla vakiintuneen käytännön mukaisesti tällaista risti riitaa nimitetään tapahtuman eheyden loukkaukseksi (engl. transaction consistency 5 violation).
Tietokantojen käsittelyssä tunnetaan myös toinen loukkaustyyppi, joka on liiketoi-mintasääntöjen loukkaus (engl. business rule violation). Se tarkoittaa tilannetta, jossa tietty tietokantaoperaatio tai tietokantaoperaatioiden joukko loukkaa ns. sovel-10 luskohtaisia liiketoimintasääntöjä (engl. business rules). Esimerkkinä liiketoiminta-sääntöjen loukkauksesta voisi olla tietyn kirjanpidollisen tapahtuman kirjautuminen sellaiseen tietokannan osaan, jossa uusien tapahtumien kirjaaminen tulisi olla jo lopetettu yhteenvetotietojen ja raporttien muodostamista varten.
15 Sekä tapahtuman eheyden loukkausten että liiketoimintasääntöjen loukkausten torjumiseksi toisiinsa sidoksissa olevat tietokantaoperaatiot muodostavat ns. transaktion. Jos transaktio ei siirrä tiedonhallintajärjestelmää laillisesta tilasta toiseen lailliseen tilaan tai transaktion osa ei ole toteutettavissa, kaikki transaktion tietokantaoperaatiot tiedonhallintajärjestelmään on peruutettava. Transaktiot voivat olla hyvin 20 monimutkaisia ja niihin voi kuulua lukuisia tietokantaoperaatioita. Tietokantaoperaatiot ovat kuitenkin sekä fyysisesti että loogisesti itsenäisiä eli ne eivät voi olla suoraan riippuvaisia toistensa toiminnasta eikä niillä voi olla keskinäistä informaation vaihtoa. Tiettyyn transaktioon kuuluvia tietokantaoperaatioita sitoo toisiinsa vain kuuluminen samaan transaktioon.
: 25
Tietokantojen sisältämiä tietoalkioita voidaan monistaa. Monistetut tietoalkiot voidaan järjestää siten, että yksi niistä on ns. validi versio ja muut ovat sen kopioita. Validi versio on tietoalkio, joka edustaa vahvistettua tietoalkion tilaa. Kopiot eivät aina edusta samaa tilaa kuin validi versio. Master-tietokanta tarkoittaa tässä patent-30 tihakemuksessa eräässä tiedonhallintajärjestelmässä olevien validien tietoalkioiden joukkoa. Paikallistettu tietokanta (engl. localized database) tarkoittaa tässä patenttihakemuksessa eräässä tiedonhallintajärjestelmässä olevien tietoalkioiden joukkoa, jotka ovat kopioita master-tietokannan tietoalkioista. Paikallistettuun tietokantaan voidaan kohdistaa transaktioita. Nämä transaktiot voidaan tallentaa paikallistettuun 35 tietokantaan ja myöhemmin propagoida master-tietokantaan. Kuva 2 havainnollistaa tietokantaa, jossa versio 20 on master-tietokanta, joka sisältää taulut 21, 22, 23, ja 24. Versio 25 on täydellinen kopio, joka sisältää taulut 2Γ, 22', 23' ja 24'. Versio 26 on osittainen kopio, joka sisältää taulussa 22" kaikki alkuperäisen taulun 22 tiedot ja 111195 4 taulussa 24" osan taulun 24 tiedoista. Master-tietokanta voi sijaita esimerkiksi yrityksen päätietokoneessa 27 ja kopiot eli paikallistetut tietokannat voivat sijaita haarakonttoreiden tietokoneissa 28 tai myyntiedustajien 29 kannettavissa tietokoneissa. Versioiden hierarkiassa voi olla myös enemmän kuin kaksi tasoa, jolloin esimerkiksi 5 haarakonttorin versio 25 on paikallistettu tietokanta suhteessa pääkonttorin master-tietokantaan mutta master-tietokanta suhteessa haarakonttorin liikkuvien työntekijöiden käytössä oleviin paikallistettuihin tietokantoihin (ei esitetty kuvassa). Kustakin tietoalkiosta on olemassa kuitenkin vain yksi validi versio, joka on hierarkian ylimmällä tasolla.
10
Ei ole välttämätöntä määrittää tiettyä tietokannan versiota tietokantatasolla master-tietokannaksi ja muita versioita paikallistetuiksi tietokannoiksi, vaan tämä suhde voi olla tietoalkiotason tieto. Yksittäinen tietokantaversio voi siis toimia master-tieto-kantana tai paikallistettuna tietokantana sen mukaan, mitä tietoelementtejä tarkastel-15 laan.
Paikallistettua tietokantaa käytettäessä kukin käyttäjä tekee muutoksia vain siihen versioon, joka hänellä on käytettävissään. Kuvassa 2 myyntiedustaja 29 tekee asiakasneuvottelun tuloksena tiettyjä muutoksia hallussaan olevaan paikallistettuun tie-20 tokantaan. Nämä muutokset tapahtuvat transaktioina, jolloin paikallistettu tietokanta ja transaktioita käsittelevä sovellusohjelma vastaavat siitä, että paikallistetun tietokannan 26 tila on kunkin transaktion suorituksen jälkeen laillinen. Koska kyseessä on paikallistettu tietokanta, järjestelmä tietää, että samat tietojen muutokset on jossain vaiheessa tehtävä master-tietokantaan, joten se tallentaa tietoalkioiden käsitte-25 lyyn käytetyt transaktiot yhdessä muuttuneiden tietoalkioiden kanssa.
Kun myyntiedustajalla on seuraavan kerran mahdollisuus tiedonsiirtoon kannettavan tietokoneensa ja yrityksen päätietokoneen 27 välillä, hän lähettää järjestelmän tallentamat transaktiot päätietokoneelle, jonka tulee tehdä vastaavat muutokset master-30 tietokantaan. Tätä toimintavaihetta nimitetään transaktioiden propagoimiseksi tieto- kannan versiosta toiseen ja se tapahtuu tekniikan tason mukaisesti ns. tietokantaope- raatiotason propagaationa. On kuitenkin mahdollista, että joku muu on tällä välin tehnyt muutoksia samoihin master-tietokannan tietoalkioihin tai että transaktioiden laillisuuden arviointiperusteet ovat muuten muuttuneet esimerkiksi päivämäärän 35 vaihduttua. Lisäksi transaktioiden propagaatiovaiheessa ei yleensä ole käytettävissä sovellusohjelmaa, joka valvoisi transaktioiden laillisuutta. Transaktio on voinut olla laillinen siinä vaiheessa, kun paikallistettua tietokantaa on käsitelty transaktion mää- 111195 5 räämällä tavalla, mutta jostakin edellä mainitusta syystä se ei ole enää laillinen transaktioiden propagaatiovaiheessa.
Pitkäkestoisen transaktion elinkaaren aikana voi myös muissa yhteyksissä tulla tilan-5 teitä, joissa transaktio on propagoitava tietokannan versiosta toiseen tai suoritettava myöhemmin kuin transaktion muodostamisajankohtana. Tietokantaoperaatiotason propagaatio, jossa tietokantaoperaatiot ovat fyysisesti ja loogisesti itsenäisiä, ei tarjoa mahdollisuuksia transaktioiden mukauttamiseen sen mukaan, mihin tietokantaan ne kohdistuvat. Tekniikan tason mukainen transaktio tuottaa siis aina saman tulok-10 sen, mikä voi aiheuttaa virhetilanteita transaktioiden propagaation yhteydessä. Tekniikan tasolle ominaisista ongelmista on ollut seurauksena, että paikallistettujen tietokantojen käyttöä on pyritty välttämään, jolloin kaikki tietoja muuttamaan pyrkivät käyttäjät joutuvat käytännössä muodostamaan reaaliaikaisen tiedonsiirtoyhteyden keskitettyyn tietokantaan ja suorittamaan haluamansa transaktiot suoraan tieto-15 kannan keskitetysti hallitussa versiossa.
Tämän keksinnön tavoitteena on esittää menetelmä ja järjestelmä, joilla voidaan ehkäistä tapahtuman eheyden ja liiketoimintasääntöjen loukkaukset pitkäkestoisia transaktioita käytettäessä. Keksinnön tavoitteena on myös esittää menetelmä ja 20 järjestelmä, joilla monipuolisten pitkäkestoisten transaktioiden muodostaminen ja muokkaaminen on yksinkertaista.
Keksinnön tavoitteet saavutetaan muodostamalla transaktio lauseista (engl. statements) sekä lause- ja transaktiokohtaisista parametreista. Transaktion myöhemmän , 25 suorituksen yhteydessä muodostetaan transaktion yhteinen tiedonvaihtoalue, jonka välityksellä lauseet voivat vaihtaa tietoa keskenään.
Keksinnön mukaiselle menetelmälle on tunnusomaista, että tietokannan tietojen muuttamiseksi tarkoitettu transaktio koostuu lauseista, joista ainakin yksi lause on 30 järjestetty välittämään tietoa sen ja jonkin toisen lauseen välillä, sekä lause- ja transaktiokohtaisista parametreista.
Keksintö kohdistuu myös järjestelmään keksinnön mukaisen menetelmän toteuttamiseksi. Keksinnön mukaiselle järjestelmälle paikallistetun tietokannan ylläpitämi-35 seksi on tunnusomaista, että se on järjestetty tallentamaan tietokantaan tehtävät muutokset transaktioina, jotka käsittävät lauseita, joista ainakin yksi lause on järjestetty välittämään tietoa sen ja jonkin toisen lauseen välillä, sekä lause- ja transaktiokohtaisia parametreja. Keksinnön mukaiselle järjestelmälle master-tietokannan yllä- 111195 6 pitämiseksi on tunnusomaista, että se on järjestetty muodostamaan vastaanottamastaan viestistä transaktio, joka koostuu lauseista, ja varaamaan järjestelmän muistista tiedonvaihtoalue transaktiokohtaisten parametrien asettamiseksi transaktioon kuuluvien lauseiden käyttöön ja tietojen välittämiseksi transaktioon kuuluvien lauseiden 5 välillä.
Keksinnön mukainen transaktio on rakennettu siten, että se mukautuu toimimaan eri tavalla riippuen sen tiedonhallintajärjestelmän tilasta, johon se kohdistuu. Mukautu-misominaisuuden ansiosta keksinnön mukaista transaktiota voidaan nimittää älyk-10 kääksi transaktioksi. Se rakentuu lauseista, jotka voivat olla tietyn tietokantakielen (esimerkiksi SQL-kielen) lauseita, mukaanlukien tietokantakielisten proseduurien kutsut, tai sovellusohjelmaosaan reititettäviä etäpalvelukutsuja (engl. remote procedure calls). Kunkin lauseen perusteella tehdään yksi tai useampia tietokanta-operaatioita, jotka voivat vaihdella tilanteesta ja ympäristöstä riippuen. Kullekin 15 lauseelle voidaan antaa mielivaltainen määrä parametreja. Keksinnön mukaisen transaktion logiikkapiirteet edellyttävät tiedonsiirtoa transaktioon kuuluvien lauseiden välillä, kun transaktio propagoidaan tietokannan versiosta toiseen tai tallennettu pitkäkestoinen transaktio suoritetaan myöhempänä ajankohtana. Tätä varten muodostetaan transaktion yhteinen tiedonvaihtoalue, jota nimitetään tässä patenttihake-20 muksessa ilmoitustauluksi (engl. bulletin board). Lauseet, jotka edellyttävät tiedonsiirtoa transaktion sisällä, pystyvät lukemaan tietoa ilmoitustaululta ja kirjoittamaan sinne tietoja, mutta niiden ei tarvitse olla tietoisia muiden samaan transaktioon kuuluvien lauseiden määrästä, muodosta tai tehtävästä. Transaktio on mahdollista koota modulaarisesti osista, jotka sisältävät yhden tai useampia lauseita. Tämän piirteen 25 ansiosta keksinnön mukainen älykäs transaktio antaa erityisesti paikallistetun tietokannan ylläpitoa ja päivitystä suunnittelevalle ohjelmoijalle erittäin joustavat toimintamahdollisuudet.
Paikallistetun tietokannan ensimmäistä versiota muokattaessa tallennetaan tietokan-30 nan muuttuneiden tietojen lisäksi lauseet, jotka toimivat muutosten aiheuttajina.
: Lauseiden yhteydessä tallennetaan parametrit, joita lauseet tarvitsevat toimiakseen tietyllä tavalla. Lauseista muodostuu transaktioita, joista jokaisen yhteydessä voi tallentua lauseiden lisäksi joukko transaktion ominaisuuksia kuvaavia parametreja. Jos transaktiot on propagoitava toiseen tietokantaversioon, transaktioista muodoste-35 taan edelleen viestejä, jotka tallennetaan tietokannan ensimmäisen version yhteydessä olevaan viestivarastoon (engl. message storage) tai lähetetään tietokannan toista versiota ylläpitävälle tietokoneelle, joka tallentaa ne omaan saapuneiden viestien varastoonsa. Varsinaisesta transaktioiden propagaatiosta vastaa tietokannan 111195 7 toista versiota ylläpitävän tietokoneen ajama synkronointiohjelma, joka on käsitteenä sinänsä tunnettu tekniikan tason mukaisesta tietokantojen synkronoinnista. Kunkin transaktion alussa synkronointiohjelma luo tiedonhallintajärjestelmään tai sen käyttöön transaktiota varten ilmoitustaulun, jossa on aluksi ainakin tieto siitä, mihin 5 tietokannan versioon transaktio kohdistuu. Transaktion lauseiden suorituksen yhteydessä ne voivat lukea parametreja ilmoitustaululta ja kirjoittaa sinne omia paramet-rejaan. Tietokantakieliset lauseet prosessiohjausosa suorittaa suoraan, mutta etäpal-velukutsut se reitittää asianomaisen sovellusohjelmaosan kautta.
10 Keksinnön mukainen älykäs transaktio on pitkäkestoinen transaktio, joka koostuu lauseista sekä lause- ja transaktiokohtaisista parametreista ja jonka lauseet voivat kommunikoida keskenään transaktion tiedonvaihtoaluetta eli ilmoitustaulua hyväksi käyttäen. Ilmoitustaulu ei ole osa itse transaktiota vaan osa mekanismia transaktion suorittamiseksi. Transaktion sisältämät lauseet voivat olla "tietoisia" siitä, että val-15 mistä transaktiota suoritettaessa on käytössä tiedonvaihtoalue, joten niiden oma logiikka voidaan rakentaa siten, että se hyödyntää tiedon vaihtoa muiden lauseiden kanssa tai transaktiokohtaisten parametrien lukemista ilmoitustaululta.
Seuraavassa selostetaan keksintöä yksityiskohtaisemmin viitaten esimerkkinä esitet-20 tyihin edullisiin suoritusmuotoihin ja oheisiin kuviin, joissa kuva 1 esittää tunnettua tietokantaa, kuva 2 esittää tunnettuja paikallistettuja tietokantoja ja niiden master-tietokantaa, 25 ‘ kuva 3 esittää keksinnön mukaista toimintaa paikallistetun tietokannan ja master- tietokannan ylläpitämiseksi ja kuva 4 esittää keksinnön mukaista transaktiota sen suoritusvaiheessa.
30
Edellä tekniikan tason selostuksen yhteydessä on viitattu kuviin 1 ja 2, joten seuraa-• vassa keksinnön ja sen edullisten suoritusmuotojen selostuksessa viitataan lähinnä kuviin 3 ja 4.
i 35 Kuvassa 3 pystysuoran katkoviivan vasen puoli esittää kaavamaisesti tietokonetta 30, jossa on paikallistettu tietokanta eli tietyn tietokannan ensimmäinen versio, jota nimitetään lyhyyden vuoksi kopioversioksi, ja oikea puoli esittää kaavamaisesti tietokonetta 31, jossa on saman tietokannan tietty toinen versio, jota nimitetään lyhyy- 111195 8 den vuoksi master-versioksi. Lyhyyden vuoksi tietokonetta 30 nimitetään seuraa-vassa PC:ksi (Personal Computer) ja tietokonetta 31 keskuskoneeksi. Nimitykset ovat esimerkinomaisia eivätkä rajoita sitä, mitä versioita tietokannasta tarkastellaan tai minkälaisia tietokoneita ja muita välineitä keksinnön soveltamiseksi voidaan 5 käyttää. PC.ssä 31 on sovellusohjelmaosa 32 (engl. application), tietokanta 33 ja synkronointiosa 34. Vastaavasti keskuskoneessa on sovellusohjelmaosa 35, tietokanta 36 ja synkronointiosa 37. PC:n synkronointiosa 34 käsittää varsinaisen synkronoinnin prosessiohjaimen lisäksi DBMS-kutsurajapinnan (DataBase Management System) 34a, komentorajapinnan 34b ja viestirajapinnan 34c. Vastaavat raja-10 pinnat on merkitty keskuskoneen synkronointiosassa 37 viitenumeroilla 37a, 37b ja 37c.
Vasteena PC:n 30 käyttäjän antamiin komentoihin sovellusohjelmaosa 32 luo transaktioita, jotka koostuvat lauseista ja jotka muuttavat tietokannan 33 sisältöä. Kun 15 PC:n sovellusohjelma 32 luo transaktion ja kohdistaa sen tietokantaan 33, PC 30 tallentaa sekä muuttuneet tiedot että lauseet, joista tietoja muuttavat transaktiot koostuvat. Lauseet tallennetaan tietokantaan 33 ja niiden yhteydessä tallennetaan niihin liittyvät parametrit. Lisäksi transaktioihin voi liittyä transaktiokohtaisia parametreja, jotka voivat olla pysyviä eli transaktion mukana tietokantaan tallennettuja. 20 Myös nämä transaktiokohtaiset parametrit tallentuvat tietokantaan 33. Lauseet ovat tyypillisesti SQL-kielisiä tai muulla tunnetulla tietokantakielellä määriteltyjä aliohjelmakutsuja (engl. procedure calls) ja niiden tallentamiseksi on olemassa erilaisia sinänsä tunnettuja vaihtoehtoja.
25 PC:ssä synkronointiosan 34 komentorajapinta 34b on joukko palveluja, joiden avulla sovellusohjelmaosa 32 voi ohjata tietokantojen synkronointitapahtumaa PC:n osalta. Eräs komentorajapinnan palveluista on synkronoinnin aloituskomento, jolla sovellusohjelmaosa aloittaa PC:n osalta transaktioiden propagaation. Varsinainen toimiva osa on tällöin PC:n synkronoinnin prosessiohjain, joka kokoaa tallennettu-30 jen lauseiden muodostamat transaktiot viesteiksi keskuskoneeseen lähettämistä var-ten. Keksintö ei varsinaisesti rajoita näiden viestien sisältöä tai rakennetta, kunhan ne pystyvät välittämään tietokantaan 33 tallennetut transaktiot, lauseet ja parametrit keskuskoneelle. Riippuen siitä, onko tiedonsiirtoyhteys PC :n ja keskuskoneen välillä auki vai ei, synkronoinnin prosessiohjain lähettää valmiit viestit viestirajapinnan 34c 35 välityksellä keskuskoneelle tai tallentaa ne viestivarastoon odottamaan lähettämistä.
Keskuskone ottaa PC:n lähettämät viestit vastaan viestirajapinnan 37c välityksellä ja tallentaa ne omaan viestivarastoonsa (ei erikseen esitetty kuvassa) odottamaan trans- 111195 9 aktioiden kohdistamista master-tietokantaan. Jälkimmäinen voi tapahtua automaattisesti esimerkiksi säännöllisin välein toistuvassa synkronointiajossa tai viestivaras-> ton täytyttyä, tai se voi tapahtua vasteena keskuskoneen käyttäjän antamaan synkro- nointikomentoon. Kukin viesti käsitellään keskuskoneessa tehtävistä (tyypillisesti 5 transaktioista sekä niiden lauseista ja parametreista) koostuvana prosessina, jota hoitaa synkronoinnin prosessiohjain lohkossa 37. Prosessin sisällä prosessiohjain käsittelee viestin välittämiä transaktioita. Käsittelyn aluksi se varaa tietokoneen muistista tietyn alueen transaktiokohtaista ilmoitustaulua varten. Eräs esimerkinomainen transaktiokohtainen parametri, jonka prosessiohjain voi kirjoittaa ilmoitus-10 tauluun, on tietokannan tyyppiä osoittava parametri (DatabaseType), jonka arvoksi voidaan tässä vaiheessa asettaa "Master". Ilmoitustaulun kautta tämä parametri välittyy niihin transaktion lauseisiin, joiden toiminta riippuu siitä, onko käsiteltävä tietokanta kopio vai master. Tietokannan tyyppiä osoittava "Master"-arvo tarkoittaa erityisesti, että sovellusohjelma ei valvo transaktioiden laillisuutta vaan valvonnan on 15 perustuttava logiikkaominaisuuksiin, joita transaktio keksinnön mukaisesti sisältää.
Transaktioon kuuluvat tietokantakieliset lauseet prosessiohjain voi suorittaa suoraan. Jos lause ei ole SQL-kielinen tai muutoin tietokantapalvelimen tai synkronointiosan tukema lause, se tulkitaan etäpalvelukutsuksi ja se ohjautuu synkronointiosasta 37 20 sovellusohjelmaosaan 35, joka suorittaa lausetta vastaavan palvelun. Tämä palvelu puolestaan voi muuttaa master-tietokannan sisältöä omilla tietokantaoperaatioillaan. Nämä tietokantaoperaatiot suoritetaan osana käsiteltävänä olevaa transaktiota. Kun koko transaktio on suoritettu, sen ilmoitustaulua ei enää tarvita ja ilmoitustaulun varaama muistialue voidaan vapauttaa muuhun käyttöön.
25
Seuraavaksi tarkastellaan kuvassa 4 esitettyä erästä esimerkinomaista transaktiota 40 ja sen etenemistä kuvan 3 mukaisessa järjestelyssä. Oletetaan, että PC:n 30 käyttäjä muodostaa sovellusohjelmaosan 32 avulla asiakkaan tekemää tilausta kuvaavan transaktion, joka koostuu kolmesta lauseesta. Kuvassa 4 on esitetty kaavamaisesti 30 nämä lauseet ja ne tietokannan taulut, joihin ne vaikuttavat. Transaktion lauseet ovat "'; seuraavat: 41: InsertOrder(itemNumber, orderedAmount) - Tämä lause lisää Tilaukset-tau-* luun 44 uuden rivin, jossa oleellisia tietoja ovat tilauksen tunnusnumero ja tilattujen 35 tuotteiden määrä, jotka lause saa syöttötietoina. Alalla vakiintuneen käytännön mukaisesti lauseiden saamien syöttötietoparametrien nimet ilmaistaan lauseen nimen perässä sulkeissa. Tilaukset-taulun rivit voivat luonnollisesti sisältää myös runsaasti muita tietoja.
111195 10 42: InsertBookkeepingEntry(accountNumber, amount) - Tämä lause lisää Kirjanpi-toviennit-tauluun 45 rivin, joka kuvaa asiakkaan tekemää tilausta.
43: UpdateAccountBalance(entryld) - Tämä lause saa syöttötietona tunnusluvun, 5 joka yksilöi edellisen lauseen luoman rivin Kirjanpitoviennit-taulussa 45. Se lukee kyseiseltä riviltä sen tilin numeron, jota kirjanpitovienti koskee, ja viennin numeerisen arvon sekä päivittää Tilit-taulussa 46 kyseisen tilin saldon vastaamaan uutta tilannetta.
10 Lauseiden käyttöä tietokannassa säätelevät seuraavat liiketoimintasäännöt: 1) Tilauksen statukseksi voidaan merkitä "Active" (Aktiivinen) vain, jos varastossa on varastokirjanpidon mukaan riittävästi tavaraa tilauksen täyttämiseksi. Muussa tapauksessa tilauksen statukseksi on merkittävä "RequiresManualApproval" (Hyväk- 15 syttäväManuaalisesti).
2) Kirjanpitoviennin statukseksi voidaan merkitä "Approved" (Hyväksytty) vain, jos vastaavan tilauksen status on "Active". Muussa tapauksessa kirjanpitoviennin statukseksi on merkittävä "RequiresManualApproval" (HyväksyttäväManuaalisesti).
20 3) Tilin saldo voidaan päivittää vain, jos vastaavan kirjanpitoviennin status on "Approved".
Oletetaan, että edellä esitelty kolmesta lauseesta koostuva transaktio on onnistunut 25 kopiotietokannassa 33, jolloin lauseen 41 muodostaman tilauksen status on "Active", lauseen 42 muodostaman kirjanpitoviennin status on "Approved" ja tilin saldo on päivitetty lauseen 43 mukaisesti. Muutokset aiheuttanut transaktio on myös tallentunut PC:n ylläpitämään kopiotietokantaan. Seuraavaksi on tarkoitus synkronoida tietokannat siten, että transaktion kuvaamat muutokset välittyvät master-tieto-30 kantaan 36.
Transaktion lopullista laillisuutta master-tietokannassa ei ole mahdollista varmistaa edellä esiteltyjä liiketoimintasääntöjä käyttäen vielä siinä vaiheessa, kun muutoksia tehdään kopiotietokantaan, koska joko kopiotietokantaan ei kuulu varastokirjanpitoa 35 lainkaan tai parhaimmillaankin kopiotietokannan varastokirjanpitotiedot vastaavat varaston tilannetta vain sillä hetkellä, kun kopio on tehty. Transaktion on siis toimittava eri tavalla riippuen siitä, kohdistetaanko se kopiotietokantaan vai master-tieto-kantaan.
111195 11
Transaktion siirtäminen keskustietokoneeseen tapahtuu samalla tavalla kuin edellä on esitetty viitaten kuvaan 3. Keskustietokoneen synkronoinnin prosessiohjain 37 varaa tietyn muistialueen transaktion ilmoitustauluksi 47 ja suorittaa lauseet yksi kerrallaan. Ensimmäinen lause 41 sisältää loogisen toimenpiteen 48, jolla tarkaste-5 taan, onko varastokirjanpidossa niin paljon tavaraa, että se riittää kattamaan tilauk-: sen, jonka koko on ilmaistu orderedAmount-parametrina. Jos tarkastus antaa nega tiivisen tuloksen, tilauksen statukseksi on tultava "RequiresManualApproval". Tieto tilauksen muuttuneesta tilasta on saatava välittymään muille lauseille 42 ja 43, koska niiden toiminta riippuu tilauksen statuksesta. Transaktiokohtaiseen ilmoitustauluun 10 lisätään tällöin parametri "Status" ja sen arvoksi asetetaan "RequiresManual-Approval". Seuraavan lauseen 42 suorituksen yhteydessä tarkastetaan, onko transaktion ilmoitustaulussa parametria "Status" ja jos on, mikä on sen arvo. Jos tällöin löytyy arvo "RequiresManualApproval", lause 42 tuottaa master-tietokannan Kirjan-pitoviennit-tauluun rivin, jossa kirjanpitoviennin status on liiketoimintasäännön 2) 15 mukaisesti "RequiresManualApproval". Kolmas lause 43 jättää liiketoimintasäännön 3) mukaisesti tilin saldon päivittämättä, koska transaktion ilmoitustaulun kautta on välittynyt tieto siitä, että vastaavan kirjanpitoviennin status ei ole "Approved".
Edellä esitetyn esimerkinomaisen suoritusmuodon mukaisesti keksinnön mukainen 20 älykäs transaktio voi sisältää yhdessä tai useammassa lauseessa (jopa kaikissa lauseissaan) loogisia operaatioita, joita käytetään transaktion laillisuuden toteamiseksi ennen lauseen tarkoittamien muutosten tekemistä tietokantaan. Loogisten operaatio-den tuottama tieto välittyy lauseesta toiseen transaktion yhteisen ilmoitustaulun kautta, joten lauseiden ei tarvitse viitata suoraan toisiinsa tai edes sisältää mitään 25 tietoa siitä, mitä muita lauseita transaktioon kuuluu. Loogisten operaatioiden avulla transaktion lauseet voivat aiheuttaa tietonkannassa erilaisia muutoksia sen mukaan, kohdistetaanko transaktio kopio- vai master-tietokantaan.
Vaikka edellä on tarkasteltu pelkkää kahden tietokantaversion keskinäistä synkro-30 nointia, keksintö on helposti yleistettävissä kaikkiin pitkäkestoisen transaktion elinkaaren aikana esiin tuleviin tilanteisiin, jossa aiemmin muodostettua transaktiota on : täydennettävä tai se on suoritettava myöhemmin kuin suoraan muodostusajankohta- na.
35 Alan ammattimiehelle on selvää, että edellä esitetyt esimerkinomaiset suoritusmuodot ovat selityksen havainnollisuuden vuoksi rakenteeltaan ja toiminnaltaan verraten yksinkertaisia. Tässä patenttihakemuksessa esitettyä mallia noudattaen on mahdollista konstruoida erilaisia ja hyvin monimutkaisiakin transaktioita, jotka hyödyntävät tässä patenttihakemuksessa esitettyä keksinnöllistä ajatusta.

Claims (10)

111195 12
1. Menetelmä tietokannan (33, 36) sisältämien tietojen muuttamiseksi, jossa menetelmässä joukko tietojen muuttamiseksi tarkoitettuja vaiheita muodostaa transak- 5 tion (40), tunnettu siitä, että mainittu transaktio koostuu lauseista (41, 42, 43), joista ainakin yksi lause on järjestetty välittämään tietoa sen ja jonkin toisen lauseen välillä, sekä lause- ja transaktiokohtaisista parametreista.
2. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, että mainitussa 10 menetelmässä muodostetaan transaktion yhteinen tiedonvaihtoalue (47) parametrien asettamiseksi transaktioon kuuluvien lauseiden käyttöön ja tietojen välittämiseksi transaktioon kuuluvien lauseiden välillä.
3. Patenttivaatimuksen 2 mukainen menetelmä, tunnettu siitä, että ainakin yksi 15 transaktion lause (41) sisältää loogisen operaation (48) transaktion laillisuuden tutkimiseksi, jolloin mainitun loogisen operaation suorittamisen jälkeen sen tuloksesta kertova tieto lisätään transaktion yhteiseen tiedonvaihtoalueeseen (47).
4. Patenttivaatimuksen 2 mukainen menetelmä, tunnettu siitä, että transaktioiden 20 propagaatiossa tietokannan versioiden välillä transaktion yhteiseen tiedonvaihtoalueeseen kirjoitetaan tieto siitä, mihin tietokannan versioon (33, 36) transaktio kohdistuu.
5. Patenttivaatimuksen 4 mukainen menetelmä, tunnettu siitä, että transaktioiden 25 propagoimiseksi tietokannan versioiden välillä - transaktion muodostavassa ja tallentavassa ensimmäisessä tietokoneessa (30) tallennetaan (33) lauseet (41,42,43), jotka muodostavat transaktion (40), - transaktio (40) välitetään viestissä (34c, 37c) aiemmin muodostetun transaktion myöhempänä ajankohtana suorittavalle toiselle tietokoneelle (31), 30. toinen tietokone (31) tulkitsee viestin yhdeksi tai useammaksi lauseita ja paramet- ; reja sisältäväksi transaktioksi, - toinen tietokone varaa muistista tietyn alueen transaktion yhteiseksi tiedonvaihto-alueeksi (47) ja kirjoittaa siihen tiedon siitä, mihin tietokannan versioon transaktio kohdistuu, 35. transaktion sisältämät lauseet, jotka eivät ole välittömästi suoritettavia tietokanta- kielisiä komentoja, reititetään niitä suorittavan osan kautta (35) ja - toisen tietokoneen ylläpitämä tietokantaversio (36) käsitellään transaktion (40) sisältämien lauseiden määräämällä tavalla. 111195 13
6. Patenttivaatimuksen 5 mukainen menetelmä, tunnettu siitä, että transaktion sisältämät lauseet, jotka eivät ole välittömästi suoritettavia tietokantakielisiä komen- , toja, reititetään toisessa tietokoneessa (31) etäpalvelukutsuina asianomaisen sovellu- sohjelmaosan (35) kautta. 5
7. Järjestelmä (30) tietokannan ensimmäisen version (33) ylläpitämiseksi, tunnettu siitä, että se on järjestetty tallentamaan tietokantaan tehtävät muutokset transaktioina (40), jotka käsittävät lauseita (41, 42, 43), joista ainakin yksi lause on järjestetty välittämään tietoa sen ja jonkin toisen lauseen välillä, sekä lause-ja transaktio- 10 kohtaisia parametreja.
8. Patenttivaatimuksen 7 mukainen järjestelmä, tunnettu siitä, että se käsittää lisäksi välineet (34, 34a, 34c) tietokannan toiseen versioon välitettävien transaktioiden kokoamiseksi viesteiksi sekä viestien lähettämiseksi tietokannan toista versiota 15 ylläpitävälle tietokoneelle (31).
9. Muistilla varustettu jäijestelmä (31) tietokannan toisen tietokantaversion (36) ylläpitämiseksi, tunnettu siitä, että se on järjestetty muodostamaan vastaanottamastaan viestistä transaktio (40), joka koostuu lauseista (41, 42, 43), ja varaamaan jär- 20 jestelmän muistista tiedonvaihtoalue (47) transaktiokohtaisten parametrien asettamiseksi transaktioon kuuluvien lauseiden käyttöön ja tietojen välittämiseksi transaktioon kuuluvien lauseiden välillä.
10. Patenttivaatimuksen 9 mukainen järjestelmä, jossa on lisäksi sovellusohjelma-25 osa (35), tunnettu siitä, että se on jäljestetty reitittämään sellaiset lauseet, jotka eivät ole välittömästi suoritettavia tietokantakielisiä komentoja, etäpalvelukutsuina sovellusohjelmaosan (35) kautta. 111195 14
FI970777A 1997-02-24 1997-02-24 Älykäs transaktio FI111195B (fi)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FI970777A FI111195B (fi) 1997-02-24 1997-02-24 Älykäs transaktio
AT98660005T ATE508420T1 (de) 1997-02-24 1998-01-28 Intelligente transaktion
DE69842248T DE69842248D1 (de) 1997-02-24 1998-01-28 Intelligente Transaktion
EP98660005A EP0860788B1 (en) 1997-02-24 1998-01-28 Intelligent transaction
US09/028,940 US6144941A (en) 1997-02-24 1998-02-24 Intelligent transaction

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI970777 1997-02-24
FI970777A FI111195B (fi) 1997-02-24 1997-02-24 Älykäs transaktio

Publications (3)

Publication Number Publication Date
FI970777A0 FI970777A0 (fi) 1997-02-24
FI970777A FI970777A (fi) 1998-08-25
FI111195B true FI111195B (fi) 2003-06-13

Family

ID=8548270

Family Applications (1)

Application Number Title Priority Date Filing Date
FI970777A FI111195B (fi) 1997-02-24 1997-02-24 Älykäs transaktio

Country Status (5)

Country Link
US (1) US6144941A (fi)
EP (1) EP0860788B1 (fi)
AT (1) ATE508420T1 (fi)
DE (1) DE69842248D1 (fi)
FI (1) FI111195B (fi)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275863B1 (en) * 1999-01-25 2001-08-14 International Business Machines Corp. System and method for programming and executing long running transactions
JP2001312509A (ja) * 2000-04-28 2001-11-09 Fujitsu Ltd 電子情報配信システムおよび記録媒体
US7120597B1 (en) * 2000-12-27 2006-10-10 Kermit Knudtzon Computerized accounting systems and methods
US7136912B2 (en) 2001-02-08 2006-11-14 Solid Information Technology Oy Method and system for data management
JP2002287999A (ja) * 2001-03-26 2002-10-04 Duaxes Corp サーバの二重化方法、二重化サーバシステム、および二重化データベースサーバ
US6970876B2 (en) 2001-05-08 2005-11-29 Solid Information Technology Method and arrangement for the management of database schemas
US7065541B2 (en) * 2001-10-10 2006-06-20 International Business Machines Corporation Database migration
US7139775B2 (en) 2001-11-01 2006-11-21 Solid Information Technology Oy Method and arrangement for providing an audit of a replica database
US6978396B2 (en) * 2002-05-30 2005-12-20 Solid Information Technology Oy Method and system for processing replicated transactions parallel in secondary server
US7266702B2 (en) 2002-10-21 2007-09-04 Solid Information Technology Oy Method and system for managing security material and services in a distributed database system
US7320003B2 (en) * 2004-02-13 2008-01-15 Genworth Financial, Inc. Method and system for storing and retrieving document data using a markup language string and a serialized string
US20050182666A1 (en) * 2004-02-13 2005-08-18 Perry Timothy P.J. Method and system for electronically routing and processing information
US7698159B2 (en) 2004-02-13 2010-04-13 Genworth Financial Inc. Systems and methods for performing data collection
US7761410B2 (en) 2005-09-30 2010-07-20 Medcom Solutions, Inc. System and method for reviewing and implementing requested updates to a primary database
US9910882B2 (en) 2014-12-19 2018-03-06 International Business Machines Corporation Isolation anomaly quantification through heuristical pattern detection
US9922071B2 (en) * 2014-12-19 2018-03-20 International Business Machines Corporation Isolation anomaly quantification through heuristical pattern detection

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5222018A (en) * 1985-07-18 1993-06-22 Pitney Bowes Inc. System for centralized processing of accounting and payment functions
GB2230626A (en) * 1989-04-20 1990-10-24 Croftlands Ltd Computerised database system
WO1992016904A1 (en) * 1991-03-18 1992-10-01 Echelon Corporation Binder interface structure
US5550734A (en) * 1993-12-23 1996-08-27 The Pharmacy Fund, Inc. Computerized healthcare accounts receivable purchasing collections securitization and management system
CA2167902A1 (en) * 1995-01-24 1996-07-25 Richard W. Carr Remote duplicate database facility with database replication support for online ddl operations
US5931917A (en) * 1996-09-26 1999-08-03 Verifone, Inc. System, method and article of manufacture for a gateway system architecture with system administration information accessible from a browser
US5897622A (en) * 1996-10-16 1999-04-27 Microsoft Corporation Electronic shopping and merchandising system

Also Published As

Publication number Publication date
EP0860788A2 (en) 1998-08-26
FI970777A (fi) 1998-08-25
FI970777A0 (fi) 1997-02-24
EP0860788B1 (en) 2011-05-04
DE69842248D1 (de) 2011-06-16
EP0860788A3 (en) 2000-01-05
US6144941A (en) 2000-11-07
ATE508420T1 (de) 2011-05-15

Similar Documents

Publication Publication Date Title
FI111195B (fi) Älykäs transaktio
CN102216910B (zh) 并行编辑数据库的方法
US5410703A (en) System for changing software during computer operation
US6308224B1 (en) Method of generating an implementation of a workflow process model in an object environment
CN1318956C (zh) 软件构件插件程序结构的系统和方法
KR0126245B1 (ko) 체크인/체크아웃모델용 록킹 메카니즘
US8341128B1 (en) Concurrency control using an effective change stack and tenant-based isolation
US6275863B1 (en) System and method for programming and executing long running transactions
US7562102B1 (en) Extensible handling of new or modified data within an independent distributed database system
CN110544097A (zh) 智能合约版本控制、调用和升级方法、设备及存储介质
CN110032568B (zh) 数据结构的读取及更新方法、装置、电子设备
US6718349B2 (en) Intelligent, optimistic concurrency database access scheme
CN110231936A (zh) 一种移动端流程引擎框架及移动端流程引擎的使用方法
CN111784108A (zh) 一种主数据管理平台的建模方法和装置
AU5680894A (en) Interception system and method including user interface
Gouigoux et al. “Functional-First” Recommendations for Beneficial Microservices Migration and Integration Lessons Learned from an Industrial Experience
US7430569B2 (en) Computerized replication of data objects
EP1376401B1 (en) Method and system for creation and use of webs of linked documents
AU2003302184B2 (en) Avoiding data loss when refreshing a data warehouse
JPH0844670A (ja) ファイル管理方法およびそれを用いた計算機システムならびにその計算機システムの運用方法
Eder et al. Synchronizing copies of external data in workflow management systems
Dąbrowski et al. Object-Oriented Declarative Workflow Management System
JPH1196054A (ja) データベース統合アプリケーション構築システム
Araujo A Design Process based on patterns and non-functional requirements
IES20020052A2 (en) Real time transaction processing

Legal Events

Date Code Title Description
PC Transfer of assignment of patent

Owner name: OY INTERNATIONAL BUSINESS MACHINES AB

Free format text: OY INTERNATIONAL BUSINESS MACHINES AB

MA Patent expired