중요합니다
여러 지역에서 99.999% 가용성 서비스 수준 계약, 즉각적인 자동 크기 조정 및 자동 장애 조치(failover)가 있는 대규모 시나리오에 대한 데이터베이스 솔루션을 찾고 있나요? NoSQL용 Azure Cosmos DB를 고려합니다.
OLAP(온라인 분석 처리) 그래프를 구현하거나 기존 Apache Gremlin 애플리케이션을 마이그레이션하시겠습니까? Microsoft Fabric에서 그래프를 고려합니다.
Azure Cosmos DB for Gremlin에는 모든 항목에 , _ts, _self, _attachments, _rid 등의 _etag이 있습니다. 또한 Gremlin 엔진이 모서리에 inVPartition 및 outVPartition 속성을 추가합니다. 기본적으로 이러한 속성은 통과에 사용할 수 없습니다. 그러나 Gremlin 통과에 특정 속성이나 모든 속성을 포함할 수 있습니다.
g.withStrategies(ProjectionStrategy.build().IncludeSystemProperties('_ts').create())
E-Tag
이 속성은 낙관적 동시성 제어에 사용됩니다. 애플리케이션이 작업을 별도의 트래버스로 나누어야 하는 경우 eTag 속성을 사용하여 동시 쓰기 시 데이터 손실을 방지합니다.
g.withStrategies(ProjectionStrategy.build().IncludeSystemProperties('_etag').create()).V('1').has('_etag', '"00000100-0000-0800-0000-5d03edac0000"').property('test', '1')
TTL(Time to Live)
그래프에 문서 만료가 사용하도록 설정되어 있고 문서에 ttl 속성 집합이 설정된 경우 Gremlin 트래버스에서 이 속성 집합을 일반 꼭짓점 또는 에지 속성 집합으로 사용할 수 있습니다.
ProjectionStrategy는 TTL(Time to Live) 속성 노출을 사용하도록 설정하는 데 필요하지 않습니다.
다음 명령을 사용하여 새 정점에서 TTL(time-to-live)을 설정합니다.
g.addV(<ID>).property('ttl', <expirationTime>)예를 들어 다음 트래버스로 만들어진 정점은 123초 후에 자동으로 삭제됩니다.
g.addV('vertex-one').property('ttl', 123)다음 명령을 사용하여 기존 정점에서 TTL(time-to-live)을 설정합니다.
g.V().hasId(<ID>).has('pk', <pk>).property('ttl', <expirationTime>)꼭짓점에 TTL 속성을 적용해도 연결된 가장자리에 자동으로 적용되지는 않습니다. 이 동작은 Edge가 데이터베이스 저장소의 독립적인 레코드이기 때문에 발생합니다. 다음 명령을 사용하여 정점과 정점의 모든 들어오고 나가는 에지에 대한 TTL(Time-to-Live)을 설정합니다.
g.V().hasId(<ID>).has('pk', <pk>).as('v').bothE().hasNot('ttl').property('ttl', <expirationTime>)
참고 항목
Azure Portal에서 컨테이너의 TTL(Time to Live)을 -1 또는 켜기(기본값 없음)로 설정할 수 있습니다. 그런 다음 항목에 TTL 값이 명시적으로 설정되어 있지 않으면 모든 항목에 대해 TTL이 무한합니다.