dbo:abstract
|
- Eventual consistency is a consistency model used in distributed computing to achieve high availability that informally guarantees that, if no new updates are made to a given data item, eventually all accesses to that item will return the last updated value. Eventual consistency, also called optimistic replication, is widely deployed in distributed systems and has origins in early mobile computing projects. A system that has achieved eventual consistency is often said to have converged, or achieved replica convergence. Eventual consistency is a weak guarantee – most stronger models, like linearizability, are trivially eventually consistent. Eventually-consistent services are often classified as providing BASE semantics (basically-available, soft-state, eventual consistency), in contrast to traditional ACID (atomicity, consistency, isolation, durability). In chemistry, a base is the opposite of an acid, which helps in remembering the acronym. According to the same resource, these are the rough definitions of each term in BASE:
* Basically available: reading and writing operations are available as much as possible (using all nodes of a database cluster), but might not be consistent (the write might not persist after conflicts are reconciled, and the read might not get the latest write)
* Soft-state: without consistency guarantees, after some amount of time, we only have some probability of knowing the state, since it might not yet have converged
* Eventually consistent: If we execute some writes and then the system functions long enough, we can know the state of the data; any further reads of that data item will return the same value Eventual consistency is sometimes criticized as increasing the complexity of distributed software applications. This is partly because eventual consistency is purely a liveness guarantee (reads eventually return the same value) and does not guarantee safety: an eventually consistent system can return any value before it converges. (en)
- 궁극적 일관성(eventual consistency), 최종 일관성은 분산 컴퓨팅에 쓰이는 의 하나로, 데이터 항목에 새로운 업데이트가 없으면 궁극적으로 해당 항목에 대한 모든 접근들은 마지막으로 업데이트된 값을 반환하는 것을 비공식적으로 보장하는 고가용성을 달성한다. 궁극적 일관성은 (optimistic replication)라고도 하며 분산 시스템이 널리 채용되어 쓰이고 있으며 초기 모바일 컴퓨팅 프로젝트에서 기원한다. 궁극적 일관성 서비스들은 BASE(Basically Available, Soft state, Eventual consistency) 시맨틱을 제공하는 것으로 분류되며 이는 전통적인 ACID의 보장과는 대조되는 것이다. 궁극적 일관성은 분산 응용 소프트웨어의 복잡도가 증가함에 따라 비평을 받는다. 부분적인 이유로는 궁극적 일관성은 순수하게 라이브니스 보장(읽기는 궁극적으로 같은 값을 반환)이면서도 보장을 하지 않기 때문이다: 궁극적 일관성을 사용하는 시스템은 수렴 이전에 어떠한 값도 반환할 수 있다. (ko)
- 結果整合性(英: Eventual Consistency)とは、分散コンピューティングにおいて高可用性を実現するために用いられる整合性モデル(一貫性モデル)であり、あるデータ項目に新たな更新が行われなかった場合、最終的に(結果的に)その項目へのすべてのアクセスが最後に更新された値を返すことを非公式に保証するものである。結果整合性は楽観的レプリケーションとも呼ばれ、分散システムに広く導入されており、その起源は初期のモバイルコンピューティングプロジェクトにある。結果一貫性を達成したシステムは、しばしば「収束した」または「レプリカ収束を達成した」と言われる。結果一貫性は弱い保証であり、線形性のようなより強いモデルのほとんどは、最終的に一貫性を持つことは自明だが、単に結果一貫性を持つシステムは、通常、これらのより強い制約を満たさない。 結果一貫性のあるサービスは、伝統的なACID(Atomicity, Consistency, Isolation, Durability)保証とは対照的に、BASE(Basically Available, Soft state, Eventual consistency)セマンティクスを提供するものとして分類されることが多い。化学ではBASEはACIDの反対語であり、頭文字を覚えるのに役立つ。同資料によると、BASEの各用語の大まかな定義は以下の通りである。
* 基本的に利用可能:基本的な読み書き操作は可能な限り利用可能(データベースクラスタの全ノードを使用)だが、いかなる種類の一貫性保証もない(競合が調整された後に書き込みが持続しない可能性や、読み込みが最新の書き込みを取得しない可能性がある)。
* ソフトステート:一貫性が保証されていないため、ある程度の時間が経過しても、状態がまだ収束していない可能性があるため、ある程度の確率でしか状態を知ることができない。
* 最終的に(結果的に)一貫性がある:システムが機能していて、ある入力セットの後に十分な時間待つことができれば、結果的にデータベースの状態を知ることができ、それ以降の読み取りは期待に沿ったものになる。 結果一貫性は、分散ソフトウェアアプリケーションの複雑さを増大させると批判されることがある。これは結果一貫性が純粋にライブネス保証(読み込んだデータが最終的に同じ値を返す)であり、安全性を保証していないことが一因である。結果一貫性を持つシステムは、収束する前に任意の値を返す可能性がある。 結果整合性はACID特性と同様にデータベースにおける一貫性モデルであるBASE特性における最も重要な考え方の一つである。結果整合性(Eventual Consistency)は、既存のRDBMSにおける悲観的ロックのような、厳密な一貫性を要求する考え方とは全く相反する考え方である。例えば、インターネットのDNS、NTPプロトコル、GPSなどのように、即座にデータが反映されることを前提としていないが、問題なく成立している事例は数多く存在する。 このように、結果整合性(Eventual Consistency)は、結果的に一貫性が保たれればよいという考え方に基づいている。NoSQLに代表されるデータストアでは、この考え方を取り入れることで、容易にスケールアウトを実現できるようにしている。結果整合性(Eventual Consistency)の実現には、P2Pのアーキテクチャーを導入した、様々な分散相互排他アルゴリズムが採用されている。 (ja)
- Consistência posterior ou consistência convergente é um utilizado na computação distribuída com a finalidade de se atingir a alta disponibilidade, garantindo-se informalmente que, se nenhuma nova atualização de um dado for realizada, posteriormente todos os acessos a esse dado retornarão o último valor atualizado. A consistência posterior, também chamada de , é amplamente implementada em sistemas distribuídos e tem origens nos primeiros projetos de computação móvel. Geralmente, diz-se que um sistema que atingiu a consistência posterior convergiu ou alcançou a convergência da réplica. A consistência posterior é uma garantia fraca. A maioria dos modelos de consistência mais fortes, como a , são trivialmente posteriormente consistentes. Entretanto, um sistema que é meramente posteriormente consistente não costuma atender a restrições mais fortes. Serviços Posteriormente Consistentes podem prover garantias semânticas BASE, acrônimo em inglês para as definições de Basically Available, Soft State, Eventual Consistency.
* Basicamente disponível (Basically Available): operações de leitura e escrita estão disponíveis em todos os nós de um cluster, ainda que falhas ocorram, mas sem qualquer tipo de garantia de consistência, ou seja, uma operação de escrita pode não ser persistida após conflitos serem reconciliados ou uma operação de leitura pode não corresponder à última escrita.
* Estado soft (Soft State): sem a garantia de consistência, passado algum tempo, há apenas uma probabilidade p de que o estado do sistema tenha convergido.
* Consistência posterior (Eventual Consistency): dado um conjunto de entradas, o sistema converge para um estado consistente após um período de tempo suficientemente longo. A consistência posterior é, às vezes, criticada como responsável pelo aumento da complexidade de sistemas distribuídos. Em parte, isso ocorre porque a consistência posterior é tão somente uma garantia de liveness, ou seja, um estado consistente é alcançado em algum momento. Entretanto, não há garantia de safety, isto é, o sistema pode retornar qualquer valor antes de convergir. (pt)
- Согласованность в конечном счёте (англ. eventual consistency) — одна из моделей согласованности, используемая в распределённых системах для достижения высокой доступности, в рамках которой гарантируется, что в отсутствии изменений данных, через какой-то промежуток времени после последнего обновления («в конечном счёте») все запросы будут возвращать последнее обновлённое значение. Пример согласованной в конечном счёте системы — DNS: обновлённая DNS-запись распространяется в соответствии с настройками интервалов кэширования серверов и, хоть и не моментально, но в конечном счёте все клиенты увидят обновление. Простыми словами — изменения применяются гарантированно, но с возможной задержкой (асинхронно). (ru)
- 最终一致性(英語:Eventual consistency)是分布式计算里的一种内存一致性模型,它指对于已改变写的数据的读取,最终都能取得已更新的数据,但不完全保证能立即取得已更新的数据。这种模型通常可以实现较高的可用性。最终一致性,通过,或称延迟复制(lazy replication)实现。这种概念最初始于移动应用,后来在各类分布式系统中也有广泛的应用。达到最终一致性的分布式系统被称为副本达到了“收敛(converged)”状态。最终一致性是一种较弱的保证。如果某个系统满足更强的一致性约束(例如线性一致性),它就同时具有最终一致性,但是反过来则未必成立,仅保证最终一致性的系统无法保证更强的约束。 (zh)
|
rdfs:comment
|
- 궁극적 일관성(eventual consistency), 최종 일관성은 분산 컴퓨팅에 쓰이는 의 하나로, 데이터 항목에 새로운 업데이트가 없으면 궁극적으로 해당 항목에 대한 모든 접근들은 마지막으로 업데이트된 값을 반환하는 것을 비공식적으로 보장하는 고가용성을 달성한다. 궁극적 일관성은 (optimistic replication)라고도 하며 분산 시스템이 널리 채용되어 쓰이고 있으며 초기 모바일 컴퓨팅 프로젝트에서 기원한다. 궁극적 일관성 서비스들은 BASE(Basically Available, Soft state, Eventual consistency) 시맨틱을 제공하는 것으로 분류되며 이는 전통적인 ACID의 보장과는 대조되는 것이다. 궁극적 일관성은 분산 응용 소프트웨어의 복잡도가 증가함에 따라 비평을 받는다. 부분적인 이유로는 궁극적 일관성은 순수하게 라이브니스 보장(읽기는 궁극적으로 같은 값을 반환)이면서도 보장을 하지 않기 때문이다: 궁극적 일관성을 사용하는 시스템은 수렴 이전에 어떠한 값도 반환할 수 있다. (ko)
- 最终一致性(英語:Eventual consistency)是分布式计算里的一种内存一致性模型,它指对于已改变写的数据的读取,最终都能取得已更新的数据,但不完全保证能立即取得已更新的数据。这种模型通常可以实现较高的可用性。最终一致性,通过,或称延迟复制(lazy replication)实现。这种概念最初始于移动应用,后来在各类分布式系统中也有广泛的应用。达到最终一致性的分布式系统被称为副本达到了“收敛(converged)”状态。最终一致性是一种较弱的保证。如果某个系统满足更强的一致性约束(例如线性一致性),它就同时具有最终一致性,但是反过来则未必成立,仅保证最终一致性的系统无法保证更强的约束。 (zh)
- Eventual consistency is a consistency model used in distributed computing to achieve high availability that informally guarantees that, if no new updates are made to a given data item, eventually all accesses to that item will return the last updated value. Eventual consistency, also called optimistic replication, is widely deployed in distributed systems and has origins in early mobile computing projects. A system that has achieved eventual consistency is often said to have converged, or achieved replica convergence. Eventual consistency is a weak guarantee – most stronger models, like linearizability, are trivially eventually consistent. (en)
- 結果整合性(英: Eventual Consistency)とは、分散コンピューティングにおいて高可用性を実現するために用いられる整合性モデル(一貫性モデル)であり、あるデータ項目に新たな更新が行われなかった場合、最終的に(結果的に)その項目へのすべてのアクセスが最後に更新された値を返すことを非公式に保証するものである。結果整合性は楽観的レプリケーションとも呼ばれ、分散システムに広く導入されており、その起源は初期のモバイルコンピューティングプロジェクトにある。結果一貫性を達成したシステムは、しばしば「収束した」または「レプリカ収束を達成した」と言われる。結果一貫性は弱い保証であり、線形性のようなより強いモデルのほとんどは、最終的に一貫性を持つことは自明だが、単に結果一貫性を持つシステムは、通常、これらのより強い制約を満たさない。 結果一貫性は、分散ソフトウェアアプリケーションの複雑さを増大させると批判されることがある。これは結果一貫性が純粋にライブネス保証(読み込んだデータが最終的に同じ値を返す)であり、安全性を保証していないことが一因である。結果一貫性を持つシステムは、収束する前に任意の値を返す可能性がある。 (ja)
- Consistência posterior ou consistência convergente é um utilizado na computação distribuída com a finalidade de se atingir a alta disponibilidade, garantindo-se informalmente que, se nenhuma nova atualização de um dado for realizada, posteriormente todos os acessos a esse dado retornarão o último valor atualizado. A consistência posterior, também chamada de , é amplamente implementada em sistemas distribuídos e tem origens nos primeiros projetos de computação móvel. Geralmente, diz-se que um sistema que atingiu a consistência posterior convergiu ou alcançou a convergência da réplica. A consistência posterior é uma garantia fraca. A maioria dos modelos de consistência mais fortes, como a , são trivialmente posteriormente consistentes. Entretanto, um sistema que é meramente posteriormente c (pt)
- Согласованность в конечном счёте (англ. eventual consistency) — одна из моделей согласованности, используемая в распределённых системах для достижения высокой доступности, в рамках которой гарантируется, что в отсутствии изменений данных, через какой-то промежуток времени после последнего обновления («в конечном счёте») все запросы будут возвращать последнее обновлённое значение. Простыми словами — изменения применяются гарантированно, но с возможной задержкой (асинхронно). (ru)
|