ApsaraDB for SelectDB'nin veri geçiş özelliğini, OSS'i, bir kataloğu veya X2Doris'i kullanarak Apache Doris verilerini ApsaraDB for SelectDB'ye geçirin. İş gereksinimlerinize göre bir yöntem seçin.
ApsaraDB for SelectDB'nin veri geçiş özelliğini, OSS'i, bir kataloğu veya X2Doris'i kullanarak Apache Doris verilerini ApsaraDB for SelectDB'ye geçirin. İş gereksinimlerinize göre bir yöntem seçin.
Yöntem seçimi
Aşağıdaki tabloda mevcut geçiş yöntemleri ve kullanım durumları karşılaştırılmaktadır.
|
Yöntem |
Kullanım durumları |
Avantajlar |
Referans |
|
ApsaraDB for SelectDB veri geçiş özelliğini kullanma (Önerilir) |
Tüm senaryolar için uygundur. |
|
|
|
OSS paketi kullanma |
Alibaba Cloud'da zaten bulunan büyük veri hacimleri için uygundur. |
|
|
|
Katalog kullanma |
Veriler Alibaba Cloud'da depolanır ve veri hacmi küçüktür. Not
Bu yöntem, Alibaba Cloud E-MapReduce (EMR) kümelerinden veri geçirme gibi senaryolar için uygundur. |
|
Aşağıdaki bölümlerde çevrimdışı verilerin Doris'ten SelectDB ürününe nasıl aktarılacağı; bunun için bir katalog kullanmanın veya OSS'e dışa aktarıp OSS'ten içe aktarma işleminin nasıl yapılacağı açıklanmaktadır.
Verileri geçirmek için OSS paketi kullanma
Önkoşullar
-
OSS gereksinimleri:
OSS etkinleştirilmiştir. Daha fazla bilgi için bkz. OSS'i Etkinleştirme.
OSS'e erişmek için kullanılan RAM kullanıcısının OSS nesneleri üzerinde okuma ve yazma izinleri vardır. İzinlerin nasıl verileceği hakkında daha fazla bilgi için bkz. İzinler ve erişim kontrolüne genel bakış.
-
Hesap gereksinimleri:
Bir veritabanı hesabı oluşturdunuz. Daha fazla bilgi için bkz. Hesap yönetimi.
Hazırlıklar
OSS'te bir paket oluşturun. Daha fazla bilgi için bkz. Paket oluşturma.
OSS paketinin ve ApsaraDB for SelectDB örneğinizin aynı bölgede bulunduğundan emin olun.
Bu örnekte paket adı test-selectdb olarak belirlenmiştir.
1. Adım: Kaynak verileri dışa aktarma
-
Kaynak kümeye giriş yapın.
Kendi kendine yönetilen bir Doris veritabanına nasıl giriş yapılacağı hakkında bilgi için bkz. MySQL Protokolü ile Bağlanma - Apache Doris.
-
(İsteğe bağlı) Örnek verileri hazırlayın.
Geçişe hazır verileriniz varsa bu adımı atlayabilirsiniz.
-
Bir veritabanı oluşturun.
Bir veritabanı oluşturmak için aşağıdaki ifadeyi çalıştırın:
CREATE DATABASE source_db; -
Bir tablo oluşturun.
Bir tablo oluşturmak için aşağıdaki ifadeyi çalıştırın:
CREATE TABLE IF NOT EXISTS source_tb ( `c1` int(11) NULL, `c2` string NULL, `c3` bigint NULL ) DISTRIBUTED BY HASH(c1) BUCKETS 20 PROPERTIES("replication_num" = "1"); -
Örnek verileri ekleyin.
INSERT INTO source_tb VALUES (1, 'doris', 18), (2, 'nereids', 20), (3, 'pipelibe', 99999), (4, 'Apache', 122123455), (5, null, null); -
Verileri doğrulayın.
Örnek verileri doğrulamak için aşağıdaki ifadeyi çalıştırın:
SELECT * FROM `source_tb` limit 10;Aşağıdaki sonuç döndürülür:
+--------------+--------------+--------------+ | c1 | c2 | c3 | +--------------+--------------+--------------+ | 1 | doris | 18 | | 3 | pipelibe | 99999 | | 5 | | | | 2 | nereids | 20 | | 4 | Apache | 122123455 | +--------------+--------------+--------------+
-
-
Kaynak tablo için
CREATE TABLEifadesini yedekleyin.Hedef tablonun oluşturma ifadesini görüntülemek ve yedeklemek için
SHOW CREATE TABLEifadesini kullanabilirsiniz. Aşağıda bir örnek verilmiştir.SHOW CREATE TABLE source_tb ;Aşağıdaki sonuç döndürülür:
+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table | +-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | source_tb | CREATE TABLE `source_tb` ( `c1` int NULL, `c2` text NULL, `c3` bigint NULL ) ENGINE=OLAP DUPLICATE KEY(`c1`) DISTRIBUTED BY HASH(`c1`) BUCKETS 20 PROPERTIES ( "file_cache_ttl_seconds" = "0", "is_being_synced" = "false", "storage_medium" = "hdd", "storage_format" = "V2", "inverted_index_storage_format" = "V2", "light_schema_change" = "true", "disable_auto_compaction" = "false", "enable_single_replica_compaction" = "false", "group_commit_interval_ms" = "10000", "group_commit_data_bytes" = "134217728" ); | +-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Rows returned: [1], Time taken: [22ms] -
Verileri OSS paketinde dışa aktarın.
Verileri OSS paketinde dışa aktarmak için EXPORT ifadesini çalıştırın.
Sözdizimi:
EXPORT TABLE table_name [PARTITION (p1[,p2])] [WHERE] TO export_path [opt_properties] WITH S3 [s3_properties];Aşağıdaki tabloda parametreler açıklanmaktadır.
Parametre
Zorunlu
Açıklama
table_name
Evet
Verilerini dışa aktarmak istediğiniz tablonun adı.
partition
Hayır
Dışa aktarmak istediğiniz tablo bölümlerini belirtir.
where
Hayır
Dışa aktarılacak verileri filtreler.
export_path
EvetDışa aktarılan dosyaların depolandığı yol.
Bu bir dizin veya dosya ön eki içeren bir dizin olabilir; örneğin
s3://path/to/my_file_.
opt_properties
Hayır
Dışa aktarma görevi için özellikleri belirtir. Daha fazla bilgi için bkz. opt_properties sözdizimi.
s3_properties
Evet
S3 protokolü ile ilgili özellikleri belirtir. Daha fazla bilgi için bkz. s3_properties sözdizimi.opt_properties sözdizimi:
[PROPERTIES ("key"="value", ...)]Aşağıdaki parametreleri belirtebilirsiniz.
Parametre
Zorunlu
Açıklama
label
Hayır
Dışa aktarma görevi için bir etiket. Bir etiket belirtmezseniz sistem otomatik olarak bir tane oluşturur.
column_separator
Hayır
Dışa aktarılan veriler için sütun ayırıcı.
Varsayılan değer
\tşeklindedir. Bu parametre çok baytlı karakterleri destekler ve yalnızca CSV dosya biçimi için kullanılır.line_delimiter
Hayır
Dışa aktarılan veriler için satır ayırıcı.
Varsayılan değer
\nolup çok baytlı karakterleri destekler. Bu parametre yalnızca CSV dosya biçimi için kullanılır.columns
Hayır
Dışa aktarmak istediğiniz tablo sütunlarını belirtir.
format
Hayır
Dışa aktarılan verilerin dosya biçimi.
Desteklenen biçimler: parquet, orc, csv, csv_with_names ve csv_with_names_and_types.
Varsayılan biçim csv'dir.
max_file_size
Hayır
Tek bir dışa aktarılan dosyanın maksimum boyutu. Sonuç kümesi bu boyutu aşarsa birden çok dosyaya bölünür.
-
Değer aralığı: 5 MB ila 2 GB
-
Varsayılan değer: 1 GB
Dışa aktarma dosyası biçimini ORC olarak belirttiğinizde (yani format_as parametresi ORC ise) bölünen dosyanın gerçek boyutu
ceil (max_file_size/64) * 64MB olur.parallelism
Hayır
Dışa aktarma görevinin paralellik değeri. Varsayılan değer 1'dir.
Bir dışa aktarma görevi
select into outfileifadelerini yürütmek üzere paralellik değerine eşit sayıda iş parçacığı başlatır. (Paralellik değeri tablodaki tablet sayısından büyükse sistem paralelliği otomatik olarak tablet sayısına ayarlar. Bu her birselect into outfileifadesinin bir tabletten sorumlu olduğu anlamına gelir).delete_existing_files
Hayır
Hedef yoldaki tüm dosyaların silinip silinmeyeceğini belirtir.
false(varsayılan): Hedef yoldaki dosyaları silmez.true:
export_pathtarafından belirtilen dizindeki tüm dosyaları siler ve ardından verileri o dizine dışa aktarır. Örneğin:-
"file_path" = "/user/tmp"ise"/user/"içindeki tüm dosyalar ve dizinler silinir. -
"file_path" = "/user/tmp/"ise"/user/tmp/"içindeki tüm dosyalar ve dizinler silinir.
Uyarı-
delete_existing_files = truebelirtmek tehlikeli bir işlemdir. Bu ayarı yalnızca test ortamında kullanmanızı öneririz. -
delete_existing_files parametresini kullanmak için Alibaba Cloud müşteri hizmetlerine bir destek talebi gönderebilirsiniz. delete_existing_files parametresi SelectDB teknik ekibi fe.conf dosyasına
enable_delete_existing_files = trueyapılandırmasını ekleyip FE'yi yeniden başlattıktan sonra etkili olur.
with_bom
Hayır
Varsayılan değer
falseşeklindedir.trueolarak ayarlanırsa dışa aktarılan dosyalar Byte Order Mark (BOM) içeren UTF-8 kodlamasıyla kodlanır. Bu parametre yalnızca CSV ile ilgili dosya biçimleri için geçerlidir.timeout
Hayır
Dışa aktarma görevi için zaman aşımı süresi. Varsayılan değer 2 saattir. Birim: saniye.
s3_properties sözdizimi:
("key"="value"[,...])Aşağıdaki parametreleri belirtebilirsiniz.
Parametre
Zorunlu
Açıklama
s3.endpoint
Evet
S3 uyumlu depolama hedefinin uç noktası.
Bu örnekte geçiş için Alibaba Cloud OSS kullanılmaktadır. Bu durumda bu parametre OSS veri erişim
Uç Noktasıdır. Uç noktayı elde etmek için bkz. Bölgeler ve Uç Noktalar.ÖnemliOSS paketinin ve ApsaraDB for SelectDB örneğinizin aynı bölgede bulunduğundan emin olun.
s3.access_key
Evet
S3 uyumlu depolama hedefi için AccessKey ID.
Bu örnekte geçiş için Alibaba Cloud OSS kullanılmaktadır. Bu OSS'e erişmek için kullanılan RAM kullanıcısının
AccessKey ID'sidir.s3.secret_key
Evet
S3 uyumlu depolama hedefi için AccessKey gizli anahtarı.
Bu örnekte geçiş için Alibaba Cloud OSS kullanılmaktadır ve bu OSS'e erişen RAM kullanıcısının
AccessKey gizli anahtarıdır.s3.region
Evet
S3 uyumlu depolama hedefinin bölgesi.
Bu örnekte geçiş için Alibaba Cloud OSS kullanıldığından bu parametre OSS paketinin bölgesidir. Bölgeyi nasıl edineceğiniz hakkında bilgi için bkz. Bölgeler ve uç noktalar.
use_path_style
Hayır
Varsayılan değer
falseşeklindedir.Varsayılan olarak S3 SDK sanal barındırılan stil erişimini kullanır.
Ancak bazı nesne depolama sistemleri sanal barındırılan stil erişimini desteklemeyebilir. Yol stili erişimini zorlamak için
use_path_styleparametresini ekleyebilirsiniz.NotURI'ler şu anda üç şemayı destekler:
http://,https://ves3://.-
http://veyahttps://kullanıyorsanızuse_path_styleparametresi S3 protokolü hedefi için yol stili erişiminin kullanılıp kullanılmayacağını kontrol eder. -
s3://kullanıyorsanız S3 hedefine sanal barındırılan stil kullanılarak erişilir.
Aşağıdaki kod bir örnek sağlar:
EXPORT TABLE source_tb -- Export data from the source_tb table. TO "s3://test-selectdb/test/" -- Export data to the test folder in the test-selectdb bucket. PROPERTIES ( "label" = "test_export", -- A label for the job. "format" = "orc", -- The storage format of the file is ORC. "max_file_size" = '2048MB', -- The size for splitting files. 'parallelism' = '10' -- The export parallelism is 10. ) WITH s3 ( "s3.endpoint" = "oss-cn-hangzhou-internal.aliyuncs.com", -- The URL for accessing the OSS bucket. "s3.region" = "oss-cn-hangzhou", -- The region of the OSS bucket. "s3.secret_key"="yourAccessKeySecret", -- The AccessKey secret of the RAM user for accessing OSS. "s3.access_key" = "LTAI****************" -- The AccessKey ID of the RAM user for accessing OSS. ); -
-
Verilerin dışa aktarıldığını doğrulayın.
Veri dışa aktarmasını aşağıdaki yollardan biriyle doğrulayabilirsiniz:
-
Bir ifade çalıştırın.
Doris'e bağlı bir istemcide dışa aktarma durumunu kontrol etmek için aşağıdaki ifadeyi çalıştırın:
SHOW export;Dışa aktarma başarılı:
StatedeğeriFINISHEDise dışa aktarma başarılı oldu demektir.Dışa aktarma başarısız: Sonuçtaki
StatedeğeriCANCELLEDise veri dışa aktarma işlemi başarısız oldu. Arızayı gidermek içinErrorMsgiçindeki bilgileri kullanabilirsiniz.
-
OSS konsolunu kullanın.
OSS konsolu üzerinde oturum açın ve belirtilen dışa aktarma yolunda karşılık gelen dosyaların oluşturulup oluşturulmadığını kontrol edin.
-
2. Adım: Verileri içe aktarma
Hedef kümeye giriş yapın. Daha fazla bilgi için bkz. DMS kullanarak ApsaraDB for SelectDB örneğine bağlanma.
Hedef tabloyu oluşturun.
-
Bir veritabanı oluşturun.
-
(İsteğe bağlı) Bir veritabanı oluşturun.
Bir hedef veritabanınız varsa bu adımı atlayabilirsiniz.
Bir veritabanı oluşturmak için aşağıdaki ifadeyi çalıştırın:
CREATE DATABASE aim_db; -
Bir tablo oluşturun.
Dışa aktarma adımında yedeklediğiniz
CREATE TABLEifadesini çalıştırın.Aşağıdaki kod bir örnek sağlar:
CREATE TABLE IF NOT EXISTS aim_tb ( `c1` int(11) NULL, `c2` string NULL, `c3` bigint NULL ) ENGINE=OLAP DUPLICATE KEY(`c1`) DISTRIBUTED BY HASH(c1) BUCKETS 20 PROPERTIES("replication_num" = "1");
-
-
Verileri içe aktarın.
OSS verilerini SelectDB ürününe aktarmak için S3 load kullanın.
S3 loadsözdizimi ve daha fazla örnek için bkz. OSS Load.Aşağıdaki kod bir örnek sağlar:
LOAD LABEL label_1 -- A unique identifier for the job. You can specify a custom name. ( DATA INFILE("s3://test-selectdb/test/59ab2e9dc4ec4c04-9e50e45a6fda2c8e_0.orc") -- The OSS path of the data file exported in the previous step. INTO TABLE aim_tb -- The name of the table to which you want to import data. FORMAT AS ORC -- The format of the import file, which must be the same as the exported file format. ) WITH S3 ( "AWS_PROVIDER" = "OSS", "AWS_REGION" = "oss-cn-hangzhou", -- The region of the OSS bucket. "AWS_ENDPOINT" = "oss-cn-hangzhou-internal.aliyuncs.com", -- The URL for accessing the OSS bucket. "AWS_ACCESS_KEY" = "LTAI****************", -- The AccessKey ID of the RAM user for accessing OSS. "AWS_SECRET_KEY"="yourAccessKeySecret" -- The AccessKey secret of the RAM user for accessing OSS. ) PROPERTIES ( "timeout" = "3600" -- The timeout period for the import job. ); -
İçe aktarma sonuçlarını doğrulayın.
İçe aktarma sonuçlarını aşağıdaki yollardan biriyle kontrol edebilirsiniz:
-
Bir ifade çalıştırın.
SelectDB ürününe bağlı bir istemcide dışa aktarma durumunu kontrol etmek için aşağıdaki ifadeyi çalıştırabilirsiniz.
SHOW load;İçe aktarma başarılı: Sonuçtaki
StatedeğeriFINISHEDise veri içe aktarma işlemi başarılı oldu demektir. -
Hedef tabloyu sorgulayın. Aşağıdaki kod bir örnek sağlar:
SELECT * FROM `aim_tb` limit 10;Aşağıdaki sonuç döndürülür:
+--------------+--------------+--------------+ | c1 | c2 | c3 | +--------------+--------------+--------------+ | 1 | doris | 18 | | 3 | pipelibe | 99999 | | 5 | | | | 2 | nereids | 20 | | 4 | Apache | 122123455 | +--------------+--------------+--------------+Hedef tablodaki veriler 1. Adım: Kaynak verileri dışa aktarma adımındaki kaynak verilerle eşleşmektedir; bu da içe aktarmanın başarılı olduğunu gösterir.
-
Verileri geçirmek için katalog kullanma
Önkoşullar
-
Doris örneği ile SelectDB örneği arasında ağ bağlantısı olduğundan emin olun.
Doris örneği ve SelectDB örneği aynı VPC'de bulunmalıdır. Farklı VPC'lerde bulunuyorsa önce ağ bağlantısı sorununu çözmeniz gerekir. Daha fazla bilgi için bkz. Bir SelectDB örneği ile bir veri kaynağı arasındaki ağ bağlantısı sorunlarını nasıl çözerim?
Doris örneğinin IP adresi SelectDB ürününün izin listesine eklenmiştir. Daha fazla bilgi için bkz. İzin listesi ayarlama.
-
Doris örneği bir izin listesi kullanıyorsa SelectDB örneğinin IP adres aralığını Doris örneğinin izin listesine eklediniz.
SelectDB örneğinizin bulunduğu VPC'nin IP aralığını almak için bkz. ApsaraDB for SelectDB örneğimin bulunduğu VPC'nin IP CIDR bloğunu nasıl bulurum?
SelectDB örneğinizin genel IP adresini almak için genel uç noktasında
pingkomutunu kullanın SelectDB.
-
SelectDB sürümü Doris sürümünden düşük olamaz.
NotSelectDB Doris üzerine inşa edilmiş cloud-native gerçek zamanlı bir veri ambarıdır. Sürümleri arasındaki ilişki için bkz. Çekirdek Sürüm Notları.
Kataloglara ve temel işlemlerine aşinasınız. Daha fazla bilgi için bkz. Veri lakehouse.
Örnek ortam
Bu örnekte Doris'in doris_db veritabanındaki doris_t tablosundaki veriler SelectDB ürününün test_db veritabanındaki test_doris2SelectDB tablosuna geçirilmektedir. Parametreleri gerçek gereksinimlerinize göre değiştirin. Örnek ortam aşağıdaki gibidir:
Hedef veritabanı:
test_dbHedef tablo:
test_doris2SelectDBKaynak veritabanı:
doris_dbKaynak tablo:
doris_t
Kaynak verileri hazırlama
Kaynak Doris veritabanınıza giriş yapın ve aşağıdaki işlemleri gerçekleştirin:
-
Bir veritabanı oluşturun.
CREATE DATABASE doris_db; -
Bir tablo oluşturun.
CREATE TABLE doris_t ( id int, name string, age int ) DISTRIBUTED BY HASH(id) BUCKETS 4 PROPERTIES("replication_num" = "1"); -
Veri ekleyin.
INSERT INTO doris_t VALUES (1, 'Alice', 25), (2, 'Bob', 30), (3, 'Charlie', 35), (4, 'David', 40), (5, 'Eve', 45);
Yordam
SelectDB örneğine bağlanın. Daha fazla bilgi için bkz. MySQL istemcisi kullanarak Cloud Database SelectDB örneğine bağlanma.
-
Doris veritabanı için bir JDBC kataloğu oluşturun.
CREATE CATALOG doris_catalog PROPERTIES ( "type"="jdbc", "user"="root", "password"="123456", "jdbc_url" = "jdbc:mysql://127.0.0.1:9030/doris_db", "driver_url" = "mysql-connector-java-8.0.25.jar", "driver_class" = "com.mysql.cj.jdbc.Driver" )Parametre
Zorunlu
Varsayılan
Açıklama
user
Evet
Yok
Doris veritabanı hesabı için kullanıcı adı.
password
Evet
Yok
Doris veritabanı hesabı için parola.
jdbc_url
Evet
Yok
Doris veritabanının bağlantı adresini içermesi gereken JDBC bağlantı dizesi.
Biçim:
jdbc:mysql://<host>:<port>/<database>-
host: Doris veritabanının IP adresi. -
port: Doris veritabanının bağlantı noktası numarası. -
database: Erişmek istediğiniz veritabanının adı.
Örnek:
jdbc:mysql://127.0.0.1:9030/doris_dbdriver_url
Evet
Yok
JDBC sürücü JAR dosyasının adı.
Not-
mysql-connector-java-8.0.25.jarkullanmanızı öneririz. -
Farklı bir JAR dosyası kullanmak istiyorsanız lütfen bir destek talebi gönderin.
driver_class
Evet
Yok
JDBC sürücüsünün sınıf adı.
Önerilen ayar
com.mysql.cj.jdbc.Driverşeklindedir.lower_case_table_names
NotBu parametre 4,0 sürümünde
lower_case_meta_namesolarak yeniden adlandırılmıştır.Hayır
"false"
Harici JDBC veri kaynağından veritabanı ve tablo adlarının küçük harfle eşitlenip eşitlenmeyeceğini belirtir.
true: Küçük harfli adlardan uzak sistemdeki gerçek adlarına eşleme yaparak küçük harf olmayan adlara sahip veritabanlarını ve tabloları sorgulamanıza olanak tanır. Bu durumda veritabanı, tablo ve sütun adlarının tamamı küçük harfe dönüştürülür.false: Küçük harf olmayan adlara sahip veritabanlarını ve tabloları sorgulamanıza izin vermez.Önemli-
SelectDB 3.0 için:
-
FE'nin
lower_case_table_namesparametresi1veya2olarak ayarlandığında Kataloğunlower_case_table_namesparametresitrueolarak ayarlanmalıdır. -
FE'nin
lower_case_table_namesparametresi0olarak ayarlandığında Katalog için parametretrueveyafalseolabilir.
-
-
SelectDB 4,0 için:
-
FE'nin
lower_case_table_namesparametresi0veya2olarak ayarlandığında veritabanı, tablo veya sütun adları dönüştürülmez. -
FE'nin
lower_case_table_namesparametresi1olarak ayarlandığında tablo adları küçük harfe dönüştürülürken veritabanı ve sütun adları dönüştürülmez.
-
only_specified_database
Hayır
"false"
Yalnızca belirtilen veritabanının eşitlenip eşitlenmeyeceğini belirtir.
true: Yalnızca JDBC URL'sinde belirtilen veritabanını eşitler.false: JDBC URL'si üzerinden erişilebilen tüm veritabanlarını eşitler.include_database_list
Hayır
""
only_specified_database=trueolduğunda virgülle ayrılmış olarak eşitlenecek bir veya daha fazla veritabanı belirtin. Veritabanı adları büyük/küçük harfe duyarlıdır.exclude_database_list
Hayır
""
only_specified_database=trueolduğunda eşitlemeden hariç tutulacak veritabanlarını virgülle ayrılmış olarak belirtin. Veritabanı adları büyük/küçük harfe duyarlıdır.meta_names_mapping
Hayır
""
Harici bir veri kaynağında yalnızca büyük/küçük harf durumu farklı olan DORIS ve doris gibi aynı ada sahip öğeler varsa Doris belirsizlik nedeniyle Katalog'u sorgularken hata bildirir. Bu çakışmayı çözmek için
meta_names_mappingparametresini yapılandırın.Daha fazla bilgi için bkz. Küçük harfli ad eşitleme.
ÖnemliBu parametre yalnızca SelectDB sürüm 4,0 için geçerlidir.
-
-
Katalogları görüntüleyin.
SHOW CATALOGS; -- Check whether the catalog was created successfully.Aşağıdaki sonuç döndürülür:
+--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+ | CatalogId | CatalogName | Type | IsCurrent | CreateTime | LastUpdateTime | Comment | +--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+ | 436009309195 | doris_catalog | jdbc | | 2024-08-06 17:09:08.058 | 2024-07-19 18:04:37 | | | 0 | internal | internal | yes | UNRECORDED | NULL | Doris internal catalog | +--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+ -
(İsteğe bağlı) Harici katalog
doris_cataloganahtarına geçin.Harici katalog
doris_catalogiçindeki verileri dahili katalogtaki verilere eriştiğiniz şekilde görüntüleyebilir ve bunlara erişebilirsiniz.NotŞu anda ApsaraDB for SelectDB ürünü yalnızca External Catalog'teki veriler üzerinde okuma işlemlerini destekler.
SWITCH doris_catalog; -
(İsteğe bağlı) Dahili kataloğa geçin.
4. adımı gerçekleştirmediyseniz bu adımı atlayın.
SWITCH internal; -
(İsteğe bağlı) Bir veritabanı oluşturun.
Bir hedef veritabanınız varsa bu adımı atlayabilirsiniz.
CREATE database test_db; -
Hedef veritabanına geçin.
USE test_db; -
Bir tablo oluşturun.
Hedef tablo mevcutsa sütun veri türlerinin kaynak tablonunkilerle doğru şekilde eşlendiğinden emin olun.
Bir hedef tablonuz yoksa tabloyu oluştururken sütun veri türlerinin Doris kaynak tablosuyla doğru şekilde eşlendiğinden emin olun.
Sütun eşleme hakkında daha fazla bilgi için bkz. Veri türü eşlemeleri.
CREATE TABLE test_doris2SelectDB ( id int, name string, age int ) DISTRIBUTED BY HASH(id) BUCKETS 4 PROPERTIES("replication_num" = "1"); -
Verileri geçirin.
INSERT INTO test_doris2SelectDB SELECT * FROM doris_catalog.doris_db.doris_t; -
Veri içe aktarmayı doğrulayın.
SELECT * FROM test_doris2SelectDB;
Artımlı verileri geçirme
Üretim ortamlarında Doris verileri çevrimdışı ve artımlı verilerden oluşur. Artımlı verileri sorgu hızlandırma amacıyla SelectDB ürününe geçirmek için aşağıdaki yöntemleri göz önünde bulundurun:
Doris verilerini üretirken paralel olarak SelectDB ürününe bir veri kopyası yazabilirsiniz.
Bölümlendirilmiş verileri Doris'ten okuyup SelectDB ürününe yazmak için periyodik görevler kullanabilirsiniz.