사람들이 데이터를 처리하는 데 도움이되는 많은 도구 / 프레임 워크에 대해 들었습니다.
하나는 하둡이고 다른 하나는 noSQL 개념입니다. 처리 시점의 차이점은 무엇입니까?
그들은 보완 적인가?
사람들이 데이터를 처리하는 데 도움이되는 많은 도구 / 프레임 워크에 대해 들었습니다.
하나는 하둡이고 다른 하나는 noSQL 개념입니다. 처리 시점의 차이점은 무엇입니까?
그들은 보완 적인가?
답변:
하둡은 데이터베이스가 아니며 하둡은 전체 생태계입니다.
대부분의 사람들은 hadoop에 대해 이야기하면서 mapreduce 작업을 참조합니다 . mapreduce 작업은 작은 데이터 덩어리로 큰 데이터 세트를 분할하고이를 노드 클러스터로 분산시켜 계속 진행합니다. 결국 각 노드의 결과는 하나의 데이터 집합으로 다시 합쳐집니다.
<String, Integer>
한 도시 내의 일부 이웃 인구와 함께 hadoop에로드하고 각 도시의 전체 이웃에 대한 평균 인구를 얻고 싶다고 가정합시다 (그림 1).
그림 1
[new york, 40394]
[new york, 134]
[la, 44]
[la, 647]
...
이제 hadoop은 먼저 키를 사용하여 각 값을 매핑합니다 (그림 2).
그림 2
[new york, [40394,134]]
[la, [44,647]]
...
매핑 후에는 각 키의 값을 새 값으로 줄입니다 (이 예에서는 각 키의 설정 값에 대한 평균) (그림 3).
그림 3
[new york, [20264]]
[la, [346]]
...
이제 hadoop은 모든 것으로 끝났습니다. 이제 결과를 HDFS (hadoop 분산 파일 시스템) 또는 DBMS 또는 파일로로드 할 수 있습니다.
이것이 바로 hadoop이 할 수있는 일에 대한 매우 기본 적이고 간단한 예입니다. hadoop에서 훨씬 더 복잡한 작업을 실행할 수 있습니다.
질문에서 이미 언급했듯이 hadoop과 noSQL은 보완 적입니다. 센서의 수십억 개의 데이터 세트가 HBase에 저장되고 마침내 hadoop을 통해 DBMS에 저장되는 몇 가지 설정을 알고 있습니다.
NoSQL은 일종의 관계가 필요없는 데이터를 저장하는 방법입니다. 설계의 단순성과 수평 확장 성, 데이터를 저장하는 한 가지 방법은 key : value
쌍 설계입니다. 이것은 하둡과 유사한 처리에 적합합니다. NoSQL db의 사용은 실제로 문제의 유형에 따라 다릅니다.
다음은 좋은 위키 백과 링크입니다. NoSQL
하둡은 엄청난 양의 데이터를 저장하고 처리하기위한 시스템입니다. 분산 파일 시스템 dfs입니다. 그 이유는 설계의 중심에 있기 때문에 하드웨어 고장이 흔하다는 가정을하게되므로 동일한 정보를 여러 번 복사하여 여러 기계와 랙에 분산시킬 수 있습니다. 사본이 두 개 더 있습니다. 여기뿐만 아니라 위키 피 디아에서 하둡에 대한 좋은 링크가, 당신은 그냥 스토리지보다 더 많은 내 의견이지만, 또한 처리하는 것을 볼 수 있습니다 : 하둡을