Do we have to delete anchors that we don't need anymore?

佑介 金野 36 Reputation points
2022-02-15T02:05:36.253+00:00

Hi.
We develop AR apps for iOS using Azure Spatial Anchors.
I'd like to know about deleting anchors.

My understanding, we can delete anchors from supported platform(iOS, Android. Unity) but they don't support Web API.
When we need to clean up unnecessary anchors, we have to delete using iOS device.
I think this is not good idea for house keeping using iOS device.

So I have a question.
What if we don't delete unnecessary anchors and keep creating anchors, do you think will be a problem with that?

I would appreciate if you would give me a advice.
Thank you.

Azure Spatial Anchors
Azure Spatial Anchors
An Azure service that is used to build immersive three-dimensional applications and experiences that map, persist, and restore content or points of interest at real-world scale.
87 questions
0 comments No comments
{count} votes

Accepted answer
  1. António Sérgio Azevedo 7,666 Reputation points Microsoft Employee
    2022-02-15T13:30:01.37+00:00

    Hello @佑介 金野 , the short answer is yes : Deleting anchors when no longer used is a good practice to include early on in your development process and practices, to keep your Azure resources cleaned up. See Delete Anchors Doc.

    What if we don't delete unnecessary anchors and keep creating anchors, do you think will be a problem with that?

    Yes there will be an unnecessary billing for anchors that you don't need anymore. Specially when you use Coarse relocalization. When using coarse relocalization azure spatial anchors service will find matching anchors and will bill the amount of ids loaded. You can neverteheless set the MaxCount of Ids to cap the cost in CoarseReloc, though still is a best practice that you delete the ones you don't need anymore.

    ---Updated answer---

    From a performance perspective, there may be an impact to deleting certain anchors if you are leveraging anchor relationships. On the other side if you are using AnchorLocateCriteria::Strategy of VisualInformation when searching, then you are not taking advantage of anchor relationships, and deleting unused anchors should not have a performance impact.

    When we need to clean up unnecessary anchors, we have to delete using iOS device. I think this is not good idea for house keeping using iOS device.

    If you use the API sequence CloudSpatialAnchorSession::GetAnchorPropertiesAsync()->CloudSpatialAnchorSession::DeleteAnchorAsync() , this will make it such you do not have to first locate an anchor before deleting it.

    You should also consider creating anchors with an expiration date.

    Thanks!

    Remember:

    • Please accept an answer if correct. Original posters help the community find answers faster by identifying the correct answer. Here is how.
    • Want a reminder to come back and check responses? Here is how to subscribe to a notification.
    1 person found this answer helpful.

0 additional answers

Sort by: Most helpful