{"id":147187,"date":"2025-11-03T11:12:30","date_gmt":"2025-11-03T09:12:30","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/dostupen-vstraivaemyj-dvizhok-hraneniya-tidesdb-1-0-podderzhivayushhij-acid-tranzakczii"},"modified":"2026-02-26T20:20:27","modified_gmt":"2026-02-26T18:20:27","slug":"dostupen-vstraivaemyj-dvizhok-hraneniya-tidesdb-1-0-podderzhivayushhij-acid-tranzakczii","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/news\/dostupen-vstraivaemyj-dvizhok-hraneniya-tidesdb-1-0-podderzhivayushhij-acid-tranzakczii","title":{"rendered":"Est\u00e1 dispon\u00edvel o mecanismo de armazenamento embutido TidesDB 1.0, que suporta transa\u00e7\u00f5es ACID","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Foi lan\u00e7ado o primeiro release est\u00e1vel do projeto TidesDB, que est\u00e1 desenvolvendo uma biblioteca para armazenamento de dados no formato chave\/valor. O projeto pode ser utilizado como um motor aut\u00f4nomo ou para ser integrado em aplica\u00e7\u00f5es. Entre as principais caracter\u00edsticas, destaca-se o suporte a transa\u00e7\u00f5es ACID e a otimiza\u00e7\u00e3o para armazenamento eficiente de dados em unidades Flash e na mem\u00f3ria RAM. O c\u00f3digo \u00e9 escrito em C e \u00e9 distribu\u00eddo sob a licen\u00e7a MPL 2.0. Interfaces foram preparadas para as linguagens C++, Go, Java, Python, Rust, Lua e JavaScript.    <\/p>\n<p>Para o armazenamento de dados, utiliza-se a estrutura de \u00e1rvore LSM (\u00e1rvore de log estruturada com fus\u00e3o), que garante <a href=\"https:\/\/prohoster.info\/pt\/server\/\"  data-wpil-monitor-id=\"4018\">alto desempenho<\/a> n\u00e3o apenas na leitura, mas tamb\u00e9m na execu\u00e7\u00e3o de opera\u00e7\u00f5es de grava\u00e7\u00e3o e modifica\u00e7\u00e3o de dados. As opera\u00e7\u00f5es de leitura n\u00e3o bloqueiam a grava\u00e7\u00e3o e leitura de dados, enquanto as opera\u00e7\u00f5es de grava\u00e7\u00e3o bloqueiam apenas a fam\u00edlia de colunas na qual a grava\u00e7\u00e3o \u00e9 realizada. Para acelerar ainda mais a leitura, suportam-se \u00edndices e cache baseados em filtros bloom (que permitem verificar a inclus\u00e3o em um conjunto, admitindo falsos positivos, mas excluindo a omiss\u00e3o de um elemento existente).     <\/p>\n<p>H\u00e1 suporte completo para transa\u00e7\u00f5es ACID, permitindo altera\u00e7\u00f5es at\u00f4micas que abrangem fam\u00edlias de colunas e, se necess\u00e1rio, reverter opera\u00e7\u00f5es de forma at\u00f4mica. Os dados podem ser armazenados em formato comprimido, com escolha do algoritmo de compress\u00e3o vinculado \u00e0 fam\u00edlia de colunas. \u00c9 poss\u00edvel definir bloqueios no n\u00edvel de fam\u00edlias de colunas individuais e empacotar o armazenamento em modo paralelo sem bloquear a execu\u00e7\u00e3o de opera\u00e7\u00f5es com o BD.    <\/p>\n<p>Principais funcionalidades:    <\/p>\n<ul>\n<li class=\"l\"> Suporte a fam\u00edlias de colunas (Column Families) \u2014 conjuntos de dados isolados no formato chave\/valor. Cada fam\u00edlia de colunas utiliza sua pr\u00f3pria memtable, SSTable e log WAL.\n<li class=\"l\"> Transa\u00e7\u00f5es ACID que abrangem v\u00e1rias opera\u00e7\u00f5es com fam\u00edlias de colunas.\n<li class=\"l\"> Otimiza\u00e7\u00e3o para acesso paralelo aos dados.\n<li class=\"l\"> Suporte para iteradores bidirecionais, permitindo percorrer pares chave\/valor para frente ou para tr\u00e1s em rela\u00e7\u00e3o \u00e0 posi\u00e7\u00e3o selecionada no armazenamento, utilizando o m\u00e9todo de ordena\u00e7\u00e3o inicialmente definido.\n<li class=\"l\"> Suporte para adicionar suas pr\u00f3prias fun\u00e7\u00f5es de compara\u00e7\u00e3o de chaves. Disponibilidade de fun\u00e7\u00f5es de compara\u00e7\u00e3o integradas: memcmp, string e numeric.\n<li class=\"l\"> Registro de opera\u00e7\u00f5es (WAL, Write-Ahead Log) e recupera\u00e7\u00e3o autom\u00e1tica da memtable (armazenamento em mem\u00f3ria) a partir deste log durante a inicializa\u00e7\u00e3o.\n<li class=\"l\"> Uso de filtros Bloom para minimizar acessos ao armazenamento por meio da verifica\u00e7\u00e3o da exist\u00eancia da chave antes da leitura do SSTable (armazenamento persistente).\n<li class=\"l\"> Suporte aos algoritmos Snappy, LZ4 e ZSTD para compress\u00e3o de registros no armazenamento SSTable e no log WAL.\n<li class=\"l\"> Capacidade de definir o tempo de vida dos registros (TTL) e exclus\u00e3o autom\u00e1tica de registros expirados.\n<li class=\"l\"> Tr\u00eas modos de sincroniza\u00e7\u00e3o de dados na RAM com o armazenamento persistente: NONE (o mais r\u00e1pido), BACKGROUND (balanceado), FULL (o mais confi\u00e1vel).\n<li class=\"l\"> Possibilidade de configurar o tamanho da memtable, m\u00e9todos de compress\u00e3o, filtros Bloom, modo de sincroniza\u00e7\u00e3o e par\u00e2metros de empacotamento para cada fam\u00edlia de colunas.\n<li class=\"l\"> Simples API C, retornando 0 em caso de sucesso na opera\u00e7\u00e3o e -1 em caso de erro.\n<li class=\"l\"> Uso de SBHA (Sorted Binary Hash Array) para busca r\u00e1pida de dados no SSTable, permitindo determinar deslocamentos de blocos com chaves sem varredura completa.\n<li class=\"l\"> Formato bin\u00e1rio port\u00e1til compacto para representa\u00e7\u00e3o de banco de dados, suportando versionamento.\n<li class=\"l\"> Mecanismos integrados de controle de integridade, dete\u00e7\u00e3o de corrup\u00e7\u00e3o de dados e recupera\u00e7\u00e3o.      <\/ul>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=64171\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 TidesDB, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043b\u044e\u0447\/\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u041f\u0440\u043e\u0435\u043a\u0442 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u043e\u0431\u043e\u0441\u043e\u0431\u043b\u0435\u043d\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u044b\u0439 \u0434\u0432\u0438\u0436\u043e\u043a \u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043d\u0438\u044f \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0418\u0437 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 ACID-\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 Flash-\u043d\u0430\u043a\u043e\u043f\u0438\u0442\u0435\u043b\u044f\u0445 \u0438 \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438. \u041a\u043e\u0434 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438 \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 MPL 2.0. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-147187","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 TidesDB, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043b\u044e\u0447\/\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/news\/dostupen-vstraivaemyj-dvizhok-hraneniya-tidesdb-1-0-podderzhivayushhij-acid-tranzakczii\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0434\u0432\u0438\u0436\u043e\u043a \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f TidesDB 1.0, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0439 ACID-\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 TidesDB, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043b\u044e\u0447\/\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/news\/dostupen-vstraivaemyj-dvizhok-hraneniya-tidesdb-1-0-podderzhivayushhij-acid-tranzakczii\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-11-03T09:12:30+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-02-26T18:20:27+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Dispon\u00edvel o mecanismo de armazenamento embutido TidesDB 1.0, suportando transa\u00e7\u00f5es ACID | ProHoster","description":"Lan\u00e7ada a primeira vers\u00e3o est\u00e1vel do projeto TidesDB, que desenvolve a biblioteca para armazenamento de dados em formato chave\/valor.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/dostupen-vstraivaemyj-dvizhok-hraneniya-tidesdb-1-0-podderzhivayushhij-acid-tranzakczii","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u0434\u0432\u0438\u0436\u043e\u043a \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f TidesDB 1.0, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0439 ACID-\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 TidesDB, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043b\u044e\u0447\/\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.","og:url":"https:\/\/prohoster.info\/pt\/blog\/news\/dostupen-vstraivaemyj-dvizhok-hraneniya-tidesdb-1-0-podderzhivayushhij-acid-tranzakczii","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-11-03T09:12:30+00:00","article:modified_time":"2026-02-26T18:20:27+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"147187","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-26 18:21:29","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 15:42:21","updated":"2026-02-26 18:21:29","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/147187","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=147187"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/147187\/revisions"}],"predecessor-version":[{"id":162835,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/147187\/revisions\/162835"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=147187"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=147187"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=147187"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}