Pokyny pro návrh tabulek
Navrhování tabulek pro použití s tabulkovou službou Azure Storage se velmi liší od aspektů návrhu relační databáze. Tento článek popisuje pokyny pro návrh řešení služby Table Service tak, aby bylo efektivní pro čtení a zápis.
Návrh řešení služby Table Service tak, aby bylo efektivní pro čtení
- Návrh pro dotazování v aplikacích s velkými nároky na čtení Při návrhu tabulek si před zamyšlením nad tím, jak budete aktualizovat entity, zamyslete se nad dotazy (zejména dotazy citlivé na latenci). Výsledkem je obvykle efektivní a výkonné řešení.
- V dotazech zadejte PartitionKey i RowKey.Takové pointové dotazy jsou nejúčinnějšími dotazy tabulkové služby.
- Zvažte ukládání duplicitních kopií entit. Úložiště tabulek je levné, takže zvažte možnost uložit stejnou entitu vícekrát (s různými klíči), aby bylo možné provádět efektivnější dotazy.
- Zvažte denormalizaci dat. Úložiště tabulek je levné, proto zvažte denormalizaci dat. Můžete například ukládat souhrnné entity tak, aby dotazy na agregovaná data potřebovaly přístup pouze k jedné entitě.
- Použijte hodnoty složeného klíče. Jediné klíče, které máte, jsou PartitionKey a RowKey. Pomocí složených hodnot klíčů můžete například povolit přístupové cesty k entitám s alternativními klíči.
- Použijte projekci dotazu. Objem dat přenášených přes síť můžete snížit pomocí dotazů, které vyberou jenom pole, která potřebujete.
Návrh řešení služby Table Service tak, aby bylo efektivní pro zápis
- Nevytvujte horké oddíly. Zvolte klíče, které vám umožní rozložit vaše požadavky do více oddílů v libovolném okamžiku.
- Vyhněte se špičkám v provozu. Plynulý provoz po přiměřenou dobu a vyhněte se špičkám provozu.
- Nemusí nutně vytvářet samostatnou tabulku pro každý typ entity. Pokud požadujete atomické transakce napříč typy entit, můžete tyto typy entit uložit do stejného oddílu ve stejné tabulce.
- Zvažte maximální propustnost, které musíte dosáhnout. Musíte znát cíle škálovatelnosti pro službu Table a zajistit, aby váš návrh nezpůsoboval jejich překročení.
Při čtení této příručky uvidíte příklady, které všechny tyto principy převedou do praxe.