Dadnormaleiddio cronfeydd data ERP a'i effaith ar ddatblygu meddalwedd: agor tafarn yn Tortuga

Helo! Fy enw i yw Andrey Semenov, rwy'n uwch ddadansoddwr yn Sportmaster. Yn y swydd hon rwyf am godi mater dadnormaleiddio cronfeydd data system ERP. Byddwn yn edrych ar amodau cyffredinol, yn ogystal ag enghraifft benodol - gadewch i ni ddweud y byddai'n dafarn monopoli gwych ar gyfer môr-ladron a morwyr. Yn y mae'n rhaid gwasanaethu môr-ladron a morwyr yn wahanol, oherwydd mae syniadau harddwch a phatrymau defnyddwyr y dynion da hyn yn sylweddol wahanol.

Sut i wneud pawb yn hapus? Sut allwch chi osgoi mynd yn wallgof wrth ddylunio a chynnal system o'r fath? Beth i'w wneud os nad dim ond y môr-ladron a'r morwyr arferol sy'n dechrau dod i'r dafarn?

Dadnormaleiddio cronfeydd data ERP a'i effaith ar ddatblygu meddalwedd: agor tafarn yn Tortuga

Mae popeth o dan y toriad. Ond gadewch i ni fynd mewn trefn.

1. Cyfyngiadau a thybiaethau

Mae'r uchod i gyd yn berthnasol i gronfeydd data perthynol yn unig. Nid yw canlyniadau dadnormaleiddio ar ffurf anomaleddau addasu, dileu a gosod, sydd wedi'u cwmpasu'n dda, gan gynnwys ar y Rhyngrwyd, yn cael eu hystyried. Y tu allan i gwmpas y cyhoeddiad hwn mae yna achosion lle mae dadnormaleiddio yn lle cyffredin, gydag enghreifftiau clasurol: cyfres a rhif pasbort, dyddiad ac amser, ac ati.

Mae'r swydd yn defnyddio diffiniadau greddfol ac ymarferol berthnasol o ffurfiau arferol, heb gyfeirio at dermau mathemategol. Ar y ffurf y gellir eu cymhwyso i archwilio prosesau busnes go iawn (BP) a dylunio meddalwedd diwydiannol.

Dadleuir bod cynllun warysau data, offer adrodd a chytundebau integreiddio (sy’n defnyddio cynrychioliadau tablau o wybodaeth) yn wahanol i ddyluniad cronfeydd data system ERP gan y gall rhwyddineb defnydd a’r defnydd o ddadnormaleiddio ymwybodol i’w gyflawni gael blaenoriaeth dros gyfanrwydd. data diogelu. Rwy'n rhannu'r farn hon, ac mae'r hyn a ddisgrifir isod yn berthnasol i brif fodelau data a data trafodion systemau ERP yn unig.

Rhoddir esboniad o ffurfiau arferol gan ddefnyddio enghraifft sy'n ddealladwy ar lefel bob dydd i'r rhan fwyaf o ddarllenwyr. Fodd bynnag, fel enghraifft weledol, ym mharagraffau 4-5, defnyddiwyd tasg "ffug" yn fwriadol yn fwriadol. Os na wnewch hyn a chymryd enghraifft o werslyfr, er enghraifft, yr un model storio trefn o bwynt 2, efallai y byddwch mewn sefyllfa lle bydd ffocws y darllenydd yn cael ei symud o ddadelfennu arfaethedig y broses i fodel, profiad personol a chanfyddiad o sut mae'n rhaid adeiladu prosesau a modelau ar gyfer storio data mewn GG. Mewn geiriau eraill, cymerwch ddau ddadansoddwr TG cymwys, gadewch i un ddarparu gwasanaethau i logistegwyr sy'n cludo teithwyr, a'r llall i logistegwyr sy'n cludo peiriannau ar gyfer cynhyrchu microsglodion. Gofynnwch iddynt, heb drafod BPs awtomataidd ymlaen llaw, i greu model data ar gyfer storio gwybodaeth am daith rheilffordd.

