有人能够集成数据ploc,datalab和源代码回购吗?正如我们许多人所看到的那样,当您调用INIT ACTION安装Datalab时,它不会创建源代码回购。我正在尝试实现一个完整的端到端解决方案,其中用户将登录到Datalab笔记本电脑,通过Pyspark与DataProc进行交互,然后将笔记本注册到源代码回购中。我无法像以前指出的那样,用初始动作做到这一点。我还尝试安装DataProc,然后将Datalab作为单独的安装(这次创建源回购(,但是,我无法在此DataLab笔记本上运行任何SPARK代码。有人可以给我一些有关如何实现这一目标的指示吗?所有和所有人都被赞赏。
Datalab中的代码
from pyspark.sql import HiveContext
hc=HiveContext(sc)
hc.sql("""show databases""").show()
hc.sql("""CREATE EXTERNAL TABLE IF NOT EXISTS INVOICES
(SubmissionDate DATE, TransactionAmount DOUBLE, TransactionType STRING)
STORED AS PARQUET
LOCATION 'gs://my-exercise-project-2019016-ds-team/datasets/invoices'""")
hc.sql("""select * from invoices limit 10""").show()
错误
Py4JJavaError: An error occurred while calling o55.sql.
: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystem not found
at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:2395)
at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:3208)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:3240)
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:121)
at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:3291)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:3259)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:470)
at org.apache.hadoop.fs.Path.getFileSystem(Path.java:356)
at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$or
不幸的是,能够从init Action中创建云源存储库中的datalab-notebooks
存储库需要一些预先工作。
原因是创建存储库需要VM的服务帐户以在项目上具有" source.repos.create" IAM权限,这默认情况下是不正确的。
您可以将该权限授予服务帐户,然后通过gcloud source repos create datalab-notebooks
创建存储库,或者在创建群集之前手动创建存储库。
然后,要克隆启动脚本的存储库,请添加以下行:
mkdir -p ${HOME}/datalab
gcloud source repos clone datalab-notebooks ${HOME}/datalab/notebooks
如果您正在修改datalab的罐头初始操作,那么我建议在此处添加这些行