Jeden problém s režimu je, že všechny opakované linky bude mít opakované hash; vám nikdy nemůže zjistit, kdy byla přidána nebo odstraněna jedna z těch řádků
Velmi dobrý bod, ale není problém. Opakovaný linka je duplikát a všechny duplicity budou odstraněny v další fázi zpracování. Takže ano, máte pravdu, ale to není problém.
„Diff“ link mě vezme na stránku s popisem toho, co jsem předpokládat je aplikace? Neexistuje žádný odkaz ke stažení, není v žádném jazyce žádný kód ... Co jsem zde chybí?
Někteří z vás hovořili o úrovni byte zrnitosti. To není potřeba. pouze linkový zrnitost je nutný, protože pokud došlo ke změně nic na trati, celá linka (záznam) musí být přepracován becasue jakákoliv změna v řadě ovlivňuje celý řádek.
Takže jsme porovnávání řádků cca 1000 znaků (ne binární), ve dvou souborech (dnešní snímek a včerejšky momentka), které jsou každý cca 1m linky.
Takže pomocí bezpečného hash jako SHA256 (MD5 má dojít ke kolizi a je pomalý ve srovnání) Nemohu zpracovat asi 30MB / sec na mém notebooku HO. Server samozřejmě bude žvýkat přes to mnohem rychleji.
Takže v případě, že soubor je arond 1GB, pak dělat všechny hases trvá asi 33sec a čtení 1Gb soubor pomocí Windows Page paměti trvá asi 30 sekund. ne hrůzný
Nyní máme dvě matice hashs představujících řádky v každém souboru. Pokud budeme třídit, můžeme nyní použít binární vyhledávání, takže jsme iteraci svou cestu prostřednictvím nových souborů hashs hledají zápas ve starých souborů hashs. Pokud nemáme najít to, že řádek je přidán do souboru změn.
Mějte na paměti, že tato kniha linií (starší databáze) je v každém aspektu neznámá. Neexistuje žádná záruka, provoz linek, umístění změn, typ změn.
Tyto návrhy čtení Foreward stránku po stránce je dobrá, ale předpokládá, že tyto dva soubory jsou ve smae pořadí až dokud první změny. To nelze předpokládat. Řádky (řádky) mohou být v libovolném pořadí. Také výběru libovolný velikost bloku porušuje zrnitost čáry. Pro účely tohoto úkolu, linky jsou neměnné.
Od té výborné odkaz na invrementa zatížení: File Porovnání Zabrat: Tato metoda je také známá jako metoda snímek diferenciálu. Tato metoda funguje tak, že vedení před a po obrazy souborů, které jsou předmětem zájmu datového skladu. Záznamy jsou v porovnání s najít změny a záznam klíče jsou ve srovnání se najít vložek a odstraní. Tato metoda je nejvhodnější v případě starších systémů vzhledem k tomu, že spouští většinou neexistují a protokoly transakcí jsou buď neexistují, nebo ve speciálním formátu. Vzhledem k tomu, většina starších databází mít nějaký mechanismus pro ukládání dat do souborů, tato metoda vytváří pravidelné momentky a pak porovnává výsledky produkovat záznamy změny. Jistě, všechny problémy statické zachycení jsou zde přítomny. Přidané složitost je představen na výzvu porovnání celé řady informací a klíčů identifikace a přizpůsobení. Tato technika je velmi složitý a obvykle není žádoucí, ale v některých případech, může být jediným řešením.
To je nejdůležitější: Jak jsme se pokračovat do říše terabyte datových skladů, bude možnost sestavení datového skladu z nuly na každou noc jít cestou dinosaura. Logické a efektivní přístup k aktualizaci datového skladu zahrnuje nějakou formu kumulativní aktualizaci strategie.
Takže myslím, že jsem na správné cestě pak? Index btree by neměla dovolit výhodu?