Mae tebygolrwydd nad yw'n sero y byddwch yn dod o hyd i set wahanol iawn o briodoleddau yn y modelau arfaethedig, ond hefyd setiau gwahanol o endidau, oherwydd bydd pob dadansoddwr yn dibynnu ar y prosesau a'r tasgau sy'n gyfarwydd iddo. Ac mewn sefyllfa o'r fath mae'n amhosibl dweud pa fodel sy'n “gywir”, oherwydd nid oes maen prawf gwerthuso.

2. Ffurflenni arferol

Dadnormaleiddio cronfeydd data ERP a'i effaith ar ddatblygu meddalwedd: agor tafarn yn Tortuga

Ffurf arferol gyntaf y gronfa ddata yn gofyn am atomigrwydd yr holl briodoleddau.
Yn benodol, os oes gan wrthrych A briodweddau nad ydynt yn allweddol a a b, fel bod c=f(a,b) ac yn y tabl sy'n disgrifio gwrthrych A rydych yn storio gwerth priodoledd c, yna mae'r ffurf arferol gyntaf yn cael ei thorri yn y gronfa ddata . Er enghraifft, os yw manyleb y gorchymyn yn nodi maint, y mae ei unedau mesur yn dibynnu ar y math o gynnyrch: mewn un achos gall fod yn ddarnau, mewn litr arall, mewn trydydd pecyn sy'n cynnwys darnau (yn y model uchod Good_count_WR) , yna mae atomigedd priodoleddau yn cael ei dorri yn y gronfa ddata. Yn yr achos hwn, er mwyn dweud beth ddylai clwstwr tabl y fanyleb archeb fod, mae angen disgrifiad wedi'i dargedu o'r broses waith yn y GG, a chan y gall y prosesau fod yn wahanol, gall fod llawer o fersiynau “cywir”.

Ail ffurf arferol y gronfa ddata yn gofyn am gydymffurfio â'r ffurflen gyntaf a'i dabl ei hun ar gyfer pob endid sy'n ymwneud â'r broses waith yn y GG. Os oes dibyniaethau c=f1(a) a d=f2(b) mewn un tabl ac nad oes dibyniaeth c=f3(b), yna mae'r ail ffurf normal yn cael ei thorri yn y tabl. Yn yr enghraifft uchod, nid oes unrhyw ddibyniaeth rhwng trefn a chyfeiriad yn y tabl Gorchymyn. Newidiwch enw'r stryd neu'r ddinas ac ni fyddwch yn cael unrhyw effaith ar nodweddion hanfodol y gorchymyn.

Cronfa ddata trydydd ffurflen arferol yn gofyn am gydymffurfio â'r ail ffurf arferol ac absenoldeb dibyniaethau swyddogaethol rhwng nodweddion gwahanol endidau. Gellir llunio'r rheol hon fel a ganlyn: “rhaid cyfrifo popeth y gellir ei gyfrifo.” Mewn geiriau eraill, os oes dau wrthrych A a B. Yn y tabl sy'n storio priodoleddau gwrthrych A, mae priodoledd C yn cael ei amlygu, ac mae gan wrthrych B briodwedd b, fel bod c=f4(b) yn bodoli, yna mae'r drydedd ffurf normal yn cael ei sathru. Yn yr enghraifft isod, mae'r priodoledd Nifer y Darnau (Total_count_WR) ar gofnod y gorchymyn yn amlwg yn honni ei fod yn torri'r drydedd ffurf arferol

3. Fy agwedd at gymhwyso normaleiddio

1. Dim ond proses fusnes awtomataidd darged all ddarparu meini prawf i'r dadansoddwr ar gyfer nodi endidau a phriodoleddau wrth greu model storio data. Mae creu model proses yn rhagofyniad ar gyfer creu model data arferol.

2. Efallai na fydd cyflawni trydedd ffurf arferol yn yr ystyr caeth yn ymarferol mewn gwirionedd o greu systemau ERP os bodlonir rhai neu bob un o'r amodau canlynol:

  • anaml y mae prosesau awtomataidd yn agored i newid,
  • mae terfynau amser ar gyfer ymchwil a datblygu yn dynn,
  • mae gofynion cywirdeb data yn gymharol isel (nid yw gwallau posibl mewn meddalwedd diwydiannol yn arwain at golli arian neu gleientiaid gan y cwsmer meddalwedd)
  • ac ati

