配置apache HIVE元数据DB为PostgreSQL
本文出处:http://amutu.com/blog/2013/06/hive-metastore-db-postgresql/ HIVE 的元数据默认使用 derby 作为存储 DB , derby 作为轻量级的 DB ,在开发、测试过程中使用比较方便,但是在实际的生产环境中,还需要考虑易用性、容灾、稳定性以及各种监控、运
本文出处:http://amutu.com/blog/2013/06/hive-metastore-db-postgresql/
HIVE的元数据默认使用derby作为存储DB,derby作为轻量级的DB,在开发、测试过程中使用比较方便,但是在实际的生产环境中,还需要考虑易用性、容灾、稳定性以及各种监控、运维工具等,这些都是derby缺乏的。MySQL和PostgreSQL是两个比较常用的开源数据库系统,在生产环境中比较多的用来替换derby。配置MySQL在网上的文章比较多,这里不再赘述,本文主要描述配置HIVE元数据DB为PostgreSQL的方法。
HIVE版本:HIVE 0.7-snapshot,HIVE 0.8-snapshot
步骤1:在PG中为元数据增加用户的DB
首先在PostgreSQL中为HIVE的元数据建立帐号和DB。
--以管理员身份登入PG:
psql postgres -U postgres
--创建用户hive_user:
Create user hive_user;
--创建DB metastore_db,owner为hive_user:
Create database metastore_db with owner=hive_user;
--设置hive_user的密码:
/password hive_user
完成以上步骤以后,还要确保PostgreSQL的pg_hba.conf中的配置允许HIVE所在的机器ip可以访问PG。
步骤2:下载PG的JDBC驱动
在HIVE_HOME目录下创建auxlib目录:
mkdir auxlib
此时HIVE_HOME目录中应该有bin,lib,auxlib,conf等目录。
下载PG的JDBC驱动
Wget http://jdbc.postgresql.org/download/postgresql-9.0-801.jdbc4.jar
将下载到的postgresql-9.0-801.jdbc4.jar放到auxlib中。
步骤3:修改HIVE配置文件
在HIVE_HOME中新建hive-site.xml 文件,内容如下,蓝色字体按照PG server的相关信息进行修改。
步骤4:初始化元数据表
元数据库metastore中默认没有表,当HIVE第一次使用某个表的时候,如果发现该表不存在就会自动创建。对derby和mysql,这个过程没有问题,因此derby和mysql作为元数据库不需要这一步。
PostgreSQL在初始化的时候,会遇到一些问题,导致PG数据库死锁。例如执行以下HIVE语句:
>Create table kv (key,int,value string) partitioned by (ds string);
OK
>Alter table kv add partition (ds = '20110101');
执行这一句的时候,HIVE会一直停在这。
查看PG数据库,发现有两个连接在进行事务操作,其中一个是:
此时处于事务中空闲,另外一个是:
ALTER TABLE "PARTITIONS" ADD CONSTRAINT "PARTITIONS_FK1" FOREIGN KEY ("SD_ID") REFERENCES "SDS" ("SD_ID") INITIALLY DEFERRED
处于等待状态。
进一步查看日志,发现大致的过程是这样的:
HIVE发起Alter table kv add partition (ds = '20110101')语句,此时DataNucleus接口发起第一个isolation为SERIALIZABLE的事务,锁定了TBLS等元数据表。在这个的事务进行过程中,DataNucleu发现PARTITIONS等表没有,则要自动创建。于是又发起了另外一个isolation为SERIALIZABLE的事务,第一个事务变为
类似的情况出现在:
>create test(key int);
OK
>drop table test;
当drop table时会去drop它的index,而此时没有index元数据表,它去键,然后产生死锁。
有三种方法可以解决这个死锁问题:
第一种方法:
使用PG的pg_terminate_backend()将第一个事务结束掉,这样可以保证第二个事务完成下去,将元数据表键成功。
第二种方法:
使HIVE将创建元数据表的过程和向元数据表中添加数据的过程分离:
>Create table kv (key,int,value string) partitioned by (ds string);
OK
>show partitions kv;
OK
>Alter table kv add partition (ds = '20110101');
OK
执行以上语句时就不会发生死锁,因为在执行show partitions kv语句时,它是只读语句,不会加锁。当这个语句发现PARTITIONS等表不在时,创建这些表不会发生死锁。
同样对于index表,使用
>Show index on kv;
可以将IDXS表建好。
第三种方法:
使用DataNucleu提供的SchemaTool,将HIVE的metastore/src/model/package.jdo文件作为输入,这个工具可以自动创建元数据中的表。具体的使用方法见:
http://www.datanucleus.org/products/accessplatform_2_0/rdbms/schematool.html
小结
本文给出了使用PostgreSQL作为HIVE元数据DB的配置方法,以及遇到的死锁问题的解决办法,希望对使用HIVE和PostgreSQL的朋友有帮助。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Kürzlich wurde die Militärwelt von der Nachricht überwältigt: US-Militärkampfflugzeuge können jetzt mithilfe von KI vollautomatische Luftkämpfe absolvieren. Ja, erst kürzlich wurde der KI-Kampfjet des US-Militärs zum ersten Mal der Öffentlichkeit zugänglich gemacht und sein Geheimnis gelüftet. Der vollständige Name dieses Jägers lautet „Variable Stability Simulator Test Aircraft“ (VISTA). Er wurde vom Minister der US-Luftwaffe persönlich geflogen, um einen Eins-gegen-eins-Luftkampf zu simulieren. Am 2. Mai startete US-Luftwaffenminister Frank Kendall mit einer X-62AVISTA auf der Edwards Air Force Base. Beachten Sie, dass während des einstündigen Fluges alle Flugaktionen autonom von der KI durchgeführt wurden! Kendall sagte: „In den letzten Jahrzehnten haben wir über das unbegrenzte Potenzial des autonomen Luft-Luft-Kampfes nachgedacht, aber es schien immer unerreichbar.“ Nun jedoch,

