Programování

Jak si vybrat správnou databázi NoSQL

NoSQL databáze poskytují vysokou provozní rychlost a vyšší flexibilitu pro vývojáře softwaru a další uživatele ve srovnání s tradičními tabulkovými (nebo SQL) databázemi.

Datové struktury používané databázemi NoSQL - klíč - hodnota, široký sloupec, graf nebo dokument - se liší od struktur používaných v relačních databázích. Jako výsledek, NoSQL databáze. Databáze NoSQL lze škálovat na tisíce serverů, i když někdy se ztrátou konzistence dat. Co však dnes dělá databáze NoSQL obzvláště relevantní, je to, že jsou zvláště vhodné pro práci s velkými soubory distribuovaných dat, což z nich dělá dobrou volbu pro velké datové a analytické projekty.

Jak si vybrat databázi NoSQL: Klíčové faktory

Jak si vyberete ten správný produkt nebo cloudovou službu s více než dvěma desítkami open source a komerčních databází NoSQL na trhu?

Jedním zásadním faktorem je znát účel, ke kterému chcete data dát, říká Carl Olofson, viceprezident výzkumu IDC.

Databáze NoSQL se liší architekturou a funkcí, takže je třeba vybrat typ, který je pro požadovaný úkol nejlepší:

  • Obecně platí, že úložiště klíč-hodnota jsou nejlepší pro trvalé sdílení dat více procesy nebo mikroslužbami v aplikaci.
  • Pokud plánujete provést hloubkovou analýzu vztahů pro výpočet blízkosti, detekci podvodů nebo vyhodnocení asociativní struktury, může být lepší volbou databáze grafů.
  • Pokud potřebujete pro analytiku sbírat data velmi rychle a při vysokých objemech, podívejte se do širokého úložiště sloupců. Takové NoSQL databáze také obvykle nabízejí podporu dokumentů a grafů.

Nepředpokládejte, že váš původní projekt je jediný model použití, který použijete v databázi. Můžete začít pouze se správou dat o stavu nebo relaci, pak se podívejte na zpracování transakcí a ještě později proveďte nějakou analýzu.

Z krátkodobého hlediska by se pozornost měla soustředit na výkon, rozsah, zabezpečení, podporu různých pracovních zátěží (včetně transakčních, provozních a analytických), integraci se stávajícími ekosystémy, snahu o správu, podporu cloudu a podporované typy případů použití, říká Noel Yuhanna, hlavní analytik společnosti Forrester Research. Z toho je kritická bezpečnost. Je třeba věnovat větší pozornost databázím NoSQL, které mají bezpečnostní certifikace. Hledejte funkce, jako je šifrování dat v klidu a dat v pohybu, abyste ochránili citlivé informace.

Yuhanna také říká, že ne všechny databáze NoSQL se mohou dobře škálovat, takže neberte jako samozřejmost, protože produkt je v kategorii NoSQL, bude škálovat a fungovat lépe než relační databáze.

NoSQL nabízí ve škálovatelném modelu různé úrovně konzistence, takže se podívejte na řešení, která splňují vaše konkrétní požadavky. Například pokud chcete podporovat vysoce kritické bankovní transakce, relační databáze jsou stále tím nejlepším řešením.

Databáze NoSQL, které byste měli zvážit

Zde jsou databáze NoSQL, které byste měli zvážit.

MongoDB

MongoDB je nejoblíbenější databáze NoSQL. Bezplatná a otevřená, multiplatformní, dokumentově orientovaná databáze, MongoDB používá dokumenty podobné JSON se schématy. Platforma je udržována společností MongoDB Inc. a je publikována v kombinaci s Gnu Affero General Public License a Apache License.

MongoDB Atlas zahrnuje operační osvědčené postupy, které se společnost naučila při optimalizaci tisíců nasazení v organizacích všech velikostí. Tato cloudová nabídka zpracovává správu, nastavení a konfiguraci databáze, opravy softwaru, monitorování a zálohování a funguje jako distribuovaný databázový klastr.

kontroluje NoSQL databáze

Přečtěte si naše podrobné recenze klíčových databází NoSQL

  • MongoDB
  • Atlas MongoDB
  • Couchbase
  • Kosmos DB
  • Neo4j
  • Bigtable Google
  • Databáze MarkLogic NoSQL
  • Aerospike
  • Srovnání: MongDB vs. Couchbase Server

A přečtěte si naše průvodce konkrétními databázovými technologiemi NoSQL:

  • Klíčové hodnoty NoSQL databáze (Aerospike, Cosmos DB, Hazelcast, Memcached a Redis)
  • Dokumentujte databáze NoSQL (Cloudant, Cosmos DB, Couchbase, CouchDB, DynamoDB a Firebase)

Mezi klíčové funkce a možnosti patří plně spravované zálohování, nepřetržité zálohování, obnovení typu point-in-time, dotazovatelné snímky, automaticky generované grafy, panel výkonu v reálném čase a přizpůsobitelné výstrahy. Uživatelé mohou pomocí integrované služby Live Migration Service importovat živá data do MongoDB Atlas s minimálním dopadem na aplikace.

Databáze je optimální pro nativní ukládání, zpracování a přístup k dokumentům a dalším typům datových sad a je populární mezi vývojáři, protože se snadno používá, přizpůsobuje se náročným aplikacím a nabízí komplexní ekosystém nástrojů a partnerů, říká Yuhanna . Mezi běžné případy použití MongoDB patří personalizace, analytika v reálném čase, internet věcí (IoT), velká data, katalogy produktů / aktiv, zabezpečení a detekce podvodů, mobilní aplikace, datové rozbočovače, správa obsahu a aplikace pro sociální sítě a spolupráci.

Amazon DynamoDB

Amazon DynamoDB je další populární cloudová databáze NoSQL. Amazon DynamoDB je plně spravovaná platforma NoSQL, která k ukládání, zpracování a přístupu k datům na podporu vysoce výkonných a škálovatelných aplikací využívá disk SSD (SSD).

Automaticky rozděluje data mezi servery na základě propustnosti a požadavků na úložiště a zpracovává větší případy vysoce výkonného použití.

Uživatelé mohou škálovat, sledovat a spravovat své tabulky jak prostřednictvím aplikačních programovacích rozhraní (API), tak pomocí konzoly pro správu webových služeb Amazon. DynamoDB je úzce integrován s Amazon EMR (spravovaný rámec pro Apache Hadoop, Apache Spark a HBase), který nabízí možnost spouštět dotazy zahrnující více zdrojů dat.

Platforma podporuje modely klíč – hodnota i dokumenty a má také knihovnu pro geoprostorové indexování. Organizace používají DynamoDB k podpoře různých případů použití, včetně reklamních kampaní, aplikací sociálních médií, sledování herních informací, shromažďování a analýzy údajů ze senzorů a protokolů a elektronického obchodování.

DataStax a DataStax Enterprise Platform

DataStax využívá Apache Cassandra k distribuci napříč datovými centry. Silným plusem pro DataStax NoSQL byla jeho globální distribuovaná architektura, říká Yuhanna společnosti Forrester. DataStax distribuuje, přispívá a podporuje komerční podnikovou verzi Apache Cassandra, projektu s otevřeným zdrojovým kódem. Cassandra je obchod se širokým řádkem, distribuovaná databáze klíčů a hodnot založená na Google Bigtable.

Mezi jeho klíčové vlastnosti patří odolnost proti chybám, škálovatelná architektura, přístup k datům s nízkou latencí a zjednodušená správa. DataStax poskytuje další funkce, jako je analytika, vyhledávání, monitorování, paměť a zabezpečení pro podporu kritických aplikací.

DataStax Enterprise podporuje různé typy podnikových aplikací, včetně transakčních, analytických, prediktivních analytik a smíšených úloh. Nabízí širší možnosti více modelů s podporou grafů a dat JSON. Mezi hlavní případy použití patří detekce podvodů, katalogy produktů, personalizace spotřebitelů, vyhledávače doporučení a IoT.