O dan yr amodau a ddisgrifir, efallai na ellir cyfiawnhau costau adnabod a disgrifio cylch bywyd rhai gwrthrychau a'u priodoleddau o safbwynt effeithlonrwydd economaidd.

3. Gellir lliniaru unrhyw ganlyniadau dadnormaleiddio'r model data mewn GG a grëwyd eisoes trwy astudiaeth ragarweiniol drylwyr o'r cod a phrofi.

4. Mae dadnormaleiddio yn ffordd o drosglwyddo costau llafur o'r cam o ymchwilio i ffynonellau data a dylunio proses fusnes i'r cam datblygu, o'r cyfnod gweithredu i gyfnod datblygu'r system.

5. Fe'ch cynghorir i anelu at drydedd ffurf arferol cronfa ddata os:

  • Mae'n anodd rhagweld cyfeiriad y newid mewn prosesau busnes awtomataidd
  • Mae rhaniad llafur gwan o fewn y tîm gweithredu a/neu ddatblygu
  • Mae systemau a gynhwysir yn y gylched integreiddio yn datblygu yn unol â'u cynlluniau eu hunain
  • Gall anghysondeb data arwain at gwmni yn colli cwsmeriaid neu arian

6. Dim ond mewn cysylltiad â modelau'r broses fusnes darged a'r broses yn y GG y dylai dylunio model data gael ei wneud gan ddadansoddwr. Os yw datblygwr yn dylunio model data, bydd yn rhaid iddo ymgolli yn y maes pwnc i'r fath raddau fel ei fod, yn benodol, yn deall y gwahaniaeth rhwng gwerthoedd priodoledd - amod angenrheidiol ar gyfer ynysu priodoleddau atomig. Felly, ymgymryd â swyddogaethau anarferol.

4 Problem er enghraifft

Gadewch i ni ddweud bod gennych chi dafarn robotig bach yn y porthladd. Eich segment marchnad: morwyr a môr-ladron sy'n dod i mewn i'r porthladd ac sydd angen seibiant. Rydych chi'n gwerthu te gyda theim i forwyr, a rum ac asgwrn i gribo barf i fôr-ladron. Darperir y gwasanaeth yn y dafarn ei hun gan westeiwr robot a bartender robot. Diolch i'ch ansawdd uchel a'ch prisiau isel, rydych chi wedi gyrru'ch cystadleuwyr allan, fel bod pawb sy'n dod oddi ar y llong yn dod i'ch tafarn, sef yr unig un yn y porthladd.

Mae cyfadeilad systemau gwybodaeth y dafarn yn cynnwys y meddalwedd canlynol:

  • System rhybudd cynnar am gleient sy'n cydnabod ei gategori yn seiliedig ar nodweddion nodweddiadol
  • System reoli ar gyfer gwesteiwyr robotiaid a bartenders robotiaid
  • System rheoli warws a danfon i'r pwynt gwerthu
  • System Rheoli Perthynas Cyflenwyr (SURP)

Proses:

Mae'r system rhybuddio cynnar yn cydnabod pobl sy'n gadael y llong. Os yw person wedi ei eillio'n lân, mae hi'n ei adnabod fel morwr; os canfyddir bod barf ar berson, yna mae'n cael ei adnabod fel môr-leidr.

Wrth fynd i mewn i'r dafarn, mae'r gwestai yn clywed cyfarchiad gan y gwesteiwr robot yn unol â'i gategori, er enghraifft: "Ho-ho-ho, annwyl fôr-leidr, ewch i fwrdd Rhif..."

Mae'r gwestai yn mynd i'r bwrdd penodedig, lle mae'r bartender robot eisoes wedi paratoi nwyddau ar ei gyfer yn unol â'r categori. Mae'r bartender robot yn trosglwyddo gwybodaeth i'r system warws y dylid cynyddu'r gyfran nesaf o gyflenwi; mae'r warws IS, yn seiliedig ar y balansau sy'n weddill yn y storfa, yn cynhyrchu cais prynu yn y system reoli.

