Külső táblákkal végzett munka
A külső táblák egy könyvtárban tárolják az adatokat a felhőbeli bérlő felhőobjektum-tárolójában. Külső tábla definiálásakor meg kell adnia egy tárolóhelyet.
A Databricks csak akkor javasolja a külső táblák használatát, ha közvetlen hozzáférésre van szüksége az adatokhoz anélkül, hogy számítást használ az Azure Databricksben. A Unity Catalog-jogosultságok nem lesznek kényszerítve, ha a felhasználók külső rendszerekből férnek hozzá adatfájlokhoz.
Feljegyzés
Ez a cikk a Unity Catalog külső tábláira összpontosít. Az örökölt Hive-metaadattár külső táblái eltérő viselkedésűek. Tekintse meg az adatbázis-objektumokat az örökölt Hive-metaadattárban.
Külső táblákkal végzett munka
Az Azure Databricks csak a külső táblák metaadatait kezeli, és nem használja az azt tartalmazó sémához társított tárolási helyet. A Unity Catalog táblaregisztrációja csak egy adatfájlokra mutató mutató. Külső tábla elvetésekor a rendszer nem törli az adatfájlokat.
Külső tábla létrehozásakor regisztrálhat egy meglévő adatfájl-könyvtárat táblaként, vagy megadhatja az új adatfájlok létrehozásának elérési útját.
A külső táblák a következő fájlformátumokat használhatják:
- DELTA
- CSV
- JSON
- AVRO
- PARKETTA
- ORK
- SMS
Külső tábla létrehozása
Külső tábla létrehozásához használhat SQL-parancsokat vagy Adatkeret-írási műveleteket.
Mielőtt elkezdené
Külső tábla létrehozásához meg kell felelnie az alábbi engedélykövetelményeknek:
- A
CREATE EXTERNAL TABLE
külső helyen található jogosultság, amely hozzáférést biztosít aLOCATION
külső tábla által elért hozzáféréshez. - A
USE SCHEMA
tábla szülőséma engedélyének megadása. - A
USE CATALOG
tábla szülőkatalógusának engedélye. - A
CREATE TABLE
tábla szülőséma engedélyének megadása.
A külső helyek konfigurálásával kapcsolatos további információkért tekintse meg a felhőbeli tároló Azure Databrickshez való csatlakoztatásához szükséges külső hely létrehozását ismertető témakört.
SQL-parancsok – példák
Külső tábla létrehozásához használja az alábbi parancsok egyikét egy jegyzetfüzetben vagy az SQL-lekérdezésszerkesztőben.
Az alábbi példákban cserélje le a helyőrző értékeket:
<catalog>
: A táblát tartalmazó katalógus neve.<schema>
: A táblát tartalmazó séma neve.<table-name>
: A tábla neve.<column-specification>
: Az egyes oszlopok neve és adattípusa.<bucket-path>
: Annak a felhőbeli tárolónak az elérési útja, ahol a tábla létre lesz hozva.<table-directory>
: Egy könyvtár, ahol a tábla létrejön. Minden táblához használjon egyedi könyvtárat.
CREATE TABLE <catalog>.<schema>.<table-name>
(
<column-specification>
)
LOCATION 'abfss://<bucket-path>/<table-directory>';
További információ a táblalétrehozás paramétereiről: CREATE TABLE.
Adatkeret írási műveletei
Sok felhasználó külső táblákat hoz létre lekérdezési eredményekből vagy DataFrame írási műveletekből. Az alábbi cikkek a külső táblák Azure Databricksen való létrehozásához használható számos minta közül mutatnak be néhányat:
Külső tábla elvetése
Ha el szeretne dobni egy táblát, annak a tulajdonosának kell lennie. Külső tábla elvetéséhez futtassa a következő SQL-parancsot:
DROP TABLE IF EXISTS catalog_name.schema_name.table_name;
A Unity Catalog nem törli az alapul szolgáló adatokat a felhőbeli tárolóban egy külső tábla elvetésekor. Közvetlenül törölnie kell a mögöttes adatfájlokat, ha el kell távolítania a táblához társított adatokat.
Példajegyzetfüzet: Külső táblák létrehozása
Az alábbi példajegyzetfüzet segítségével katalógust, sémát és külső táblát hozhat létre, és kezelheti az engedélyeit.