Das neueste Video von Teslas Roboter Optimus ist veröffentlicht und er kann bereits in der Fabrik arbeiten. Bei normaler Geschwindigkeit sortiert es Batterien (Teslas 4680-Batterien) so: Der Beamte hat auch veröffentlicht, wie es bei 20-facher Geschwindigkeit aussieht – auf einer kleinen „Workstation“, pflücken und pflücken und pflücken: Dieses Mal wird es freigegeben. Eines der Highlights Der Vorteil des Videos besteht darin, dass Optimus diese Arbeit in der Fabrik völlig autonom und ohne menschliches Eingreifen während des gesamten Prozesses erledigt. Und aus Sicht von Optimus kann es auch die krumme Batterie aufnehmen und platzieren, wobei der Schwerpunkt auf der automatischen Fehlerkorrektur liegt: In Bezug auf die Hand von Optimus gab der NVIDIA-Wissenschaftler Jim Fan eine hohe Bewertung ab: Die Hand von Optimus ist der fünffingrige Roboter der Welt am geschicktesten. Seine Hände sind nicht nur taktil

Letzte Woche wurde OpenAI inmitten der Welle interner Kündigungen und externer Kritik von internen und externen Problemen geplagt: - Der Verstoß gegen die Schwester der Witwe löste weltweit hitzige Diskussionen aus - Mitarbeiter, die „Overlord-Klauseln“ unterzeichneten, wurden einer nach dem anderen entlarvt – Internetnutzer listeten Ultramans „ Sieben Todsünden“ – Gerüchtebekämpfung: Laut durchgesickerten Informationen und Dokumenten, die Vox erhalten hat, war sich die leitende Führung von OpenAI, darunter Altman, dieser Eigenkapitalrückgewinnungsbestimmungen wohl bewusst und hat ihnen zugestimmt. Darüber hinaus steht OpenAI vor einem ernsten und dringenden Problem – der KI-Sicherheit. Die jüngsten Abgänge von fünf sicherheitsrelevanten Mitarbeitern, darunter zwei der prominentesten Mitarbeiter, und die Auflösung des „Super Alignment“-Teams haben die Sicherheitsprobleme von OpenAI erneut ins Rampenlicht gerückt. Das Fortune-Magazin berichtete, dass OpenA