Er ei bod yn bosibl bod y system rhybudd cynnar wedi’i datblygu gan eich TG mewnol, efallai bod y rhaglen rheoli robotiaid bar wedi’i chreu gan gontractwr allanol yn benodol ar gyfer eich busnes. Ac mae systemau ar gyfer rheoli warysau a pherthynas â chyflenwyr yn atebion wedi'u pecynnu wedi'u teilwra o'r farchnad.

5. Enghreifftiau o ddadnormaleiddio a'i effaith ar ddatblygu meddalwedd

Wrth ddylunio proses fusnes, dywedodd yr arbenigwyr pwnc a gyfwelwyd yn unfrydol fod môr-ladron ledled y byd yn yfed rwm ac yn cribo eu barfau â chribau esgyrn, a bod morwyr yn yfed te gyda theim a'u bod bob amser wedi'u heillio'n lân.

Mae cyfeiriadur o fathau o gleientiaid yn ymddangos gyda dau werth: 1 - môr-ladron, 2 - morwyr, sy'n gyffredin ar gyfer cylched wybodaeth gyfan y cwmni.

Mae'r system hysbysu cleientiaid ar unwaith yn storio canlyniad prosesu delwedd fel dynodwr (ID) y cleient cydnabyddedig a'i fath: morwr neu fôr-leidr.

ID gwrthrych cydnabyddedig
Categori cleient

100500
Môr-leidr

100501
Môr-leidr

100502
Morwr

Gadewch inni nodi hynny unwaith eto

1. Mae ein morwyr mewn gwirionedd yn bobl eillio
2. Mae ein môr-ladron mewn gwirionedd yn bobl barfog

Pa broblemau yn yr achos hwn y mae angen eu dileu fel bod ein strwythur yn anelu at y drydedd ffurf arferol:

  • priodoli groes atomigedd - Categori Cleient
  • cymysgu'r ffaith a ddadansoddwyd a'r casgliad mewn un tabl
  • perthynas swyddogaethol sefydlog rhwng nodweddion gwahanol endidau.

Ar ffurf normal, byddem yn cael dau dabl:

  • canlyniad cydnabyddiaeth ar ffurf set o nodweddion sefydledig,

ID gwrthrych cydnabyddedig
Gwallt wyneb

100500
Oes

100501
Oes

100502
Dim

  • canlyniad pennu'r math o gleient fel cymhwysiad o'r rhesymeg sydd wedi'i hymgorffori yn y GG i ddehongli'r nodweddion sefydledig

ID gwrthrych cydnabyddedig
ID adnabod
Categori cleient

100500
100001
Môr-leidr

100501
100002
Môr-leidr

100502
100003
Morwr

Sut y gall sefydliad storio data normaleiddio hwyluso datblygiad cyfadeilad IP? Gadewch i ni ddweud eich bod chi'n cael cleientiaid newydd yn sydyn. Gadewch iddo fod yn fôr-ladron Japaneaidd nad oes ganddyn nhw barf efallai, ond maen nhw'n cerdded gyda pharot ar eu hysgwydd, a môr-ladron amgylcheddol, gallwch chi eu hadnabod yn hawdd gan broffil glas Greta ar y frest chwith.

Yn naturiol, ni all môr-ladron amgylcheddol ddefnyddio cribau esgyrn a mynnu analog wedi'i wneud o blastig môr wedi'i ailgylchu.

Mae angen i chi ail-weithio'r algorithmau rhaglen yn unol â'r mewnbynnau newydd. Pe bai'r rheolau normaleiddio'n cael eu dilyn, yna dim ond ar gyfer rhai canghennau proses y byddai'n rhaid ichi eu hychwanegu at rai systemau a chreu canghennau newydd dim ond ar gyfer yr achosion hynny ac yn yr ISs hynny lle mae gwallt wyneb yn bwysig. Ond, gan na ddilynwyd y rheolau, bydd yn rhaid i chi ddadansoddi'r cod cyfan, trwy gydol y gylched gyfan, lle mae gwerthoedd y cyfeiriadur math cleient yn cael eu defnyddio a sefydlu'n glir y dylai'r algorithm mewn un achos ystyried y gweithiwr proffesiynol. gweithgaredd y cleient, ac yn y nodweddion ffisegol eraill.

Mewn ffurf sydd yn ceisio i normaleiddio, byddem yn cael dau dabl gyda data gweithredol a dau gyfeiriadur:

