Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



Sharding v PostgreSQL

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: Sharding v PostgreSQL

Autor: Augi

20:00:14 27.11.2011

Díky!

Citovat příspěvek

 

Re: Sharding v PostgreSQL

Autor: spaze

17:27:58 27.11.2011

Ahoj,

26. listopadu 2011, 12:20:10, Augi napsal(a):
> 1) Běží to v rámci existující instance nebo je na to třeba vyhradit další stroj?

V ramci existujici instance.

> 2) Je možné to provozovat opravdu transparentně? Co jsem koukal,
> tak místo dotazy do tabulek se dělají "dotazy do funkcí".

Ah, jasne, my nepouzivame primej pristup do tabulek, ale logika je
zabalena v db funkcich a tzhle funkce se pak volaji.
Trochu je to rozebrany v druhy pulce tyhle prezentace:
http://www.slideshare.net/spaze/why-not-orm
Takze pro me to transparentni je, poslu dotaz na proxy a ta vi, kam
poslat dotaz a vrati mi vysledek.

> 3) Poradí si to i s joiny nebo CTE?

plproxy dotazy neparsuje, takze to je pak otazka toho, co je napsany v
ty funkci.

> 4) Jak je to s výkonností? Je tam ztráta jen v dodatečné komunikaci mezi plproxy a pgsql?

Ano, jak jsem uz napsal, tak dotazy to neparsuje, jen zjisti, kam je
ma poslat a tam je posle.

> 5) Není náhodou někde tutoriálek na to, co přesně potřebuju já
> (partitioning přes více serverů) ? Přijde mi to jako běžný
> požadavek, tak by něco existovat mohlo ;-)

Na tohle odpoved neznam :) ale mozna bude neco v dokumentaci ;)

--
Tři závěry ze semináře PHP frameworky 2007:
* nejužitečnější balíček je Zend_Porn
* Symfony pochází z Moravy
* nikdo neví, jak se "Nette" čte, ale všichni ví, že vyjde tento rok


Příspěvek zaslán emailem

Citovat příspěvek

 

Re: Sharding v PostgreSQL

Autor: Augi

12:20:10 26.11.2011

Jojo, na to jsem koukal, ale pochopil jsem to tak, že to funguje jen na funkce. Kouknu na to zevrubněji.
Ale aspoň základní otázky (pokud máš čas):

1) Běží to v rámci existující instance nebo je na to třeba vyhradit další stroj?

2) Je možné to provozovat opravdu transparentně? Co jsem koukal, tak místo dotazy do tabulek se dělají "dotazy do funkcí".

3) Poradí si to i s joiny nebo CTE?

4) Jak je to s výkonností? Je tam ztráta jen v dodatečné komunikaci mezi plproxy a pgsql?

5) Není náhodou někde tutoriálek na to, co přesně potřebuju já (partitioning přes více serverů) ? Přijde mi to jako běžný požadavek, tak by něco existovat mohlo ;-)

Díky!

Citovat příspěvek

 

Re: Sharding v PostgreSQL

Autor: spaze

12:07:14 26.11.2011

Tere,

25. listopadu 2011, 22:38:04, Pavel Stehule napsal(a):
>> Jde v PostgreSQL transparentně (ideálně bez změny
>> aplikace) používat partitioning napříč více
>> stroji?

> nejde

A co treba prave pres nasi PL/Proxy?
http://pgfoundry.org/projects/plproxy/

--
spaze@expl0!ted.cz * Get Firefox. Get Opera. Get Laid.


Příspěvek zaslán emailem

Citovat příspěvek

 

Re: Sharding v PostgreSQL

Autor: Pavel Stehule

23:50:53 25.11.2011

Augi Napsal:
-------------------------------------------------------
> Díky za odpověď - trošku jsem čekal, že si to budu
> muset pořešit sám na aplikační úrovni...
>
> Pokud ale v 9.2 bude možná efektivní komunikacema
> mezi servery, tak by to mohlo otevřít úplně nové
> možnosti, včetně toho partitiongu přes více
> serverů. Nebo se pletu?

Něco nového to určitě otevře, ale úplná podpora partitioningu napříč servery hned tak nebude - a asi nebude nikdy, bo partitions musí sdílet metadata. Teoreticky by se to dalo použít i pro OLAP, ale to je +/- srovnatelné s aplikační úrovní (jen o dost pohodlnější).

Pavel

Citovat příspěvek

 

Re: Sharding v PostgreSQL

Autor: Augi

23:12:15 25.11.2011

Díky za odpověď - trošku jsem čekal, že si to budu muset pořešit sám na aplikační úrovni...

Pokud ale v 9.2 bude možná efektivní komunikacema mezi servery, tak by to mohlo otevřít úplně nové možnosti, včetně toho partitiongu přes více serverů. Nebo se pletu?

Citovat příspěvek

 

Re: Sharding v PostgreSQL

Autor: Pavel Stehule

22:38:04 25.11.2011

Augi Napsal:
-------------------------------------------------------
> Ahoj,
>
> mám načteno jak funguje v PostgreSQL partitioning
> - dědění tabulek + rules nebo triggery. Problém
> je, že se to děje všechno v rámci jednoho DB
> stroje, což neřeší problém, když je tabulka tak
> velká, že se nevleze na jeden disk.
>
> Jde v PostgreSQL transparentně (ideálně bez změny
> aplikace) používat partitioning napříč více
> stroji?
>

nejde

> Co jsem googlil, tak jsem to pochopil tak, že
> musím použít nějakou "proxy", která zajistí
> přeposílání commandů/queries na odpovídající
> servery.
>

teoreticky muzete partitioning implementovat na aplikacni urovni, ale pak si musite sam implementovat zakladni operace - UNION, JOIN, ...

V budouci verzi 9.2 bude moznost efektivne pristupovat k tabulkam umistenych v jine db, a realizovat nad nimi dotazy - v aktualni verzi to mozne neni

> Jaké řešení byste mi doporučili a je vůbec možné
> toto zajisti plně transparentně (aby se nemusela
> měnit aplikace) ?
>

RAID, NAS, tablespaces, ...

Pavel
> Díky!
>
> P.S.: Používám PgSql 9.1 ze C# (Npgsql)

Citovat příspěvek

 

Sharding v PostgreSQL

Autor: Augi

18:09:16 25.11.2011

Ahoj,

mám načteno jak funguje v PostgreSQL partitioning - dědění tabulek + rules nebo triggery. Problém je, že se to děje všechno v rámci jednoho DB stroje, což neřeší problém, když je tabulka tak velká, že se nevleze na jeden disk.

Jde v PostgreSQL transparentně (ideálně bez změny aplikace) používat partitioning napříč více stroji?

Co jsem googlil, tak jsem to pochopil tak, že musím použít nějakou "proxy", která zajistí přeposílání commandů/queries na odpovídající servery.

Jaké řešení byste mi doporučili a je vůbec možné toto zajisti plně transparentně (aby se nemusela měnit aplikace) ?

Díky!

P.S.: Používám PgSql 9.1 ze C# (Npgsql)

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: