Alternativa sin servidor a las bases de datos tradicionales

Un DBMS distribuido moderno debe poder soportar varios tipos de carga de trabajo, satisfaciendo las necesidades de usuarios completamente diferentes. Yandex Database permite no solo almacenar petabytes de datos, lo que respalda el procesamiento de millones de solicitudes por segundo, sino que también proporciona un modo de computación sin servidor. Esta plataforma permite atender proyectos con diferentes tipos de carga de trabajo: clave-valor, aplicaciones web tradicionales basadas en una base de datos relacional, así como bases de datos de documentos.





— - API HTTP. Yandex Cloud Functions, Amazon Web Services Lambda, Google Functions), Open Source .





«» DevOps, Infrastructure as Code, -, . , «» , .





  (serverless computing) — , , , , . -. . , , , , , «-» . , , . , , .





, , . , S3, , . take or pay: ( ), , . , ? ?





Yandex Database

:





  • – , .





  • , 2020 5 , 60% .





  • ,   .





  • IoT- .





  • ,   – , .





2008 - «» : , , . , . , , .





, , — (), . , , . .





2011 , KiWi , . KiWi — «-» , . . KiWi . . : TTL (Time To Live), . , 600 . : Cassandra .





. , (eventual consistency). , , KiWi : , .





, KiWi, — , , . .   , , .





, , , «-». :





  • — ;





  • serializable ;





  • ACID- , , ;





  • ;





  • ;





  • (multitenancy);





  • — .





. , : , , . , , — . , , , , , , . . . Yandex Database (YDB), .





YDB

YDB : . — , , , . — . (primary key), . , .





Yandex Database — ( «-»), .





YQL API, YDB OLTP- , SQL- (join). «-» YDB (Document API) Amazon DynamoDB API — , AWS SDK AWS CLI.





, , , JSON- . Yandex Database JsonAPI, JSON — JsonDocument, JsonPath . JsonAPI, .





YDB

YDB – , . . . , , – . , , .





— , «-» , . , , , .





— , , , , . Yandex Database . — , «» . YDB — -, , «» , , .





Yandex Database .





(Distributed storage), , () (snapshots). Distributed storage — «» (Binary Large Object — ), , , .





Network Interconnect — , . Yandex Database TCP. , .





Yandex Database , ACID , ( ), .





, , (2PC), , Yandex Database (deterministic transactions). serializable Calvin: , , , . , . , , , .





Yandex Database YQL (Yandex Query Language) — SQL : list, tuple, struct, dict. SQL.





Query Processor — YQL-. YQL (DAG) . , . .





— gRPC proxy. gRPC ( , Google). YDB API , SDK Yandex Database.





YDB

, , , . . Yandex Database — 1–2 .     — . , — . 100 , , . , , . , , . .





Yandex Database , «», , , -.





(request unit) — . , , . YDB Free Tier: request units , . , , .





. - , (Object Storage), . , , - .





, YDB

Auto.ru « ». . , . Yandex.Cloud — Yandex Cloud Functions , . «» , , . Yandex Database . 100 . . Auto.ru - , .





, Auto.ru, Yandex Database «», «.», «.», «.», «.», «.», «.», «.», «.» .





, .





Yandex Database . , , : -; -, SQL; ; JSON API .





Se pueden encontrar más detalles en las comunidades Yandex Serverless Ecosystem y Yandex Database Chat en Telegram. 





Estamos planeando una serie de artículos sobre la estructura interna de Yandex Database, escriba en los comentarios qué temas son los más interesantes.








All Articles