Dadnormaleiddio cronfeydd data ERP a'i effaith ar ddatblygu meddalwedd: agor tafarn yn Tortuga

  • canlyniad cydnabyddiaeth ar ffurf set o nodweddion sefydledig,

ID gwrthrych cydnabyddedig
Greta ar y frest chwith
Aderyn ar yr ysgwydd
Gwallt wyneb

100510
1
1
1

100511
0
0
1

100512

1
0

  • canlyniad pennu'r math o gleient (gadewch iddo fod yn olygfa arferol lle mae disgrifiadau o gyfeiriaduron yn cael eu harddangos)

A yw'r dadnormaleiddio a ganfuwyd yn golygu na ellir addasu'r systemau i fodloni amodau newydd? Wrth gwrs ddim. Os dychmygwn fod yr holl systemau gwybodaeth wedi'u creu gan un tîm gyda dim trosiant staff, mae'r datblygiadau wedi'u dogfennu'n dda a bod gwybodaeth yn cael ei throsglwyddo o fewn y tîm heb ei cholli, yna gellir gwneud y newidiadau gofynnol heb fawr o ymdrech. Ond os byddwn yn dychwelyd i amodau gwreiddiol y broblem, bydd 1,5 bysellfyrddau yn cael eu dileu yn unig ar gyfer argraffu protocolau o drafodaethau ar y cyd a 0,5 arall ar gyfer prosesu gweithdrefnau caffael.

Yn yr enghraifft uchod, mae pob un o'r tair ffurf arferol yn cael eu torri, gadewch i ni geisio eu torri ar wahân.

Torri'r ffurf arferol gyntaf:

Gadewch i ni ddweud bod nwyddau'n cael eu danfon i'ch warws o warysau cyflenwyr trwy eu casglu gan ddefnyddio un gazelle 1.5 tunnell sy'n perthyn i'ch tafarn. Mae maint eich archebion mor fach o'i gymharu â throsiant y cyflenwyr fel eu bod bob amser yn cael eu cwblhau un-i-un heb aros am gynhyrchu. A oes angen byrddau ar wahân arnoch gyda phroses fusnes o'r fath: cerbydau, mathau o gerbydau, a oes angen gwahanu cynllun a ffaith yn eich archebion i gyflenwyr sydd wedi gadael?

Dychmygwch faint o gysylltiadau “ychwanegol” y bydd yn rhaid i'ch rhaglenwyr eu hysgrifennu os ydych chi'n defnyddio'r model isod i ddatblygu rhaglen.

Dadnormaleiddio cronfeydd data ERP a'i effaith ar ddatblygu meddalwedd: agor tafarn yn Tortuga

Gadewch i ni ddweud ein bod wedi penderfynu bod y strwythur arfaethedig yn ddiangen o gymhleth; yn ein hachos ni, mae gwahanu'r cynllun a'r ffaith yn y cofnod archeb yn wybodaeth ddiangen, ac mae'r fanyleb archeb a gynhyrchir yn cael ei hailysgrifennu yn seiliedig ar ganlyniadau derbyn y nwyddau a gyrhaeddwyd, camgymeriad prin. -mae graddio a dyfodiad nwyddau o ansawdd annigonol yn cael eu setlo y tu allan i'r GG.
Ac yna un diwrnod fe welwch sut mae neuadd y dafarn gyfan wedi'i llenwi â môr-ladron ddig a blêr. Beth ddigwyddodd?

Mae'n ymddangos, wrth i'ch busnes dyfu, felly hefyd eich defnydd. Un tro, gwnaed penderfyniad gan reolwyr pe bai gazelle yn cael ei orlwytho o ran cyfaint a/neu bwysau, a oedd yn hynod brin, y byddai'r cyflenwr yn blaenoriaethu'r llwyth o blaid diodydd.

Daeth y nwyddau heb eu danfon i ben yn y drefn nesaf a'u gadael ar hediad newydd; roedd presenoldeb isafswm balans yn y warws yn y dafarn yn ei gwneud hi'n bosibl peidio â sylwi ar achosion coll.

