Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 2A5C1200CA8 for ; Thu, 1 Jun 2017 06:10:43 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 28CAA160BDB; Thu, 1 Jun 2017 04:10:43 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 700E4160BCB for ; Thu, 1 Jun 2017 06:10:42 +0200 (CEST) Received: (qmail 68714 invoked by uid 500); 1 Jun 2017 04:10:41 -0000 Mailing-List: contact reviews-help@impala.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list reviews@impala.incubator.apache.org Received: (qmail 68703 invoked by uid 99); 1 Jun 2017 04:10:41 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 01 Jun 2017 04:10:41 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id AF448C018F for ; Thu, 1 Jun 2017 04:10:40 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.363 X-Spam-Level: X-Spam-Status: No, score=0.363 tagged_above=-999 required=6.31 tests=[RDNS_DYNAMIC=0.363, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id t8Uz-r17tDd7 for ; Thu, 1 Jun 2017 04:10:38 +0000 (UTC) Received: from ip-10-146-233-104.ec2.internal (ec2-75-101-130-251.compute-1.amazonaws.com [75.101.130.251]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 1A23F5F19D for ; Thu, 1 Jun 2017 04:10:37 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by ip-10-146-233-104.ec2.internal (8.14.4/8.14.4) with ESMTP id v514Aa0D029033; Thu, 1 Jun 2017 04:10:36 GMT Message-Id: <201706010410.v514Aa0D029033@ip-10-146-233-104.ec2.internal> Date: Thu, 1 Jun 2017 04:10:36 +0000 From: "Sailesh Mukil (Code Review)" To: impala-cr@cloudera.com, reviews@impala.incubator.apache.org CC: Marcel Kornacker Reply-To: sailesh@cloudera.com X-Gerrit-MessageType: newpatchset Subject: =?UTF-8?Q?=5BImpala-ASF-CR=5D_IMPALA-5378=3A_Disk_IO_manager_needs_to_understand_ADLS=0A?= X-Gerrit-Change-Id: I067f053fec941e3631610c5cc89a384f257ba906 X-Gerrit-ChangeURL: X-Gerrit-Commit: 072a18ec9ad5febfe6a83972a9b4534da904a759 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Content-Disposition: inline User-Agent: Gerrit/2.12.7 archived-at: Thu, 01 Jun 2017 04:10:43 -0000 Sailesh Mukil has uploaded a new patch set (#2). Change subject: IMPALA-5378: Disk IO manager needs to understand ADLS ...................................................................... IMPALA-5378: Disk IO manager needs to understand ADLS The Disk IO Manager had customized support for S3 and remote HDFS that allows for these to use a separate queue and have a customized number of IO threads. ADLS did not have this support. Based on the code in DiskIoMgr::Init and DiskIoMgr::AssignQueue, IOs for ADLS were previously put in local disk queues. Since local disks are considered rotational unless we can confirm otherwise by looking at the /sys filesystem, this means that THREADS_PER_ROTATIONAL_DISK=1 was being applied as the thread count. This patch adds customized support for ADLS, similar to how it was done for S3. We set 16 threads as the default number of IO threads for ADLS. For smaller clusters, setting a higher number like 64 would work better. We keep the thread count to a lower default of 16 since there is an undocumented concurrency limit for clusters, which is around 500-700 connections, which means we would hurt node level parallelism if we have higher thread level parallelism, for larger clusters. We also set the default maximum chunk size for ADLS as 128k. This is due to the fact that direct reads aren't supported for ADLS, which means that the JNI array allocation and the memcpy adds significant overhead for larger buffers. 128k was chosen emperically for S3 for the same reason. Since this reason also holds for ADLS, we keep the same value. A new flag called FLAGS_adls_read_chunk_size is used to control this value. TODO: Settle on a buffer size with the most optimal buffer size emperically. Change-Id: I067f053fec941e3631610c5cc89a384f257ba906 --- M be/src/runtime/disk-io-mgr-scan-range.cc M be/src/runtime/disk-io-mgr.cc M be/src/runtime/disk-io-mgr.h 3 files changed, 24 insertions(+), 0 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/33/7033/2 -- To view, visit http://gerrit.cloudera.org:8080/7033 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I067f053fec941e3631610c5cc89a384f257ba906 Gerrit-PatchSet: 2 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Sailesh Mukil Gerrit-Reviewer: Marcel Kornacker Gerrit-Reviewer: Sailesh Mukil