미래를준비하는기업의스토리지기술, 퓨어스토리지의차별성 DEEP LEARNING AND BIG DATA
초기단계 - Framework 및모델개발 - 훈련데이터 : 전처리안됨, 기성전처리데이터사용 (ImageNet) 활용단계 ( 표준화 ) - 모델개발, 서비스개발 - 훈련데이터 : 자체데이터를전처리하여사용 - 인프라에대한표준화단계 1. 클러스터구성 : 단일서버단위혹은, 클러스터단위로 Training (Infini-Band 필요여부결정 ) 2. 스토리지 : 로컬혹은공유 1 2 3 활용단계 ( 엔터프라이즈 ) - 모델개발, 서비스개발 - 훈련데이터 : 자체데이터를전처리하여사용 - 엔터프라이즈인프라구성 1. 클러스터구성 2. 스토리지 : 공유 GPU cluster n/w GPU server GPU server n/w Infini- Band server server cluster
Local Filesystem Shared Filesystem ext4 Hadoop 3rd party PFS NFS
스토리지영역 1G switch 1EA GPU Cluster 영역
NVIDIA DGX-1 User Guide 에의하면, Training 데이터저장을공유스토리지로구성시권장사항은 NFS v3 입니다. 출처 ) https://images.nvidia.com/content/technologies/deep-learning/pdf/dgx-1-userguide.pdf 25 페이지
decode scale evaluate forwardpropagation update back-propagation
decode scale evaluate forward-propagation decode scale evaluate forward-propagation update back-propagation update back-propagation decode scale evaluate forward-propagation decode scale evaluate forward-propagation update back-propagation update back-propagation merge decode scale evaluate forward-propagation decode scale evaluate forward-propagation update back-propagation update back-propagation
CLEAN & INGEST TRANSFORM EXPLORE TRAIN From sensors, machines, & user generated Label, anomaly detection, ETL, prep, stage Quickly iterate to converge on models Run for hours to days in production cluster CPU Servers GPU Server GPU Production Cluster COPY & TRANSFORM COPY & TRANSFORM COPY & TRANSFORM
Figure: TensorFlow benchmark for ResNet-50, measuring training time for 10M images, including data transfer time for SSDs
x86 서버 10.0.0.1 10.0.0.2 10.0.0.3 1G/10G Network HDFS 하둡 /HDFS 특징 다중 x86 서버 이슈사항 Tightly coupled 구조 FLASHBLADE 장점 연산과저장을분리 복제를통한데이터보호 부가적인 IO 생성 저장레이어에서수행 병렬처리수행 네트웍데이터전송지연 데이터이동최소화 다양한데이터타입저장 IO 패턴에따른성능불균형 FLASH 기반안정적성능제공
업무패턴에따른연산 (CPU, Memory) 및저장 (HDFS) 분리및투자보호 Tightly Coupled 데이터플랫폼 Loosely Couple 데이터플랫폼 Namenode Compute DAS Network Compute Compute Compute Compute Compute Compute Datanodes (3x replicas) DAS DAS Network Compute DAS Compute DAS FlashBlade (NFS/S3)
NameNode 이중화를위한불필요한비용발생방지 Name Node 이중화를위한별도 NAS 구성 단일데이터스토리지구성 Data node Data node Data Node 및 Name Node 를위한단일데이터저장소 Active NN Standby NN
NFS 기반 HDFS 구성시 DAS 대비하여보다빠른 Read/Write 성능제공 Read 성능비교 Write 성능비교 25% 이상개선 75% 이상 개선 * https://blog.purestorage.com/how-to-run-hadoop-on-flashblade/
FB NFS기반 HDFS구성 시 DAS대비하여 보다 빠른 Read/Write성능 제공 Teragen 결과 sec Terasort 결과 sec 7배 빠른 데이터생성 HDFS FB NFS HDFS 20% 빠른 연산수행 FB NFS
Hadoop Computing Node Object Interface Native HDFS Interface File Interface Hadoop File System * FB Native HDFS 지원은 2018 년상반기에예정되어있으며출시일정은변경될수있습니다.
BLADE SCALE-OUT PROCESSING + FLASH ELASTIC Fabric Module LOW-LATENCY, SW-DEFINED ETHERNET INTERCONNECT Purity//FB2 SCALE-OUT STORAGE SOFTWARE
통합된 NV-RAM Purity//FB Software System-On-Chip CPU NAND Flash ELASTIC Fabric Connector PCIe 연결 DRAM Memory
FLASHBLADE CHASSIS Up to 15 Blades 4RU Height N+2 Redundant FABRIC MODULE Dual switched mid-plane 30 x Internal 10Gbit ports 8 x 40GbE External ports Each 40GbE can be broken into 4x 10GbE BLADE Adds Capacity & Performance 17TB or 52TB Capacity Hot Pluggable Non SSD NAND Embedded NVRAM 1,850 WATT PER PETABYTE USABLE
SSD 의용량이점점더커짐에따라여러가지문제점이대두되고있습니다. SOFTWARE 점점커지는 SSD 작고단일한경로예측불가한성능복잡성 FLASH TRANSLATION FAST RESPONSE 100 µs SLOW RESPONSE 20 ms SMALL PIPE ALLOCATION GARBAGE COLLECTION ENCRYPTION 1 QUEUE ERROR CORRECTION 1 TB 60 TB BIG FLASH 60 배더많은 FLASH 여전히같은성능 60 TB 1 SERIAL CHANNEL 수백개의 SSD 에서독자적으로수행되는복잡한작업 WHAT S GOING ON IN THERE? GARBAGE COLLECTION, REMAPPING
SAS 방식의단일채널로인한병목을해소하기위해, PCIe 방식의 NVMe 가필요합니다.
SSD 의개별 Controller 에의존하지않고, FlashBlade 의 Operation Environment 인 Purity//FB 에의해모든 NAND Flash 를전체적으로관리합니다. STORAGE UNIT STORAGE UNIT STORAGE UNIT
NETWORK SWITCH NETWORK SWITCH CPU + DRAM CPU + DRAM CPU + DRAM FLASH NVRAM FLASH NVRAM FLASH NVRAM
Each one is similar to a mini controller NETWORK SWITCH NETWORK SWITCH Split into independent virtual controller CPU + DRAM CPU + DRAM CPU + DRAM Many virtual controller on each blade virtual controller migrate to any blade Each Partition manages its own: Namespace Operations Data Layouts Data Protection Maintenance (GC, FTL, etc)
Each one is similar to a mini controller NETWORK SWITCH NETWORK SWITCH CPU + DRAM CPU + DRAM CPU + DRAM Virtual controller Virtual controller sees array of storage across each blade Storage Unit provides some resources for each virtual controller STORAGE UNIT STORAGE UNIT STORAGE UNIT FLASH NVRAM FLASH NVRAM FLASH NVRAM
Each one is similar to a mini controller NETWORK SWITCH NETWORK SWITCH CPU + DRAM CPU + DRAM CPU + DRAM Virtual controller Virtual controller sees array of storage across each blade Storage Unit provides some resources for each virtual controller STORAGE UNIT STORAGE UNIT STORAGE UNIT FLASH NVRAM FLASH NVRAM FLASH NVRAM
NFS 를구성하는 RPC Protocol 21 개중에서약 70% 의부하를차지하는것이 "Procedure 1: GETATTR - Get file attributes" 입니다. FlashBlade 는이부분을효율적으로처리하여 NFS 의성능을극대화할수있도록설계되었습니다....
PROTOCOLS TRANSACTIONAL KEY-VALUE DATABASE KEY VALUE BLOCK FILE OBJECT
GByte/Sec 512K IO sizes, 16 load generators (48 core CPU s each with 2x10GbE), 256 Containers total, NFSv3 16.0 14.0 12.0 10.0 8.0 6.0 4.0 2.0 0.0 7 8 9 10 11 12 13 14 15 Read 7.4 8.5 9.5 10.6 11.7 12.8 13.8 14.9 16.0 Write 2.2 2.5 2.9 3.2 3.5 3.8 4.1 4.5 4.8 Blades
프로토콜 : NFS v3 SMB v2.1 Object HTTPS 성능 : 1,000,000 IOPS 이상 16 GB/s 이상 용량 : 17TB, 52TB Blade 옵션 1 개섀시부터최대 5 개섀시증설가능, 65.7TB 부터 2.6PB 주 1) 데이터보호 : N+2, Erasure Coding Always-on 암호 내부복제지원 데이터절감 : In-line compression 평균압축률 3:1 (67% 데이터절감 ) 주 1) 압축률고려하지않은실용량
운영비용절감사례 영국런던의조사기업인 IHS Markit 은항공우주, 방위, 보안그리고자동차, 화학물질, 에너지, 기술, 해상및무역등의산업분야에대해서기업과정부기관의의사결정프로세스를지원하기위한정보와분석결과를제공하는기업입니다. 기존에사용하던 20 개의 RACK 을퓨어스토리지 FlashBlade 의단 4U 로마이그레이션하여, 고성능의실시간대용량데이터분석서비스를제공하고있습니다. 20 RACKS DISK 4U
도입사례요약
도입사례 > 해외대형 SNS 사 NVIDIA DGX-1 Node 128 대, Linux 서버 70 대 1 분당 14 만개사진업로드, 35 만개의자료업데이트를처리 요구성능 : 1. Read Size: 50KB 2. Random Read Bandwidth: 70GB/sec 이상 3. Random Write Bandwidth: 10GB/sec 이상 도입사유 : 1. 대량의 Write 발생시, Cache 아키텍처기반의스토리지에서는현저한성능저하발생 퓨어스토리지는 Address Mapping 구조인 Key-Value 이므로성능저하가없음 2. DGX-1 노드가 RACK 단위로구성되어확장이용이한아키텍처제품선정 퓨어스토리지는블레이드에각각의 Compute Module 과 Storage Unit 이있어서성능이선형적으로향상되며, 최대 75 개의블레이드로확장가능 ( 향후에는 225 개까지확장가능 ) [ 동영상내용요약 ] Neural Network 의 Access Pattern - I/O 환경 : Random Access 하면서도 high throughput 이필요하여, 간단한모델의경우초당 1,000 개이상의이미지트레이닝 - 도입사유 : 클러스터로구성되면, 트레이닝에더많은 Random Access 가발생함으로스토리지의 Cache 역할이무색하게되어급격한성능저하가발생하였는데, 이러한 I/O 환경을극복할수있는아키텍처를가진스토리지를채택 스토리지구성사항 - Shared storage system: All flash - Supports ~150,000 50KB files/sec per 100TB - Shared datasets *Source: s7815-howard-mansell-building-scale-out-deeplearning-infrastructure-lessons-learned-from-facebook-airesearch
도입사례 > 국내대형 SNS 사 GPU서버클러스터 Node 60여대, Linux 서버 40여대 텍스트, 이미지, 동영상등의다양한데이터처리 요구사항 : 1. Scale Out이용이해야하며, Node 증가시성능저하가없어야함 2. 성능저하를최소화하는 HW, SW 아키텍처에중점 도입사유 : 1. 성능저하없는 Scale Out이용이한아키텍처 2. 고성능의 NVMe 기반신기술 HW 아키텍처 3. 기존의계층형디렉토리구조의 NAS가아닌, Object 기반의새로운 SW 아키텍처 4. 경쟁사대비탁월한 TCO( 도입비용 / 운영비용 )