Re: [alto] Considerations about More Flexible ALTO Query/Filter

"Randriamasy, Sabine (Nokia - FR/Paris-Saclay)" <sabine.randriamasy@nokia-bell-labs.com> Fri, 27 March 2020 13:44 UTC

Return-Path: <sabine.randriamasy@nokia-bell-labs.com>
X-Original-To: alto@ietfa.amsl.com
Delivered-To: alto@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A993D3A0875 for <alto@ietfa.amsl.com>; Fri, 27 Mar 2020 06:44:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nokia.onmicrosoft.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hJ6GFF8sLWEp for <alto@ietfa.amsl.com>; Fri, 27 Mar 2020 06:44:01 -0700 (PDT)
Received: from FRA01-MR2-obe.outbound.protection.outlook.com (mail-eopbgr90130.outbound.protection.outlook.com [40.107.9.130]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4A7DF3A095C for <alto@ietf.org>; Fri, 27 Mar 2020 06:44:01 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RnnFi7dMXCrLD3BY3KIqFlA1faWOgt25yexpwpDm478UWjRhtbMhB/NT2FA8Pq8Xr9f2s8YkUTqQFai7eip7uMfde3PSE2r4mrgZulMYo9KihJtj40wwJzBMOCcE1IhdnSIfVOmFrfGOXD3Qk9d/jfUxzxEHNoyHkKPdk/wZ+s/H1TodH90t9lUp07kzSmLilmoSgRxxYE2caAuKluK4jntbfyogKfOx+Wg+vj3Lahdeu7P+1erOmD1n1bi5UEDS5NLYSNNU0MBr1zdiUpx4g5oh2l/VjNudwKIkYbiFa0kwA5l8+DlGiN0/UTROb2iiweeiZxS2dolIpigS+aelSA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=148nV27yA82MKDKwqKB/JM8b8IfMj4GDmMnBFT1lKgA=; b=WVnjwYTg0vsBUgoNGJtsUcA9md95Wz7pqr29VXqh/4XyieoFB8qo/QYhHyGtRXsPVwbI8/Y869Sb4RlNtEzWonkqKbmo5PhMDFevdME6VoXebzMMLsTtdPKeDR1zaZSn4BA1nosmjeG/Pk85PZLyDDTfRSf7CPB+HdYC8mFWgoYgJVjBfTy0XCqVlXM4O9X8A23o5lNPOzoK9JQBmF/Gvboh2JYMYJ12+tVaPu83et25wyu8A10/00jPJYSpK9F59W4Rzhdf5usP7oKxcilOagrtDuOMHYpSvqBDGpxn56aK0CV8SgH5gCdnuP/plGTwVtd1HUoT7PVZtwC4kcOXoA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia-bell-labs.com; dmarc=pass action=none header.from=nokia-bell-labs.com; dkim=pass header.d=nokia-bell-labs.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=148nV27yA82MKDKwqKB/JM8b8IfMj4GDmMnBFT1lKgA=; b=pyOh5rq3eoxRGQQqXlzgsCsTVZtNDwC8o2NOMTwvD5IBCZWw8trOU46SsPXANGe99x1wcLUgfXz8xsxSABOd587CpVidmSclkcYOcb4JXTRQHRQjyF3Mx7DttcusSgSmX1yBAO87HtR67gT6n0eG5pnPNEhJtjf2aTAXaW+IyCI=
Received: from PR1PR07MB5100.eurprd07.prod.outlook.com (20.177.209.144) by PR1PR07MB5099.eurprd07.prod.outlook.com (20.177.208.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2856.15; Fri, 27 Mar 2020 13:43:58 +0000
Received: from PR1PR07MB5100.eurprd07.prod.outlook.com ([fe80::d479:d750:62a3:3f1e]) by PR1PR07MB5100.eurprd07.prod.outlook.com ([fe80::d479:d750:62a3:3f1e%6]) with mapi id 15.20.2835.025; Fri, 27 Mar 2020 13:43:58 +0000
From: "Randriamasy, Sabine (Nokia - FR/Paris-Saclay)" <sabine.randriamasy@nokia-bell-labs.com>
To: Jensen Zhang <jingxuan.n.zhang@gmail.com>, IETF ALTO <alto@ietf.org>
Thread-Topic: [alto] Considerations about More Flexible ALTO Query/Filter
Thread-Index: AQHWA992r55LQ9K8JUOPKaVM3zZXxahccM1A
Date: Fri, 27 Mar 2020 13:43:58 +0000
Message-ID: <PR1PR07MB5100F07BEDB3D30D33AD18CB95CC0@PR1PR07MB5100.eurprd07.prod.outlook.com>
References: <CAAbpuyqu0K+ZA8WWM39PRnW-ghNMPpE7qTbfZ7sTziv=qeSX0w@mail.gmail.com>
In-Reply-To: <CAAbpuyqu0K+ZA8WWM39PRnW-ghNMPpE7qTbfZ7sTziv=qeSX0w@mail.gmail.com>
Accept-Language: fr-FR, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=sabine.randriamasy@nokia-bell-labs.com;
x-originating-ip: [2a01:e0a:16a:5400:dd5f:e2eb:db04:69e7]
x-ms-publictraffictype: Email
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: 72afce3f-25be-48be-6c5d-08d7d254e6b3
x-ms-traffictypediagnostic: PR1PR07MB5099:
x-microsoft-antispam-prvs: <PR1PR07MB5099215AC8900B7696C6BC9795CC0@PR1PR07MB5099.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 0355F3A3AE
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PR1PR07MB5100.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(10019020)(4636009)(376002)(136003)(366004)(39860400002)(396003)(346002)(52536014)(8676002)(5660300002)(478600001)(8936002)(316002)(81166006)(81156014)(186003)(110136005)(9686003)(66476007)(71200400001)(21615005)(966005)(86362001)(55016002)(66446008)(66946007)(53546011)(7696005)(76116006)(6506007)(2906002)(33656002)(66556008)(64756008); DIR:OUT; SFP:1102;
received-spf: None (protection.outlook.com: nokia-bell-labs.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: H66XsGxuazuT5trmOCMieRBnT1EVgSf0g1cqHYuBZFkucXEZ+CmXZM2NXmR3pP0ci8pZeoYqV9wTP0TlAtBynNuqw6KdH5rHUv5FWJ9khmHdNX/XUT2FjIcD0kLDPC2V6LyqdOGyxjPGQsCp64X3jt03xoUALtar2ArtJOgP+B97yRNdabmuO4tdCC8mceW7wsQmdtGwUTEROo++aUjbbLprIVEUKXYGxeyNhuVl9semB5HlgvA4AFEkzlhLl5J1yW9SiJ6sczsMRLBbRei3OwJZY2TuBOYzCazwLamB0ERfN7pgyGUJEO7hZAS9l/aASVVj1J6ju1kMt6GSDTeZJCwlUlle82n2XxNccDvJ5umPHdnhXp8SzUvkbjU2ZK9I1GF6U6IMMCwr8EYfSKXn18HTabeZ6C4pHehCfrFP1xe44n95ZtwC1auW87PGw5yK/66+fjk+Ofj9Ao7Z1mnDlI7itgggngCtUe9qgrcNQQ6fG6cNPsbXo/oukrp2gRZU9ZF+vym6CCkDETkifuBy0A==
x-ms-exchange-antispam-messagedata: wWgEZClCM7FJIZKwwWHacozpOEQDBPD9wZD8Znxw3BNvqSXpPPeXFiJKefX9C5P/i9SV0Bj7gF8lc3E3ZcQ4jMZrZss9pSvFOv394i9g9Zw/Q+JCVYBcvZGL1JtPuYCPcAKkokLoGPlxiyrjiHgXy0CAUsDZHYqyKIeYO30iS4mxZF91vw0HXhQy7jRzZFaY0ZgEAbMBfetie7Qrgqoc8A==
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_PR1PR07MB5100F07BEDB3D30D33AD18CB95CC0PR1PR07MB5100eurp_"
MIME-Version: 1.0
X-OriginatorOrg: nokia-bell-labs.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 72afce3f-25be-48be-6c5d-08d7d254e6b3
X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Mar 2020 13:43:58.5019 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: tP47sS0WjszeXl04hjaXnD6CvlG3fvj+/UCHFtS6MrxupLGCBHSfqQ+nA3NxLrusqOclcViBzqqnqP8wgH9cZUGu3gFM42hoERNNrQ4zuZrPpq7KU9mT6fZBFLRjGDbd
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR1PR07MB5099
Archived-At: <https://mailarchive.ietf.org/arch/msg/alto/tVJM4Q1BlfcSjchuSo5a88tWmuM>
Subject: Re: [alto] Considerations about More Flexible ALTO Query/Filter
X-BeenThere: alto@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Application-Layer Traffic Optimization \(alto\) WG mailing list" <alto.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/alto>, <mailto:alto-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/alto/>
List-Post: <mailto:alto@ietf.org>
List-Help: <mailto:alto-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/alto>, <mailto:alto-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 27 Mar 2020 13:44:04 -0000

Hi Jensen,

Thank you for bringing these considerations.
Do you have examples of filters or constraints that you would like to add to queries for Unified Properties or Path Vector and that cannot be achieved with the current ALTO design?
Also, do you have examples that illustrate the limitations of NoSQLs or document-oriented databases wrt ALTO? And examples for option1 and option2.

Thanks,
Sabine


From: alto <alto-bounces@ietf.org> On Behalf Of Jensen Zhang
Sent: Friday, March 27, 2020 3:28 AM
To: IETF ALTO <alto@ietf.org>
Subject: [alto] Considerations about More Flexible ALTO Query/Filter

Hi all,

I'm considering the extension to the current ALTO information resource query.

Currently, ALTO can only support the very simple query (e.g., Filtered Network Map, Filtered Cost Map). Although Filtered Cost Map supports the test constraint, it is very limited and cannot be applied to some new ALTO extensions (e.g., path vector and unified properties).

So far, as I know, most of NoSQLs or document-oriented databases (e.g., MongoDB [1], PostgreSQL [2], ElasticSearch [3]) have JSON query support. I think we can leverage them to query ALTO information resources. However, all of them have a clear limitation when applied to ALTO: the query statement must specify the concrete field names. But all of ALTO information resources use non-fixed fields (e.g., PIDName in Network Map, src and dst TypedEndpointAddr in ECS).

To extend the current ALTO query, I can think about two options:

Option 1: we define a conversation between the ALTO JSON schema and some other schema using fixed fields (e.g., the JSON schema defined by YANG model [4]). Then the client can use the JSON query languages in existing database systems to query the later schema, but the ALTO server transfers the result to the former (ALTO) schema and returns it. In the backend, most of the ALTO implementations should be based on those database systems. So this option can be acceptable in practice.

Option 2: we use some more flexible JSON query language (e.g., JSONiq [5]), or define a new query language for ALTO specific. This option can be more valuable if we want to design a new database system for ALTO.

Looking forward to seeing more comments and discussions from WG.

[1] https://docs.mongodb.com/manual/tutorial/query-documents/
[2] https://www.postgresqltutorial.com/postgresql-json/
[3] https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html
[4] https://tools.ietf.org/html/draft-shi-alto-yang-model-03<https://tools..ietf.org/html/draft-shi-alto-yang-model-03>
[5] http://jsoniq.org/

Best regards,
Jensen