IT pro otrlé
Moderátor: Faskal
IT pro otrlé
Vite nekdo jak funguje mapreduce?
Dokud to ještě bylo příčetné, tak to bylo v rozličném.
F
Dokud to ještě bylo příčetné, tak to bylo v rozličném.
F
“And, for an instant, she stared directly into those soft blue eyes and knew, with an instinctive mammalian certainty, that the exceedingly rich were no longer even remotely human.”
― William Gibson, Count Zero
― William Gibson, Count Zero
Re: IT Poradna
Dobře.Sosacek píše:Vite nekdo jak funguje mapreduce?
(Co konkrétně na něm? Ten algoritmus je celkem solidně popsaný na wiki, ale jinak je to spíš architektura, takže bez konkrétního použití se na to těžko odpovídá. Distribuce přes Hadoop? Použití v databázích, Mongo/Couch?)
Starý člen http://rpg.church
Re: IT Poradna
Jako nahrada relacnich databazi? V porovnani s relacnima databazema?
“And, for an instant, she stared directly into those soft blue eyes and knew, with an instinctive mammalian certainty, that the exceedingly rich were no longer even remotely human.”
― William Gibson, Count Zero
― William Gibson, Count Zero
Re: IT Poradna
Já nerozumět jazyk tvá kmen. Map/Reduce je způsob distribuce výpočetního výkonu, ne způsob ukládání dat. Mluvíš o NoSQL? Kterém NoSQL konkrétně - dokumentových databázích? Distribuovaných key-value storech? Persistentních/nepersistentních?Sosacek píše:Jako nahrada relacnich databazi? V porovnani s relacnima databazema?
Co máš za problém, který chceš vyřešit? ,)
Starý člen http://rpg.church
Re: IT Poradna
Hele, mi nekdo rikal, ze mapreduce je uplne ve vsem horsi nez sql a ze to vymysleli uz pred hroznemoc lety ale ze se to neujalo a proto je to hrozne spatne.
Jsem presvedcenej, ze je to debil. Hledam duvody proc.
Jsem presvedcenej, ze je to debil. Hledam duvody proc.
“And, for an instant, she stared directly into those soft blue eyes and knew, with an instinctive mammalian certainty, that the exceedingly rich were no longer even remotely human.”
― William Gibson, Count Zero
― William Gibson, Count Zero
Re: IT Poradna
Jo tak. Potom bych se ho zeptal, jak je vyřešená distribuce SQL dotazů v distribuovaném, neshardovaném datovém úložišti. Mám pocit, že tam někde SQL končí a mr začíná ,)Sosacek píše:Hele, mi nekdo rikal, ze mapreduce je uplne ve vsem horsi nez sql a ze to vymysleli uz pred hroznemoc lety ale ze se to neujalo a proto je to hrozne spatne.
Jsem presvedcenej, ze je to debil. Hledam duvody proc.
Samozřejmě nemluvě o tom datovym úložišti pod tim. Zeptej se ho jak rozšiřuje schéma tera- až peta- bajtovýho datovýho úložiště bez ztráty dostupnosti. Něco jako alter table add column nad terabajtovou tabulkou, nad kterou máš tisíce req/s (z toho stovky zápisů) a nemůžeš si dovolit ty klienty odříznout.
A pak ať porovná cenu (protože s rdbms afaik nejsou clustery zadarmo, s hadoop jo).
Starý člen http://rpg.church
Re: IT Poradna
He?Almad píše:neshardovaném datovém úložišti
Jinak, hadoop je ta apachi implementace, co?
Jak se pouzivaji dokumentov databaze? Umim si predstavit jak to snadno pouzivat jako sitovou a perzistentni hashtabulku (ostatne memcached ruluje), ale jak se v tom vyhledava?
“And, for an instant, she stared directly into those soft blue eyes and knew, with an instinctive mammalian certainty, that the exceedingly rich were no longer even remotely human.”
― William Gibson, Count Zero
― William Gibson, Count Zero
Re: IT Poradna
No tak jeden ze standardních způsobů škálování je sharding, tj. že rozdělíš data do různých úložišť podle nějakého parametru (třeba podle lokace...prostě uživatele z Evropy a Ameriky rozdělíš do dvou datacenter. Nebo třeba že tweety budes shardovat podle uživatelských účtů.) a slíbíš si, že je nebudeš kombinovat (shardwalking). V okamžiku kdy si to nemůžeš dovolit, tak máš to datacentrum jedno a nejsi rád.Sosacek píše:He?Almad píše:neshardovaném datovém úložišti
YupSosacek píše:Jinak, hadoop je ta apachi implementace, co?
Bacha, síťová persistentní hashtabulka jsou key-value datastores. V těch se hledá dobře, když znáš klíč, na to jsou dělaný (aby byly kurva rychlý). See třeba http://gist.github.com/86714Sosacek píše:Jak se pouzivaji dokumentov databaze? Umim si predstavit jak to snadno pouzivat jako sitovou a perzistentni hashtabulku (ostatne memcached ruluje), ale jak se v tom vyhledava?
Dokumentový databáze jsou trochu jako objektový nebo XML databáze, akorátže fungujou. Ukládaj strukturovaný data, ale jako standard se chytá JSON. Vyhledávání jak v čem, třeba v MongoDB triviálně, protože to podporuje ad-hoc dotazy. Jinde musíš používat ty MR funkce (CouchDB třeba), see http://wiki.apache.org/couchdb/Introduc ... chDB_views
Obecně je to stavěný na to že máš denormalizovaný data a rychlej pohyb v nich. Já teda teď intenzivně používám to Mongo a pro můj účel (ukládání metainformací o buildech z CI) naprostá spokojenost, předevšim asynchronní zápis je přesně to co sem potřeboval a data co dostávám jsou beztak JSON, takže rozklad do relačních struktur je zbytečnej krok navíc.
EDIT: Přestávám prokastrinovat a vracim se k práci ,) Jestli se v tom chceš vrtat, tak klíčová slova jsou NoSQL, redis, hadoop, project voldemort, couchdb, mongodb, hypertable. Každopádně pointa neni nahradit RDBMS, ale být k nim komplementární, vyřešit problémy které mají v určitých oblastech, respektive kde nestačej a/nebo na to potřebuješ kurva drahý enterprise cluster řešení. Takže něco jako skorodatovésklady, high availability, lazy schema update/upgrace nebo přímo schemaless, master-master nebo spíš distribuované node-based replikace, a build-in sharding. Obecně se taky obchází nebo rovnou sere na ACID, klíčové slovo je "eventually consistent".
Naposledy upravil(a) Almad dne 3. 1. 2010, 13:14, celkem upraveno 1 x.
Starý člen http://rpg.church
Re: IT Poradna
No, ja myslel ze ti to na klic vrati dokument.
Jak vypada takovej dotaz? Jak snadno se s tim (prez http v jsonu?) komunikuje v "normalnich" jazycich?
EDIT: za ten json diky bohu. xml je dost tragicka zalezitost, a json se da jakz takz parsovat a tak. Ale takovy ASN1
Jak vypada takovej dotaz? Jak snadno se s tim (prez http v jsonu?) komunikuje v "normalnich" jazycich?
EDIT: za ten json diky bohu. xml je dost tragicka zalezitost, a json se da jakz takz parsovat a tak. Ale takovy ASN1
“And, for an instant, she stared directly into those soft blue eyes and knew, with an instinctive mammalian certainty, that the exceedingly rich were no longer even remotely human.”
― William Gibson, Count Zero
― William Gibson, Count Zero
Re: IT Poradna
Jo.Sosacek píše:No, ja myslel ze ti to na klic vrati dokument.
Easy, bindingy jsou pro všechno. To mongo je třeba úplná trivka, zrovna pod rukama mámSosacek píše:Jak vypada takovej dotaz? Jak snadno se s tim (prez http v jsonu?) komunikuje v "normalnich" jazycich?
Kód: Vybrat vše
db = get_database_connection()
info = db.repository.find().sort([("commiter_date", DESCENDING),])
changesets = []
for changeset in info:
changeset['results'] = [build['result'] for build in db.builds.find({"changeset" : changeset['hash']})]
changesets.append(changeset)
Kód: Vybrat vše
build.db_build = {
'builder' : builder.getName(),
'slaves' : [name for name in builder.slavenames],
'number' : build.getNumber(),
'time_start' : datetime.fromtimestamp(build.getTimes()[0]),
'time_end' : None,
'steps' : [],
'result' : 'unknown',
'changeset' : changeset
}
self.database.builds.insert(build.db_build)
Jinak viz edit výše, jdu pracovat ,)
Starý člen http://rpg.church
Re: IT Poradna
Jaka prokastrace? Me tu osvicujes, osvetlujes a tak.
Takze kdyz mam uplne megajednoduchou databazi kdy mam clanky, uzivatele muzou ke clankum pridavat komentare, jak bude vypadat struktura te databaze?
Umim si predstavit, ze se dobre vyuzije to, ze ruzny druhy clanku (clanek s odkazem, clanek s videem, atd) se daji spojit do jednoho typu, protoze proste necham nebo nenecham danej atribut. Umim si predstavit, ze rozdeleni do kategorii udelam tak, ze kazdej clanek ma vlastnost kategorie a vozbrazeni kategorie znamena ze vyhazim clanky ktere do ni nepatri.
Hm. Jak udelam komentare? Kdyz mam radove desitky tisic clanku, desitky tisic komentaru a ten web chce treba dva tisice lidi soucasne? Dat komentari vlastnost "patrim_k" v zasade odpovida relacnimu pouziti, ale neni nejakej lepsi zpusob?
Takze kdyz mam uplne megajednoduchou databazi kdy mam clanky, uzivatele muzou ke clankum pridavat komentare, jak bude vypadat struktura te databaze?
Umim si predstavit, ze se dobre vyuzije to, ze ruzny druhy clanku (clanek s odkazem, clanek s videem, atd) se daji spojit do jednoho typu, protoze proste necham nebo nenecham danej atribut. Umim si predstavit, ze rozdeleni do kategorii udelam tak, ze kazdej clanek ma vlastnost kategorie a vozbrazeni kategorie znamena ze vyhazim clanky ktere do ni nepatri.
Hm. Jak udelam komentare? Kdyz mam radove desitky tisic clanku, desitky tisic komentaru a ten web chce treba dva tisice lidi soucasne? Dat komentari vlastnost "patrim_k" v zasade odpovida relacnimu pouziti, ale neni nejakej lepsi zpusob?
“And, for an instant, she stared directly into those soft blue eyes and knew, with an instinctive mammalian certainty, that the exceedingly rich were no longer even remotely human.”
― William Gibson, Count Zero
― William Gibson, Count Zero
Re: IT Poradna
Zalezi na tom jak k tem datum pristupujes. Ale obecne co me napada z hlavy, kdyz mas jako zakladSosacek píše:Hm. Jak udelam komentare? Kdyz mam radove desitky tisic clanku, desitky tisic komentaru a ten web chce treba dva tisice lidi soucasne? Dat komentari vlastnost "patrim_k" v zasade odpovida relacnimu pouziti, ale neni nejakej lepsi zpusob?
Kód: Vybrat vše
clanek = {"text" : dlouhejtext"}
komentar = {"author" : "Jmeno", "text" : "u suck!"}
Kód: Vybrat vše
komentar = {"patrim_k" : Reference(clanek)}
Kód: Vybrat vše
clanek = {"komentare" : [Reference(komentar)]}
Kód: Vybrat vše
clanek = {
"text" : dlouhejtext"
"komentare" : [
{"author" : "Jmeno", "text" : "u suck!"},
{"author" : "Jsem lepsi!", "text" : "PRVNI!!!!!1111!!!"}
]
}
EDIT: Ty moznoti jsou jinak celkem shrnuty na http://www.mongodb.org/display/DOCS/Schema+Design
Naposledy upravil(a) Almad dne 3. 1. 2010, 23:26, celkem upraveno 1 x.
Starý člen http://rpg.church
Re: IT Poradna
Nooo, ale pokud to budu delat tim tretim zpusobem (jak by se mi asi libilo) tak musim vzdycky vzit clanek a vsechny komentare a preulozit, ne? Aspon couchdb se tak tvarila. Coz je otrava, protoze kopiruju sem tam v pameti kdyz delam jenom append. Kdyz jsou tech komentaru stovky ...
Horsi to je, pokud chci u clanku evidovat pocet precteni, hm. Nebo ne?
Horsi to je, pokud chci u clanku evidovat pocet precteni, hm. Nebo ne?
“And, for an instant, she stared directly into those soft blue eyes and knew, with an instinctive mammalian certainty, that the exceedingly rich were no longer even remotely human.”
― William Gibson, Count Zero
― William Gibson, Count Zero
Re: IT Poradna
Couch po pravdě nevim. Mongo má $push, takže můžeš přidávat unique do listu a krom toho máš update(), který updatuje jenom dané itemy.Sosacek píše:Nooo, ale pokud to budu delat tim tretim zpusobem (jak by se mi asi libilo) tak musim vzdycky vzit clanek a vsechny komentare a preulozit, ne? Aspon couchdb se tak tvarila.
Ne, protože použiješ $inc. Navíc by to mělo být rychlejší než u rdbms, protože zápis hodíš asynchronně.Sosacek píše:Horsi to je, pokud chci u clanku evidovat pocet precteni, hm. Nebo ne?
Starý člen http://rpg.church
- Pieta
- sofistikovaný troll
- Příspěvky: 15030
- Registrován: 6. 9. 2006, 19:08
- Bydliště: Praha, ale původem jsem z Hostivaře
- Kontaktovat uživatele:
Re: IT Poradna
O čem se to tu vlastně bavíte?
Cicho żono, deszczyk padał, ja nie słyszał kto to gadał.
Cicho żono, deszczyk rosił, ja nie słyszał kto to prosił.
Cicho żono, deszczyk rosił, ja nie słyszał kto to prosił.
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host