Caeodd y cystadleuydd olaf yn y porthladd, a daeth yr achos tyllu o orlwytho gazelle, wedi'i osgoi trwy flaenoriaethu yn seiliedig ar y rhagdybiaeth o ddigonolrwydd y cydbwysedd lleiaf a thanlwytho cyfnodol y cerbyd, yn arfer cyffredin. Yn ddelfrydol, bydd y system a grëwyd yn gweithio yn unol â'r algorithmau sydd wedi'u hymgorffori ynddi a bydd yn cael ei hamddifadu o unrhyw gyfle i olrhain y methiant systematig i gyflawni gorchmynion a gynlluniwyd. Dim ond enw da sydd wedi'i ddifrodi a chwsmeriaid anfodlon fydd yn gallu canfod y broblem.

Mae'n bosibl y bydd darllenydd sylwgar wedi sylwi y gallai'r swm a archebwyd yn y fanyleb archeb (T_ORDER_SPEC) yn adran 2 ac adran 5 fodloni gofyniad y ffurflen arferol gyntaf neu beidio. Mae'r cyfan yn dibynnu a all unedau mesur gwahanol ddisgyn i'r un maes, o ystyried yr amrywiaeth o nwyddau a ddewiswyd.

Torri'r ail ffurf arferol:

Wrth i'ch anghenion dyfu, rydych chi'n prynu cwpl arall o gerbydau o wahanol feintiau. Yn y cyd-destun uchod, ystyriwyd bod creu cyfeiriadur cerbydau yn ddiangen; o ganlyniad, mae'r holl algorithmau prosesu data sy'n gwasanaethu anghenion dosbarthu a warws yn gweld symudiad cargo o'r cyflenwr i'r warws fel taith 1,5 tunnell yn unig. gazelle. Felly, ynghyd â phrynu cerbydau newydd, rydych chi'n dal i greu cyfeiriadur cerbydau, ond wrth ei gwblhau, bydd yn rhaid i chi ddadansoddi'r holl god sy'n cyfeirio at symud cargo i ddarganfod a yw cyfeiriadau ym mhob man penodol yn cael eu hawgrymu at y nodweddion. o'r union gerbyd y cychwynnodd busnes ohono.

Torri'r drydedd ffurf arferol:

Ar ryw adeg rydych chi'n dechrau creu rhaglen teyrngarwch, mae cofnod o gwsmer rheolaidd yn ymddangos. Pam, er enghraifft, treulio amser yn creu safbwyntiau materol sy'n storio data cyfanredol ar werthiannau i gleient unigol i'w defnyddio wrth adrodd a throsglwyddo i systemau dadansoddol, os ar ddechrau rhaglen teyrngarwch gellir gosod popeth sydd o ddiddordeb i'r cwsmer ar gofnod y cleient ? Ac, yn wir, ar yr olwg gyntaf, nid oes diben. Ond bob tro y bydd eich busnes yn cysylltu, er enghraifft, sianeli gwerthu newydd, dylai fod rhywun ymhlith eich dadansoddwyr a fydd yn cofio bod nodwedd agregu o'r fath yn bodoli.

Wrth ddylunio pob proses newydd, er enghraifft, gwerthu ar y Rhyngrwyd, gwerthiannau trwy ddosbarthwyr sy'n gysylltiedig â system ffyddlondeb gyffredin, rhaid i rywun gadw mewn cof bod yn rhaid i bob proses newydd sicrhau cywirdeb data ar lefel y cod. Ar gyfer cronfa ddata ddiwydiannol gyda mil o dablau, mae hyn yn ymddangos fel tasg amhosibl.

Mae datblygwr profiadol, wrth gwrs, yn gwybod sut i atal yr holl broblemau a grybwyllir uchod, ond, yn fy marn i, nid tasg dadansoddwr profiadol yw dod â nhw i'r amlwg.

Hoffwn fynegi fy niolch i'r datblygwr blaenllaw Evgeniy Yarukhin am ei adborth gwerthfawr wrth baratoi'r cyhoeddiad.

Llenyddiaeth

https://habr.com/en/post/254773/
Connolly Thomas, Begg Caroline. Cronfa Ddata. Dylunio, gweithredu a chefnogaeth. Theori ac ymarfer

Ffynhonnell: hab.com

Ychwanegu sylw