Beim Modell 70B können 1000 Token in Sekunden generiert werden, was fast 4000 Zeichen entspricht! Die Forscher haben Llama3 verfeinert und einen Beschleunigungsalgorithmus eingeführt. Im Vergleich zur nativen Version ist die Geschwindigkeit 13-mal höher! Es ist nicht nur schnell, seine Leistung bei Code-Rewriting-Aufgaben übertrifft sogar GPT-4o. Diese Errungenschaft stammt von anysphere, dem Team hinter dem beliebten KI-Programmierartefakt Cursor, und auch OpenAI beteiligte sich an der Investition. Sie müssen wissen, dass bei Groq, einem bekannten Framework zur schnellen Inferenzbeschleunigung, die Inferenzgeschwindigkeit von 70BLlama3 nur mehr als 300 Token pro Sekunde beträgt. Aufgrund der Geschwindigkeit von Cursor kann man sagen, dass eine nahezu sofortige vollständige Bearbeitung der Codedatei möglich ist. Manche Leute nennen es einen guten Kerl, wenn man Curs sagt

Parallelitätstests und Debugging Parallelitätstests und Debugging in der gleichzeitigen Java-Programmierung sind von entscheidender Bedeutung und die folgenden Techniken stehen zur Verfügung: Parallelitätstests: Unit-Tests: Isolieren und testen Sie eine einzelne gleichzeitige Aufgabe. Integrationstests: Testen der Interaktion zwischen mehreren gleichzeitigen Aufgaben. Lasttests: Bewerten Sie die Leistung und Skalierbarkeit einer Anwendung unter hoher Last. Parallelitäts-Debugging: Haltepunkte: Thread-Ausführung anhalten und Variablen überprüfen oder Code ausführen. Protokollierung: Thread-Ereignisse und -Status aufzeichnen. Stack-Trace: Identifizieren Sie die Quelle der Ausnahme. Visualisierungstools: Überwachen Sie die Thread-Aktivität und die Ressourcennutzung.

1. Hintergrund des Baus der 58-Portrait-Plattform Zunächst möchte ich Ihnen den Hintergrund des Baus der 58-Portrait-Plattform mitteilen. 1. Das traditionelle Denken der traditionellen Profiling-Plattform reicht nicht mehr aus. Der Aufbau einer Benutzer-Profiling-Plattform basiert auf Data-Warehouse-Modellierungsfunktionen, um Daten aus mehreren Geschäftsbereichen zu integrieren, um genaue Benutzerporträts zu erstellen Und schließlich muss es über Datenplattformfunktionen verfügen, um Benutzerprofildaten effizient zu speichern, abzufragen und zu teilen sowie Profildienste bereitzustellen. Der Hauptunterschied zwischen einer selbst erstellten Business-Profiling-Plattform und einer Middle-Office-Profiling-Plattform besteht darin, dass die selbst erstellte Profiling-Plattform einen einzelnen Geschäftsbereich bedient und bei Bedarf angepasst werden kann. Die Mid-Office-Plattform bedient mehrere Geschäftsbereiche und ist komplex Modellierung und bietet allgemeinere Funktionen. 2.58 Benutzerporträts vom Hintergrund der Porträtkonstruktion im Mittelbahnsteig 58

Um einen Server zu Eclipse hinzuzufügen, führen Sie die folgenden Schritte aus: Erstellen Sie eine Serverlaufzeitumgebung. Konfigurieren Sie den Server. Erstellen Sie eine Serverinstanz. Wählen Sie die Serverlaufzeitumgebung aus. Konfigurieren Sie die Serverinstanz. Starten Sie das Serverbereitstellungsprojekt

Llama3, der majestätische König von Open Source, das ursprüngliche Kontextfenster ist nur ... 8k groß, was mich die Worte „es riecht so gut“ herunterschlucken lässt. Ist heute, wo 32.000 der Ausgangspunkt und 100.000 üblich sind, die Absicht, Raum für Beiträge zur Open-Source-Community zu lassen? Die Open-Source-Community hat sich diese Gelegenheit sicherlich nicht entgehen lassen: Jetzt kann jede fein abgestimmte Version von Llama370b mit nur 58 Codezeilen automatisch auf 1048.000 (eine Million) Kontexte skaliert werden. Hinter den Kulissen verbirgt sich eine LoRA, die aus einer fein abgestimmten Version von Llama370BInstruct extrahiert wurde, die einen guten Kontext erweitert, und die Datei ist nur 800 MB groß. Anschließend können Sie Mergekit verwenden, um es mit anderen Modellen derselben Architektur auszuführen oder es direkt mit dem Modell zusammenzuführen. 1048k-Kontext verwendet
