복붙노트

[HADOOP] Hive가 저장 프로 시저를 지원하지 않는 이유는 무엇입니까?

HADOOP

Hive가 저장 프로 시저를 지원하지 않는 이유는 무엇입니까?

하이브가 저장 프로 시저를 지원하지 않는 이유는 무엇입니까? 우리가 Hive에서 Sp를 어떻게 처리 할 것인가? 다른 해결책이 있으십니까? (우리는 이미 데이터베이스가 mssql에 있기 때문에) HBASE는 어떻습니까? SP를 지원합니까?

해결법

  1. ==============================

    1.우선 Hadoop 또는 Hive는 SQL DB의 대안이 아닙니다. 이 2 가지 중 하나를 RDBMS를 대체하는 것으로 간주해서는 안됩니다.

    우선 Hadoop 또는 Hive는 SQL DB의 대안이 아닙니다. 이 2 가지 중 하나를 RDBMS를 대체하는 것으로 간주해서는 안됩니다.

    Hive는 기존의 Hadoop 클러스터에웨어 하우징 기능을 제공하기 위해 개발되었으며 SQL을 사용하여 데이터웨어 하우스에서 정보를 추출하는 일반 사용자는 물론 일반 SQL 사용자 (기본 데이터베이스 디자이너 및 관리자 모두)를 염두에 둡니다. SQL과 같은 인터페이스를 제공하지만 SQL DB는 아닙니다. Hive는 비교적 정적 인 데이터를 분석하고, 빠른 응답 시간이 필요하지 않으며, 데이터가 급속하게 변하지 않는 데이터웨어 하우스 응용 프로그램에 가장 적합합니다. 오프라인 일괄 처리를위한 물건을 넣기 만하면됩니다.

    HBase의 저장 프로 시저와 같은 것도 없습니다. 하지만 그들은 RDBMS에서 저장 프로 시저와 유사한 코 프로세서로 불리는 것을 가지고 있습니다. 코 프로세서에 대한 자세한 내용은 여기를 참조하십시오.

    그리고 @zsxwing이 Sqoop이 데이터 마이그레이션 도구 일 뿐이라고 말한 것은 아닙니다. NoSQL 세계로 전환하고 나면 유연해야하며 NoSQL 규칙을 준수해야합니다.

    유스 케이스를 좀 더 정교하게 만들 수 있다면 어쩌면 우리가 당신을 더 잘 도울 수 있습니다.

    귀하의 의견에 대한 답변 :

    예 페이스 북은 Hadoop과 Hive 및 기타 관련 도구를 광범위하게 사용합니다. Infact 하이브는 페이스 북에서 개발되었습니다. 그러나 이것들은 유일한 것이 아닙니다. OLTP와 트랜잭션 요구 사항이있는 곳이라면 RDBMS를 사용합니다. 한 가지 예는 MySQL을 사용하는 타임 라인 기능입니다. 그들은 하둡 (Hadoop)과 하이브 (Hive)뿐만 아니라 많은 것들로 구성된 거대한 파이프 라인을 가지고 있습니다. 아래 그림을 참조하십시오.

  2. ==============================

    2.Hive와 Hbase는 저장 프로 시저를 지원하지 않습니다. 그러나 Hive는 앞으로 Sp (HIVE-3087)를 지원할 계획입니다. HBase는 Sp를 지원하는 것에 대한 계획이 없습니다. 단지 Storage가되고 NoSQL과 더 비슷하기 때문입니다.

    Hive와 Hbase는 저장 프로 시저를 지원하지 않습니다. 그러나 Hive는 앞으로 Sp (HIVE-3087)를 지원할 계획입니다. HBase는 Sp를 지원하는 것에 대한 계획이 없습니다. 단지 Storage가되고 NoSQL과 더 비슷하기 때문입니다.

    하이브 UDF는 스토어드 프로 시저의 일부 기능을 구현할 수 있지만 충분하지는 않습니다.

  3. ==============================

    3.Hive에는 실제로 기존 답변에서 설명한대로 저장 프로 시저가 없습니다. 그러나 여기에는 2 가지 완화 요소가 있습니다.

    Hive에는 실제로 기존 답변에서 설명한대로 저장 프로 시저가 없습니다. 그러나 여기에는 2 가지 완화 요소가 있습니다.

    물론 저장 프로 시저를 대체 할 수는 없지만 뷰를 현명하게 사용하면 일부 프로 시저의 필요성을 제거 할 수 있습니다.

    마지막으로 하이브에 저장 프로 시저가없는 문제가 발생했을 때, 내가하고 싶은 일 (모든 열을 반복)이 다른 프로그램에서도 할 수있는 일임을 깨달았습니다. 나는 다음 워크 플로우를 따랐다.

    뷰와 외부 호출을 사용하여 스토어드 프로 시저의 부족을 해결할 수있었습니다.

  4. ==============================

    4.HPL / SQL을 참조하십시오. 동일한 솔루션을 찾고 있지만 아직 시도하지 않았습니다.

    HPL / SQL을 참조하십시오. 동일한 솔루션을 찾고 있지만 아직 시도하지 않았습니다.

    데이터웨어 하우스 응용 프로그램은 저장 프로 시저 지원이 필요하지만 행 기반 프로 시저보다 집합 기반을 선호합니다.

    내 개인적인 경험으로는 구조화 된 데이터웨어 하우스 응용 프로그램에서 서버 측 프로그램 템플릿을 활용할 때 절차 지원이 필요합니다. Netezza, MSSQL, Oracle, DB2 및 BigInsight와 같은 SQL / NoSQL간에 데이터웨어 하우스 응용 프로그램을보다 쉽게 ​​포팅 할 수 있습니다.

  5. ==============================

    5.http://www.plhql.org에서 오픈 소스 프로젝트 PL / HQL을 살펴보십시오. 그것은 당신이 하이브에 기존의 SQL Server, 오라클, Teradata, MySQL은 등 저장 프로 시저를 실행할 수 있습니다.

    http://www.plhql.org에서 오픈 소스 프로젝트 PL / HQL을 살펴보십시오. 그것은 당신이 하이브에 기존의 SQL Server, 오라클, Teradata, MySQL은 등 저장 프로 시저를 실행할 수 있습니다.

  6. from https://stackoverflow.com/questions/17079489/why-hive-is-not-supporting-stored-procedure by cc-by-sa and MIT license