Couchbase

Couchbase je databázová platforma podporující dokumenty JSON distribuovaná společností Couchbase Inc. Open source NoSQL DBMS podporuje široké případy použití.

Couchbase Server, otevřená zdrojová databáze klíčů a hodnot NoSQL s integrovanou mezipamětí, oslovuje podniky, které potřebují databázi, která může poskytovat výkon, více modelů, škálování a automatizaci, říká Yuhanna.

Organizace používají Couchbase k podpoře sociálních a mobilních aplikací, obchodů s obsahem a metadaty, transakcí elektronického obchodování a online herních aplikací. Couchbase poskytuje plnou podporu pro dokumenty, flexibilní datový model, indexování, fulltextové vyhledávání a MapReduce pro analýzu v reálném čase.

Platformu využívají velké podniky k podpoře různých kritických pracovních zátěží, včetně provozních a analytických procesů.

Redis Enterprise

Platforma Open Source Redis Enterprise, sponzorovaná společností Redis Labs, je jednou z nejběžnějších databází NSQ s klíčem a hodnotou, říká Olofson společnosti IDC. (Další informace o používání Redis pro měření v reálném čase, správu řízení přístupu a WebSockets formující provoz.)

Redis nabízí vysoce výkonnou databázi v paměti, která podporuje uvolněnou a silnou konzistenci, flexibilní model bez schématu, vysokou dostupnost a snadné nasazení, říká Yuhanna společnosti Forrester.

Společnost Redis Labs vyvinula další funkce a technologii, která zapouzdřuje software s otevřeným zdrojovým kódem a poskytuje vylepšenou architekturu nasazení pro Redis, přičemž podporuje rozhraní API s otevřeným zdrojovým kódem.

Datový model podporuje pár klíč – hodnota; různé datové struktury, jako jsou seznamy, sady, bitmapy a hashe; a řadu modelů prostřednictvím zásuvných modulů, jako je vyhledávání, graf, JSON a XML. Redis podporuje celou řadu případů použití, včetně analýz v reálném čase, transakcí, přijímání dat, sociálních médií, správy úloh, front zpráv a ukládání do mezipaměti.

MarkLogic

MarkLogic NoSQL Database je provozní a transakční podniková databáze navržená pro rychlost a rozsah NoSQL. Použitím přístupu založeného na více modelech poskytuje databáze integruje a ukládá důležitá data, poté umožňuje zobrazit tato data jako dokumenty, jako graf nebo jako relační data - ať už místní, virtualizovaná nebo v cloudu.

Poskytuje vysokou dostupnost a funkce zabezpečení na datové úrovni, včetně souladu s ACID, zabezpečení na úrovni prvků, anonymizace, redakce a pokročilého šifrování. Z těchto důvodů je vhodný pro podniky, které chtějí sdílet obrovské množství citlivých informací. MarkLogic je také jedinou databází NoSQL s certifikací Common Criteria.

Další klíčové funkce mají za cíl zlepšit uživatelský komfort vytvořením jediného jednotného pohledu na data, která lze prohledávat a lze je kdykoli ověřit pomocí metadat. Mezi tyto funkce patří bitemporal, sémantika, schopnost přijímat jak strukturovaná, tak nestrukturovaná data (nativní úložiště pro JSON, XML, RDF, geospatial a velké binární soubory) a univerzální index „ask anything“.

Díky operačnímu datovému centru, které pomáhá řešit správu a dodržování předpisů, je MarkLogic užitečný pro velké podniky s datovými silami i pro ty, které čelí předpisům a zvýšeným bezpečnostním hrozbám.

Další možnosti NoSQL

Mezi další nabídky open source a komerčních databází NoSQL patří:

  • Blazegraph, od společnosti Systap
  • Bigtable Google, od společnosti Google
  • Helium, od společnosti Levyx
  • Microsoft Azure Cosmos DB od společnosti Microsoft
  • Neo4j, od Neo4j
  • Oracle NoSQL Database, od společnosti Oracle
  • ThingSpan, z Objectivity