Vajon az élethez modell entitás-attribútum-érték felkeresett források
Az Internet jönnek a hétköznapi emberek pénzt befektetni, hogy ezt a projektet. Sok áthalad a színpadon CMS a választás, amely egy külön nagy téma a vita és a vita.
De most képzeljük el, hogy egy bizonyos százalékát a „hajtások” projektek, valamint a helyszíni közlekedési mozogni kezd például 10 000-30 000 fő naponta. És a helyszín adatbázis jelentősen megnőtt, mivel a nagy mennyiségű tartalom.
Az oldalon lassulni kezd, és átvisszük egy dedikált szerver, de azt mondja, hogy az ellenőrző és a jelenlegi kapacitása nem elegendő, az adatbázis-erőforrásokat igényel. Miután a helyzet elemzése, látjuk a szűk keresztmetszetet adattároló formájában: Entity-attribútum-érték. Rekordok egy táblázat, ahol a mezők értékeit tároljuk már alá egy millió, és kéri, majd esik a log-lassú lekérdezéseket. CMS választották az utolsó a rangsorban, és a pénzt fizettek az engedélyt, és még a helyén önmagában nem elég. És mit csinál a következő lépés?
Röviden: EAV-modell - Essence-attribútum-érték - az adatbázis szerkezete változatlan marad, az összes értéket minden területén vannak tárolva egy nagy tábla típus ItemID | fieldID | FieldValue
1. Vajon az élethez EAT modell látogatott források?
2. Vannak-e valós példát meglátogatott projektek?
3. Hogyan érzi magát arra, hogy az eredeti stúdió vagy fejlesztő, nem tekinthető sikeres forgatókönyv, amikor kiválasztják a technológia / CMS?
Ui Gyorsítótárral nem oldja meg teljesen a problémát.
1. Vajon az élethez EAT modell látogatott források?
Meg, de gyakran azt sisdaminov és fejlesztők
2. Vannak-e valós példát meglátogatott projektek?
www.eldorado.ru/
3. Hogyan érzi magát arra, hogy az eredeti stúdió vagy fejlesztő, nem tekinthető sikeres forgatókönyv, amikor kiválasztják a technológia / CMS?
Ezt nevezik egy seggfej
Ui Gyorsítótárral nem oldja meg teljesen a problémát.
Gyorsítótárral EAT nifiga nem segít. (Ó, mennyire terhelt ez a bd = ()
eldorado.ru a Bitrix nem? Ha igen, akkor van, hogy a helyzet az adatok tárolására.
Ó, mennyire terhelt ez a bd = (illetve ez az, amit én körülbelül azonos
Nos, mi a baj, hogy ez a hely lett népszerű, és nincs elég erőforrás?
A jelenlegi projekt foglalkozott hála az égnek. Inkább az a kérdés, ami a választott technológia (CMS) a jövőben.
És valóban érdekes hallani a tapasztalatait, akik szembe ilyen jellegű problémák.
Csak néhány népszerű cms csak használja EAT modell az adatok tárolására.
de meg lehet tanulni, hogyan oldotta meg ezt a problémát? mi CMS már használt?
Az egyik projekt kifejezetten EAV hátra.
Ott UMI.CMS. de a legtöbb modul (hála az égnek) értékesített megkerülve Yumi hierarchia révén táblázatokat.
De néhány helyen kellett átírni Yumi, ahol beszélt vele EAV hierarchiában. Az új verziók a cikket úgy határozott arról, hogy átírtam magam.
+ Számos egyéb tevékenységek, írtam róla korábban.
És most itt van a fő terhet konkrétan EAV nem.
Ezért nem volt ezen a poszton. Érdekes tapasztalat. Akár építeni a jövőbeli megoldások, és vállalja a teljes hierarchiát helyszíni adatok ebben a formában. A további Szerintem, annál kétség. De ugyanaz a UMI és Bitrix használja ezt a modellt.
Mint fejlesztő, megértem, hogy meg kell köpni a normál tervezési adatok modellt nélkül EAV és végrehajtja a megoldást a keret, a szabályok szerint. De ez alkalommal, és több erőforrást.
Végrehajtása során az azonos projekt alapján azonos Yumi, időt és erőforrásokat sokkal kevesebb, de azt a jogot, hogy választani egy ilyen döntést, ha ez komoly problémákhoz vezethet abban a pillanatban a siker?
Tulajdonképpen semmi rossz nem látom a EAV, akkor csak meg kell főzni;)
És te le, így semmi sem lehet mondani, egyszerre.
Szüksége kód ellenőrzések, vizsgálatok és maga az adatbázis.
Gátolja kérelmek lehívása és szűrési adatok, ebben az esetben célszerű elvégezni ilyen művelet egy külső indexelője.
Azt javaslom, hogy nézd felé Sphinx.
Mielőtt elkezdené harapni a könyök- és gondolkodni, hogy mi köze a folyamatosan bővülő, nem tud megbirkózni a terhelést, és látni, ha az adatbázis van beállítva.
Például a MySQL alapértelmezett beállításokkal is használható maximum milyen kategóriák házimozi gyűjtemény.
Szükség van egy okos DBA, szakterülete elsősorban a DBMS.
Nos, mint a kiindulópontja MySQL tud tanácsot tuning-primer.sh vagy MySQLTuner.
Annak érdekében Offtopic: Amióta beszélni MySQL, ez elég érdekes szempontjából a sokoldalú adatbázis nézetek. Valaki esküszik rá féket, amikor a az adatbázis mérete növekszik 2 GB, és én tartani MySQL közel egy pár száz millió lemezt és az adatbázisok nem is köhög. Ez annak ellenére így van, hogy egy darab vas, amelyen fordul meglehetősen középszerű.
A kihívás kiválasztásában a megoldást, hogy a kérdés hipotetikus problémák merülnének fel, hogy ha a projekt lesz látogatható.
Code-audit számlát, meg lehet nézni a legújabb UMI.CMS és Bitrix. Ahogy EAV «elő» bennük? Azt podebazhil utolsó Yumi 2.8.3, nagyszerű munkát végzett, minden kérés váltak az egyszerű (nem join'ov), bár van egy csomó (vizsgálati helyszín eloszlás 200 a főoldalon).
De mi történik akkor, ha mind a 3 EAV táblák nőnek kötet, ez a kérdés itt.
Igen EAV bizonyos hátrányokkal járó minta adatokat több körülményeit és eredményeit csoportosulás. Mindegy, ki kell választani az időt, és foglalkozik ezzel a fenevad Szfinx, de ez is alapvetően megváltoztatja a modell az adatbázist a CMS, ami szintén időt, energiát és agyvelő. (Ha jól értem Sphinx biztosan szánták).
Tehát úgy gondolja, hogy az EAV modell joga van élni a betöltött erőforrás, figyelembe véve az olvasási kódot kéri, és megfelelően konfigurált adatbázis?
Őszinte vagyok, nem nagyon hozzáértő a kiválasztási mezőben a CMS, így nem tudok semmit mondani az EAV az UMI vagy Bitrix.
Minden kisebb vagy nagyobb projektek, amelyekben részt vehettem íródtak a semmiből minden nyílt forráskódú keretrendszer.
Ennek megfelelően nem volt probléma a változás a modell vagy adattárolás megközelítés.
A 200 kérelmet egy oldalt (bár egyszerű), verjük egymás kezét :)
Egy kellően nagy, és látogasson el a projekt volt a saját vállalati hirtelen fordulat a lekérdezések száma - 10-20 darab az oldalon. Minden más adat érkezik meg a gyorsítótárból.
Általában ez a megközelítés, hogy dolgozzon ki egy csomó pluses projektek, de vannak hátrányai is:
1. A magas költségek a kezdeti szakaszban a projekt fejlődését.
Átlagban, a projekt eredetileg foglalkoztat egy csapat 5 fő (projektvezető, vezető fejlesztő, programozó és designer 2). Fejlesztési projekt tart 3-9 hónap. Legalábbis minden kell fizetnie a versenyképes fizetés idejére a fejlődés.
2. A támogatás a projekt.
Tehát csak írni a kódot, roll azt a szervert, és felejtsd el a fejlesztők nem működik. A programozó minden esetben el továbbra is a támogatás a projekt.
És szkriptek köszönet! Árpagyöngy tuner már az Arsenal)