小编San*_*ngh的帖子

如何将转储恢复到正在运行的mongodb中

我想使用mongorestore在mongoDB中加载数据/恢复转储数据.我想命令

mongorestore dump
Run Code Online (Sandbox Code Playgroud)

但它给了我错误

Sat Sep 21 16:12:33.403 JavaScript execution failed: SyntaxError: Unexpected identifier
Run Code Online (Sandbox Code Playgroud)

我们如何将数据恢复或放入mongoDB?请给我一些步骤.

mongodb data-dump mongorestore

22
推荐指数
6
解决办法
5万
查看次数

使用 Python 从 Google 云存储下载多个文件

我正在尝试从 Google 云存储文件夹下载多个文件。我可以下载单个文件,但无法下载多个文件。我从这个链接中获取了这个参考,但似乎它不起作用。代码如下:

# [download multiple files]
bucket_name = 'bigquery-hive-load'
# The "folder" where the files you want to download are
folder="/projects/bigquery/download/shakespeare/"

# Create this folder locally
if not os.path.exists(folder):
    os.makedirs(folder)

# Retrieve all blobs with a prefix matching the folder
    bucket=storage_client.get_bucket(bucket_name)
    print(bucket)
    blobs=list(bucket.list_blobs(prefix=folder))
    print(blobs)
    for blob in blobs:
        if(not blob.name.endswith("/")):
            blob.download_to_filename(blob.name)

# [End download to multiple files]
Run Code Online (Sandbox Code Playgroud)

有没有办法下载与模式(名称)或其他东西匹配的多个文件。由于我是从 bigquery 导出文件,因此文件名将如下所示:

shakespeare-000000000000.csv.gz
shakespeare-000000000001.csv.gz
shakespeare-000000000002.csv.gz
shakespeare-000000000003.csv.gz
Run Code Online (Sandbox Code Playgroud)

参考:下载单个文件的工作代码:

# [download to single files]

edgenode_destination_uri = '/projects/bigquery/download/shakespeare-000000000000.csv.gz'
bucket_name = 'bigquery-hive-load'
gcs_bucket …
Run Code Online (Sandbox Code Playgroud)

python python-3.x google-cloud-storage google-cloud-platform

9
推荐指数
1
解决办法
5296
查看次数

将数据从 bigquery 导出到 Google Cloud Storage 时控制文件大小

我正在致力于将大型数据集从 bigquery 导出到 Google 云存储并以压缩格式导出。在 Google 云存储中,我有文件大小限制(每个文件最大文件大小 1GB)。因此,我在导出时使用分割和同情技术来分割数据。示例代码如下:

gcs_destination_uri = 'gs://{}/{}'.format(bucket_name, 'wikipedia-*.csv.gz') 
gcs_bucket = storage_client.get_bucket(bucket_name)

# Job Config
job_config = bigquery.job.ExtractJobConfig()
job_config.compression = bigquery.Compression.GZIP

def bigquery_datalake_load():  
    dataset_ref = bigquery_client.dataset(dataset_id, project=project)
    table_ref = dataset_ref.table(table_id)
    table = bigquery_client.get_table(table_ref)  # API Request
    row_count = table.num_rows

    extract_job = bigquery_client.extract_table(
        table_ref,
        gcs_destination_uri,
        location='US',
        job_config=job_config)  # API request
    logging.info('BigQuery extract Started.... Wait for the job to complete.')
    extract_job.result()  # Waits for job to complete.

    print('Exported {}:{}.{} to {}'.format(
        project, dataset_id, table_id, gcs_destination_uri))
    # [END bigquery_extract_table]
Run Code Online (Sandbox Code Playgroud)

此代码将大型数据集分割并压缩为 …

python-3.x google-cloud-storage google-bigquery google-cloud-platform

7
推荐指数
1
解决办法
6158
查看次数

使用spark-submit 执行spark/Scala jar 与使用java -jar 执行spark jar

我遇到一个有趣的问题,即从 Windows 开发环境提交 Spark 应用程序的不同方法。一般来说,我们可以使用提交spark作业spark-submit,也可以使用以下命令执行uber jar(用jar组装的依赖spark库)java -jar

  • 使用java -jar 命令: java -jar -Xmx1024m /home/myuser/myhar.jar
  • 使用 s Park-submit 命令: spark-submit --master local[*] /home/myuser/myhar.jar

因为我可以使用这两种方法执行作业,所以我观察到有时java -jar方法更快,有时spark-submit对于相同的数据集更快(例如 20000 行,其中有大量数据混洗登录)。spark-submit有更好的选择来使用命令行参数控制执行器和内存等,但是java -jar,我们需要在代码本身内部进行硬编码。如果我们运行具有大数据集的 jar,java -jar则会抛出内存不足异常,虽然spark-submit需要时间,但使用默认配置执行时不会出现错误。

我无法理解使用提交申请的区别spark-submitjava-jar因此我的问题是:

当我们使用 提交申请时,执行是如何发生的java-jar。它是否在内存本身内部执行jvm并且不使用任何 Spark 属性?

java performance scala apache-spark spark-submit

5
推荐指数
0
解决办法
1343
查看次数

Python BigQuery API-获取表架构

我试图获取架构形式的bigquery表。给定一个示例代码,例如

from google.cloud import bigquery
from google.cloud import storage

client =  bigquery.Client.from_service_account_json('service_account.json')

def test_extract_schema(client): 
    project = 'bigquery-public-data'
    dataset_id = 'samples'
    table_id = 'shakespeare'

    dataset_ref = client.dataset(dataset_id, project=project)
    table_ref = dataset_ref.table(table_id)
    table = client.get_table(table_ref)  # API Request

    # View table properties
    print(table.schema)

if __name__ == '__main__':
    test_extract_schema(client)
Run Code Online (Sandbox Code Playgroud)

这是返回值,例如:

[SchemaField('word', 'STRING', 'REQUIRED', 'A single unique word (where whitespace is the delimiter) extracted from a corpus.', ()), SchemaField('word_count', 'INTEGER', 'REQUIRED', 'The number of times this word appears in this corpus.', ()), SchemaField('corpus', 'STRING', …

python-3.x google-bigquery google-cloud-datastore google-cloud-platform

4
推荐指数
1
解决办法
3740
查看次数

Hive 数据的减速器

我是新手。我很想知道如何将 reducer 设置为不同的 hive 数据集。是基于处理的数据大小吗?还是所有人的默认减速器集?

比如5GB的数据需要多少reducer?将相同数量的减速器设置为较小的数据集吗?

提前致谢!!干杯!

hive mapreduce

3
推荐指数
1
解决办法
7788
查看次数

如何在CentOS6中更改ulimit

我正在使用CentOS6.6并尝试安装HDP2.2

当我这样做时: ulimit -Sn它的价值是1024

当我这样做时: ulimit -Hn它的价值是4096

建议的最大打开文件描述符数量为10000或更多。

我正在尝试增加此值。我检查了几个链接,并尝试按照步骤进行操作,但未获得任何成功。我正在寻找一些帮助增加此值的方法。

linux hadoop centos6

2
推荐指数
1
解决办法
3546
查看次数

删除直线输出中的标题

我正在尝试 beeline cli 查询配置单元表并将输出结果存储为变量。使用 beeline 命令:

beeline -u connection_string -n user_name -w password_file \
-e "select count(*) from db.table_name"
Run Code Online (Sandbox Code Playgroud)

使用这个命令,我得到当前的输出结果为:

+---------------+--+ 
| record_count  | 
+---------------+--+ 
| 80785         | 
+---------------+--+
Run Code Online (Sandbox Code Playgroud)

虽然我需要结果为: Record count:80785

我正在使用的另一个命令是:

beeline -u connection_string -n user_name -w password_file \
-e "select * from db.table_name;” > result.csv
Run Code Online (Sandbox Code Playgroud)

这再次以表格格式数据显示结果,以|.

默认情况下,beeline 基本上是返回 header( table_name.column_name),然后是表格格式的数据。然而,我想消除这一点并获得像 hive CLI 这样的结果。

hadoop hive hadoop2 beeline

2
推荐指数
1
解决办法
4823
查看次数